Anne is big. Anne is cold. Anne is furry. Anne is rough. Anne is round. Anne is smart. Anne is white. Erin is big. Erin is cold. Erin is furry. Erin is rough. Erin is round. Erin is smart. Erin is white. Fiona is white. If Fiona is round and Fiona is smart then Fiona is cold. If something is white then it is round. All cold things are furry. If something is smart and rough then it is round. Rough, big things are furry. Cold things are big.
Anne is big.
("Anne" "is" "big" "+")
Anne is cold.
("Anne" "is" "cold" "+")
Anne is furry.
("Anne" "is" "furry" "+")
Anne is rough.
("Anne" "is" "rough" "+")
Anne is round.
("Anne" "is" "round" "+")
Anne is smart.
("Anne" "is" "smart" "+")
Anne is white.
("Anne" "is" "white" "+")
Erin is big.
("Erin" "is" "big" "+")
Erin is cold.
("Erin" "is" "cold" "+")
Erin is furry.
("Erin" "is" "furry" "+")
Erin is rough.
("Erin" "is" "rough" "+")
Erin is round.
("Erin" "is" "round" "+")
Erin is smart.
("Erin" "is" "smart" "+")
Erin is white.
("Erin" "is" "white" "+")
Fiona is white.
("Fiona" "is" "white" "+")
If Fiona is round and Fiona is smart then Fiona is cold.
((("Fiona" "is" "round" "+") ("Fiona" "is" "smart" "+")) -> ("Fiona" "is" "cold" "+"))
If something is white then it is round.
((("something" "is" "white" "+")) -> ("something" "is" "round" "+"))
All cold things are furry.
((("something" "is" "cold" "+")) -> ("something" "is" "furry" "+"))
If something is smart and rough then it is round.
((("something" "is" "smart" "+") ("something" "is" "rough" "+")) -> ("something" "is" "round" "+"))
Rough, big things are furry.
((("something" "is" "rough" "+") ("something" "is" "big" "+")) -> ("something" "is" "furry" "+"))
Cold things are big.
((("something" "is" "cold" "+")) -> ("something" "is" "big" "+"))
Erin is cold.
True
1
proof
[(triple9)]
("Erin" "is" "cold" "+")
triple9
Erin is not cold.
False
1
inv-proof
[(triple9)]
("Erin" "is" "cold" "-")
triple9
Fiona is round.
True
2
proof
[(((triple15) -> rule2))]
("Fiona" "is" "round" "+")
((triple15) -> (rule2 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is not round.
False
2
inv-proof
[(((triple15) -> rule2))]
("Fiona" "is" "round" "-")
((triple15) -> (rule2 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is not cold.
Unknown
inv-rconc
[@1: Fiona is cold.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Fiona" "is" "cold" "-")
Fiona is furry.
Unknown
rconc
[@2: Fiona is furry.[CWA. Example of deepest failure = (rule3 <- rule1 <- FAIL)]]
("Fiona" "is" "furry" "+")
Fiona is not smart.
Unknown
inv-random
[@0: Fiona is smart.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "smart" "-")
Fiona is rough.
Unknown
random
[@0: Fiona is rough.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "rough" "+")
@0: Anne is big.[(triple1 OR ((triple2) -> rule6))] Anne is cold.[(triple2)] Anne is furry.[(triple3 OR ((triple2) -> rule3) OR ((triple4 triple1) -> rule5) OR ((triple4 ((triple2) -> rule6)) -> rule5))] Anne is rough.[(triple4)] Anne is round.[(triple5 OR ((triple7) -> rule2) OR ((triple6 triple4) -> rule4))] Anne is smart.[(triple6)] Anne is white.[(triple7)] Erin is big.[(triple8 OR ((triple9) -> rule6))] Erin is cold.[(triple9)] Erin is furry.[(triple10 OR ((triple9) -> rule3) OR ((triple11 triple8) -> rule5) OR ((triple11 ((triple9) -> rule6)) -> rule5))] Erin is rough.[(triple11)] Erin is round.[(triple12 OR ((triple14) -> rule2) OR ((triple13 triple11) -> rule4))] Erin is smart.[(triple13)] Erin is white.[(triple14)] Fiona is white.[(triple15)] @1: Fiona is round.[(((triple15) -> rule2))]
Anne is big.
("Anne" "is" "big" "+")
triple1
((triple2) -> (rule6 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is cold.
("Anne" "is" "cold" "+")
triple2
Anne is furry.
("Anne" "is" "furry" "+")
triple3
((triple2) -> (rule3 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
((triple4 triple1) -> (rule5 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
((triple4 ((triple2) -> (rule6 % int2))) -> (rule5 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
Anne is rough.
("Anne" "is" "rough" "+")
triple4
Anne is round.
("Anne" "is" "round" "+")
triple5
((triple7) -> (rule2 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
((triple6 triple4) -> (rule4 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Anne is smart.
("Anne" "is" "smart" "+")
triple6
Anne is white.
("Anne" "is" "white" "+")
triple7
Erin is big.
("Erin" "is" "big" "+")
triple8
((triple9) -> (rule6 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is cold.
("Erin" "is" "cold" "+")
triple9
Erin is furry.
("Erin" "is" "furry" "+")
triple10
((triple9) -> (rule3 % int1))
Erin is furry.
("Erin" "is" "furry" "+")
int1
((triple11 triple8) -> (rule5 % int1))
Erin is furry.
("Erin" "is" "furry" "+")
int1
((triple11 ((triple9) -> (rule6 % int2))) -> (rule5 % int1))
Erin is furry.
("Erin" "is" "furry" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
Erin is rough.
("Erin" "is" "rough" "+")
triple11
Erin is round.
("Erin" "is" "round" "+")
triple12
((triple14) -> (rule2 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
((triple13 triple11) -> (rule4 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is smart.
("Erin" "is" "smart" "+")
triple13
Erin is white.
("Erin" "is" "white" "+")
triple14
Fiona is white.
("Fiona" "is" "white" "+")
triple15
Fiona is round.
("Fiona" "is" "round" "+")
((triple15) -> (rule2 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1