The dog eats the rabbit. The dog is nice. The dog is rough. The dog visits the rabbit. The rabbit chases the dog. The rabbit eats the dog. The rabbit is blue. The rabbit is cold. The rabbit is kind. The rabbit is nice. The rabbit is rough. The rabbit visits the dog. If something is cold then it chases the dog. If something eats the dog then the dog chases the rabbit. If something visits the rabbit then the rabbit visits the dog. If something eats the rabbit then the rabbit visits the dog. If something is rough and it chases the dog then it eats the dog. If something is cold then it visits the rabbit. If something visits the rabbit and the rabbit is kind then the rabbit eats the dog. If something chases the rabbit then the rabbit eats the dog.
The dog eats the rabbit.
("dog" "eats" "rabbit" "+")
The dog is nice.
("dog" "is" "nice" "+")
The dog is rough.
("dog" "is" "rough" "+")
The dog visits the rabbit.
("dog" "visits" "rabbit" "+")
The rabbit chases the dog.
("rabbit" "chases" "dog" "+")
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
The rabbit is blue.
("rabbit" "is" "blue" "+")
The rabbit is cold.
("rabbit" "is" "cold" "+")
The rabbit is kind.
("rabbit" "is" "kind" "+")
The rabbit is nice.
("rabbit" "is" "nice" "+")
The rabbit is rough.
("rabbit" "is" "rough" "+")
The rabbit visits the dog.
("rabbit" "visits" "dog" "+")
If something is cold then it chases the dog.
((("something" "is" "cold" "+")) -> ("something" "chases" "dog" "+"))
If something eats the dog then the dog chases the rabbit.
((("something" "eats" "dog" "+")) -> ("dog" "chases" "rabbit" "+"))
If something visits the rabbit then the rabbit visits the dog.
((("something" "visits" "rabbit" "+")) -> ("rabbit" "visits" "dog" "+"))
If something eats the rabbit then the rabbit visits the dog.
((("something" "eats" "rabbit" "+")) -> ("rabbit" "visits" "dog" "+"))
If something is rough and it chases the dog then it eats the dog.
((("something" "is" "rough" "+") ("something" "chases" "dog" "+")) -> ("something" "eats" "dog" "+"))
If something is cold then it visits the rabbit.
((("something" "is" "cold" "+")) -> ("something" "visits" "rabbit" "+"))
If something visits the rabbit and the rabbit is kind then the rabbit eats the dog.
((("something" "visits" "rabbit" "+") ("rabbit" "is" "kind" "+")) -> ("rabbit" "eats" "dog" "+"))
If something chases the rabbit then the rabbit eats the dog.
((("something" "chases" "rabbit" "+")) -> ("rabbit" "eats" "dog" "+"))
The rabbit is blue.
True
1
proof
[(triple7)]
("rabbit" "is" "blue" "+")
triple7
The rabbit is not nice.
False
1
inv-proof
[(triple10)]
("rabbit" "is" "nice" "-")
triple10
The dog chases the rabbit.
True
2
proof
[(((triple6) -> rule2) OR ((((triple11 triple5) -> rule5)) -> rule2) OR ((((triple4 triple9) -> rule7)) -> rule2) OR ((((triple11 ((triple8) -> rule1)) -> rule5)) -> rule2) OR ((((((triple8) -> rule6) triple9) -> rule7)) -> rule2))]
("dog" "chases" "rabbit" "+")
((triple6) -> (rule2 % int1))
The dog chases the rabbit.
("dog" "chases" "rabbit" "+")
int1
((((triple11 triple5) -> (rule5 % int2))) -> (rule2 % int1))
The dog chases the rabbit.
("dog" "chases" "rabbit" "+")
int1
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int2
((((triple4 triple9) -> (rule7 % int2))) -> (rule2 % int1))
The dog chases the rabbit.
("dog" "chases" "rabbit" "+")
int1
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int2
((((triple11 ((triple8) -> (rule1 % int3))) -> (rule5 % int2))) -> (rule2 % int1))
The dog chases the rabbit.
("dog" "chases" "rabbit" "+")
int1
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int2
The rabbit chases the dog.
("rabbit" "chases" "dog" "+")
int3
((((((triple8) -> (rule6 % int3)) triple9) -> (rule7 % int2))) -> (rule2 % int1))
The dog chases the rabbit.
("dog" "chases" "rabbit" "+")
int1
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int2
The rabbit visits the rabbit.
("rabbit" "visits" "rabbit" "+")
int3
The dog does not chase the rabbit.
False
2
inv-proof
[(((triple6) -> rule2) OR ((((triple11 triple5) -> rule5)) -> rule2) OR ((((triple4 triple9) -> rule7)) -> rule2) OR ((((triple11 ((triple8) -> rule1)) -> rule5)) -> rule2) OR ((((((triple8) -> rule6) triple9) -> rule7)) -> rule2))]
("dog" "chases" "rabbit" "-")
((triple6) -> (rule2 % int1))
The dog chases the rabbit.
("dog" "chases" "rabbit" "+")
int1
((((triple11 triple5) -> (rule5 % int2))) -> (rule2 % int1))
The dog chases the rabbit.
("dog" "chases" "rabbit" "+")
int1
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int2
((((triple4 triple9) -> (rule7 % int2))) -> (rule2 % int1))
The dog chases the rabbit.
("dog" "chases" "rabbit" "+")
int1
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int2
((((triple11 ((triple8) -> (rule1 % int3))) -> (rule5 % int2))) -> (rule2 % int1))
The dog chases the rabbit.
("dog" "chases" "rabbit" "+")
int1
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int2
The rabbit chases the dog.
("rabbit" "chases" "dog" "+")
int3
((((((triple8) -> (rule6 % int3)) triple9) -> (rule7 % int2))) -> (rule2 % int1))
The dog chases the rabbit.
("dog" "chases" "rabbit" "+")
int1
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int2
The rabbit visits the rabbit.
("rabbit" "visits" "rabbit" "+")
int3
The dog does not eat the dog.
Unknown
inv-rconc
[@2: The dog eats the dog.[CWA. Example of deepest failure = (rule5 <- rule1 <- FAIL)]]
("dog" "eats" "dog" "-")
The dog chases the dog.
Unknown
rconc
[@1: The dog chases the dog.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("dog" "chases" "dog" "+")
The rabbit does not chase the rabbit.
Unknown
inv-random
[@0: The rabbit chases the rabbit.[CWA. Example of deepest failure = (FAIL)]]
("rabbit" "chases" "rabbit" "-")
The dog visits the dog.
Unknown
random
[@0: The dog visits the dog.[CWA. Example of deepest failure = (FAIL)]]
("dog" "visits" "dog" "+")
@0: The dog eats the rabbit.[(triple1)] The dog is nice.[(triple2)] The dog is rough.[(triple3)] The dog visits the rabbit.[(triple4)] The rabbit chases the dog.[(triple5 OR ((triple8) -> rule1))] The rabbit eats the dog.[(triple6 OR ((triple11 triple5) -> rule5) OR ((triple4 triple9) -> rule7) OR ((triple11 ((triple8) -> rule1)) -> rule5) OR ((((triple8) -> rule6) triple9) -> rule7))] The rabbit is blue.[(triple7)] The rabbit is cold.[(triple8)] The rabbit is kind.[(triple9)] The rabbit is nice.[(triple10)] The rabbit is rough.[(triple11)] The rabbit visits the dog.[(triple12 OR ((triple1) -> rule4) OR ((triple4) -> rule3) OR ((((triple8) -> rule6)) -> rule3))] @1: The dog chases the rabbit.[(((triple6) -> rule2) OR ((((triple11 triple5) -> rule5)) -> rule2) OR ((((triple4 triple9) -> rule7)) -> rule2) OR ((((triple11 ((triple8) -> rule1)) -> rule5)) -> rule2) OR ((((((triple8) -> rule6) triple9) -> rule7)) -> rule2))] The rabbit visits the rabbit.[(((triple8) -> rule6))]
The dog eats the rabbit.
("dog" "eats" "rabbit" "+")
triple1
The dog is nice.
("dog" "is" "nice" "+")
triple2
The dog is rough.
("dog" "is" "rough" "+")
triple3
The dog visits the rabbit.
("dog" "visits" "rabbit" "+")
triple4
The rabbit chases the dog.
("rabbit" "chases" "dog" "+")
triple5
((triple8) -> (rule1 % int1))
The rabbit chases the dog.
("rabbit" "chases" "dog" "+")
int1
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
triple6
((triple11 triple5) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
((triple4 triple9) -> (rule7 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
((triple11 ((triple8) -> (rule1 % int2))) -> (rule5 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The rabbit chases the dog.
("rabbit" "chases" "dog" "+")
int2
((((triple8) -> (rule6 % int2)) triple9) -> (rule7 % int1))
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int1
The rabbit visits the rabbit.
("rabbit" "visits" "rabbit" "+")
int2
The rabbit is blue.
("rabbit" "is" "blue" "+")
triple7
The rabbit is cold.
("rabbit" "is" "cold" "+")
triple8
The rabbit is kind.
("rabbit" "is" "kind" "+")
triple9
The rabbit is nice.
("rabbit" "is" "nice" "+")
triple10
The rabbit is rough.
("rabbit" "is" "rough" "+")
triple11
The rabbit visits the dog.
("rabbit" "visits" "dog" "+")
triple12
((triple1) -> (rule4 % int1))
The rabbit visits the dog.
("rabbit" "visits" "dog" "+")
int1
((triple4) -> (rule3 % int1))
The rabbit visits the dog.
("rabbit" "visits" "dog" "+")
int1
((((triple8) -> (rule6 % int2))) -> (rule3 % int1))
The rabbit visits the dog.
("rabbit" "visits" "dog" "+")
int1
The rabbit visits the rabbit.
("rabbit" "visits" "rabbit" "+")
int2
The dog chases the rabbit.
("dog" "chases" "rabbit" "+")
((triple6) -> (rule2 % int1))
The dog chases the rabbit.
("dog" "chases" "rabbit" "+")
int1
((((triple11 triple5) -> (rule5 % int2))) -> (rule2 % int1))
The dog chases the rabbit.
("dog" "chases" "rabbit" "+")
int1
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int2
((((triple4 triple9) -> (rule7 % int2))) -> (rule2 % int1))
The dog chases the rabbit.
("dog" "chases" "rabbit" "+")
int1
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int2
((((triple11 ((triple8) -> (rule1 % int3))) -> (rule5 % int2))) -> (rule2 % int1))
The dog chases the rabbit.
("dog" "chases" "rabbit" "+")
int1
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int2
The rabbit chases the dog.
("rabbit" "chases" "dog" "+")
int3
((((((triple8) -> (rule6 % int3)) triple9) -> (rule7 % int2))) -> (rule2 % int1))
The dog chases the rabbit.
("dog" "chases" "rabbit" "+")
int1
The rabbit eats the dog.
("rabbit" "eats" "dog" "+")
int2
The rabbit visits the rabbit.
("rabbit" "visits" "rabbit" "+")
int3
The rabbit visits the rabbit.
("rabbit" "visits" "rabbit" "+")
((triple8) -> (rule6 % int1))
The rabbit visits the rabbit.
("rabbit" "visits" "rabbit" "+")
int1