The rabbit is big. The rabbit is cold. The rabbit is nice. The rabbit is red. The rabbit is round. All round people are cold. All big, cold people are red. If someone is round and nice then they are red. Round people are cold. Nice, red people are cold. If the rabbit is red and the rabbit is round then the rabbit is nice. If someone is big and round then they are nice. If someone is round and red then they are nice.
The rabbit is big.
("rabbit" "is" "big" "+")
The rabbit is cold.
("rabbit" "is" "cold" "+")
The rabbit is nice.
("rabbit" "is" "nice" "+")
The rabbit is red.
("rabbit" "is" "red" "+")
The rabbit is round.
("rabbit" "is" "round" "+")
All round people are cold.
((("someone" "is" "round" "+")) -> ("someone" "is" "cold" "+"))
All big, cold people are red.
((("someone" "is" "big" "+") ("someone" "is" "cold" "+")) -> ("someone" "is" "red" "+"))
If someone is round and nice then they are red.
((("someone" "is" "round" "+") ("someone" "is" "nice" "+")) -> ("someone" "is" "red" "+"))
Round people are cold.
((("someone" "is" "round" "+")) -> ("someone" "is" "cold" "+"))
Nice, red people are cold.
((("someone" "is" "nice" "+") ("someone" "is" "red" "+")) -> ("someone" "is" "cold" "+"))
If the rabbit is red and the rabbit is round then the rabbit is nice.
((("rabbit" "is" "red" "+") ("rabbit" "is" "round" "+")) -> ("rabbit" "is" "nice" "+"))
If someone is big and round then they are nice.
((("someone" "is" "big" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "nice" "+"))
If someone is round and red then they are nice.
((("someone" "is" "round" "+") ("someone" "is" "red" "+")) -> ("someone" "is" "nice" "+"))
The rabbit is cold.
True
1
proof
[(triple2 OR ((triple5) -> rule1) OR ((triple5) -> rule4) OR ((triple3 triple4) -> rule5) OR ((triple3 ((triple5 triple3) -> rule3)) -> rule5) OR ((((triple1 triple5) -> rule7) triple4) -> rule5) OR ((((triple4 triple5) -> rule6) triple4) -> rule5) OR ((((triple5 triple4) -> rule8) triple4) -> rule5) OR ((((triple1 triple5) -> rule7) ((triple5 triple3) -> rule3)) -> rule5) OR ((((triple4 triple5) -> rule6) ((triple5 triple3) -> rule3)) -> rule5) OR ((((triple5 triple4) -> rule8) ((triple5 triple3) -> rule3)) -> rule5) OR ((triple3 ((triple5 ((triple1 triple5) -> rule7)) -> rule3)) -> rule5) OR ((((triple1 triple5) -> rule7) ((triple5 ((triple1 triple5) -> rule7)) -> rule3)) -> rule5) OR ((((triple4 triple5) -> rule6) ((triple5 ((triple1 triple5) -> rule7)) -> rule3)) -> rule5) OR ((((triple5 triple4) -> rule8) ((triple5 ((triple1 triple5) -> rule7)) -> rule3)) -> rule5))]
("rabbit" "is" "cold" "+")
triple2
((triple5) -> (rule1 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
((triple5) -> (rule4 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
((triple3 triple4) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
((triple3 ((triple5 triple3) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
((((triple1 triple5) -> (rule7 % int2)) triple4) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is nice.
("rabbit" "is" "nice" "+")
int2
((((triple4 triple5) -> (rule6 % int2)) triple4) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is nice.
("rabbit" "is" "nice" "+")
int2
((((triple5 triple4) -> (rule8 % int2)) triple4) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is nice.
("rabbit" "is" "nice" "+")
int2
((((triple1 triple5) -> (rule7 % int3)) ((triple5 triple3) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
((((triple4 triple5) -> (rule6 % int3)) ((triple5 triple3) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
((((triple5 triple4) -> (rule8 % int3)) ((triple5 triple3) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
((triple3 ((triple5 ((triple1 triple5) -> (rule7 % int3))) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
((((triple1 triple5) -> (rule7 % int3)) ((triple5 ((triple1 triple5) -> (rule7 % int3))) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
((((triple4 triple5) -> (rule6 % int3)) ((triple5 ((triple1 triple5) -> (rule7 % int3))) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
((((triple5 triple4) -> (rule8 % int3)) ((triple5 ((triple1 triple5) -> (rule7 % int3))) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
The rabbit is not red.
False
1
inv-proof
[(triple4 OR ((triple1 triple2) -> rule2) OR ((triple5 triple3) -> rule3) OR ((triple1 ((triple5) -> rule1)) -> rule2) OR ((triple1 ((triple5) -> rule4)) -> rule2) OR ((triple5 ((triple1 triple5) -> rule7)) -> rule3))]
("rabbit" "is" "red" "-")
triple4
((triple1 triple2) -> (rule2 % int1))
The rabbit is red.
("rabbit" "is" "red" "+")
int1
((triple5 triple3) -> (rule3 % int1))
The rabbit is red.
("rabbit" "is" "red" "+")
int1
((triple1 ((triple5) -> (rule1 % int2))) -> (rule2 % int1))
The rabbit is red.
("rabbit" "is" "red" "+")
int1
The rabbit is cold.
("rabbit" "is" "cold" "+")
int2
((triple1 ((triple5) -> (rule4 % int2))) -> (rule2 % int1))
The rabbit is red.
("rabbit" "is" "red" "+")
int1
The rabbit is cold.
("rabbit" "is" "cold" "+")
int2
((triple5 ((triple1 triple5) -> (rule7 % int2))) -> (rule3 % int1))
The rabbit is red.
("rabbit" "is" "red" "+")
int1
The rabbit is nice.
("rabbit" "is" "nice" "+")
int2
The rabbit does not like the rabbit.
Unknown
inv-random
[@0: The rabbit likes the rabbit.[CWA. Example of deepest failure = (FAIL)]]
("rabbit" "likes" "rabbit" "-")
The rabbit sees the rabbit.
Unknown
random
[@0: The rabbit sees the rabbit.[CWA. Example of deepest failure = (FAIL)]]
("rabbit" "sees" "rabbit" "+")
@0: The rabbit is big.[(triple1)] The rabbit is cold.[(triple2 OR ((triple5) -> rule1) OR ((triple5) -> rule4) OR ((triple3 triple4) -> rule5) OR ((triple3 ((triple5 triple3) -> rule3)) -> rule5) OR ((((triple1 triple5) -> rule7) triple4) -> rule5) OR ((((triple4 triple5) -> rule6) triple4) -> rule5) OR ((((triple5 triple4) -> rule8) triple4) -> rule5) OR ((((triple1 triple5) -> rule7) ((triple5 triple3) -> rule3)) -> rule5) OR ((((triple4 triple5) -> rule6) ((triple5 triple3) -> rule3)) -> rule5) OR ((((triple5 triple4) -> rule8) ((triple5 triple3) -> rule3)) -> rule5) OR ((triple3 ((triple5 ((triple1 triple5) -> rule7)) -> rule3)) -> rule5) OR ((((triple1 triple5) -> rule7) ((triple5 ((triple1 triple5) -> rule7)) -> rule3)) -> rule5) OR ((((triple4 triple5) -> rule6) ((triple5 ((triple1 triple5) -> rule7)) -> rule3)) -> rule5) OR ((((triple5 triple4) -> rule8) ((triple5 ((triple1 triple5) -> rule7)) -> rule3)) -> rule5))] The rabbit is nice.[(triple3 OR ((triple1 triple5) -> rule7) OR ((triple4 triple5) -> rule6) OR ((triple5 triple4) -> rule8) OR ((triple5 ((triple1 triple2) -> rule2)) -> rule8) OR ((((triple1 triple2) -> rule2) triple5) -> rule6) OR ((triple5 ((triple1 ((triple5) -> rule1)) -> rule2)) -> rule8) OR ((triple5 ((triple1 ((triple5) -> rule4)) -> rule2)) -> rule8) OR ((((triple1 ((triple5) -> rule1)) -> rule2) triple5) -> rule6) OR ((((triple1 ((triple5) -> rule4)) -> rule2) triple5) -> rule6))] The rabbit is red.[(triple4 OR ((triple1 triple2) -> rule2) OR ((triple5 triple3) -> rule3) OR ((triple1 ((triple5) -> rule1)) -> rule2) OR ((triple1 ((triple5) -> rule4)) -> rule2) OR ((triple5 ((triple1 triple5) -> rule7)) -> rule3))] The rabbit is round.[(triple5)]
The rabbit is big.
("rabbit" "is" "big" "+")
triple1
The rabbit is cold.
("rabbit" "is" "cold" "+")
triple2
((triple5) -> (rule1 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
((triple5) -> (rule4 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
((triple3 triple4) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
((triple3 ((triple5 triple3) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
((((triple1 triple5) -> (rule7 % int2)) triple4) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is nice.
("rabbit" "is" "nice" "+")
int2
((((triple4 triple5) -> (rule6 % int2)) triple4) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is nice.
("rabbit" "is" "nice" "+")
int2
((((triple5 triple4) -> (rule8 % int2)) triple4) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is nice.
("rabbit" "is" "nice" "+")
int2
((((triple1 triple5) -> (rule7 % int3)) ((triple5 triple3) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
((((triple4 triple5) -> (rule6 % int3)) ((triple5 triple3) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
((((triple5 triple4) -> (rule8 % int3)) ((triple5 triple3) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
((triple3 ((triple5 ((triple1 triple5) -> (rule7 % int3))) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
((((triple1 triple5) -> (rule7 % int3)) ((triple5 ((triple1 triple5) -> (rule7 % int3))) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
((((triple4 triple5) -> (rule6 % int3)) ((triple5 ((triple1 triple5) -> (rule7 % int3))) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
((((triple5 triple4) -> (rule8 % int3)) ((triple5 ((triple1 triple5) -> (rule7 % int3))) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit is cold.
("rabbit" "is" "cold" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
The rabbit is nice.
("rabbit" "is" "nice" "+")
triple3
((triple1 triple5) -> (rule7 % int1))
The rabbit is nice.
("rabbit" "is" "nice" "+")
int1
((triple4 triple5) -> (rule6 % int1))
The rabbit is nice.
("rabbit" "is" "nice" "+")
int1
((triple5 triple4) -> (rule8 % int1))
The rabbit is nice.
("rabbit" "is" "nice" "+")
int1
((triple5 ((triple1 triple2) -> (rule2 % int2))) -> (rule8 % int1))
The rabbit is nice.
("rabbit" "is" "nice" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
((((triple1 triple2) -> (rule2 % int2)) triple5) -> (rule6 % int1))
The rabbit is nice.
("rabbit" "is" "nice" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
((triple5 ((triple1 ((triple5) -> (rule1 % int3))) -> (rule2 % int2))) -> (rule8 % int1))
The rabbit is nice.
("rabbit" "is" "nice" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
The rabbit is cold.
("rabbit" "is" "cold" "+")
int3
((triple5 ((triple1 ((triple5) -> (rule4 % int3))) -> (rule2 % int2))) -> (rule8 % int1))
The rabbit is nice.
("rabbit" "is" "nice" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
The rabbit is cold.
("rabbit" "is" "cold" "+")
int3
((((triple1 ((triple5) -> (rule1 % int3))) -> (rule2 % int2)) triple5) -> (rule6 % int1))
The rabbit is nice.
("rabbit" "is" "nice" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
The rabbit is cold.
("rabbit" "is" "cold" "+")
int3
((((triple1 ((triple5) -> (rule4 % int3))) -> (rule2 % int2)) triple5) -> (rule6 % int1))
The rabbit is nice.
("rabbit" "is" "nice" "+")
int1
The rabbit is red.
("rabbit" "is" "red" "+")
int2
The rabbit is cold.
("rabbit" "is" "cold" "+")
int3
The rabbit is red.
("rabbit" "is" "red" "+")
triple4
((triple1 triple2) -> (rule2 % int1))
The rabbit is red.
("rabbit" "is" "red" "+")
int1
((triple5 triple3) -> (rule3 % int1))
The rabbit is red.
("rabbit" "is" "red" "+")
int1
((triple1 ((triple5) -> (rule1 % int2))) -> (rule2 % int1))
The rabbit is red.
("rabbit" "is" "red" "+")
int1
The rabbit is cold.
("rabbit" "is" "cold" "+")
int2
((triple1 ((triple5) -> (rule4 % int2))) -> (rule2 % int1))
The rabbit is red.
("rabbit" "is" "red" "+")
int1
The rabbit is cold.
("rabbit" "is" "cold" "+")
int2
((triple5 ((triple1 triple5) -> (rule7 % int2))) -> (rule3 % int1))
The rabbit is red.
("rabbit" "is" "red" "+")
int1
The rabbit is nice.
("rabbit" "is" "nice" "+")
int2
The rabbit is round.
("rabbit" "is" "round" "+")
triple5