Anne is furry. Bob is furry. Charlie is rough. If someone is round then they are red. Young people are red. Rough people are round. If Anne is quiet and Anne is young then Anne is furry. All round, young people are rough. Furry, quiet people are young. All red, kind people are furry. If someone is quiet and furry then they are red.
Anne is furry.
("Anne" "is" "furry" "+")
Bob is furry.
("Bob" "is" "furry" "+")
Charlie is rough.
("Charlie" "is" "rough" "+")
If someone is round then they are red.
((("someone" "is" "round" "+")) -> ("someone" "is" "red" "+"))
Young people are red.
((("someone" "is" "young" "+")) -> ("someone" "is" "red" "+"))
Rough people are round.
((("someone" "is" "rough" "+")) -> ("someone" "is" "round" "+"))
If Anne is quiet and Anne is young then Anne is furry.
((("Anne" "is" "quiet" "+") ("Anne" "is" "young" "+")) -> ("Anne" "is" "furry" "+"))
All round, young people are rough.
((("someone" "is" "round" "+") ("someone" "is" "young" "+")) -> ("someone" "is" "rough" "+"))
Furry, quiet people are young.
((("someone" "is" "furry" "+") ("someone" "is" "quiet" "+")) -> ("someone" "is" "young" "+"))
All red, kind people are furry.
((("someone" "is" "red" "+") ("someone" "is" "kind" "+")) -> ("someone" "is" "furry" "+"))
If someone is quiet and furry then they are red.
((("someone" "is" "quiet" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "red" "+"))
Charlie is rough.
True
1
proof
[(triple3)]
("Charlie" "is" "rough" "+")
triple3
Charlie is not rough.
False
1
inv-proof
[(triple3)]
("Charlie" "is" "rough" "-")
triple3
Charlie is round.
True
2
proof
[(((triple3) -> rule3))]
("Charlie" "is" "round" "+")
((triple3) -> (rule3 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is not round.
False
2
inv-proof
[(((triple3) -> rule3))]
("Charlie" "is" "round" "-")
((triple3) -> (rule3 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is red.
True
3
proof
[(((((triple3) -> rule3)) -> rule1))]
("Charlie" "is" "red" "+")
((((triple3) -> (rule3 % int2))) -> (rule1 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is not red.
False
3
inv-proof
[(((((triple3) -> rule3)) -> rule1))]
("Charlie" "is" "red" "-")
((((triple3) -> (rule3 % int2))) -> (rule1 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Anne is not rough.
Unknown
inv-rconc
[@2: Anne is rough.[CWA. Example of deepest failure = (rule5 <- rule3 <- FAIL)]]
("Anne" "is" "rough" "-")
Charlie is young.
Unknown
rconc
[@1: Charlie is young.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Charlie" "is" "young" "+")
Anne is not round.
Unknown
inv-rconc
[@2: Anne is round.[CWA. Example of deepest failure = (rule3 <- rule5 <- FAIL)]]
("Anne" "is" "round" "-")
Charlie is kind.
Unknown
random
[@0: Charlie is kind.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "kind" "+")
Anne is not kind.
Unknown
inv-random
[@0: Anne is kind.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "kind" "-")
Charlie is quiet.
Unknown
random
[@0: Charlie is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "quiet" "+")
@0: Anne is furry.[(triple1)] Bob is furry.[(triple2)] Charlie is rough.[(triple3)] @1: Charlie is round.[(((triple3) -> rule3))] @2: Charlie is red.[(((((triple3) -> rule3)) -> rule1))]
Anne is furry.
("Anne" "is" "furry" "+")
triple1
Bob is furry.
("Bob" "is" "furry" "+")
triple2
Charlie is rough.
("Charlie" "is" "rough" "+")
triple3
Charlie is round.
("Charlie" "is" "round" "+")
((triple3) -> (rule3 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
((((triple3) -> (rule3 % int2))) -> (rule1 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2