Anne is cold. Anne is furry. Anne is round. Fiona is big. Fiona is blue. Fiona is cold. Fiona is furry. Fiona is red. Fiona is round. Fiona is young. If something is red then it is blue. Young things are round. All red things are round. Furry, big things are young. If Fiona is cold and Fiona is young then Fiona is round. If Fiona is cold then Fiona is young. If Fiona is big and Fiona is not round then Fiona is blue. If Anne is cold and Anne is not blue then Anne is round.
Anne is cold.
("Anne" "is" "cold" "+")
Anne is furry.
("Anne" "is" "furry" "+")
Anne is round.
("Anne" "is" "round" "+")
Fiona is big.
("Fiona" "is" "big" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is cold.
("Fiona" "is" "cold" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is red.
("Fiona" "is" "red" "+")
Fiona is round.
("Fiona" "is" "round" "+")
Fiona is young.
("Fiona" "is" "young" "+")
If something is red then it is blue.
((("something" "is" "red" "+")) -> ("something" "is" "blue" "+"))
Young things are round.
((("something" "is" "young" "+")) -> ("something" "is" "round" "+"))
All red things are round.
((("something" "is" "red" "+")) -> ("something" "is" "round" "+"))
Furry, big things are young.
((("something" "is" "furry" "+") ("something" "is" "big" "+")) -> ("something" "is" "young" "+"))
If Fiona is cold and Fiona is young then Fiona is round.
((("Fiona" "is" "cold" "+") ("Fiona" "is" "young" "+")) -> ("Fiona" "is" "round" "+"))
If Fiona is cold then Fiona is young.
((("Fiona" "is" "cold" "+")) -> ("Fiona" "is" "young" "+"))
If Fiona is big and Fiona is not round then Fiona is blue.
((("Fiona" "is" "big" "+") ("Fiona" "is" "round" "~")) -> ("Fiona" "is" "blue" "+"))
If Anne is cold and Anne is not blue then Anne is round.
((("Anne" "is" "cold" "+") ("Anne" "is" "blue" "~")) -> ("Anne" "is" "round" "+"))
Anne is round.
True
1
proof
[(triple3)]
("Anne" "is" "round" "+")
triple3
Fiona is not red.
False
1
inv-proof
[(triple8)]
("Fiona" "is" "red" "-")
triple8
Anne is not blue.
Unknown
inv-rconc
[@1: Anne is blue.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Anne" "is" "blue" "-")
Anne is red.
Unknown
random
[@0: Anne is red.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "red" "+")
@0: Anne is cold.[(triple1)] Anne is furry.[(triple2)] Anne is round.[(triple3)] Fiona is big.[(triple4)] Fiona is blue.[(triple5 OR ((triple8) -> rule1))] Fiona is cold.[(triple6)] Fiona is furry.[(triple7)] Fiona is red.[(triple8)] Fiona is round.[(triple9 OR ((triple10) -> rule2) OR ((triple8) -> rule3) OR ((triple6 triple10) -> rule5) OR ((((triple6) -> rule6)) -> rule2) OR ((((triple7 triple4) -> rule4)) -> rule2) OR ((triple6 ((triple6) -> rule6)) -> rule5) OR ((triple6 ((triple7 triple4) -> rule4)) -> rule5))] Fiona is young.[(triple10 OR ((triple6) -> rule6) OR ((triple7 triple4) -> rule4))]
Anne is cold.
("Anne" "is" "cold" "+")
triple1
Anne is furry.
("Anne" "is" "furry" "+")
triple2
Anne is round.
("Anne" "is" "round" "+")
triple3
Fiona is big.
("Fiona" "is" "big" "+")
triple4
Fiona is blue.
("Fiona" "is" "blue" "+")
triple5
((triple8) -> (rule1 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
triple6
Fiona is furry.
("Fiona" "is" "furry" "+")
triple7
Fiona is red.
("Fiona" "is" "red" "+")
triple8
Fiona is round.
("Fiona" "is" "round" "+")
triple9
((triple10) -> (rule2 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
((triple8) -> (rule3 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
((triple6 triple10) -> (rule5 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
((((triple6) -> (rule6 % int2))) -> (rule2 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
((((triple7 triple4) -> (rule4 % int2))) -> (rule2 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
((triple6 ((triple6) -> (rule6 % int2))) -> (rule5 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
((triple6 ((triple7 triple4) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
triple10
((triple6) -> (rule6 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
((triple7 triple4) -> (rule4 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1