Anne is furry. Bob is cold. Charlie is rough. Erin is green. All green things are rough. All young, green things are round. If something is furry and smart then it is round. All young, cold things are rough. If something is furry then it is young. If something is cold and rough then it is smart. All cold things are rough. All round, young things are furry.
Anne is furry.
("Anne" "is" "furry" "+")
Bob is cold.
("Bob" "is" "cold" "+")
Charlie is rough.
("Charlie" "is" "rough" "+")
Erin is green.
("Erin" "is" "green" "+")
All green things are rough.
((("something" "is" "green" "+")) -> ("something" "is" "rough" "+"))
All young, green things are round.
((("something" "is" "young" "+") ("something" "is" "green" "+")) -> ("something" "is" "round" "+"))
If something is furry and smart then it is round.
((("something" "is" "furry" "+") ("something" "is" "smart" "+")) -> ("something" "is" "round" "+"))
All young, cold things are rough.
((("something" "is" "young" "+") ("something" "is" "cold" "+")) -> ("something" "is" "rough" "+"))
If something is furry then it is young.
((("something" "is" "furry" "+")) -> ("something" "is" "young" "+"))
If something is cold and rough then it is smart.
((("something" "is" "cold" "+") ("something" "is" "rough" "+")) -> ("something" "is" "smart" "+"))
All cold things are rough.
((("something" "is" "cold" "+")) -> ("something" "is" "rough" "+"))
All round, young things are furry.
((("something" "is" "round" "+") ("something" "is" "young" "+")) -> ("something" "is" "furry" "+"))
Anne is furry.
True
1
proof
[(triple1)]
("Anne" "is" "furry" "+")
triple1
Bob is not cold.
False
1
inv-proof
[(triple2)]
("Bob" "is" "cold" "-")
triple2
Erin is not round.
Unknown
inv-rconc
[@3: Erin is round.[CWA. Example of deepest failure = (rule2 <- rule5 <- rule8 <- FAIL)]]
("Erin" "is" "round" "-")
Charlie is green.
Unknown
random
[@0: Charlie is green.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "green" "+")
@0: Anne is furry.[(triple1)] Bob is cold.[(triple2)] Charlie is rough.[(triple3)] Erin is green.[(triple4)] @1: Anne is young.[(((triple1) -> rule5))] Bob is rough.[(((triple2) -> rule7))] Erin is rough.[(((triple4) -> rule1))] @2: Bob is smart.[(((triple2 ((triple2) -> rule7)) -> rule6))]
Anne is furry.
("Anne" "is" "furry" "+")
triple1
Bob is cold.
("Bob" "is" "cold" "+")
triple2
Charlie is rough.
("Charlie" "is" "rough" "+")
triple3
Erin is green.
("Erin" "is" "green" "+")
triple4
Anne is young.
("Anne" "is" "young" "+")
((triple1) -> (rule5 % int1))
Anne is young.
("Anne" "is" "young" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
((triple2) -> (rule7 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
((triple4) -> (rule1 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Bob is smart.
("Bob" "is" "smart" "+")
((triple2 ((triple2) -> (rule7 % int2))) -> (rule6 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2