The bear is nice. The bear is red. The bear needs the cat. The bear does not see the cat. The cat is nice. The cat is rough. The cat needs the bear. The cat needs the dog. The dog eats the cat. The dog is not red. If the bear eats the dog then the bear does not need the dog. If something eats the bear and the bear does not see the cat then the bear eats the dog. If something sees the bear then the bear is rough. If the cat sees the bear then the cat needs the bear. If something eats the cat then the cat eats the bear. If something sees the dog and the dog sees the cat then it needs the bear. If something sees the dog and it does not eat the dog then the dog does not need the bear. If something needs the dog and it needs the bear then the dog needs the cat.
The bear is nice.
("bear" "is" "nice" "+")
The bear is red.
("bear" "is" "red" "+")
The bear needs the cat.
("bear" "needs" "cat" "+")
The bear does not see the cat.
("bear" "sees" "cat" "-")
The cat is nice.
("cat" "is" "nice" "+")
The cat is rough.
("cat" "is" "rough" "+")
The cat needs the bear.
("cat" "needs" "bear" "+")
The cat needs the dog.
("cat" "needs" "dog" "+")
The dog eats the cat.
("dog" "eats" "cat" "+")
The dog is not red.
("dog" "is" "red" "-")
If the bear eats the dog then the bear does not need the dog.
((("bear" "eats" "dog" "+")) -> ("bear" "needs" "dog" "-"))
If something eats the bear and the bear does not see the cat then the bear eats the dog.
((("something" "eats" "bear" "+") ("bear" "sees" "cat" "~")) -> ("bear" "eats" "dog" "+"))
If something sees the bear then the bear is rough.
((("something" "sees" "bear" "+")) -> ("bear" "is" "rough" "+"))
If the cat sees the bear then the cat needs the bear.
((("cat" "sees" "bear" "+")) -> ("cat" "needs" "bear" "+"))
If something eats the cat then the cat eats the bear.
((("something" "eats" "cat" "+")) -> ("cat" "eats" "bear" "+"))
If something sees the dog and the dog sees the cat then it needs the bear.
((("something" "sees" "dog" "+") ("dog" "sees" "cat" "+")) -> ("something" "needs" "bear" "+"))
If something sees the dog and it does not eat the dog then the dog does not need the bear.
((("something" "sees" "dog" "+") ("something" "eats" "dog" "~")) -> ("dog" "needs" "bear" "-"))
If something needs the dog and it needs the bear then the dog needs the cat.
((("something" "needs" "dog" "+") ("something" "needs" "bear" "+")) -> ("dog" "needs" "cat" "+"))
The dog is not red.
True
1
proof
[(triple10)]
("dog" "is" "red" "-")
triple10
The cat is not nice.
False
1
inv-proof
[(triple5)]
("cat" "is" "nice" "-")
triple5
The cat eats the bear.
True
2
proof
[(((triple9) -> rule5))]
("cat" "eats" "bear" "+")
((triple9) -> (rule5 % int1))
The cat eats the bear.
("cat" "eats" "bear" "+")
int1
The cat does not eat the bear.
False
2
inv-proof
[(((triple9) -> rule5))]
("cat" "eats" "bear" "-")
((triple9) -> (rule5 % int1))
The cat eats the bear.
("cat" "eats" "bear" "+")
int1
The bear eats the dog.
True
4
proof
[(((((triple9) -> rule5) triple4) -> rule2))]
("bear" "eats" "dog" "+")
((((triple9) -> (rule5 % int2)) triple4) -> (rule2 % int1))
The bear eats the dog.
("bear" "eats" "dog" "+")
int1
The cat eats the bear.
("cat" "eats" "bear" "+")
int2
The bear does not eat the dog.
False
4
inv-proof
[(((((triple9) -> rule5) triple4) -> rule2))]
("bear" "eats" "dog" "-")
((((triple9) -> (rule5 % int2)) triple4) -> (rule2 % int1))
The bear eats the dog.
("bear" "eats" "dog" "+")
int1
The cat eats the bear.
("cat" "eats" "bear" "+")
int2
The bear does not need the dog.
True
5
proof
[(((((((triple9) -> rule5) triple4) -> rule2)) -> rule1))]
("bear" "needs" "dog" "-")
((((((triple9) -> (rule5 % int3)) triple4) -> (rule2 % int2))) -> (rule1 % int1))
The bear does not need the dog.
("bear" "needs" "dog" "-")
int1
The bear eats the dog.
("bear" "eats" "dog" "+")
int2
The cat eats the bear.
("cat" "eats" "bear" "+")
int3
The bear needs the dog.
False
5
inv-proof
[(((((((triple9) -> rule5) triple4) -> rule2)) -> rule1))]
("bear" "needs" "dog" "+")
((((((triple9) -> (rule5 % int3)) triple4) -> (rule2 % int2))) -> (rule1 % int1))
The bear does not need the dog.
("bear" "needs" "dog" "-")
int1
The bear eats the dog.
("bear" "eats" "dog" "+")
int2
The cat eats the bear.
("cat" "eats" "bear" "+")
int3
The dog does not need the bear.
Unknown
inv-rconc
[@1: The dog needs the bear.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("dog" "needs" "bear" "-")
The bear is rough.
Unknown
rconc
[@1: The bear is rough.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("bear" "is" "rough" "+")
The bear does not need the bear.
Unknown
inv-rconc
[@1: The bear needs the bear.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("bear" "needs" "bear" "-")
The bear is young.
Unknown
random
[@0: The bear is young.[CWA. Example of deepest failure = (FAIL)]]
("bear" "is" "young" "+")
The dog does not see the bear.
Unknown
inv-random
[@0: The dog sees the bear.[CWA. Example of deepest failure = (FAIL)]]
("dog" "sees" "bear" "-")
The cat eats the cat.
Unknown
random
[@0: The cat eats the cat.[CWA. Example of deepest failure = (FAIL)]]
("cat" "eats" "cat" "+")
The cat is not kind.
Unknown
inv-random
[@0: The cat is kind.[CWA. Example of deepest failure = (FAIL)]]
("cat" "is" "kind" "-")
The dog is nice.
Unknown
random
[@0: The dog is nice.[CWA. Example of deepest failure = (FAIL)]]
("dog" "is" "nice" "+")
@0: The bear does not see the cat.[(triple4)] The bear is nice.[(triple1)] The bear is red.[(triple2)] The bear needs the cat.[(triple3)] The cat is nice.[(triple5)] The cat is rough.[(triple6)] The cat needs the bear.[(triple7)] The cat needs the dog.[(triple8)] The dog eats the cat.[(triple9)] The dog is not red.[(triple10)] @1: The cat eats the bear.[(((triple9) -> rule5))] The dog needs the cat.[(((triple8 triple7) -> rule8))] @2: The bear eats the dog.[(((((triple9) -> rule5) triple4) -> rule2))] @3: The bear does not need the dog.[(((((((triple9) -> rule5) triple4) -> rule2)) -> rule1))]
The bear does not see the cat.
("bear" "sees" "cat" "-")
triple4
The bear is nice.
("bear" "is" "nice" "+")
triple1
The bear is red.
("bear" "is" "red" "+")
triple2
The bear needs the cat.
("bear" "needs" "cat" "+")
triple3
The cat is nice.
("cat" "is" "nice" "+")
triple5
The cat is rough.
("cat" "is" "rough" "+")
triple6
The cat needs the bear.
("cat" "needs" "bear" "+")
triple7
The cat needs the dog.
("cat" "needs" "dog" "+")
triple8
The dog eats the cat.
("dog" "eats" "cat" "+")
triple9
The dog is not red.
("dog" "is" "red" "-")
triple10
The cat eats the bear.
("cat" "eats" "bear" "+")
((triple9) -> (rule5 % int1))
The cat eats the bear.
("cat" "eats" "bear" "+")
int1
The dog needs the cat.
("dog" "needs" "cat" "+")
((triple8 triple7) -> (rule8 % int1))
The dog needs the cat.
("dog" "needs" "cat" "+")
int1
The bear eats the dog.
("bear" "eats" "dog" "+")
((((triple9) -> (rule5 % int2)) triple4) -> (rule2 % int1))
The bear eats the dog.
("bear" "eats" "dog" "+")
int1
The cat eats the bear.
("cat" "eats" "bear" "+")
int2
The bear does not need the dog.
("bear" "needs" "dog" "-")
((((((triple9) -> (rule5 % int3)) triple4) -> (rule2 % int2))) -> (rule1 % int1))
The bear does not need the dog.
("bear" "needs" "dog" "-")
int1
The bear eats the dog.
("bear" "eats" "dog" "+")
int2
The cat eats the bear.
("cat" "eats" "bear" "+")
int3