Dave is blue. Dave is cold. Dave is green. Dave is kind. Dave is rough. Fiona is blue. Fiona is not cold. Fiona is green. Fiona is not rough. Fiona is smart. Gary is cold. Gary is green. Gary is kind. Gary is rough. Gary is round. If something is green and not cold then it is round. If something is kind and not smart then it is not round. If something is smart and round then it is not kind. If something is blue then it is green. If something is cold then it is green. If something is kind and not cold then it is green. If Dave is kind then Dave is round. If something is cold and not rough then it is blue.
Dave is blue.
("Dave" "is" "blue" "+")
Dave is cold.
("Dave" "is" "cold" "+")
Dave is green.
("Dave" "is" "green" "+")
Dave is kind.
("Dave" "is" "kind" "+")
Dave is rough.
("Dave" "is" "rough" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is not cold.
("Fiona" "is" "cold" "-")
Fiona is green.
("Fiona" "is" "green" "+")
Fiona is not rough.
("Fiona" "is" "rough" "-")
Fiona is smart.
("Fiona" "is" "smart" "+")
Gary is cold.
("Gary" "is" "cold" "+")
Gary is green.
("Gary" "is" "green" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is rough.
("Gary" "is" "rough" "+")
Gary is round.
("Gary" "is" "round" "+")
If something is green and not cold then it is round.
((("something" "is" "green" "+") ("something" "is" "cold" "~")) -> ("something" "is" "round" "+"))
If something is kind and not smart then it is not round.
((("something" "is" "kind" "+") ("something" "is" "smart" "~")) -> ("something" "is" "round" "-"))
If something is smart and round then it is not kind.
((("something" "is" "smart" "+") ("something" "is" "round" "+")) -> ("something" "is" "kind" "-"))
If something is blue then it is green.
((("something" "is" "blue" "+")) -> ("something" "is" "green" "+"))
If something is cold then it is green.
((("something" "is" "cold" "+")) -> ("something" "is" "green" "+"))
If something is kind and not cold then it is green.
((("something" "is" "kind" "+") ("something" "is" "cold" "~")) -> ("something" "is" "green" "+"))
If Dave is kind then Dave is round.
((("Dave" "is" "kind" "+")) -> ("Dave" "is" "round" "+"))
If something is cold and not rough then it is blue.
((("something" "is" "cold" "+") ("something" "is" "rough" "~")) -> ("something" "is" "blue" "+"))
Gary is rough.
True
1
proof
[(triple14)]
("Gary" "is" "rough" "+")
triple14
Dave is not cold.
False
1
inv-proof
[(triple2)]
("Dave" "is" "cold" "-")
triple2
Dave is round.
True
2
proof
[(((triple4) -> rule7))]
("Dave" "is" "round" "+")
((triple4) -> (rule7 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
Fiona is not round.
False
3
inv-proof
[(((triple8 triple7) -> rule1) OR ((((triple6) -> rule4) triple7) -> rule1))]
("Fiona" "is" "round" "-")
((triple8 triple7) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
((((triple6) -> (rule4 % int2)) triple7) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is not kind.
True
5
proof
[(((triple10 ((triple8 triple7) -> rule1)) -> rule3) OR ((triple10 ((((triple6) -> rule4) triple7) -> rule1)) -> rule3))]
("Fiona" "is" "kind" "-")
((triple10 ((triple8 triple7) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is not kind.
("Fiona" "is" "kind" "-")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
((triple10 ((((triple6) -> (rule4 % int3)) triple7) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is not kind.
("Fiona" "is" "kind" "-")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is kind.
False
5
inv-proof
[(((triple10 ((triple8 triple7) -> rule1)) -> rule3) OR ((triple10 ((((triple6) -> rule4) triple7) -> rule1)) -> rule3))]
("Fiona" "is" "kind" "+")
((triple10 ((triple8 triple7) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is not kind.
("Fiona" "is" "kind" "-")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
((triple10 ((((triple6) -> (rule4 % int3)) triple7) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is not kind.
("Fiona" "is" "kind" "-")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Gary is not blue.
Unknown
inv-rconc
[@1: Gary is blue.[CWA. Example of deepest failure = (rule8 <- FAIL)]]
("Gary" "is" "blue" "-")
Dave is smart.
Unknown
random
[@0: Dave is smart.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "smart" "+")
@0: Dave is blue.[(triple1)] Dave is cold.[(triple2)] Dave is green.[(triple3 OR ((triple1) -> rule4) OR ((triple2) -> rule5))] Dave is kind.[(triple4)] Dave is rough.[(triple5)] Fiona is blue.[(triple6)] Fiona is green.[(triple8 OR ((triple6) -> rule4))] Fiona is not cold.[(triple7)] Fiona is not rough.[(triple9)] Fiona is smart.[(triple10)] Gary is cold.[(triple11)] Gary is green.[(triple12 OR ((triple11) -> rule5))] Gary is kind.[(triple13)] Gary is rough.[(triple14)] Gary is round.[(triple15)] @1: Dave is round.[(((triple4) -> rule7))] Fiona is round.[(((triple8 triple7) -> rule1) OR ((((triple6) -> rule4) triple7) -> rule1))] @2: Fiona is not kind.[(((triple10 ((triple8 triple7) -> rule1)) -> rule3) OR ((triple10 ((((triple6) -> rule4) triple7) -> rule1)) -> rule3))]
Dave is blue.
("Dave" "is" "blue" "+")
triple1
Dave is cold.
("Dave" "is" "cold" "+")
triple2
Dave is green.
("Dave" "is" "green" "+")
triple3
((triple1) -> (rule4 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
((triple2) -> (rule5 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
triple4
Dave is rough.
("Dave" "is" "rough" "+")
triple5
Fiona is blue.
("Fiona" "is" "blue" "+")
triple6
Fiona is green.
("Fiona" "is" "green" "+")
triple8
((triple6) -> (rule4 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is not cold.
("Fiona" "is" "cold" "-")
triple7
Fiona is not rough.
("Fiona" "is" "rough" "-")
triple9
Fiona is smart.
("Fiona" "is" "smart" "+")
triple10
Gary is cold.
("Gary" "is" "cold" "+")
triple11
Gary is green.
("Gary" "is" "green" "+")
triple12
((triple11) -> (rule5 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
triple13
Gary is rough.
("Gary" "is" "rough" "+")
triple14
Gary is round.
("Gary" "is" "round" "+")
triple15
Dave is round.
("Dave" "is" "round" "+")
((triple4) -> (rule7 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
((triple8 triple7) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
((((triple6) -> (rule4 % int2)) triple7) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is not kind.
("Fiona" "is" "kind" "-")
((triple10 ((triple8 triple7) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is not kind.
("Fiona" "is" "kind" "-")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
((triple10 ((((triple6) -> (rule4 % int3)) triple7) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is not kind.
("Fiona" "is" "kind" "-")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3