The cat is kind. The cat is nice. The cat is red. The cat sees the rabbit. The cat visits the rabbit. The rabbit is blue. The rabbit is green. The rabbit is red. The rabbit needs the cat. The rabbit sees the cat. If the rabbit visits the cat then the cat sees the rabbit. If something sees the rabbit and the rabbit needs the cat then the rabbit visits the cat. If something needs the cat and the cat is kind then it needs the rabbit. Kind things are nice. If something visits the rabbit and the rabbit is kind then it needs the cat. All red things are kind. If something visits the cat then the cat is kind. If something is green and it needs the rabbit then the rabbit visits the cat.
The cat is kind.
("cat" "is" "kind" "+")
The cat is nice.
("cat" "is" "nice" "+")
The cat is red.
("cat" "is" "red" "+")
The cat sees the rabbit.
("cat" "sees" "rabbit" "+")
The cat visits the rabbit.
("cat" "visits" "rabbit" "+")
The rabbit is blue.
("rabbit" "is" "blue" "+")
The rabbit is green.
("rabbit" "is" "green" "+")
The rabbit is red.
("rabbit" "is" "red" "+")
The rabbit needs the cat.
("rabbit" "needs" "cat" "+")
The rabbit sees the cat.
("rabbit" "sees" "cat" "+")
If the rabbit visits the cat then the cat sees the rabbit.
((("rabbit" "visits" "cat" "+")) -> ("cat" "sees" "rabbit" "+"))
If something sees the rabbit and the rabbit needs the cat then the rabbit visits the cat.
((("something" "sees" "rabbit" "+") ("rabbit" "needs" "cat" "+")) -> ("rabbit" "visits" "cat" "+"))
If something needs the cat and the cat is kind then it needs the rabbit.
((("something" "needs" "cat" "+") ("cat" "is" "kind" "+")) -> ("something" "needs" "rabbit" "+"))
Kind things are nice.
((("something" "is" "kind" "+")) -> ("something" "is" "nice" "+"))
If something visits the rabbit and the rabbit is kind then it needs the cat.
((("something" "visits" "rabbit" "+") ("rabbit" "is" "kind" "+")) -> ("something" "needs" "cat" "+"))
All red things are kind.
((("something" "is" "red" "+")) -> ("something" "is" "kind" "+"))
If something visits the cat then the cat is kind.
((("something" "visits" "cat" "+")) -> ("cat" "is" "kind" "+"))
If something is green and it needs the rabbit then the rabbit visits the cat.
((("something" "is" "green" "+") ("something" "needs" "rabbit" "+")) -> ("rabbit" "visits" "cat" "+"))
The rabbit is green.
True
1
proof
[(triple7)]
("rabbit" "is" "green" "+")
triple7
The rabbit does not need the cat.
False
1
inv-proof
[(triple9)]
("rabbit" "needs" "cat" "-")
triple9
The rabbit needs the rabbit.
True
3
proof
[(((triple9 triple1) -> rule3) OR ((triple9 ((triple3) -> rule6)) -> rule3) OR ((triple9 ((((triple4 triple9) -> rule2)) -> rule7)) -> rule3))]
("rabbit" "needs" "rabbit" "+")
((triple9 triple1) -> (rule3 % int1))
The rabbit needs the rabbit.
("rabbit" "needs" "rabbit" "+")
int1
((triple9 ((triple3) -> (rule6 % int2))) -> (rule3 % int1))
The rabbit needs the rabbit.
("rabbit" "needs" "rabbit" "+")
int1
The cat is kind.
("cat" "is" "kind" "+")
int2
((triple9 ((((triple4 triple9) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule3 % int1))
The rabbit needs the rabbit.
("rabbit" "needs" "rabbit" "+")
int1
The cat is kind.
("cat" "is" "kind" "+")
int2
The rabbit visits the cat.
("rabbit" "visits" "cat" "+")
int3
The rabbit is not kind.
False
2
inv-proof
[(((triple8) -> rule6))]
("rabbit" "is" "kind" "-")
((triple8) -> (rule6 % int1))
The rabbit is kind.
("rabbit" "is" "kind" "+")
int1
The cat needs the cat.
True
4
proof
[(((triple5 ((triple8) -> rule6)) -> rule5))]
("cat" "needs" "cat" "+")
((triple5 ((triple8) -> (rule6 % int2))) -> (rule5 % int1))
The cat needs the cat.
("cat" "needs" "cat" "+")
int1
The rabbit is kind.
("rabbit" "is" "kind" "+")
int2
The rabbit is not nice.
False
3
inv-proof
[(((((triple8) -> rule6)) -> rule4))]
("rabbit" "is" "nice" "-")
((((triple8) -> (rule6 % int2))) -> (rule4 % int1))
The rabbit is nice.
("rabbit" "is" "nice" "+")
int1
The rabbit is kind.
("rabbit" "is" "kind" "+")
int2
The cat needs the rabbit.
True
6
proof
[(((((triple5 ((triple8) -> rule6)) -> rule5) triple1) -> rule3) OR ((((triple5 ((triple8) -> rule6)) -> rule5) ((triple3) -> rule6)) -> rule3) OR ((((triple5 ((triple8) -> rule6)) -> rule5) ((((triple4 triple9) -> rule2)) -> rule7)) -> rule3))]
("cat" "needs" "rabbit" "+")
((((triple5 ((triple8) -> (rule6 % int3))) -> (rule5 % int2)) triple1) -> (rule3 % int1))
The cat needs the rabbit.
("cat" "needs" "rabbit" "+")
int1
The cat needs the cat.
("cat" "needs" "cat" "+")
int2
The rabbit is kind.
("rabbit" "is" "kind" "+")
int3
((((triple5 ((triple8) -> (rule6 % int4))) -> (rule5 % int3)) ((triple3) -> (rule6 % int2))) -> (rule3 % int1))
The cat needs the rabbit.
("cat" "needs" "rabbit" "+")
int1
The cat is kind.
("cat" "is" "kind" "+")
int2
The cat needs the cat.
("cat" "needs" "cat" "+")
int3
The rabbit is kind.
("rabbit" "is" "kind" "+")
int4
((((triple5 ((triple8) -> (rule6 % int5))) -> (rule5 % int4)) ((((triple4 triple9) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule3 % int1))
The cat needs the rabbit.
("cat" "needs" "rabbit" "+")
int1
The cat is kind.
("cat" "is" "kind" "+")
int2
The rabbit visits the cat.
("rabbit" "visits" "cat" "+")
int3
The cat needs the cat.
("cat" "needs" "cat" "+")
int4
The rabbit is kind.
("rabbit" "is" "kind" "+")
int5
The cat does not need the rabbit.
False
6
inv-proof
[(((((triple5 ((triple8) -> rule6)) -> rule5) triple1) -> rule3) OR ((((triple5 ((triple8) -> rule6)) -> rule5) ((triple3) -> rule6)) -> rule3) OR ((((triple5 ((triple8) -> rule6)) -> rule5) ((((triple4 triple9) -> rule2)) -> rule7)) -> rule3))]
("cat" "needs" "rabbit" "-")
((((triple5 ((triple8) -> (rule6 % int3))) -> (rule5 % int2)) triple1) -> (rule3 % int1))
The cat needs the rabbit.
("cat" "needs" "rabbit" "+")
int1
The cat needs the cat.
("cat" "needs" "cat" "+")
int2
The rabbit is kind.
("rabbit" "is" "kind" "+")
int3
((((triple5 ((triple8) -> (rule6 % int4))) -> (rule5 % int3)) ((triple3) -> (rule6 % int2))) -> (rule3 % int1))
The cat needs the rabbit.
("cat" "needs" "rabbit" "+")
int1
The cat is kind.
("cat" "is" "kind" "+")
int2
The cat needs the cat.
("cat" "needs" "cat" "+")
int3
The rabbit is kind.
("rabbit" "is" "kind" "+")
int4
((((triple5 ((triple8) -> (rule6 % int5))) -> (rule5 % int4)) ((((triple4 triple9) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule3 % int1))
The cat needs the rabbit.
("cat" "needs" "rabbit" "+")
int1
The cat is kind.
("cat" "is" "kind" "+")
int2
The rabbit visits the cat.
("rabbit" "visits" "cat" "+")
int3
The cat needs the cat.
("cat" "needs" "cat" "+")
int4
The rabbit is kind.
("rabbit" "is" "kind" "+")
int5
The cat is not blue.
Unknown
inv-random
[@0: The cat is blue.[CWA. Example of deepest failure = (FAIL)]]
("cat" "is" "blue" "-")
The cat sees the cat.
Unknown
random
[@0: The cat sees the cat.[CWA. Example of deepest failure = (FAIL)]]
("cat" "sees" "cat" "+")
The cat does not visit the cat.
Unknown
inv-random
[@0: The cat visits the cat.[CWA. Example of deepest failure = (FAIL)]]
("cat" "visits" "cat" "-")
The rabbit sees the rabbit.
Unknown
random
[@0: The rabbit sees the rabbit.[CWA. Example of deepest failure = (FAIL)]]
("rabbit" "sees" "rabbit" "+")
The rabbit does not visit the rabbit.
Unknown
inv-random
[@0: The rabbit visits the rabbit.[CWA. Example of deepest failure = (FAIL)]]
("rabbit" "visits" "rabbit" "-")
The cat is green.
Unknown
random
[@0: The cat is green.[CWA. Example of deepest failure = (FAIL)]]
("cat" "is" "green" "+")
@0: The cat is kind.[(triple1 OR ((triple3) -> rule6) OR ((((triple4 triple9) -> rule2)) -> rule7))] The cat is nice.[(triple2 OR ((triple1) -> rule4) OR ((((triple3) -> rule6)) -> rule4) OR ((((((triple4 triple9) -> rule2)) -> rule7)) -> rule4))] The cat is red.[(triple3)] The cat sees the rabbit.[(triple4 OR ((((triple7 ((triple9 triple1) -> rule3)) -> rule8)) -> rule1) OR ((((triple7 ((triple9 ((triple3) -> rule6)) -> rule3)) -> rule8)) -> rule1))] The cat visits the rabbit.[(triple5)] The rabbit is blue.[(triple6)] The rabbit is green.[(triple7)] The rabbit is red.[(triple8)] The rabbit needs the cat.[(triple9)] The rabbit sees the cat.[(triple10)] @1: The rabbit is kind.[(((triple8) -> rule6))] The rabbit needs the rabbit.[(((triple9 triple1) -> rule3) OR ((triple9 ((triple3) -> rule6)) -> rule3) OR ((triple9 ((((triple4 triple9) -> rule2)) -> rule7)) -> rule3))] The rabbit visits the cat.[(((triple4 triple9) -> rule2) OR ((triple7 ((triple9 triple1) -> rule3)) -> rule8) OR ((triple7 ((triple9 ((triple3) -> rule6)) -> rule3)) -> rule8))] @2: The cat needs the cat.[(((triple5 ((triple8) -> rule6)) -> rule5))] The rabbit is nice.[(((((triple8) -> rule6)) -> rule4))] @3: The cat needs the rabbit.[(((((triple5 ((triple8) -> rule6)) -> rule5) triple1) -> rule3) OR ((((triple5 ((triple8) -> rule6)) -> rule5) ((triple3) -> rule6)) -> rule3) OR ((((triple5 ((triple8) -> rule6)) -> rule5) ((((triple4 triple9) -> rule2)) -> rule7)) -> rule3))]
The cat is kind.
("cat" "is" "kind" "+")
triple1
((triple3) -> (rule6 % int1))
The cat is kind.
("cat" "is" "kind" "+")
int1
((((triple4 triple9) -> (rule2 % int2))) -> (rule7 % int1))
The cat is kind.
("cat" "is" "kind" "+")
int1
The rabbit visits the cat.
("rabbit" "visits" "cat" "+")
int2
The cat is nice.
("cat" "is" "nice" "+")
triple2
((triple1) -> (rule4 % int1))
The cat is nice.
("cat" "is" "nice" "+")
int1
((((triple3) -> (rule6 % int2))) -> (rule4 % int1))
The cat is nice.
("cat" "is" "nice" "+")
int1
The cat is kind.
("cat" "is" "kind" "+")
int2
((((((triple4 triple9) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule4 % int1))
The cat is nice.
("cat" "is" "nice" "+")
int1
The cat is kind.
("cat" "is" "kind" "+")
int2
The rabbit visits the cat.
("rabbit" "visits" "cat" "+")
int3
The cat is red.
("cat" "is" "red" "+")
triple3
The cat sees the rabbit.
("cat" "sees" "rabbit" "+")
triple4
((((triple7 ((triple9 triple1) -> (rule3 % int3))) -> (rule8 % int2))) -> (rule1 % int1))
The cat sees the rabbit.
("cat" "sees" "rabbit" "+")
int1
The rabbit visits the cat.
("rabbit" "visits" "cat" "+")
int2
The rabbit needs the rabbit.
("rabbit" "needs" "rabbit" "+")
int3
((((triple7 ((triple9 ((triple3) -> (rule6 % int4))) -> (rule3 % int3))) -> (rule8 % int2))) -> (rule1 % int1))
The cat sees the rabbit.
("cat" "sees" "rabbit" "+")
int1
The rabbit visits the cat.
("rabbit" "visits" "cat" "+")
int2
The rabbit needs the rabbit.
("rabbit" "needs" "rabbit" "+")
int3
The cat is kind.
("cat" "is" "kind" "+")
int4
The cat visits the rabbit.
("cat" "visits" "rabbit" "+")
triple5
The rabbit is blue.
("rabbit" "is" "blue" "+")
triple6
The rabbit is green.
("rabbit" "is" "green" "+")
triple7
The rabbit is red.
("rabbit" "is" "red" "+")
triple8
The rabbit needs the cat.
("rabbit" "needs" "cat" "+")
triple9
The rabbit sees the cat.
("rabbit" "sees" "cat" "+")
triple10
The rabbit is kind.
("rabbit" "is" "kind" "+")
((triple8) -> (rule6 % int1))
The rabbit is kind.
("rabbit" "is" "kind" "+")
int1
The rabbit needs the rabbit.
("rabbit" "needs" "rabbit" "+")
((triple9 triple1) -> (rule3 % int1))
The rabbit needs the rabbit.
("rabbit" "needs" "rabbit" "+")
int1
((triple9 ((triple3) -> (rule6 % int2))) -> (rule3 % int1))
The rabbit needs the rabbit.
("rabbit" "needs" "rabbit" "+")
int1
The cat is kind.
("cat" "is" "kind" "+")
int2
((triple9 ((((triple4 triple9) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule3 % int1))
The rabbit needs the rabbit.
("rabbit" "needs" "rabbit" "+")
int1
The cat is kind.
("cat" "is" "kind" "+")
int2
The rabbit visits the cat.
("rabbit" "visits" "cat" "+")
int3
The rabbit visits the cat.
("rabbit" "visits" "cat" "+")
((triple4 triple9) -> (rule2 % int1))
The rabbit visits the cat.
("rabbit" "visits" "cat" "+")
int1
((triple7 ((triple9 triple1) -> (rule3 % int2))) -> (rule8 % int1))
The rabbit visits the cat.
("rabbit" "visits" "cat" "+")
int1
The rabbit needs the rabbit.
("rabbit" "needs" "rabbit" "+")
int2
((triple7 ((triple9 ((triple3) -> (rule6 % int3))) -> (rule3 % int2))) -> (rule8 % int1))
The rabbit visits the cat.
("rabbit" "visits" "cat" "+")
int1
The rabbit needs the rabbit.
("rabbit" "needs" "rabbit" "+")
int2
The cat is kind.
("cat" "is" "kind" "+")
int3
The cat needs the cat.
("cat" "needs" "cat" "+")
((triple5 ((triple8) -> (rule6 % int2))) -> (rule5 % int1))
The cat needs the cat.
("cat" "needs" "cat" "+")
int1
The rabbit is kind.
("rabbit" "is" "kind" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
((((triple8) -> (rule6 % int2))) -> (rule4 % int1))
The rabbit is nice.
("rabbit" "is" "nice" "+")
int1
The rabbit is kind.
("rabbit" "is" "kind" "+")
int2
The cat needs the rabbit.
("cat" "needs" "rabbit" "+")
((((triple5 ((triple8) -> (rule6 % int3))) -> (rule5 % int2)) triple1) -> (rule3 % int1))
The cat needs the rabbit.
("cat" "needs" "rabbit" "+")
int1
The cat needs the cat.
("cat" "needs" "cat" "+")
int2
The rabbit is kind.
("rabbit" "is" "kind" "+")
int3
((((triple5 ((triple8) -> (rule6 % int4))) -> (rule5 % int3)) ((triple3) -> (rule6 % int2))) -> (rule3 % int1))
The cat needs the rabbit.
("cat" "needs" "rabbit" "+")
int1
The cat is kind.
("cat" "is" "kind" "+")
int2
The cat needs the cat.
("cat" "needs" "cat" "+")
int3
The rabbit is kind.
("rabbit" "is" "kind" "+")
int4
((((triple5 ((triple8) -> (rule6 % int5))) -> (rule5 % int4)) ((((triple4 triple9) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule3 % int1))
The cat needs the rabbit.
("cat" "needs" "rabbit" "+")
int1
The cat is kind.
("cat" "is" "kind" "+")
int2
The rabbit visits the cat.
("rabbit" "visits" "cat" "+")
int3
The cat needs the cat.
("cat" "needs" "cat" "+")
int4
The rabbit is kind.
("rabbit" "is" "kind" "+")
int5