Anne is big. Anne is cold. Anne is furry. Anne is kind. Anne is rough. Bob is big. Bob is blue. Bob is kind. Bob is young. Erin is cold. Erin is furry. Erin is kind. Fiona is blue. Fiona is furry. Fiona is rough. Fiona is young. Kind, cold people are rough. All young, rough people are kind. If someone is furry and young then they are blue. If Erin is young and Erin is blue then Erin is kind. If someone is blue then they are big. All big, rough people are furry.
Anne is big.
("Anne" "is" "big" "+")
Anne is cold.
("Anne" "is" "cold" "+")
Anne is furry.
("Anne" "is" "furry" "+")
Anne is kind.
("Anne" "is" "kind" "+")
Anne is rough.
("Anne" "is" "rough" "+")
Bob is big.
("Bob" "is" "big" "+")
Bob is blue.
("Bob" "is" "blue" "+")
Bob is kind.
("Bob" "is" "kind" "+")
Bob is young.
("Bob" "is" "young" "+")
Erin is cold.
("Erin" "is" "cold" "+")
Erin is furry.
("Erin" "is" "furry" "+")
Erin is kind.
("Erin" "is" "kind" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is rough.
("Fiona" "is" "rough" "+")
Fiona is young.
("Fiona" "is" "young" "+")
Kind, cold people are rough.
((("someone" "is" "kind" "+") ("someone" "is" "cold" "+")) -> ("someone" "is" "rough" "+"))
All young, rough people are kind.
((("someone" "is" "young" "+") ("someone" "is" "rough" "+")) -> ("someone" "is" "kind" "+"))
If someone is furry and young then they are blue.
((("someone" "is" "furry" "+") ("someone" "is" "young" "+")) -> ("someone" "is" "blue" "+"))
If Erin is young and Erin is blue then Erin is kind.
((("Erin" "is" "young" "+") ("Erin" "is" "blue" "+")) -> ("Erin" "is" "kind" "+"))
If someone is blue then they are big.
((("someone" "is" "blue" "+")) -> ("someone" "is" "big" "+"))
All big, rough people are furry.
((("someone" "is" "big" "+") ("someone" "is" "rough" "+")) -> ("someone" "is" "furry" "+"))
Bob is kind.
True
1
proof
[(triple8)]
("Bob" "is" "kind" "+")
triple8
Anne is not furry.
False
1
inv-proof
[(triple3 OR ((triple1 triple5) -> rule6) OR ((triple1 ((triple4 triple2) -> rule1)) -> rule6))]
("Anne" "is" "furry" "-")
triple3
((triple1 triple5) -> (rule6 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
((triple1 ((triple4 triple2) -> (rule1 % int2))) -> (rule6 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Fiona is kind.
True
3
proof
[(((triple16 triple15) -> rule2))]
("Fiona" "is" "kind" "+")
((triple16 triple15) -> (rule2 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is not kind.
False
3
inv-proof
[(((triple16 triple15) -> rule2))]
("Fiona" "is" "kind" "-")
((triple16 triple15) -> (rule2 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Erin is not big.
Unknown
inv-rconc
[@2: Erin is big.[CWA. Example of deepest failure = (rule5 <- rule3 <- FAIL)]]
("Erin" "is" "big" "-")
Erin is blue.
Unknown
rconc
[@1: Erin is blue.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Erin" "is" "blue" "+")
Erin is not young.
Unknown
inv-random
[@0: Erin is young.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "young" "-")
Bob is cold.
Unknown
random
[@0: Bob is cold.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "cold" "+")
@0: Anne is big.[(triple1)] Anne is cold.[(triple2)] Anne is furry.[(triple3 OR ((triple1 triple5) -> rule6) OR ((triple1 ((triple4 triple2) -> rule1)) -> rule6))] Anne is kind.[(triple4)] Anne is rough.[(triple5 OR ((triple4 triple2) -> rule1))] Bob is big.[(triple6 OR ((triple7) -> rule5))] Bob is blue.[(triple7)] Bob is kind.[(triple8)] Bob is young.[(triple9)] Erin is cold.[(triple10)] Erin is furry.[(triple11)] Erin is kind.[(triple12)] Fiona is blue.[(triple13 OR ((triple14 triple16) -> rule3))] Fiona is furry.[(triple14 OR ((((triple13) -> rule5) triple15) -> rule6))] Fiona is rough.[(triple15)] Fiona is young.[(triple16)] @1: Erin is rough.[(((triple12 triple10) -> rule1))] Fiona is big.[(((triple13) -> rule5) OR ((((triple14 triple16) -> rule3)) -> rule5))] Fiona is kind.[(((triple16 triple15) -> rule2))]
Anne is big.
("Anne" "is" "big" "+")
triple1
Anne is cold.
("Anne" "is" "cold" "+")
triple2
Anne is furry.
("Anne" "is" "furry" "+")
triple3
((triple1 triple5) -> (rule6 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
((triple1 ((triple4 triple2) -> (rule1 % int2))) -> (rule6 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is kind.
("Anne" "is" "kind" "+")
triple4
Anne is rough.
("Anne" "is" "rough" "+")
triple5
((triple4 triple2) -> (rule1 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Bob is big.
("Bob" "is" "big" "+")
triple6
((triple7) -> (rule5 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is blue.
("Bob" "is" "blue" "+")
triple7
Bob is kind.
("Bob" "is" "kind" "+")
triple8
Bob is young.
("Bob" "is" "young" "+")
triple9
Erin is cold.
("Erin" "is" "cold" "+")
triple10
Erin is furry.
("Erin" "is" "furry" "+")
triple11
Erin is kind.
("Erin" "is" "kind" "+")
triple12
Fiona is blue.
("Fiona" "is" "blue" "+")
triple13
((triple14 triple16) -> (rule3 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
triple14
((((triple13) -> (rule5 % int2)) triple15) -> (rule6 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
Fiona is rough.
("Fiona" "is" "rough" "+")
triple15
Fiona is young.
("Fiona" "is" "young" "+")
triple16
Erin is rough.
("Erin" "is" "rough" "+")
((triple12 triple10) -> (rule1 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
((triple13) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
((((triple14 triple16) -> (rule3 % int2))) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
((triple16 triple15) -> (rule2 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1