Anne is blue. Anne is round. Anne is smart. Fiona is kind. Fiona is round. Gary is kind. Gary is smart. All young, round things are blue. If Fiona is blue then Fiona is smart. All kind, round things are blue. If something is round and young then it is rough. If something is blue then it is round. All round, blue things are smart. If something is kind then it is rough. If Gary is young and Gary is big then Gary is round.
Anne is blue.
("Anne" "is" "blue" "+")
Anne is round.
("Anne" "is" "round" "+")
Anne is smart.
("Anne" "is" "smart" "+")
Fiona is kind.
("Fiona" "is" "kind" "+")
Fiona is round.
("Fiona" "is" "round" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is smart.
("Gary" "is" "smart" "+")
All young, round things are blue.
((("something" "is" "young" "+") ("something" "is" "round" "+")) -> ("something" "is" "blue" "+"))
If Fiona is blue then Fiona is smart.
((("Fiona" "is" "blue" "+")) -> ("Fiona" "is" "smart" "+"))
All kind, round things are blue.
((("something" "is" "kind" "+") ("something" "is" "round" "+")) -> ("something" "is" "blue" "+"))
If something is round and young then it is rough.
((("something" "is" "round" "+") ("something" "is" "young" "+")) -> ("something" "is" "rough" "+"))
If something is blue then it is round.
((("something" "is" "blue" "+")) -> ("something" "is" "round" "+"))
All round, blue things are smart.
((("something" "is" "round" "+") ("something" "is" "blue" "+")) -> ("something" "is" "smart" "+"))
If something is kind then it is rough.
((("something" "is" "kind" "+")) -> ("something" "is" "rough" "+"))
If Gary is young and Gary is big then Gary is round.
((("Gary" "is" "young" "+") ("Gary" "is" "big" "+")) -> ("Gary" "is" "round" "+"))
Anne is blue.
True
1
proof
[(triple1)]
("Anne" "is" "blue" "+")
triple1
Gary is not smart.
False
1
inv-proof
[(triple7)]
("Gary" "is" "smart" "-")
triple7
Gary is not blue.
Unknown
inv-rconc
[@3: Gary is blue.[CWA. Example of deepest failure = (rule3 <- rule5 <- rule1 <- FAIL)]]
("Gary" "is" "blue" "-")
Gary is big.
Unknown
random
[@0: Gary is big.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "big" "+")
@0: Anne is blue.[(triple1)] Anne is round.[(triple2 OR ((triple1) -> rule5))] Anne is smart.[(triple3 OR ((triple2 triple1) -> rule6) OR ((((triple1) -> rule5) triple1) -> rule6))] Fiona is kind.[(triple4)] Fiona is round.[(triple5)] Gary is kind.[(triple6)] Gary is smart.[(triple7)] @1: Fiona is blue.[(((triple4 triple5) -> rule3))] Fiona is rough.[(((triple4) -> rule7))] Gary is rough.[(((triple6) -> rule7))] @2: Fiona is smart.[(((((triple4 triple5) -> rule3)) -> rule2) OR ((triple5 ((triple4 triple5) -> rule3)) -> rule6))]
Anne is blue.
("Anne" "is" "blue" "+")
triple1
Anne is round.
("Anne" "is" "round" "+")
triple2
((triple1) -> (rule5 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Anne is smart.
("Anne" "is" "smart" "+")
triple3
((triple2 triple1) -> (rule6 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
((((triple1) -> (rule5 % int2)) triple1) -> (rule6 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
triple4
Fiona is round.
("Fiona" "is" "round" "+")
triple5
Gary is kind.
("Gary" "is" "kind" "+")
triple6
Gary is smart.
("Gary" "is" "smart" "+")
triple7
Fiona is blue.
("Fiona" "is" "blue" "+")
((triple4 triple5) -> (rule3 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
((triple4) -> (rule7 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
((triple6) -> (rule7 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
((((triple4 triple5) -> (rule3 % int2))) -> (rule2 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
((triple5 ((triple4 triple5) -> (rule3 % int2))) -> (rule6 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2