Anne is furry. Anne is kind. Anne is round. Harry is big. Harry is furry. Harry is kind. Harry is red. Harry is rough. Harry is round. Harry is white. If someone is rough then they are red. Round, rough people are red. If someone is big then they are white. All furry, rough people are red. All rough, kind people are round. If Anne is furry then Anne is red. If someone is kind and red then they are rough. If someone is kind and big then they are furry.
Anne is furry.
("Anne" "is" "furry" "+")
Anne is kind.
("Anne" "is" "kind" "+")
Anne is round.
("Anne" "is" "round" "+")
Harry is big.
("Harry" "is" "big" "+")
Harry is furry.
("Harry" "is" "furry" "+")
Harry is kind.
("Harry" "is" "kind" "+")
Harry is red.
("Harry" "is" "red" "+")
Harry is rough.
("Harry" "is" "rough" "+")
Harry is round.
("Harry" "is" "round" "+")
Harry is white.
("Harry" "is" "white" "+")
If someone is rough then they are red.
((("someone" "is" "rough" "+")) -> ("someone" "is" "red" "+"))
Round, rough people are red.
((("someone" "is" "round" "+") ("someone" "is" "rough" "+")) -> ("someone" "is" "red" "+"))
If someone is big then they are white.
((("someone" "is" "big" "+")) -> ("someone" "is" "white" "+"))
All furry, rough people are red.
((("someone" "is" "furry" "+") ("someone" "is" "rough" "+")) -> ("someone" "is" "red" "+"))
All rough, kind people are round.
((("someone" "is" "rough" "+") ("someone" "is" "kind" "+")) -> ("someone" "is" "round" "+"))
If Anne is furry then Anne is red.
((("Anne" "is" "furry" "+")) -> ("Anne" "is" "red" "+"))
If someone is kind and red then they are rough.
((("someone" "is" "kind" "+") ("someone" "is" "red" "+")) -> ("someone" "is" "rough" "+"))
If someone is kind and big then they are furry.
((("someone" "is" "kind" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "furry" "+"))
Harry is round.
True
1
proof
[(triple9 OR ((triple8 triple6) -> rule5) OR ((((triple6 triple7) -> rule7) triple6) -> rule5))]
("Harry" "is" "round" "+")
triple9
((triple8 triple6) -> (rule5 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
((((triple6 triple7) -> (rule7 % int2)) triple6) -> (rule5 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
Anne is not round.
False
1
inv-proof
[(triple3 OR ((((triple2 ((triple1) -> rule6)) -> rule7) triple2) -> rule5))]
("Anne" "is" "round" "-")
triple3
((((triple2 ((triple1) -> (rule6 % int3))) -> (rule7 % int2)) triple2) -> (rule5 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is red.
("Anne" "is" "red" "+")
int3
Anne is red.
True
2
proof
[(((triple1) -> rule6))]
("Anne" "is" "red" "+")
((triple1) -> (rule6 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is not red.
False
2
inv-proof
[(((triple1) -> rule6))]
("Anne" "is" "red" "-")
((triple1) -> (rule6 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is rough.
True
4
proof
[(((triple2 ((triple1) -> rule6)) -> rule7))]
("Anne" "is" "rough" "+")
((triple2 ((triple1) -> (rule6 % int2))) -> (rule7 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
int2
Anne is not rough.
False
4
inv-proof
[(((triple2 ((triple1) -> rule6)) -> rule7))]
("Anne" "is" "rough" "-")
((triple2 ((triple1) -> (rule6 % int2))) -> (rule7 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
int2
Anne is not white.
Unknown
inv-rconc
[@1: Anne is white.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Anne" "is" "white" "-")
Anne is big.
Unknown
random
[@0: Anne is big.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "big" "+")
@0: Anne is furry.[(triple1)] Anne is kind.[(triple2)] Anne is round.[(triple3 OR ((((triple2 ((triple1) -> rule6)) -> rule7) triple2) -> rule5))] Harry is big.[(triple4)] Harry is furry.[(triple5 OR ((triple6 triple4) -> rule8))] Harry is kind.[(triple6)] Harry is red.[(triple7 OR ((triple8) -> rule1) OR ((triple5 triple8) -> rule4) OR ((triple9 triple8) -> rule2) OR ((((triple6 triple4) -> rule8) triple8) -> rule4) OR ((((triple8 triple6) -> rule5) triple8) -> rule2))] Harry is rough.[(triple8 OR ((triple6 triple7) -> rule7))] Harry is round.[(triple9 OR ((triple8 triple6) -> rule5) OR ((((triple6 triple7) -> rule7) triple6) -> rule5))] Harry is white.[(triple10 OR ((triple4) -> rule3))] @1: Anne is red.[(((triple1) -> rule6))] @2: Anne is rough.[(((triple2 ((triple1) -> rule6)) -> rule7))]
Anne is furry.
("Anne" "is" "furry" "+")
triple1
Anne is kind.
("Anne" "is" "kind" "+")
triple2
Anne is round.
("Anne" "is" "round" "+")
triple3
((((triple2 ((triple1) -> (rule6 % int3))) -> (rule7 % int2)) triple2) -> (rule5 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is red.
("Anne" "is" "red" "+")
int3
Harry is big.
("Harry" "is" "big" "+")
triple4
Harry is furry.
("Harry" "is" "furry" "+")
triple5
((triple6 triple4) -> (rule8 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
triple6
Harry is red.
("Harry" "is" "red" "+")
triple7
((triple8) -> (rule1 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
((triple5 triple8) -> (rule4 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
((triple9 triple8) -> (rule2 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
((((triple6 triple4) -> (rule8 % int2)) triple8) -> (rule4 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2
((((triple8 triple6) -> (rule5 % int2)) triple8) -> (rule2 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
Harry is rough.
("Harry" "is" "rough" "+")
triple8
((triple6 triple7) -> (rule7 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
triple9
((triple8 triple6) -> (rule5 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
((((triple6 triple7) -> (rule7 % int2)) triple6) -> (rule5 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
Harry is white.
("Harry" "is" "white" "+")
triple10
((triple4) -> (rule3 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
((triple1) -> (rule6 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
((triple2 ((triple1) -> (rule6 % int2))) -> (rule7 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
int2