The cow is young. The dog chases the cow. The dog chases the rabbit. The dog is green. The dog is round. The dog is young. The dog likes the cow. The dog likes the squirrel. The dog needs the rabbit. The rabbit likes the dog. The rabbit needs the cow. The rabbit needs the squirrel. The squirrel chases the rabbit. The squirrel likes the dog. The squirrel needs the rabbit. If someone likes the cow and the cow needs the dog then they need the dog. If someone needs the rabbit then the rabbit is nice. If someone is young and round then they chase the dog. If someone likes the cow and they are green then they are young. If someone chases the dog then they need the dog. If someone chases the dog then the dog chases the cow.
The cow is young.
("cow" "is" "young" "+")
The dog chases the cow.
("dog" "chases" "cow" "+")
The dog chases the rabbit.
("dog" "chases" "rabbit" "+")
The dog is green.
("dog" "is" "green" "+")
The dog is round.
("dog" "is" "round" "+")
The dog is young.
("dog" "is" "young" "+")
The dog likes the cow.
("dog" "likes" "cow" "+")
The dog likes the squirrel.
("dog" "likes" "squirrel" "+")
The dog needs the rabbit.
("dog" "needs" "rabbit" "+")
The rabbit likes the dog.
("rabbit" "likes" "dog" "+")
The rabbit needs the cow.
("rabbit" "needs" "cow" "+")
The rabbit needs the squirrel.
("rabbit" "needs" "squirrel" "+")
The squirrel chases the rabbit.
("squirrel" "chases" "rabbit" "+")
The squirrel likes the dog.
("squirrel" "likes" "dog" "+")
The squirrel needs the rabbit.
("squirrel" "needs" "rabbit" "+")
If someone likes the cow and the cow needs the dog then they need the dog.
((("someone" "likes" "cow" "+") ("cow" "needs" "dog" "+")) -> ("someone" "needs" "dog" "+"))
If someone needs the rabbit then the rabbit is nice.
((("someone" "needs" "rabbit" "+")) -> ("rabbit" "is" "nice" "+"))
If someone is young and round then they chase the dog.
((("someone" "is" "young" "+") ("someone" "is" "round" "+")) -> ("someone" "chases" "dog" "+"))
If someone likes the cow and they are green then they are young.
((("someone" "likes" "cow" "+") ("someone" "is" "green" "+")) -> ("someone" "is" "young" "+"))
If someone chases the dog then they need the dog.
((("someone" "chases" "dog" "+")) -> ("someone" "needs" "dog" "+"))
If someone chases the dog then the dog chases the cow.
((("someone" "chases" "dog" "+")) -> ("dog" "chases" "cow" "+"))
The dog is round.
True
1
proof
[(triple5)]
("dog" "is" "round" "+")
triple5
The rabbit does not like the dog.
False
1
inv-proof
[(triple10)]
("rabbit" "likes" "dog" "-")
triple10
The dog chases the dog.
True
3
proof
[(((triple6 triple5) -> rule3) OR ((((triple7 triple4) -> rule4) triple5) -> rule3))]
("dog" "chases" "dog" "+")
((triple6 triple5) -> (rule3 % int1))
The dog chases the dog.
("dog" "chases" "dog" "+")
int1
((((triple7 triple4) -> (rule4 % int2)) triple5) -> (rule3 % int1))
The dog chases the dog.
("dog" "chases" "dog" "+")
int1
The dog is young.
("dog" "is" "young" "+")
int2
The dog does not chase the dog.
False
3
inv-proof
[(((triple6 triple5) -> rule3) OR ((((triple7 triple4) -> rule4) triple5) -> rule3))]
("dog" "chases" "dog" "-")
((triple6 triple5) -> (rule3 % int1))
The dog chases the dog.
("dog" "chases" "dog" "+")
int1
((((triple7 triple4) -> (rule4 % int2)) triple5) -> (rule3 % int1))
The dog chases the dog.
("dog" "chases" "dog" "+")
int1
The dog is young.
("dog" "is" "young" "+")
int2
The dog needs the dog.
True
4
proof
[(((((triple6 triple5) -> rule3)) -> rule5) OR ((((((triple7 triple4) -> rule4) triple5) -> rule3)) -> rule5))]
("dog" "needs" "dog" "+")
((((triple6 triple5) -> (rule3 % int2))) -> (rule5 % int1))
The dog needs the dog.
("dog" "needs" "dog" "+")
int1
The dog chases the dog.
("dog" "chases" "dog" "+")
int2
((((((triple7 triple4) -> (rule4 % int3)) triple5) -> (rule3 % int2))) -> (rule5 % int1))
The dog needs the dog.
("dog" "needs" "dog" "+")
int1
The dog chases the dog.
("dog" "chases" "dog" "+")
int2
The dog is young.
("dog" "is" "young" "+")
int3
The dog does not need the dog.
False
4
inv-proof
[(((((triple6 triple5) -> rule3)) -> rule5) OR ((((((triple7 triple4) -> rule4) triple5) -> rule3)) -> rule5))]
("dog" "needs" "dog" "-")
((((triple6 triple5) -> (rule3 % int2))) -> (rule5 % int1))
The dog needs the dog.
("dog" "needs" "dog" "+")
int1
The dog chases the dog.
("dog" "chases" "dog" "+")
int2
((((((triple7 triple4) -> (rule4 % int3)) triple5) -> (rule3 % int2))) -> (rule5 % int1))
The dog needs the dog.
("dog" "needs" "dog" "+")
int1
The dog chases the dog.
("dog" "chases" "dog" "+")
int2
The dog is young.
("dog" "is" "young" "+")
int3
The cow does not need the dog.
Unknown
inv-rconc
[@2: The cow needs the dog.[CWA. Example of deepest failure = (rule5 <- rule3 <- FAIL)]]
("cow" "needs" "dog" "-")
The squirrel is young.
Unknown
rconc
[@1: The squirrel is young.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("squirrel" "is" "young" "+")
The squirrel does not need the dog.
Unknown
inv-rconc
[@2: The squirrel needs the dog.[CWA. Example of deepest failure = (rule5 <- rule3 <- FAIL)]]
("squirrel" "needs" "dog" "-")
The cow is round.
Unknown
random
[@0: The cow is round.[CWA. Example of deepest failure = (FAIL)]]
("cow" "is" "round" "+")
The dog does not chase the squirrel.
Unknown
inv-random
[@0: The dog chases the squirrel.[CWA. Example of deepest failure = (FAIL)]]
("dog" "chases" "squirrel" "-")
The squirrel is nice.
Unknown
random
[@0: The squirrel is nice.[CWA. Example of deepest failure = (FAIL)]]
("squirrel" "is" "nice" "+")
@0: The cow is young.[(triple1)] The dog chases the cow.[(triple2 OR ((((triple6 triple5) -> rule3)) -> rule6) OR ((((((triple7 triple4) -> rule4) triple5) -> rule3)) -> rule6))] The dog chases the rabbit.[(triple3)] The dog is green.[(triple4)] The dog is round.[(triple5)] The dog is young.[(triple6 OR ((triple7 triple4) -> rule4))] The dog likes the cow.[(triple7)] The dog likes the squirrel.[(triple8)] The dog needs the rabbit.[(triple9)] The rabbit likes the dog.[(triple10)] The rabbit needs the cow.[(triple11)] The rabbit needs the squirrel.[(triple12)] The squirrel chases the rabbit.[(triple13)] The squirrel likes the dog.[(triple14)] The squirrel needs the rabbit.[(triple15)] @1: The dog chases the dog.[(((triple6 triple5) -> rule3) OR ((((triple7 triple4) -> rule4) triple5) -> rule3))] The rabbit is nice.[(((triple15) -> rule2) OR ((triple9) -> rule2))] @2: The dog needs the dog.[(((((triple6 triple5) -> rule3)) -> rule5) OR ((((((triple7 triple4) -> rule4) triple5) -> rule3)) -> rule5))]
The cow is young.
("cow" "is" "young" "+")
triple1
The dog chases the cow.
("dog" "chases" "cow" "+")
triple2
((((triple6 triple5) -> (rule3 % int2))) -> (rule6 % int1))
The dog chases the cow.
("dog" "chases" "cow" "+")
int1
The dog chases the dog.
("dog" "chases" "dog" "+")
int2
((((((triple7 triple4) -> (rule4 % int3)) triple5) -> (rule3 % int2))) -> (rule6 % int1))
The dog chases the cow.
("dog" "chases" "cow" "+")
int1
The dog chases the dog.
("dog" "chases" "dog" "+")
int2
The dog is young.
("dog" "is" "young" "+")
int3
The dog chases the rabbit.
("dog" "chases" "rabbit" "+")
triple3
The dog is green.
("dog" "is" "green" "+")
triple4
The dog is round.
("dog" "is" "round" "+")
triple5
The dog is young.
("dog" "is" "young" "+")
triple6
((triple7 triple4) -> (rule4 % int1))
The dog is young.
("dog" "is" "young" "+")
int1
The dog likes the cow.
("dog" "likes" "cow" "+")
triple7
The dog likes the squirrel.
("dog" "likes" "squirrel" "+")
triple8
The dog needs the rabbit.
("dog" "needs" "rabbit" "+")
triple9
The rabbit likes the dog.
("rabbit" "likes" "dog" "+")
triple10
The rabbit needs the cow.
("rabbit" "needs" "cow" "+")
triple11
The rabbit needs the squirrel.
("rabbit" "needs" "squirrel" "+")
triple12
The squirrel chases the rabbit.
("squirrel" "chases" "rabbit" "+")
triple13
The squirrel likes the dog.
("squirrel" "likes" "dog" "+")
triple14
The squirrel needs the rabbit.
("squirrel" "needs" "rabbit" "+")
triple15
The dog chases the dog.
("dog" "chases" "dog" "+")
((triple6 triple5) -> (rule3 % int1))
The dog chases the dog.
("dog" "chases" "dog" "+")
int1
((((triple7 triple4) -> (rule4 % int2)) triple5) -> (rule3 % int1))
The dog chases the dog.
("dog" "chases" "dog" "+")
int1
The dog is young.
("dog" "is" "young" "+")
int2
The rabbit is nice.
("rabbit" "is" "nice" "+")
((triple15) -> (rule2 % int1))
The rabbit is nice.
("rabbit" "is" "nice" "+")
int1
((triple9) -> (rule2 % int1))
The rabbit is nice.
("rabbit" "is" "nice" "+")
int1
The dog needs the dog.
("dog" "needs" "dog" "+")
((((triple6 triple5) -> (rule3 % int2))) -> (rule5 % int1))
The dog needs the dog.
("dog" "needs" "dog" "+")
int1
The dog chases the dog.
("dog" "chases" "dog" "+")
int2
((((((triple7 triple4) -> (rule4 % int3)) triple5) -> (rule3 % int2))) -> (rule5 % int1))
The dog needs the dog.
("dog" "needs" "dog" "+")
int1
The dog chases the dog.
("dog" "chases" "dog" "+")
int2
The dog is young.
("dog" "is" "young" "+")
int3