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