The dog is big. The dog is kind. The dog is red. The dog is rough. The dog is young. If something is rough then it is kind. If something is big and red then it is young. All kind things are red. If something is red and young then it is kind. If the dog is red and the dog is young then the dog is rough. If something is red then it is kind. Rough things are kind. If something is red then it is rough.
The dog is big.
("dog" "is" "big" "+")
The dog is kind.
("dog" "is" "kind" "+")
The dog is red.
("dog" "is" "red" "+")
The dog is rough.
("dog" "is" "rough" "+")
The dog is young.
("dog" "is" "young" "+")
If something is rough then it is kind.
((("something" "is" "rough" "+")) -> ("something" "is" "kind" "+"))
If something is big and red then it is young.
((("something" "is" "big" "+") ("something" "is" "red" "+")) -> ("something" "is" "young" "+"))
All kind things are red.
((("something" "is" "kind" "+")) -> ("something" "is" "red" "+"))
If something is red and young then it is kind.
((("something" "is" "red" "+") ("something" "is" "young" "+")) -> ("something" "is" "kind" "+"))
If the dog is red and the dog is young then the dog is rough.
((("dog" "is" "red" "+") ("dog" "is" "young" "+")) -> ("dog" "is" "rough" "+"))
If something is red then it is kind.
((("something" "is" "red" "+")) -> ("something" "is" "kind" "+"))
Rough things are kind.
((("something" "is" "rough" "+")) -> ("something" "is" "kind" "+"))
If something is red then it is rough.
((("something" "is" "red" "+")) -> ("something" "is" "rough" "+"))
The dog is kind.
True
1
proof
[(triple2 OR ((triple3) -> rule6) OR ((triple4) -> rule1) OR ((triple4) -> rule7) OR ((triple3 triple5) -> rule4) OR ((((triple3) -> rule8)) -> rule1) OR ((((triple3) -> rule8)) -> rule7) OR ((((triple3 triple5) -> rule5)) -> rule1) OR ((((triple3 triple5) -> rule5)) -> rule7) OR ((triple3 ((triple1 triple3) -> rule2)) -> rule4) OR ((((triple3 ((triple1 triple3) -> rule2)) -> rule5)) -> rule1) OR ((((triple3 ((triple1 triple3) -> rule2)) -> rule5)) -> rule7))]
("dog" "is" "kind" "+")
triple2
((triple3) -> (rule6 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
((triple4) -> (rule1 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
((triple4) -> (rule7 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
((triple3 triple5) -> (rule4 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
((((triple3) -> (rule8 % int2))) -> (rule1 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
The dog is rough.
("dog" "is" "rough" "+")
int2
((((triple3) -> (rule8 % int2))) -> (rule7 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
The dog is rough.
("dog" "is" "rough" "+")
int2
((((triple3 triple5) -> (rule5 % int2))) -> (rule1 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
The dog is rough.
("dog" "is" "rough" "+")
int2
((((triple3 triple5) -> (rule5 % int2))) -> (rule7 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
The dog is rough.
("dog" "is" "rough" "+")
int2
((triple3 ((triple1 triple3) -> (rule2 % int2))) -> (rule4 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
The dog is young.
("dog" "is" "young" "+")
int2
((((triple3 ((triple1 triple3) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule1 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
The dog is rough.
("dog" "is" "rough" "+")
int2
The dog is young.
("dog" "is" "young" "+")
int3
((((triple3 ((triple1 triple3) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule7 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
The dog is rough.
("dog" "is" "rough" "+")
int2
The dog is young.
("dog" "is" "young" "+")
int3
The dog is not red.
False
1
inv-proof
[(triple3 OR ((triple2) -> rule3) OR ((((triple4) -> rule1)) -> rule3) OR ((((triple4) -> rule7)) -> rule3))]
("dog" "is" "red" "-")
triple3
((triple2) -> (rule3 % int1))
The dog is red.
("dog" "is" "red" "+")
int1
((((triple4) -> (rule1 % int2))) -> (rule3 % int1))
The dog is red.
("dog" "is" "red" "+")
int1
The dog is kind.
("dog" "is" "kind" "+")
int2
((((triple4) -> (rule7 % int2))) -> (rule3 % int1))
The dog is red.
("dog" "is" "red" "+")
int1
The dog is kind.
("dog" "is" "kind" "+")
int2
The dog does not see the dog.
Unknown
inv-random
[@0: The dog sees the dog.[CWA. Example of deepest failure = (FAIL)]]
("dog" "sees" "dog" "-")
The dog likes the dog.
Unknown
random
[@0: The dog likes the dog.[CWA. Example of deepest failure = (FAIL)]]
("dog" "likes" "dog" "+")
@0: The dog is big.[(triple1)] The dog is kind.[(triple2 OR ((triple3) -> rule6) OR ((triple4) -> rule1) OR ((triple4) -> rule7) OR ((triple3 triple5) -> rule4) OR ((((triple3) -> rule8)) -> rule1) OR ((((triple3) -> rule8)) -> rule7) OR ((((triple3 triple5) -> rule5)) -> rule1) OR ((((triple3 triple5) -> rule5)) -> rule7) OR ((triple3 ((triple1 triple3) -> rule2)) -> rule4) OR ((((triple3 ((triple1 triple3) -> rule2)) -> rule5)) -> rule1) OR ((((triple3 ((triple1 triple3) -> rule2)) -> rule5)) -> rule7))] The dog is red.[(triple3 OR ((triple2) -> rule3) OR ((((triple4) -> rule1)) -> rule3) OR ((((triple4) -> rule7)) -> rule3))] The dog is rough.[(triple4 OR ((triple3) -> rule8) OR ((triple3 triple5) -> rule5) OR ((((triple2) -> rule3)) -> rule8) OR ((triple3 ((triple1 triple3) -> rule2)) -> rule5) OR ((((triple2) -> rule3) triple5) -> rule5) OR ((((triple2) -> rule3) ((triple1 triple3) -> rule2)) -> rule5) OR ((triple3 ((triple1 ((triple2) -> rule3)) -> rule2)) -> rule5) OR ((((triple2) -> rule3) ((triple1 ((triple2) -> rule3)) -> rule2)) -> rule5))] The dog is young.[(triple5 OR ((triple1 triple3) -> rule2) OR ((triple1 ((triple2) -> rule3)) -> rule2) OR ((triple1 ((((triple4) -> rule1)) -> rule3)) -> rule2) OR ((triple1 ((((triple4) -> rule7)) -> rule3)) -> rule2))]
The dog is big.
("dog" "is" "big" "+")
triple1
The dog is kind.
("dog" "is" "kind" "+")
triple2
((triple3) -> (rule6 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
((triple4) -> (rule1 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
((triple4) -> (rule7 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
((triple3 triple5) -> (rule4 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
((((triple3) -> (rule8 % int2))) -> (rule1 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
The dog is rough.
("dog" "is" "rough" "+")
int2
((((triple3) -> (rule8 % int2))) -> (rule7 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
The dog is rough.
("dog" "is" "rough" "+")
int2
((((triple3 triple5) -> (rule5 % int2))) -> (rule1 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
The dog is rough.
("dog" "is" "rough" "+")
int2
((((triple3 triple5) -> (rule5 % int2))) -> (rule7 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
The dog is rough.
("dog" "is" "rough" "+")
int2
((triple3 ((triple1 triple3) -> (rule2 % int2))) -> (rule4 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
The dog is young.
("dog" "is" "young" "+")
int2
((((triple3 ((triple1 triple3) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule1 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
The dog is rough.
("dog" "is" "rough" "+")
int2
The dog is young.
("dog" "is" "young" "+")
int3
((((triple3 ((triple1 triple3) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule7 % int1))
The dog is kind.
("dog" "is" "kind" "+")
int1
The dog is rough.
("dog" "is" "rough" "+")
int2
The dog is young.
("dog" "is" "young" "+")
int3
The dog is red.
("dog" "is" "red" "+")
triple3
((triple2) -> (rule3 % int1))
The dog is red.
("dog" "is" "red" "+")
int1
((((triple4) -> (rule1 % int2))) -> (rule3 % int1))
The dog is red.
("dog" "is" "red" "+")
int1
The dog is kind.
("dog" "is" "kind" "+")
int2
((((triple4) -> (rule7 % int2))) -> (rule3 % int1))
The dog is red.
("dog" "is" "red" "+")
int1
The dog is kind.
("dog" "is" "kind" "+")
int2
The dog is rough.
("dog" "is" "rough" "+")
triple4
((triple3) -> (rule8 % int1))
The dog is rough.
("dog" "is" "rough" "+")
int1
((triple3 triple5) -> (rule5 % int1))
The dog is rough.
("dog" "is" "rough" "+")
int1
((((triple2) -> (rule3 % int2))) -> (rule8 % int1))
The dog is rough.
("dog" "is" "rough" "+")
int1
The dog is red.
("dog" "is" "red" "+")
int2
((triple3 ((triple1 triple3) -> (rule2 % int2))) -> (rule5 % int1))
The dog is rough.
("dog" "is" "rough" "+")
int1
The dog is young.
("dog" "is" "young" "+")
int2
((((triple2) -> (rule3 % int2)) triple5) -> (rule5 % int1))
The dog is rough.
("dog" "is" "rough" "+")
int1
The dog is red.
("dog" "is" "red" "+")
int2
((((triple2) -> (rule3 % int3)) ((triple1 triple3) -> (rule2 % int2))) -> (rule5 % int1))
The dog is rough.
("dog" "is" "rough" "+")
int1
The dog is young.
("dog" "is" "young" "+")
int2
The dog is red.
("dog" "is" "red" "+")
int3
((triple3 ((triple1 ((triple2) -> (rule3 % int3))) -> (rule2 % int2))) -> (rule5 % int1))
The dog is rough.
("dog" "is" "rough" "+")
int1
The dog is young.
("dog" "is" "young" "+")
int2
The dog is red.
("dog" "is" "red" "+")
int3
((((triple2) -> (rule3 % int3)) ((triple1 ((triple2) -> (rule3 % int3))) -> (rule2 % int2))) -> (rule5 % int1))
The dog is rough.
("dog" "is" "rough" "+")
int1
The dog is young.
("dog" "is" "young" "+")
int2
The dog is red.
("dog" "is" "red" "+")
int3
The dog is young.
("dog" "is" "young" "+")
triple5
((triple1 triple3) -> (rule2 % int1))
The dog is young.
("dog" "is" "young" "+")
int1
((triple1 ((triple2) -> (rule3 % int2))) -> (rule2 % int1))
The dog is young.
("dog" "is" "young" "+")
int1
The dog is red.
("dog" "is" "red" "+")
int2
((triple1 ((((triple4) -> (rule1 % int3))) -> (rule3 % int2))) -> (rule2 % int1))
The dog is young.
("dog" "is" "young" "+")
int1
The dog is red.
("dog" "is" "red" "+")
int2
The dog is kind.
("dog" "is" "kind" "+")
int3
((triple1 ((((triple4) -> (rule7 % int3))) -> (rule3 % int2))) -> (rule2 % int1))
The dog is young.
("dog" "is" "young" "+")
int1
The dog is red.
("dog" "is" "red" "+")
int2
The dog is kind.
("dog" "is" "kind" "+")
int3