The cat is green. The cat is nice. The cat is red. The cat is rough. The cat is round. Round things are red. If the cat is red and the cat is rough then the cat is nice. If the cat is round then the cat is rough. All green, round things are rough. Nice things are round. If something is round and nice then it is green.
The cat is green.
("cat" "is" "green" "+")
The cat is nice.
("cat" "is" "nice" "+")
The cat is red.
("cat" "is" "red" "+")
The cat is rough.
("cat" "is" "rough" "+")
The cat is round.
("cat" "is" "round" "+")
Round things are red.
((("something" "is" "round" "+")) -> ("something" "is" "red" "+"))
If the cat is red and the cat is rough then the cat is nice.
((("cat" "is" "red" "+") ("cat" "is" "rough" "+")) -> ("cat" "is" "nice" "+"))
If the cat is round then the cat is rough.
((("cat" "is" "round" "+")) -> ("cat" "is" "rough" "+"))
All green, round things are rough.
((("something" "is" "green" "+") ("something" "is" "round" "+")) -> ("something" "is" "rough" "+"))
Nice things are round.
((("something" "is" "nice" "+")) -> ("something" "is" "round" "+"))
If something is round and nice then it is green.
((("something" "is" "round" "+") ("something" "is" "nice" "+")) -> ("something" "is" "green" "+"))
The cat is nice.
True
1
proof
[(triple2 OR ((triple3 triple4) -> rule2) OR ((triple3 ((triple5) -> rule3)) -> rule2) OR ((triple3 ((triple1 triple5) -> rule4)) -> rule2) OR ((((triple5) -> rule1) triple4) -> rule2) OR ((((triple5) -> rule1) ((triple5) -> rule3)) -> rule2) OR ((((triple5) -> rule1) ((triple1 triple5) -> rule4)) -> rule2))]
("cat" "is" "nice" "+")
triple2
((triple3 triple4) -> (rule2 % int1))
The cat is nice.
("cat" "is" "nice" "+")
int1
((triple3 ((triple5) -> (rule3 % int2))) -> (rule2 % int1))
The cat is nice.
("cat" "is" "nice" "+")
int1
The cat is rough.
("cat" "is" "rough" "+")
int2
((triple3 ((triple1 triple5) -> (rule4 % int2))) -> (rule2 % int1))
The cat is nice.
("cat" "is" "nice" "+")
int1
The cat is rough.
("cat" "is" "rough" "+")
int2
((((triple5) -> (rule1 % int2)) triple4) -> (rule2 % int1))
The cat is nice.
("cat" "is" "nice" "+")
int1
The cat is red.
("cat" "is" "red" "+")
int2
((((triple5) -> (rule1 % int3)) ((triple5) -> (rule3 % int2))) -> (rule2 % int1))
The cat is nice.
("cat" "is" "nice" "+")
int1
The cat is rough.
("cat" "is" "rough" "+")
int2
The cat is red.
("cat" "is" "red" "+")
int3
((((triple5) -> (rule1 % int3)) ((triple1 triple5) -> (rule4 % int2))) -> (rule2 % int1))
The cat is nice.
("cat" "is" "nice" "+")
int1
The cat is rough.
("cat" "is" "rough" "+")
int2
The cat is red.
("cat" "is" "red" "+")
int3
The cat is not red.
False
1
inv-proof
[(triple3 OR ((triple5) -> rule1) OR ((((triple2) -> rule5)) -> rule1))]
("cat" "is" "red" "-")
triple3
((triple5) -> (rule1 % int1))
The cat is red.
("cat" "is" "red" "+")
int1
((((triple2) -> (rule5 % int2))) -> (rule1 % int1))
The cat is red.
("cat" "is" "red" "+")
int1
The cat is round.
("cat" "is" "round" "+")
int2
The cat does not eat the cat.
Unknown
inv-random
[@0: The cat eats the cat.[CWA. Example of deepest failure = (FAIL)]]
("cat" "eats" "cat" "-")
The cat likes the cat.
Unknown
random
[@0: The cat likes the cat.[CWA. Example of deepest failure = (FAIL)]]
("cat" "likes" "cat" "+")
@0: The cat is green.[(triple1 OR ((triple5 triple2) -> rule6) OR ((triple5 ((triple3 triple4) -> rule2)) -> rule6) OR ((((triple2) -> rule5) triple2) -> rule6) OR ((((triple2) -> rule5) ((triple3 triple4) -> rule2)) -> rule6) OR ((triple5 ((triple3 ((triple5) -> rule3)) -> rule2)) -> rule6) OR ((triple5 ((((triple5) -> rule1) triple4) -> rule2)) -> rule6) OR ((((((triple3 triple4) -> rule2)) -> rule5) triple2) -> rule6) OR ((triple5 ((((triple5) -> rule1) ((triple5) -> rule3)) -> rule2)) -> rule6) OR ((((triple2) -> rule5) ((triple3 ((triple5) -> rule3)) -> rule2)) -> rule6) OR ((((triple2) -> rule5) ((((triple5) -> rule1) triple4) -> rule2)) -> rule6) OR ((((((triple3 triple4) -> rule2)) -> rule5) ((triple3 triple4) -> rule2)) -> rule6) OR ((((triple2) -> rule5) ((((triple5) -> rule1) ((triple5) -> rule3)) -> rule2)) -> rule6) OR ((((((triple3 triple4) -> rule2)) -> rule5) ((triple3 ((triple5) -> rule3)) -> rule2)) -> rule6) OR ((((((triple3 triple4) -> rule2)) -> rule5) ((((triple5) -> rule1) triple4) -> rule2)) -> rule6) OR ((((((triple3 triple4) -> rule2)) -> rule5) ((((triple5) -> rule1) ((triple5) -> rule3)) -> rule2)) -> rule6))] The cat is nice.[(triple2 OR ((triple3 triple4) -> rule2) OR ((triple3 ((triple5) -> rule3)) -> rule2) OR ((triple3 ((triple1 triple5) -> rule4)) -> rule2) OR ((((triple5) -> rule1) triple4) -> rule2) OR ((((triple5) -> rule1) ((triple5) -> rule3)) -> rule2) OR ((((triple5) -> rule1) ((triple1 triple5) -> rule4)) -> rule2))] The cat is red.[(triple3 OR ((triple5) -> rule1) OR ((((triple2) -> rule5)) -> rule1))] The cat is rough.[(triple4 OR ((triple5) -> rule3) OR ((triple1 triple5) -> rule4) OR ((((triple2) -> rule5)) -> rule3) OR ((triple1 ((triple2) -> rule5)) -> rule4) OR ((((triple5 triple2) -> rule6) triple5) -> rule4) OR ((((triple5 triple2) -> rule6) ((triple2) -> rule5)) -> rule4) OR ((((((triple2) -> rule5) triple2) -> rule6) triple5) -> rule4) OR ((((((triple2) -> rule5) triple2) -> rule6) ((triple2) -> rule5)) -> rule4))] The cat is round.[(triple5 OR ((triple2) -> rule5) OR ((((triple3 triple4) -> rule2)) -> rule5))]
The cat is green.
("cat" "is" "green" "+")
triple1
((triple5 triple2) -> (rule6 % int1))
The cat is green.
("cat" "is" "green" "+")
int1
((triple5 ((triple3 triple4) -> (rule2 % int2))) -> (rule6 % int1))
The cat is green.
("cat" "is" "green" "+")
int1
The cat is nice.
("cat" "is" "nice" "+")
int2
((((triple2) -> (rule5 % int2)) triple2) -> (rule6 % int1))
The cat is green.
("cat" "is" "green" "+")
int1
The cat is round.
("cat" "is" "round" "+")
int2
((((triple2) -> (rule5 % int3)) ((triple3 triple4) -> (rule2 % int2))) -> (rule6 % int1))
The cat is green.
("cat" "is" "green" "+")
int1
The cat is nice.
("cat" "is" "nice" "+")
int2
The cat is round.
("cat" "is" "round" "+")
int3
((triple5 ((triple3 ((triple5) -> (rule3 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
The cat is green.
("cat" "is" "green" "+")
int1
The cat is nice.
("cat" "is" "nice" "+")
int2
The cat is rough.
("cat" "is" "rough" "+")
int3
((triple5 ((((triple5) -> (rule1 % int3)) triple4) -> (rule2 % int2))) -> (rule6 % int1))
The cat is green.
("cat" "is" "green" "+")
int1
The cat is nice.
("cat" "is" "nice" "+")
int2
The cat is red.
("cat" "is" "red" "+")
int3
((((((triple3 triple4) -> (rule2 % int3))) -> (rule5 % int2)) triple2) -> (rule6 % int1))
The cat is green.
("cat" "is" "green" "+")
int1
The cat is round.
("cat" "is" "round" "+")
int2
The cat is nice.
("cat" "is" "nice" "+")
int3
((triple5 ((((triple5) -> (rule1 % int4)) ((triple5) -> (rule3 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
The cat is green.
("cat" "is" "green" "+")
int1
The cat is nice.
("cat" "is" "nice" "+")
int2
The cat is rough.
("cat" "is" "rough" "+")
int3
The cat is red.
("cat" "is" "red" "+")
int4
((((triple2) -> (rule5 % int4)) ((triple3 ((triple5) -> (rule3 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
The cat is green.
("cat" "is" "green" "+")
int1
The cat is nice.
("cat" "is" "nice" "+")
int2
The cat is rough.
("cat" "is" "rough" "+")
int3
The cat is round.
("cat" "is" "round" "+")
int4
((((triple2) -> (rule5 % int4)) ((((triple5) -> (rule1 % int3)) triple4) -> (rule2 % int2))) -> (rule6 % int1))
The cat is green.
("cat" "is" "green" "+")
int1
The cat is nice.
("cat" "is" "nice" "+")
int2
The cat is red.
("cat" "is" "red" "+")
int3
The cat is round.
("cat" "is" "round" "+")
int4
((((((triple3 triple4) -> (rule2 % int3))) -> (rule5 % int2)) ((triple3 triple4) -> (rule2 % int3))) -> (rule6 % int1))
The cat is green.
("cat" "is" "green" "+")
int1
The cat is round.
("cat" "is" "round" "+")
int2
The cat is nice.
("cat" "is" "nice" "+")
int3
((((triple2) -> (rule5 % int5)) ((((triple5) -> (rule1 % int4)) ((triple5) -> (rule3 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
The cat is green.
("cat" "is" "green" "+")
int1
The cat is nice.
("cat" "is" "nice" "+")
int2
The cat is rough.
("cat" "is" "rough" "+")
int3
The cat is red.
("cat" "is" "red" "+")
int4
The cat is round.
("cat" "is" "round" "+")
int5
((((((triple3 triple4) -> (rule2 % int4))) -> (rule5 % int3)) ((triple3 ((triple5) -> (rule3 % int2))) -> (rule2 % int4))) -> (rule6 % int1))
The cat is green.
("cat" "is" "green" "+")
int1
The cat is rough.
("cat" "is" "rough" "+")
int2
The cat is round.
("cat" "is" "round" "+")
int3
The cat is nice.
("cat" "is" "nice" "+")
int4
((((((triple3 triple4) -> (rule2 % int4))) -> (rule5 % int3)) ((((triple5) -> (rule1 % int2)) triple4) -> (rule2 % int4))) -> (rule6 % int1))
The cat is green.
("cat" "is" "green" "+")
int1
The cat is red.
("cat" "is" "red" "+")
int2
The cat is round.
("cat" "is" "round" "+")
int3
The cat is nice.
("cat" "is" "nice" "+")
int4
((((((triple3 triple4) -> (rule2 % int5))) -> (rule5 % int4)) ((((triple5) -> (rule1 % int3)) ((triple5) -> (rule3 % int2))) -> (rule2 % int5))) -> (rule6 % int1))
The cat is green.
("cat" "is" "green" "+")
int1
The cat is rough.
("cat" "is" "rough" "+")
int2
The cat is red.
("cat" "is" "red" "+")
int3
The cat is round.
("cat" "is" "round" "+")
int4
The cat is nice.
("cat" "is" "nice" "+")
int5
The cat is nice.
("cat" "is" "nice" "+")
triple2
((triple3 triple4) -> (rule2 % int1))
The cat is nice.
("cat" "is" "nice" "+")
int1
((triple3 ((triple5) -> (rule3 % int2))) -> (rule2 % int1))
The cat is nice.
("cat" "is" "nice" "+")
int1
The cat is rough.
("cat" "is" "rough" "+")
int2
((triple3 ((triple1 triple5) -> (rule4 % int2))) -> (rule2 % int1))
The cat is nice.
("cat" "is" "nice" "+")
int1
The cat is rough.
("cat" "is" "rough" "+")
int2
((((triple5) -> (rule1 % int2)) triple4) -> (rule2 % int1))
The cat is nice.
("cat" "is" "nice" "+")
int1
The cat is red.
("cat" "is" "red" "+")
int2
((((triple5) -> (rule1 % int3)) ((triple5) -> (rule3 % int2))) -> (rule2 % int1))
The cat is nice.
("cat" "is" "nice" "+")
int1
The cat is rough.
("cat" "is" "rough" "+")
int2
The cat is red.
("cat" "is" "red" "+")
int3
((((triple5) -> (rule1 % int3)) ((triple1 triple5) -> (rule4 % int2))) -> (rule2 % int1))
The cat is nice.
("cat" "is" "nice" "+")
int1
The cat is rough.
("cat" "is" "rough" "+")
int2
The cat is red.
("cat" "is" "red" "+")
int3
The cat is red.
("cat" "is" "red" "+")
triple3
((triple5) -> (rule1 % int1))
The cat is red.
("cat" "is" "red" "+")
int1
((((triple2) -> (rule5 % int2))) -> (rule1 % int1))
The cat is red.
("cat" "is" "red" "+")
int1
The cat is round.
("cat" "is" "round" "+")
int2
The cat is rough.
("cat" "is" "rough" "+")
triple4
((triple5) -> (rule3 % int1))
The cat is rough.
("cat" "is" "rough" "+")
int1
((triple1 triple5) -> (rule4 % int1))
The cat is rough.
("cat" "is" "rough" "+")
int1
((((triple2) -> (rule5 % int2))) -> (rule3 % int1))
The cat is rough.
("cat" "is" "rough" "+")
int1
The cat is round.
("cat" "is" "round" "+")
int2
((triple1 ((triple2) -> (rule5 % int2))) -> (rule4 % int1))
The cat is rough.
("cat" "is" "rough" "+")
int1
The cat is round.
("cat" "is" "round" "+")
int2
((((triple5 triple2) -> (rule6 % int2)) triple5) -> (rule4 % int1))
The cat is rough.
("cat" "is" "rough" "+")
int1
The cat is green.
("cat" "is" "green" "+")
int2
((((triple5 triple2) -> (rule6 % int3)) ((triple2) -> (rule5 % int2))) -> (rule4 % int1))
The cat is rough.
("cat" "is" "rough" "+")
int1
The cat is round.
("cat" "is" "round" "+")
int2
The cat is green.
("cat" "is" "green" "+")
int3
((((((triple2) -> (rule5 % int3)) triple2) -> (rule6 % int2)) triple5) -> (rule4 % int1))
The cat is rough.
("cat" "is" "rough" "+")
int1
The cat is green.
("cat" "is" "green" "+")
int2
The cat is round.
("cat" "is" "round" "+")
int3
((((((triple2) -> (rule5 % int3)) triple2) -> (rule6 % int2)) ((triple2) -> (rule5 % int3))) -> (rule4 % int1))
The cat is rough.
("cat" "is" "rough" "+")
int1
The cat is green.
("cat" "is" "green" "+")
int2
The cat is round.
("cat" "is" "round" "+")
int3
The cat is round.
("cat" "is" "round" "+")
triple5
((triple2) -> (rule5 % int1))
The cat is round.
("cat" "is" "round" "+")
int1
((((triple3 triple4) -> (rule2 % int2))) -> (rule5 % int1))
The cat is round.
("cat" "is" "round" "+")
int1
The cat is nice.
("cat" "is" "nice" "+")
int2