The cat eats the mouse. The cat eats the rabbit. The cat is cold. The cat is kind. The cat is red. The cat is young. The cat needs the mouse. The cat visits the mouse. The cat visits the rabbit. The mouse eats the rabbit. The mouse is young. The mouse needs the cat. The rabbit eats the cat. The rabbit is kind. The rabbit visits the mouse. If someone needs the cat then they visit the rabbit. If someone needs the mouse then they need the rabbit. If the rabbit eats the mouse and the mouse eats the rabbit then the rabbit is red. If someone eats the mouse then they are round. If the mouse is young and the mouse visits the rabbit then the rabbit eats the cat. If someone eats the rabbit and the rabbit needs the cat then the cat eats the mouse. If someone eats the cat and the cat is cold then they visit the mouse. If someone visits the rabbit and the rabbit visits the mouse then they eat the cat.
The cat eats the mouse.
("cat" "eats" "mouse" "+")
The cat eats the rabbit.
("cat" "eats" "rabbit" "+")
The cat is cold.
("cat" "is" "cold" "+")
The cat is kind.
("cat" "is" "kind" "+")
The cat is red.
("cat" "is" "red" "+")
The cat is young.
("cat" "is" "young" "+")
The cat needs the mouse.
("cat" "needs" "mouse" "+")
The cat visits the mouse.
("cat" "visits" "mouse" "+")
The cat visits the rabbit.
("cat" "visits" "rabbit" "+")
The mouse eats the rabbit.
("mouse" "eats" "rabbit" "+")
The mouse is young.
("mouse" "is" "young" "+")
The mouse needs the cat.
("mouse" "needs" "cat" "+")
The rabbit eats the cat.
("rabbit" "eats" "cat" "+")
The rabbit is kind.
("rabbit" "is" "kind" "+")
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
If someone needs the cat then they visit the rabbit.
((("someone" "needs" "cat" "+")) -> ("someone" "visits" "rabbit" "+"))
If someone needs the mouse then they need the rabbit.
((("someone" "needs" "mouse" "+")) -> ("someone" "needs" "rabbit" "+"))
If the rabbit eats the mouse and the mouse eats the rabbit then the rabbit is red.
((("rabbit" "eats" "mouse" "+") ("mouse" "eats" "rabbit" "+")) -> ("rabbit" "is" "red" "+"))
If someone eats the mouse then they are round.
((("someone" "eats" "mouse" "+")) -> ("someone" "is" "round" "+"))
If the mouse is young and the mouse visits the rabbit then the rabbit eats the cat.
((("mouse" "is" "young" "+") ("mouse" "visits" "rabbit" "+")) -> ("rabbit" "eats" "cat" "+"))
If someone eats the rabbit and the rabbit needs the cat then the cat eats the mouse.
((("someone" "eats" "rabbit" "+") ("rabbit" "needs" "cat" "+")) -> ("cat" "eats" "mouse" "+"))
If someone eats the cat and the cat is cold then they visit the mouse.
((("someone" "eats" "cat" "+") ("cat" "is" "cold" "+")) -> ("someone" "visits" "mouse" "+"))
If someone visits the rabbit and the rabbit visits the mouse then they eat the cat.
((("someone" "visits" "rabbit" "+") ("rabbit" "visits" "mouse" "+")) -> ("someone" "eats" "cat" "+"))
The rabbit eats the cat.
True
1
proof
[(triple13 OR ((triple11 ((triple12) -> rule1)) -> rule5))]
("rabbit" "eats" "cat" "+")
triple13
((triple11 ((triple12) -> (rule1 % int2))) -> (rule5 % int1))
The rabbit eats the cat.
("rabbit" "eats" "cat" "+")
int1
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int2
The mouse does not eat the rabbit.
False
1
inv-proof
[(triple10)]
("mouse" "eats" "rabbit" "-")
triple10
The cat eats the cat.
True
3
proof
[(((triple9 triple15) -> rule8) OR ((triple9 ((triple13 triple3) -> rule7)) -> rule8) OR ((triple9 ((((triple11 ((triple12) -> rule1)) -> rule5) triple3) -> rule7)) -> rule8))]
("cat" "eats" "cat" "+")
((triple9 triple15) -> (rule8 % int1))
The cat eats the cat.
("cat" "eats" "cat" "+")
int1
((triple9 ((triple13 triple3) -> (rule7 % int2))) -> (rule8 % int1))
The cat eats the cat.
("cat" "eats" "cat" "+")
int1
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
int2
((triple9 ((((triple11 ((triple12) -> (rule1 % int4))) -> (rule5 % int3)) triple3) -> (rule7 % int2))) -> (rule8 % int1))
The cat eats the cat.
("cat" "eats" "cat" "+")
int1
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
int2
The rabbit eats the cat.
("rabbit" "eats" "cat" "+")
int3
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int4
The cat does not need the rabbit.
False
2
inv-proof
[(((triple7) -> rule2))]
("cat" "needs" "rabbit" "-")
((triple7) -> (rule2 % int1))
The cat needs the rabbit.
("cat" "needs" "rabbit" "+")
int1
The mouse eats the cat.
True
4
proof
[(((((triple12) -> rule1) triple15) -> rule8) OR ((((triple12) -> rule1) ((triple13 triple3) -> rule7)) -> rule8) OR ((((triple12) -> rule1) ((((triple11 ((triple12) -> rule1)) -> rule5) triple3) -> rule7)) -> rule8))]
("mouse" "eats" "cat" "+")
((((triple12) -> (rule1 % int2)) triple15) -> (rule8 % int1))
The mouse eats the cat.
("mouse" "eats" "cat" "+")
int1
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int2
((((triple12) -> (rule1 % int3)) ((triple13 triple3) -> (rule7 % int2))) -> (rule8 % int1))
The mouse eats the cat.
("mouse" "eats" "cat" "+")
int1
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
int2
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int3
((((triple12) -> (rule1 % int4)) ((((triple11 ((triple12) -> (rule1 % int4))) -> (rule5 % int3)) triple3) -> (rule7 % int2))) -> (rule8 % int1))
The mouse eats the cat.
("mouse" "eats" "cat" "+")
int1
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
int2
The rabbit eats the cat.
("rabbit" "eats" "cat" "+")
int3
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int4
The mouse does not eat the cat.
False
4
inv-proof
[(((((triple12) -> rule1) triple15) -> rule8) OR ((((triple12) -> rule1) ((triple13 triple3) -> rule7)) -> rule8) OR ((((triple12) -> rule1) ((((triple11 ((triple12) -> rule1)) -> rule5) triple3) -> rule7)) -> rule8))]
("mouse" "eats" "cat" "-")
((((triple12) -> (rule1 % int2)) triple15) -> (rule8 % int1))
The mouse eats the cat.
("mouse" "eats" "cat" "+")
int1
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int2
((((triple12) -> (rule1 % int3)) ((triple13 triple3) -> (rule7 % int2))) -> (rule8 % int1))
The mouse eats the cat.
("mouse" "eats" "cat" "+")
int1
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
int2
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int3
((((triple12) -> (rule1 % int4)) ((((triple11 ((triple12) -> (rule1 % int4))) -> (rule5 % int3)) triple3) -> (rule7 % int2))) -> (rule8 % int1))
The mouse eats the cat.
("mouse" "eats" "cat" "+")
int1
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
int2
The rabbit eats the cat.
("rabbit" "eats" "cat" "+")
int3
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int4
The mouse visits the mouse.
True
6
proof
[(((((((triple12) -> rule1) triple15) -> rule8) triple3) -> rule7) OR ((((((triple12) -> rule1) ((triple13 triple3) -> rule7)) -> rule8) triple3) -> rule7) OR ((((((triple12) -> rule1) ((((triple11 ((triple12) -> rule1)) -> rule5) triple3) -> rule7)) -> rule8) triple3) -> rule7))]
("mouse" "visits" "mouse" "+")
((((((triple12) -> (rule1 % int3)) triple15) -> (rule8 % int2)) triple3) -> (rule7 % int1))
The mouse visits the mouse.
("mouse" "visits" "mouse" "+")
int1
The mouse eats the cat.
("mouse" "eats" "cat" "+")
int2
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int3
((((((triple12) -> (rule1 % int4)) ((triple13 triple3) -> (rule7 % int3))) -> (rule8 % int2)) triple3) -> (rule7 % int1))
The mouse visits the mouse.
("mouse" "visits" "mouse" "+")
int1
The mouse eats the cat.
("mouse" "eats" "cat" "+")
int2
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
int3
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int4
((((((triple12) -> (rule1 % int5)) ((((triple11 ((triple12) -> (rule1 % int5))) -> (rule5 % int4)) triple3) -> (rule7 % int3))) -> (rule8 % int2)) triple3) -> (rule7 % int1))
The mouse visits the mouse.
("mouse" "visits" "mouse" "+")
int1
The mouse eats the cat.
("mouse" "eats" "cat" "+")
int2
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
int3
The rabbit eats the cat.
("rabbit" "eats" "cat" "+")
int4
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int5
The mouse does not visit the mouse.
False
6
inv-proof
[(((((((triple12) -> rule1) triple15) -> rule8) triple3) -> rule7) OR ((((((triple12) -> rule1) ((triple13 triple3) -> rule7)) -> rule8) triple3) -> rule7) OR ((((((triple12) -> rule1) ((((triple11 ((triple12) -> rule1)) -> rule5) triple3) -> rule7)) -> rule8) triple3) -> rule7))]
("mouse" "visits" "mouse" "-")
((((((triple12) -> (rule1 % int3)) triple15) -> (rule8 % int2)) triple3) -> (rule7 % int1))
The mouse visits the mouse.
("mouse" "visits" "mouse" "+")
int1
The mouse eats the cat.
("mouse" "eats" "cat" "+")
int2
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int3
((((((triple12) -> (rule1 % int4)) ((triple13 triple3) -> (rule7 % int3))) -> (rule8 % int2)) triple3) -> (rule7 % int1))
The mouse visits the mouse.
("mouse" "visits" "mouse" "+")
int1
The mouse eats the cat.
("mouse" "eats" "cat" "+")
int2
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
int3
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int4
((((((triple12) -> (rule1 % int5)) ((((triple11 ((triple12) -> (rule1 % int5))) -> (rule5 % int4)) triple3) -> (rule7 % int3))) -> (rule8 % int2)) triple3) -> (rule7 % int1))
The mouse visits the mouse.
("mouse" "visits" "mouse" "+")
int1
The mouse eats the cat.
("mouse" "eats" "cat" "+")
int2
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
int3
The rabbit eats the cat.
("rabbit" "eats" "cat" "+")
int4
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int5
The rabbit does not visit the rabbit.
Unknown
inv-rconc
[@1: The rabbit visits the rabbit.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("rabbit" "visits" "rabbit" "-")
The mouse is round.
Unknown
rconc
[@1: The mouse is round.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("mouse" "is" "round" "+")
The mouse does not need the rabbit.
Unknown
inv-rconc
[@1: The mouse needs the rabbit.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("mouse" "needs" "rabbit" "-")
The rabbit is red.
Unknown
rconc
[@1: The rabbit is red.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("rabbit" "is" "red" "+")
The mouse is not kind.
Unknown
inv-random
[@0: The mouse is kind.[CWA. Example of deepest failure = (FAIL)]]
("mouse" "is" "kind" "-")
The mouse eats the mouse.
Unknown
random
[@0: The mouse eats the mouse.[CWA. Example of deepest failure = (FAIL)]]
("mouse" "eats" "mouse" "+")
The mouse does not need the mouse.
Unknown
inv-random
[@0: The mouse needs the mouse.[CWA. Example of deepest failure = (FAIL)]]
("mouse" "needs" "mouse" "-")
The cat needs the cat.
Unknown
random
[@0: The cat needs the cat.[CWA. Example of deepest failure = (FAIL)]]
("cat" "needs" "cat" "+")
@0: The cat eats the mouse.[(triple1)] The cat eats the rabbit.[(triple2)] The cat is cold.[(triple3)] The cat is kind.[(triple4)] The cat is red.[(triple5)] The cat is young.[(triple6)] The cat needs the mouse.[(triple7)] The cat visits the mouse.[(triple8 OR ((((triple9 triple15) -> rule8) triple3) -> rule7) OR ((((triple9 ((triple13 triple3) -> rule7)) -> rule8) triple3) -> rule7) OR ((((triple9 ((((triple11 ((triple12) -> rule1)) -> rule5) triple3) -> rule7)) -> rule8) triple3) -> rule7))] The cat visits the rabbit.[(triple9)] The mouse eats the rabbit.[(triple10)] The mouse is young.[(triple11)] The mouse needs the cat.[(triple12)] The rabbit eats the cat.[(triple13 OR ((triple11 ((triple12) -> rule1)) -> rule5))] The rabbit is kind.[(triple14)] The rabbit visits the mouse.[(triple15 OR ((triple13 triple3) -> rule7) OR ((((triple11 ((triple12) -> rule1)) -> rule5) triple3) -> rule7))] @1: The cat eats the cat.[(((triple9 triple15) -> rule8) OR ((triple9 ((triple13 triple3) -> rule7)) -> rule8) OR ((triple9 ((((triple11 ((triple12) -> rule1)) -> rule5) triple3) -> rule7)) -> rule8))] The cat is round.[(((triple1) -> rule4))] The cat needs the rabbit.[(((triple7) -> rule2))] The mouse visits the rabbit.[(((triple12) -> rule1))] @2: The mouse eats the cat.[(((((triple12) -> rule1) triple15) -> rule8) OR ((((triple12) -> rule1) ((triple13 triple3) -> rule7)) -> rule8) OR ((((triple12) -> rule1) ((((triple11 ((triple12) -> rule1)) -> rule5) triple3) -> rule7)) -> rule8))] @3: The mouse visits the mouse.[(((((((triple12) -> rule1) triple15) -> rule8) triple3) -> rule7) OR ((((((triple12) -> rule1) ((triple13 triple3) -> rule7)) -> rule8) triple3) -> rule7) OR ((((((triple12) -> rule1) ((((triple11 ((triple12) -> rule1)) -> rule5) triple3) -> rule7)) -> rule8) triple3) -> rule7))]
The cat eats the mouse.
("cat" "eats" "mouse" "+")
triple1
The cat eats the rabbit.
("cat" "eats" "rabbit" "+")
triple2
The cat is cold.
("cat" "is" "cold" "+")
triple3
The cat is kind.
("cat" "is" "kind" "+")
triple4
The cat is red.
("cat" "is" "red" "+")
triple5
The cat is young.
("cat" "is" "young" "+")
triple6
The cat needs the mouse.
("cat" "needs" "mouse" "+")
triple7
The cat visits the mouse.
("cat" "visits" "mouse" "+")
triple8
((((triple9 triple15) -> (rule8 % int2)) triple3) -> (rule7 % int1))
The cat visits the mouse.
("cat" "visits" "mouse" "+")
int1
The cat eats the cat.
("cat" "eats" "cat" "+")
int2
((((triple9 ((triple13 triple3) -> (rule7 % int3))) -> (rule8 % int2)) triple3) -> (rule7 % int1))
The cat visits the mouse.
("cat" "visits" "mouse" "+")
int1
The cat eats the cat.
("cat" "eats" "cat" "+")
int2
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
int3
((((triple9 ((((triple11 ((triple12) -> (rule1 % int5))) -> (rule5 % int4)) triple3) -> (rule7 % int3))) -> (rule8 % int2)) triple3) -> (rule7 % int1))
The cat visits the mouse.
("cat" "visits" "mouse" "+")
int1
The cat eats the cat.
("cat" "eats" "cat" "+")
int2
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
int3
The rabbit eats the cat.
("rabbit" "eats" "cat" "+")
int4
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int5
The cat visits the rabbit.
("cat" "visits" "rabbit" "+")
triple9
The mouse eats the rabbit.
("mouse" "eats" "rabbit" "+")
triple10
The mouse is young.
("mouse" "is" "young" "+")
triple11
The mouse needs the cat.
("mouse" "needs" "cat" "+")
triple12
The rabbit eats the cat.
("rabbit" "eats" "cat" "+")
triple13
((triple11 ((triple12) -> (rule1 % int2))) -> (rule5 % int1))
The rabbit eats the cat.
("rabbit" "eats" "cat" "+")
int1
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int2
The rabbit is kind.
("rabbit" "is" "kind" "+")
triple14
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
triple15
((triple13 triple3) -> (rule7 % int1))
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
int1
((((triple11 ((triple12) -> (rule1 % int3))) -> (rule5 % int2)) triple3) -> (rule7 % int1))
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
int1
The rabbit eats the cat.
("rabbit" "eats" "cat" "+")
int2
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int3
The cat eats the cat.
("cat" "eats" "cat" "+")
((triple9 triple15) -> (rule8 % int1))
The cat eats the cat.
("cat" "eats" "cat" "+")
int1
((triple9 ((triple13 triple3) -> (rule7 % int2))) -> (rule8 % int1))
The cat eats the cat.
("cat" "eats" "cat" "+")
int1
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
int2
((triple9 ((((triple11 ((triple12) -> (rule1 % int4))) -> (rule5 % int3)) triple3) -> (rule7 % int2))) -> (rule8 % int1))
The cat eats the cat.
("cat" "eats" "cat" "+")
int1
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
int2
The rabbit eats the cat.
("rabbit" "eats" "cat" "+")
int3
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int4
The cat is round.
("cat" "is" "round" "+")
((triple1) -> (rule4 % int1))
The cat is round.
("cat" "is" "round" "+")
int1
The cat needs the rabbit.
("cat" "needs" "rabbit" "+")
((triple7) -> (rule2 % int1))
The cat needs the rabbit.
("cat" "needs" "rabbit" "+")
int1
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
((triple12) -> (rule1 % int1))
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int1
The mouse eats the cat.
("mouse" "eats" "cat" "+")
((((triple12) -> (rule1 % int2)) triple15) -> (rule8 % int1))
The mouse eats the cat.
("mouse" "eats" "cat" "+")
int1
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int2
((((triple12) -> (rule1 % int3)) ((triple13 triple3) -> (rule7 % int2))) -> (rule8 % int1))
The mouse eats the cat.
("mouse" "eats" "cat" "+")
int1
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
int2
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int3
((((triple12) -> (rule1 % int4)) ((((triple11 ((triple12) -> (rule1 % int4))) -> (rule5 % int3)) triple3) -> (rule7 % int2))) -> (rule8 % int1))
The mouse eats the cat.
("mouse" "eats" "cat" "+")
int1
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
int2
The rabbit eats the cat.
("rabbit" "eats" "cat" "+")
int3
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int4
The mouse visits the mouse.
("mouse" "visits" "mouse" "+")
((((((triple12) -> (rule1 % int3)) triple15) -> (rule8 % int2)) triple3) -> (rule7 % int1))
The mouse visits the mouse.
("mouse" "visits" "mouse" "+")
int1
The mouse eats the cat.
("mouse" "eats" "cat" "+")
int2
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int3
((((((triple12) -> (rule1 % int4)) ((triple13 triple3) -> (rule7 % int3))) -> (rule8 % int2)) triple3) -> (rule7 % int1))
The mouse visits the mouse.
("mouse" "visits" "mouse" "+")
int1
The mouse eats the cat.
("mouse" "eats" "cat" "+")
int2
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
int3
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int4
((((((triple12) -> (rule1 % int5)) ((((triple11 ((triple12) -> (rule1 % int5))) -> (rule5 % int4)) triple3) -> (rule7 % int3))) -> (rule8 % int2)) triple3) -> (rule7 % int1))
The mouse visits the mouse.
("mouse" "visits" "mouse" "+")
int1
The mouse eats the cat.
("mouse" "eats" "cat" "+")
int2
The rabbit visits the mouse.
("rabbit" "visits" "mouse" "+")
int3
The rabbit eats the cat.
("rabbit" "eats" "cat" "+")
int4
The mouse visits the rabbit.
("mouse" "visits" "rabbit" "+")
int5