The lion is big. The lion is cold. The lion is green. The lion is nice. The lion is red. Big things are cold. Cold, green things are red. Cold things are red. All nice, big things are red. If something is nice then it is red. Red things are nice. If something is green then it is nice. All cold things are green.
The lion is big.
("lion" "is" "big" "+")
The lion is cold.
("lion" "is" "cold" "+")
The lion is green.
("lion" "is" "green" "+")
The lion is nice.
("lion" "is" "nice" "+")
The lion is red.
("lion" "is" "red" "+")
Big things are cold.
((("something" "is" "big" "+")) -> ("something" "is" "cold" "+"))
Cold, green things are red.
((("something" "is" "cold" "+") ("something" "is" "green" "+")) -> ("something" "is" "red" "+"))
Cold things are red.
((("something" "is" "cold" "+")) -> ("something" "is" "red" "+"))
All nice, big things are red.
((("something" "is" "nice" "+") ("something" "is" "big" "+")) -> ("something" "is" "red" "+"))
If something is nice then it is red.
((("something" "is" "nice" "+")) -> ("something" "is" "red" "+"))
Red things are nice.
((("something" "is" "red" "+")) -> ("something" "is" "nice" "+"))
If something is green then it is nice.
((("something" "is" "green" "+")) -> ("something" "is" "nice" "+"))
All cold things are green.
((("something" "is" "cold" "+")) -> ("something" "is" "green" "+"))
The lion is nice.
True
1
proof
[(triple4 OR ((triple3) -> rule7) OR ((triple5) -> rule6) OR ((((triple2) -> rule3)) -> rule6) OR ((((triple2) -> rule8)) -> rule7) OR ((((triple2 triple3) -> rule2)) -> rule6) OR ((((((triple1) -> rule1)) -> rule3)) -> rule6) OR ((((((triple1) -> rule1)) -> rule8)) -> rule7) OR ((((triple2 ((triple2) -> rule8)) -> rule2)) -> rule6) OR ((((((triple1) -> rule1) triple3) -> rule2)) -> rule6) OR ((((((triple1) -> rule1) ((triple2) -> rule8)) -> rule2)) -> rule6) OR ((((triple2 ((((triple1) -> rule1)) -> rule8)) -> rule2)) -> rule6) OR ((((((triple1) -> rule1) ((((triple1) -> rule1)) -> rule8)) -> rule2)) -> rule6))]
("lion" "is" "nice" "+")
triple4
((triple3) -> (rule7 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
((triple5) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
((((triple2) -> (rule3 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
((((triple2) -> (rule8 % int2))) -> (rule7 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is green.
("lion" "is" "green" "+")
int2
((((triple2 triple3) -> (rule2 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
((((((triple1) -> (rule1 % int3))) -> (rule3 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
The lion is cold.
("lion" "is" "cold" "+")
int3
((((((triple1) -> (rule1 % int3))) -> (rule8 % int2))) -> (rule7 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is green.
("lion" "is" "green" "+")
int2
The lion is cold.
("lion" "is" "cold" "+")
int3
((((triple2 ((triple2) -> (rule8 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
The lion is green.
("lion" "is" "green" "+")
int3
((((((triple1) -> (rule1 % int3)) triple3) -> (rule2 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
The lion is cold.
("lion" "is" "cold" "+")
int3
((((((triple1) -> (rule1 % int4)) ((triple2) -> (rule8 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
The lion is green.
("lion" "is" "green" "+")
int3
The lion is cold.
("lion" "is" "cold" "+")
int4
((((triple2 ((((triple1) -> (rule1 % int4))) -> (rule8 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
The lion is green.
("lion" "is" "green" "+")
int3
The lion is cold.
("lion" "is" "cold" "+")
int4
((((((triple1) -> (rule1 % int4)) ((((triple1) -> (rule1 % int4))) -> (rule8 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
The lion is green.
("lion" "is" "green" "+")
int3
The lion is cold.
("lion" "is" "cold" "+")
int4
The lion is not nice.
False
1
inv-proof
[(triple4 OR ((triple3) -> rule7) OR ((triple5) -> rule6) OR ((((triple2) -> rule3)) -> rule6) OR ((((triple2) -> rule8)) -> rule7) OR ((((triple2 triple3) -> rule2)) -> rule6) OR ((((((triple1) -> rule1)) -> rule3)) -> rule6) OR ((((((triple1) -> rule1)) -> rule8)) -> rule7) OR ((((triple2 ((triple2) -> rule8)) -> rule2)) -> rule6) OR ((((((triple1) -> rule1) triple3) -> rule2)) -> rule6) OR ((((((triple1) -> rule1) ((triple2) -> rule8)) -> rule2)) -> rule6) OR ((((triple2 ((((triple1) -> rule1)) -> rule8)) -> rule2)) -> rule6) OR ((((((triple1) -> rule1) ((((triple1) -> rule1)) -> rule8)) -> rule2)) -> rule6))]
("lion" "is" "nice" "-")
triple4
((triple3) -> (rule7 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
((triple5) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
((((triple2) -> (rule3 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
((((triple2) -> (rule8 % int2))) -> (rule7 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is green.
("lion" "is" "green" "+")
int2
((((triple2 triple3) -> (rule2 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
((((((triple1) -> (rule1 % int3))) -> (rule3 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
The lion is cold.
("lion" "is" "cold" "+")
int3
((((((triple1) -> (rule1 % int3))) -> (rule8 % int2))) -> (rule7 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is green.
("lion" "is" "green" "+")
int2
The lion is cold.
("lion" "is" "cold" "+")
int3
((((triple2 ((triple2) -> (rule8 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
The lion is green.
("lion" "is" "green" "+")
int3
((((((triple1) -> (rule1 % int3)) triple3) -> (rule2 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
The lion is cold.
("lion" "is" "cold" "+")
int3
((((((triple1) -> (rule1 % int4)) ((triple2) -> (rule8 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
The lion is green.
("lion" "is" "green" "+")
int3
The lion is cold.
("lion" "is" "cold" "+")
int4
((((triple2 ((((triple1) -> (rule1 % int4))) -> (rule8 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
The lion is green.
("lion" "is" "green" "+")
int3
The lion is cold.
("lion" "is" "cold" "+")
int4
((((((triple1) -> (rule1 % int4)) ((((triple1) -> (rule1 % int4))) -> (rule8 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
The lion is green.
("lion" "is" "green" "+")
int3
The lion is cold.
("lion" "is" "cold" "+")
int4
The lion does not visit the lion.
Unknown
inv-random
[@0: The lion visits the lion.[CWA. Example of deepest failure = (FAIL)]]
("lion" "visits" "lion" "-")
The lion chases the lion.
Unknown
random
[@0: The lion chases the lion.[CWA. Example of deepest failure = (FAIL)]]
("lion" "chases" "lion" "+")
@0: The lion is big.[(triple1)] The lion is cold.[(triple2 OR ((triple1) -> rule1))] The lion is green.[(triple3 OR ((triple2) -> rule8) OR ((((triple1) -> rule1)) -> rule8))] The lion is nice.[(triple4 OR ((triple3) -> rule7) OR ((triple5) -> rule6) OR ((((triple2) -> rule3)) -> rule6) OR ((((triple2) -> rule8)) -> rule7) OR ((((triple2 triple3) -> rule2)) -> rule6) OR ((((((triple1) -> rule1)) -> rule3)) -> rule6) OR ((((((triple1) -> rule1)) -> rule8)) -> rule7) OR ((((triple2 ((triple2) -> rule8)) -> rule2)) -> rule6) OR ((((((triple1) -> rule1) triple3) -> rule2)) -> rule6) OR ((((((triple1) -> rule1) ((triple2) -> rule8)) -> rule2)) -> rule6) OR ((((triple2 ((((triple1) -> rule1)) -> rule8)) -> rule2)) -> rule6) OR ((((((triple1) -> rule1) ((((triple1) -> rule1)) -> rule8)) -> rule2)) -> rule6))] The lion is red.[(triple5 OR ((triple2) -> rule3) OR ((triple4) -> rule5) OR ((triple2 triple3) -> rule2) OR ((triple4 triple1) -> rule4) OR ((((triple1) -> rule1)) -> rule3) OR ((((triple3) -> rule7)) -> rule5) OR ((triple2 ((triple2) -> rule8)) -> rule2) OR ((((triple1) -> rule1) triple3) -> rule2) OR ((((triple3) -> rule7) triple1) -> rule4) OR ((((triple1) -> rule1) ((triple2) -> rule8)) -> rule2) OR ((((((triple2) -> rule8)) -> rule7)) -> rule5) OR ((triple2 ((((triple1) -> rule1)) -> rule8)) -> rule2) OR ((((((triple2) -> rule8)) -> rule7) triple1) -> rule4) OR ((((triple1) -> rule1) ((((triple1) -> rule1)) -> rule8)) -> rule2) OR ((((((((triple1) -> rule1)) -> rule8)) -> rule7)) -> rule5) OR ((((((((triple1) -> rule1)) -> rule8)) -> rule7) triple1) -> rule4))]
The lion is big.
("lion" "is" "big" "+")
triple1
The lion is cold.
("lion" "is" "cold" "+")
triple2
((triple1) -> (rule1 % int1))
The lion is cold.
("lion" "is" "cold" "+")
int1
The lion is green.
("lion" "is" "green" "+")
triple3
((triple2) -> (rule8 % int1))
The lion is green.
("lion" "is" "green" "+")
int1
((((triple1) -> (rule1 % int2))) -> (rule8 % int1))
The lion is green.
("lion" "is" "green" "+")
int1
The lion is cold.
("lion" "is" "cold" "+")
int2
The lion is nice.
("lion" "is" "nice" "+")
triple4
((triple3) -> (rule7 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
((triple5) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
((((triple2) -> (rule3 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
((((triple2) -> (rule8 % int2))) -> (rule7 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is green.
("lion" "is" "green" "+")
int2
((((triple2 triple3) -> (rule2 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
((((((triple1) -> (rule1 % int3))) -> (rule3 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
The lion is cold.
("lion" "is" "cold" "+")
int3
((((((triple1) -> (rule1 % int3))) -> (rule8 % int2))) -> (rule7 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is green.
("lion" "is" "green" "+")
int2
The lion is cold.
("lion" "is" "cold" "+")
int3
((((triple2 ((triple2) -> (rule8 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
The lion is green.
("lion" "is" "green" "+")
int3
((((((triple1) -> (rule1 % int3)) triple3) -> (rule2 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
The lion is cold.
("lion" "is" "cold" "+")
int3
((((((triple1) -> (rule1 % int4)) ((triple2) -> (rule8 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
The lion is green.
("lion" "is" "green" "+")
int3
The lion is cold.
("lion" "is" "cold" "+")
int4
((((triple2 ((((triple1) -> (rule1 % int4))) -> (rule8 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
The lion is green.
("lion" "is" "green" "+")
int3
The lion is cold.
("lion" "is" "cold" "+")
int4
((((((triple1) -> (rule1 % int4)) ((((triple1) -> (rule1 % int4))) -> (rule8 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
The lion is nice.
("lion" "is" "nice" "+")
int1
The lion is red.
("lion" "is" "red" "+")
int2
The lion is green.
("lion" "is" "green" "+")
int3
The lion is cold.
("lion" "is" "cold" "+")
int4
The lion is red.
("lion" "is" "red" "+")
triple5
((triple2) -> (rule3 % int1))
The lion is red.
("lion" "is" "red" "+")
int1
((triple4) -> (rule5 % int1))
The lion is red.
("lion" "is" "red" "+")
int1
((triple2 triple3) -> (rule2 % int1))
The lion is red.
("lion" "is" "red" "+")
int1
((triple4 triple1) -> (rule4 % int1))
The lion is red.
("lion" "is" "red" "+")
int1
((((triple1) -> (rule1 % int2))) -> (rule3 % int1))
The lion is red.
("lion" "is" "red" "+")
int1
The lion is cold.
("lion" "is" "cold" "+")
int2
((((triple3) -> (rule7 % int2))) -> (rule5 % int1))
The lion is red.
("lion" "is" "red" "+")
int1
The lion is nice.
("lion" "is" "nice" "+")
int2
((triple2 ((triple2) -> (rule8 % int2))) -> (rule2 % int1))
The lion is red.
("lion" "is" "red" "+")
int1
The lion is green.
("lion" "is" "green" "+")
int2
((((triple1) -> (rule1 % int2)) triple3) -> (rule2 % int1))
The lion is red.
("lion" "is" "red" "+")
int1
The lion is cold.
("lion" "is" "cold" "+")
int2
((((triple3) -> (rule7 % int2)) triple1) -> (rule4 % int1))
The lion is red.
("lion" "is" "red" "+")
int1
The lion is nice.
("lion" "is" "nice" "+")
int2
((((triple1) -> (rule1 % int3)) ((triple2) -> (rule8 % int2))) -> (rule2 % int1))
The lion is red.
("lion" "is" "red" "+")
int1
The lion is green.
("lion" "is" "green" "+")
int2
The lion is cold.
("lion" "is" "cold" "+")
int3
((((((triple2) -> (rule8 % int3))) -> (rule7 % int2))) -> (rule5 % int1))
The lion is red.
("lion" "is" "red" "+")
int1
The lion is nice.
("lion" "is" "nice" "+")
int2
The lion is green.
("lion" "is" "green" "+")
int3
((triple2 ((((triple1) -> (rule1 % int3))) -> (rule8 % int2))) -> (rule2 % int1))
The lion is red.
("lion" "is" "red" "+")
int1
The lion is green.
("lion" "is" "green" "+")
int2
The lion is cold.
("lion" "is" "cold" "+")
int3
((((((triple2) -> (rule8 % int3))) -> (rule7 % int2)) triple1) -> (rule4 % int1))
The lion is red.
("lion" "is" "red" "+")
int1
The lion is nice.
("lion" "is" "nice" "+")
int2
The lion is green.
("lion" "is" "green" "+")
int3
((((triple1) -> (rule1 % int3)) ((((triple1) -> (rule1 % int3))) -> (rule8 % int2))) -> (rule2 % int1))
The lion is red.
("lion" "is" "red" "+")
int1
The lion is green.
("lion" "is" "green" "+")
int2
The lion is cold.
("lion" "is" "cold" "+")
int3
((((((((triple1) -> (rule1 % int4))) -> (rule8 % int3))) -> (rule7 % int2))) -> (rule5 % int1))
The lion is red.
("lion" "is" "red" "+")
int1
The lion is nice.
("lion" "is" "nice" "+")
int2
The lion is green.
("lion" "is" "green" "+")
int3
The lion is cold.
("lion" "is" "cold" "+")
int4
((((((((triple1) -> (rule1 % int4))) -> (rule8 % int3))) -> (rule7 % int2)) triple1) -> (rule4 % int1))
The lion is red.
("lion" "is" "red" "+")
int1
The lion is nice.
("lion" "is" "nice" "+")
int2
The lion is green.
("lion" "is" "green" "+")
int3
The lion is cold.
("lion" "is" "cold" "+")
int4