The cow eats the dog. The cow is big. The cow is blue. The cow is not red. The cow likes the dog. The cow visits the dog. The dog eats the cow. The dog is kind. The dog is red. The dog likes the cow. If someone eats the cow and the cow is not kind then they like the dog. If the cow is kind and the cow is not blue then the cow is big. If someone eats the dog then the dog likes the cow. If someone eats the cow then they are rough. If someone is rough then they visit the cow. If someone visits the dog and the dog visits the cow then they like the cow. If someone is kind then they eat the cow. If someone eats the dog then the dog is blue.
The cow eats the dog.
("cow" "eats" "dog" "+")
The cow is big.
("cow" "is" "big" "+")
The cow is blue.
("cow" "is" "blue" "+")
The cow is not red.
("cow" "is" "red" "-")
The cow likes the dog.
("cow" "likes" "dog" "+")
The cow visits the dog.
("cow" "visits" "dog" "+")
The dog eats the cow.
("dog" "eats" "cow" "+")
The dog is kind.
("dog" "is" "kind" "+")
The dog is red.
("dog" "is" "red" "+")
The dog likes the cow.
("dog" "likes" "cow" "+")
If someone eats the cow and the cow is not kind then they like the dog.
((("someone" "eats" "cow" "+") ("cow" "is" "kind" "~")) -> ("someone" "likes" "dog" "+"))
If the cow is kind and the cow is not blue then the cow is big.
((("cow" "is" "kind" "+") ("cow" "is" "blue" "~")) -> ("cow" "is" "big" "+"))
If someone eats the dog then the dog likes the cow.
((("someone" "eats" "dog" "+")) -> ("dog" "likes" "cow" "+"))
If someone eats the cow then they are rough.
((("someone" "eats" "cow" "+")) -> ("someone" "is" "rough" "+"))
If someone is rough then they visit the cow.
((("someone" "is" "rough" "+")) -> ("someone" "visits" "cow" "+"))
If someone visits the dog and the dog visits the cow then they like the cow.
((("someone" "visits" "dog" "+") ("dog" "visits" "cow" "+")) -> ("someone" "likes" "cow" "+"))
If someone is kind then they eat the cow.
((("someone" "is" "kind" "+")) -> ("someone" "eats" "cow" "+"))
If someone eats the dog then the dog is blue.
((("someone" "eats" "dog" "+")) -> ("dog" "is" "blue" "+"))
The dog likes the cow.
True
1
proof
[(triple10 OR ((triple1) -> rule3))]
("dog" "likes" "cow" "+")
triple10
((triple1) -> (rule3 % int1))
The dog likes the cow.
("dog" "likes" "cow" "+")
int1
The cow does not like the dog.
False
1
inv-proof
[(triple5)]
("cow" "likes" "dog" "-")
triple5
The dog is blue.
True
2
proof
[(((triple1) -> rule8))]
("dog" "is" "blue" "+")
((triple1) -> (rule8 % int1))
The dog is blue.
("dog" "is" "blue" "+")
int1
The dog is not blue.
False
2
inv-proof
[(((triple1) -> rule8))]
("dog" "is" "blue" "-")
((triple1) -> (rule8 % int1))
The dog is blue.
("dog" "is" "blue" "+")
int1
The dog visits the cow.
True
3
proof
[(((((triple7) -> rule4)) -> rule5) OR ((((((triple8) -> rule7)) -> rule4)) -> rule5))]
("dog" "visits" "cow" "+")
((((triple7) -> (rule4 % int2))) -> (rule5 % int1))
The dog visits the cow.
("dog" "visits" "cow" "+")
int1
The dog is rough.
("dog" "is" "rough" "+")
int2
((((((triple8) -> (rule7 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
The dog visits the cow.
("dog" "visits" "cow" "+")
int1
The dog is rough.
("dog" "is" "rough" "+")
int2
The dog eats the cow.
("dog" "eats" "cow" "+")
int3
The dog does not visit the cow.
False
3
inv-proof
[(((((triple7) -> rule4)) -> rule5) OR ((((((triple8) -> rule7)) -> rule4)) -> rule5))]
("dog" "visits" "cow" "-")
((((triple7) -> (rule4 % int2))) -> (rule5 % int1))
The dog visits the cow.
("dog" "visits" "cow" "+")
int1
The dog is rough.
("dog" "is" "rough" "+")
int2
((((((triple8) -> (rule7 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
The dog visits the cow.
("dog" "visits" "cow" "+")
int1
The dog is rough.
("dog" "is" "rough" "+")
int2
The dog eats the cow.
("dog" "eats" "cow" "+")
int3
The cow is not rough.
Unknown
inv-rconc
[@2: The cow is rough.[CWA. Example of deepest failure = (rule4 <- rule7 <- FAIL)]]
("cow" "is" "rough" "-")
The cow eats the cow.
Unknown
rconc
[@1: The cow eats the cow.[CWA. Example of deepest failure = (rule7 <- FAIL)]]
("cow" "eats" "cow" "+")
The dog does not like the dog.
Unknown
inv-rconc
[@1: The dog likes the dog.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("dog" "likes" "dog" "-")
The cow is kind.
Unknown
random
[@0: The cow is kind.[CWA. Example of deepest failure = (FAIL)]]
("cow" "is" "kind" "+")
The dog is not big.
Unknown
inv-random
[@0: The dog is big.[CWA. Example of deepest failure = (FAIL)]]
("dog" "is" "big" "-")
The dog eats the dog.
Unknown
random
[@0: The dog eats the dog.[CWA. Example of deepest failure = (FAIL)]]
("dog" "eats" "dog" "+")
@0: The cow eats the dog.[(triple1)] The cow is big.[(triple2)] The cow is blue.[(triple3)] The cow is not red.[(triple4)] The cow likes the dog.[(triple5)] The cow visits the dog.[(triple6)] The dog eats the cow.[(triple7 OR ((triple8) -> rule7))] The dog is kind.[(triple8)] The dog is red.[(triple9)] The dog likes the cow.[(triple10 OR ((triple1) -> rule3))] @1: The dog is blue.[(((triple1) -> rule8))] The dog is rough.[(((triple7) -> rule4) OR ((((triple8) -> rule7)) -> rule4))] @2: The dog visits the cow.[(((((triple7) -> rule4)) -> rule5) OR ((((((triple8) -> rule7)) -> rule4)) -> rule5))] @3: The cow likes the cow.[(((triple6 ((((triple7) -> rule4)) -> rule5)) -> rule6) OR ((triple6 ((((((triple8) -> rule7)) -> rule4)) -> rule5)) -> rule6))]
The cow eats the dog.
("cow" "eats" "dog" "+")
triple1
The cow is big.
("cow" "is" "big" "+")
triple2
The cow is blue.
("cow" "is" "blue" "+")
triple3
The cow is not red.
("cow" "is" "red" "-")
triple4
The cow likes the dog.
("cow" "likes" "dog" "+")
triple5
The cow visits the dog.
("cow" "visits" "dog" "+")
triple6
The dog eats the cow.
("dog" "eats" "cow" "+")
triple7
((triple8) -> (rule7 % int1))
The dog eats the cow.
("dog" "eats" "cow" "+")
int1
The dog is kind.
("dog" "is" "kind" "+")
triple8
The dog is red.
("dog" "is" "red" "+")
triple9
The dog likes the cow.
("dog" "likes" "cow" "+")
triple10
((triple1) -> (rule3 % int1))
The dog likes the cow.
("dog" "likes" "cow" "+")
int1
The dog is blue.
("dog" "is" "blue" "+")
((triple1) -> (rule8 % int1))
The dog is blue.
("dog" "is" "blue" "+")
int1
The dog is rough.
("dog" "is" "rough" "+")
((triple7) -> (rule4 % int1))
The dog is rough.
("dog" "is" "rough" "+")
int1
((((triple8) -> (rule7 % int2))) -> (rule4 % int1))
The dog is rough.
("dog" "is" "rough" "+")
int1
The dog eats the cow.
("dog" "eats" "cow" "+")
int2
The dog visits the cow.
("dog" "visits" "cow" "+")
((((triple7) -> (rule4 % int2))) -> (rule5 % int1))
The dog visits the cow.
("dog" "visits" "cow" "+")
int1
The dog is rough.
("dog" "is" "rough" "+")
int2
((((((triple8) -> (rule7 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
The dog visits the cow.
("dog" "visits" "cow" "+")
int1
The dog is rough.
("dog" "is" "rough" "+")
int2
The dog eats the cow.
("dog" "eats" "cow" "+")
int3
The cow likes the cow.
("cow" "likes" "cow" "+")
((triple6 ((((triple7) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule6 % int1))
The cow likes the cow.
("cow" "likes" "cow" "+")
int1
The dog visits the cow.
("dog" "visits" "cow" "+")
int2
The dog is rough.
("dog" "is" "rough" "+")
int3
((triple6 ((((((triple8) -> (rule7 % int4))) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule6 % int1))
The cow likes the cow.
("cow" "likes" "cow" "+")
int1
The dog visits the cow.
("dog" "visits" "cow" "+")
int2
The dog is rough.
("dog" "is" "rough" "+")
int3
The dog eats the cow.
("dog" "eats" "cow" "+")
int4