The dog eats the rabbit. The dog is blue. The dog is nice. The dog is young. The dog likes the rabbit. The dog sees the rabbit. The rabbit eats the dog. The rabbit is green. The rabbit is nice. The rabbit is young. The rabbit likes the dog. The rabbit sees the dog. If someone is blue and green then they like the rabbit. If someone likes the dog then they are blue. If someone sees the dog then they see the rabbit. If someone likes the dog and they like the rabbit then they see the rabbit. If someone is nice and they see the rabbit then the rabbit eats the dog. If someone likes the rabbit then they see the rabbit. If someone is kind and young then they are green. If someone likes the rabbit then the rabbit is nice.
The dog eats the rabbit.
("dog" "eats" "rabbit" "+")
The dog is blue.
("dog" "is" "blue" "+")
The dog is nice.
("dog" "is" "nice" "+")
The dog is young.
("dog" "is" "young" "+")
The dog likes the rabbit.
("dog" "likes" "rabbit" "+")
The dog sees the rabbit.
("dog" "sees" "rabbit" "+")
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
The rabbit is green.
("rabbit" "is" "green" "+")
The rabbit is nice.
("rabbit" "is" "nice" "+")
The rabbit is young.
("rabbit" "is" "young" "+")
The rabbit likes the dog.
("rabbit" "likes" "dog" "+")
The rabbit sees the dog.
("rabbit" "sees" "dog" "+")
If someone is blue and green then they like the rabbit.
((("someone" "is" "blue" "+") ("someone" "is" "green" "+")) -> ("someone" "likes" "rabbit" "+"))
If someone likes the dog then they are blue.
((("someone" "likes" "dog" "+")) -> ("someone" "is" "blue" "+"))
If someone sees the dog then they see the rabbit.
((("someone" "sees" "dog" "+")) -> ("someone" "sees" "rabbit" "+"))
If someone likes the dog and they like the rabbit then they see the rabbit.
((("someone" "likes" "dog" "+") ("someone" "likes" "rabbit" "+")) -> ("someone" "sees" "rabbit" "+"))
If someone is nice and they see the rabbit then the rabbit eats the dog.
((("someone" "is" "nice" "+") ("someone" "sees" "rabbit" "+")) -> ("rabbit" "eats" "dog" "+"))
If someone likes the rabbit then they see the rabbit.
((("someone" "likes" "rabbit" "+")) -> ("someone" "sees" "rabbit" "+"))
If someone is kind and young then they are green.
((("someone" "is" "kind" "+") ("someone" "is" "young" "+")) -> ("someone" "is" "green" "+"))
If someone likes the rabbit then the rabbit is nice.
((("someone" "likes" "rabbit" "+")) -> ("rabbit" "is" "nice" "+"))
The rabbit eats the dog.
True
1
proof
[(triple7 OR ((triple3 triple6) -> rule5) OR ((triple3 ((triple5) -> rule6)) -> rule5) OR ((triple9 ((triple12) -> rule3)) -> rule5) OR ((((triple5) -> rule8) ((triple12) -> rule3)) -> rule5) OR ((triple9 ((((((triple11) -> rule2) triple8) -> rule1)) -> rule6)) -> rule5) OR ((triple9 ((triple11 ((((triple11) -> rule2) triple8) -> rule1)) -> rule4)) -> rule5) OR ((((triple5) -> rule8) ((((((triple11) -> rule2) triple8) -> rule1)) -> rule6)) -> rule5) OR ((((triple5) -> rule8) ((triple11 ((((triple11) -> rule2) triple8) -> rule1)) -> rule4)) -> rule5) OR ((((((((triple11) -> rule2) triple8) -> rule1)) -> rule8) ((triple12) -> rule3)) -> rule5) OR ((((((((triple11) -> rule2) triple8) -> rule1)) -> rule8) ((((((triple11) -> rule2) triple8) -> rule1)) -> rule6)) -> rule5) OR ((((((((triple11) -> rule2) triple8) -> rule1)) -> rule8) ((triple11 ((((triple11) -> rule2) triple8) -> rule1)) -> rule4)) -> rule5))]
("rabbit" "eats" "dog" "+")
triple7
((triple3 triple6) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
((triple3 ((triple5) -> (rule6 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The dog sees the rabbit.
("dog" "sees" "rabbit" "+")
int2
((triple9 ((triple12) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int2
((((triple5) -> (rule8 % int3)) ((triple12) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
((triple9 ((((((triple11) -> (rule2 % int4)) triple8) -> (rule1 % int3))) -> (rule6 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int2
The rabbit likes the rabbit.
("rabbit" "likes" "rabbit" "+")
int3
The rabbit is blue.
("rabbit" "is" "blue" "+")
int4
((triple9 ((triple11 ((((triple11) -> (rule2 % int4)) triple8) -> (rule1 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int2
The rabbit likes the rabbit.
("rabbit" "likes" "rabbit" "+")
int3
The rabbit is blue.
("rabbit" "is" "blue" "+")
int4
((((triple5) -> (rule8 % int5)) ((((((triple11) -> (rule2 % int4)) triple8) -> (rule1 % int3))) -> (rule6 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int2
The rabbit likes the rabbit.
("rabbit" "likes" "rabbit" "+")
int3
The rabbit is blue.
("rabbit" "is" "blue" "+")
int4
The rabbit is nice.
("rabbit" "is" "nice" "+")
int5
((((triple5) -> (rule8 % int5)) ((triple11 ((((triple11) -> (rule2 % int4)) triple8) -> (rule1 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int2
The rabbit likes the rabbit.
("rabbit" "likes" "rabbit" "+")
int3
The rabbit is blue.
("rabbit" "is" "blue" "+")
int4
The rabbit is nice.
("rabbit" "is" "nice" "+")
int5
((((((((triple11) -> (rule2 % int5)) triple8) -> (rule1 % int4))) -> (rule8 % int3)) ((triple12) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
The rabbit likes the rabbit.
("rabbit" "likes" "rabbit" "+")
int4
The rabbit is blue.
("rabbit" "is" "blue" "+")
int5
((((((((triple11) -> (rule2 % int5)) triple8) -> (rule1 % int4))) -> (rule8 % int3)) ((((((triple11) -> (rule2 % int5)) triple8) -> (rule1 % int4))) -> (rule6 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
The rabbit likes the rabbit.
("rabbit" "likes" "rabbit" "+")
int4
The rabbit is blue.
("rabbit" "is" "blue" "+")
int5
((((((((triple11) -> (rule2 % int5)) triple8) -> (rule1 % int4))) -> (rule8 % int3)) ((triple11 ((((triple11) -> (rule2 % int5)) triple8) -> (rule1 % int4))) -> (rule4 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
The rabbit likes the rabbit.
("rabbit" "likes" "rabbit" "+")
int4
The rabbit is blue.
("rabbit" "is" "blue" "+")
int5
The dog does not like the rabbit.
False
1
inv-proof
[(triple5)]
("dog" "likes" "rabbit" "-")
triple5
The dog is not green.
Unknown
inv-rconc
[@1: The dog is green.[CWA. Example of deepest failure = (rule7 <- FAIL)]]
("dog" "is" "green" "-")
The dog is kind.
Unknown
random
[@0: The dog is kind.[CWA. Example of deepest failure = (FAIL)]]
("dog" "is" "kind" "+")
@0: The dog eats the rabbit.[(triple1)] The dog is blue.[(triple2)] The dog is nice.[(triple3)] The dog is young.[(triple4)] The dog likes the rabbit.[(triple5)] The dog sees the rabbit.[(triple6 OR ((triple5) -> rule6))] The rabbit eats the dog.[(triple7 OR ((triple3 triple6) -> rule5) OR ((triple3 ((triple5) -> rule6)) -> rule5) OR ((triple9 ((triple12) -> rule3)) -> rule5) OR ((((triple5) -> rule8) ((triple12) -> rule3)) -> rule5) OR ((triple9 ((((((triple11) -> rule2) triple8) -> rule1)) -> rule6)) -> rule5) OR ((triple9 ((triple11 ((((triple11) -> rule2) triple8) -> rule1)) -> rule4)) -> rule5) OR ((((triple5) -> rule8) ((((((triple11) -> rule2) triple8) -> rule1)) -> rule6)) -> rule5) OR ((((triple5) -> rule8) ((triple11 ((((triple11) -> rule2) triple8) -> rule1)) -> rule4)) -> rule5) OR ((((((((triple11) -> rule2) triple8) -> rule1)) -> rule8) ((triple12) -> rule3)) -> rule5) OR ((((((((triple11) -> rule2) triple8) -> rule1)) -> rule8) ((((((triple11) -> rule2) triple8) -> rule1)) -> rule6)) -> rule5) OR ((((((((triple11) -> rule2) triple8) -> rule1)) -> rule8) ((triple11 ((((triple11) -> rule2) triple8) -> rule1)) -> rule4)) -> rule5))] The rabbit is green.[(triple8)] The rabbit is nice.[(triple9 OR ((triple5) -> rule8) OR ((((((triple11) -> rule2) triple8) -> rule1)) -> rule8))] The rabbit is young.[(triple10)] The rabbit likes the dog.[(triple11)] The rabbit sees the dog.[(triple12)] @1: The rabbit is blue.[(((triple11) -> rule2))] The rabbit sees the rabbit.[(((triple12) -> rule3) OR ((((((triple11) -> rule2) triple8) -> rule1)) -> rule6) OR ((triple11 ((((triple11) -> rule2) triple8) -> rule1)) -> rule4))] @2: The rabbit likes the rabbit.[(((((triple11) -> rule2) triple8) -> rule1))]
The dog eats the rabbit.
("dog" "eats" "rabbit" "+")
triple1
The dog is blue.
("dog" "is" "blue" "+")
triple2
The dog is nice.
("dog" "is" "nice" "+")
triple3
The dog is young.
("dog" "is" "young" "+")
triple4
The dog likes the rabbit.
("dog" "likes" "rabbit" "+")
triple5
The dog sees the rabbit.
("dog" "sees" "rabbit" "+")
triple6
((triple5) -> (rule6 % int1))
The dog sees the rabbit.
("dog" "sees" "rabbit" "+")
int1
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
triple7
((triple3 triple6) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
((triple3 ((triple5) -> (rule6 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The dog sees the rabbit.
("dog" "sees" "rabbit" "+")
int2
((triple9 ((triple12) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int2
((((triple5) -> (rule8 % int3)) ((triple12) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
((triple9 ((((((triple11) -> (rule2 % int4)) triple8) -> (rule1 % int3))) -> (rule6 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int2
The rabbit likes the rabbit.
("rabbit" "likes" "rabbit" "+")
int3
The rabbit is blue.
("rabbit" "is" "blue" "+")
int4
((triple9 ((triple11 ((((triple11) -> (rule2 % int4)) triple8) -> (rule1 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int2
The rabbit likes the rabbit.
("rabbit" "likes" "rabbit" "+")
int3
The rabbit is blue.
("rabbit" "is" "blue" "+")
int4
((((triple5) -> (rule8 % int5)) ((((((triple11) -> (rule2 % int4)) triple8) -> (rule1 % int3))) -> (rule6 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int2
The rabbit likes the rabbit.
("rabbit" "likes" "rabbit" "+")
int3
The rabbit is blue.
("rabbit" "is" "blue" "+")
int4
The rabbit is nice.
("rabbit" "is" "nice" "+")
int5
((((triple5) -> (rule8 % int5)) ((triple11 ((((triple11) -> (rule2 % int4)) triple8) -> (rule1 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int2
The rabbit likes the rabbit.
("rabbit" "likes" "rabbit" "+")
int3
The rabbit is blue.
("rabbit" "is" "blue" "+")
int4
The rabbit is nice.
("rabbit" "is" "nice" "+")
int5
((((((((triple11) -> (rule2 % int5)) triple8) -> (rule1 % int4))) -> (rule8 % int3)) ((triple12) -> (rule3 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
The rabbit likes the rabbit.
("rabbit" "likes" "rabbit" "+")
int4
The rabbit is blue.
("rabbit" "is" "blue" "+")
int5
((((((((triple11) -> (rule2 % int5)) triple8) -> (rule1 % int4))) -> (rule8 % int3)) ((((((triple11) -> (rule2 % int5)) triple8) -> (rule1 % int4))) -> (rule6 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
The rabbit likes the rabbit.
("rabbit" "likes" "rabbit" "+")
int4
The rabbit is blue.
("rabbit" "is" "blue" "+")
int5
((((((((triple11) -> (rule2 % int5)) triple8) -> (rule1 % int4))) -> (rule8 % int3)) ((triple11 ((((triple11) -> (rule2 % int5)) triple8) -> (rule1 % int4))) -> (rule4 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
int3
The rabbit likes the rabbit.
("rabbit" "likes" "rabbit" "+")
int4
The rabbit is blue.
("rabbit" "is" "blue" "+")
int5
The rabbit is green.
("rabbit" "is" "green" "+")
triple8
The rabbit is nice.
("rabbit" "is" "nice" "+")
triple9
((triple5) -> (rule8 % int1))
The rabbit is nice.
("rabbit" "is" "nice" "+")
int1
((((((triple11) -> (rule2 % int3)) triple8) -> (rule1 % int2))) -> (rule8 % int1))
The rabbit is nice.
("rabbit" "is" "nice" "+")
int1
The rabbit likes the rabbit.
("rabbit" "likes" "rabbit" "+")
int2
The rabbit is blue.
("rabbit" "is" "blue" "+")
int3
The rabbit is young.
("rabbit" "is" "young" "+")
triple10
The rabbit likes the dog.
("rabbit" "likes" "dog" "+")
triple11
The rabbit sees the dog.
("rabbit" "sees" "dog" "+")
triple12
The rabbit is blue.
("rabbit" "is" "blue" "+")
((triple11) -> (rule2 % int1))
The rabbit is blue.
("rabbit" "is" "blue" "+")
int1
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
((triple12) -> (rule3 % int1))
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int1
((((((triple11) -> (rule2 % int3)) triple8) -> (rule1 % int2))) -> (rule6 % int1))
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int1
The rabbit likes the rabbit.
("rabbit" "likes" "rabbit" "+")
int2
The rabbit is blue.
("rabbit" "is" "blue" "+")
int3
((triple11 ((((triple11) -> (rule2 % int3)) triple8) -> (rule1 % int2))) -> (rule4 % int1))
The rabbit sees the rabbit.
("rabbit" "sees" "rabbit" "+")
int1
The rabbit likes the rabbit.
("rabbit" "likes" "rabbit" "+")
int2
The rabbit is blue.
("rabbit" "is" "blue" "+")
int3
The rabbit likes the rabbit.
("rabbit" "likes" "rabbit" "+")
((((triple11) -> (rule2 % int2)) triple8) -> (rule1 % int1))
The rabbit likes the rabbit.
("rabbit" "likes" "rabbit" "+")
int1
The rabbit is blue.
("rabbit" "is" "blue" "+")
int2