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