The dog is green. The dog is kind. The dog is young. Red, kind things are nice. Kind things are red. All green, nice things are red. Nice, young things are kind. All nice, young things are green. If something is kind and nice then it is young.
The dog is green.
("dog" "is" "green" "+")
The dog is kind.
("dog" "is" "kind" "+")
The dog is young.
("dog" "is" "young" "+")
Red, kind things are nice.
((("something" "is" "red" "+") ("something" "is" "kind" "+")) -> ("something" "is" "nice" "+"))
Kind things are red.
((("something" "is" "kind" "+")) -> ("something" "is" "red" "+"))
All green, nice things are red.
((("something" "is" "green" "+") ("something" "is" "nice" "+")) -> ("something" "is" "red" "+"))
Nice, young things are kind.
((("something" "is" "nice" "+") ("something" "is" "young" "+")) -> ("something" "is" "kind" "+"))
All nice, young things are green.
((("something" "is" "nice" "+") ("something" "is" "young" "+")) -> ("something" "is" "green" "+"))
If something is kind and nice then it is young.
((("something" "is" "kind" "+") ("something" "is" "nice" "+")) -> ("something" "is" "young" "+"))
The dog is green.
True
1
proof
[(triple1 OR ((((((triple2) -> rule2) triple2) -> rule1) triple3) -> rule5) OR ((((((triple2) -> rule2) triple2) -> rule1) ((triple2 ((((triple2) -> rule2) triple2) -> rule1)) -> rule6)) -> rule5))]
("dog" "is" "green" "+")
triple1
((((((triple2) -> (rule2 % int3)) triple2) -> (rule1 % int2)) triple3) -> (rule5 % int1))
The dog is green.
("dog" "is" "green" "+")
int1
The dog is nice.
("dog" "is" "nice" "+")
int2
The dog is red.
("dog" "is" "red" "+")
int3
((((((triple2) -> (rule2 % int4)) triple2) -> (rule1 % int3)) ((triple2 ((((triple2) -> (rule2 % int4)) triple2) -> (rule1 % int3))) -> (rule6 % int2))) -> (rule5 % int1))
The dog is green.
("dog" "is" "green" "+")
int1
The dog is young.
("dog" "is" "young" "+")
int2
The dog is nice.
("dog" "is" "nice" "+")
int3
The dog is red.
("dog" "is" "red" "+")
int4
The dog is not young.
False
1
inv-proof
[(triple3 OR ((triple2 ((((triple2) -> rule2) triple2) -> rule1)) -> rule6))]
("dog" "is" "young" "-")
triple3
((triple2 ((((triple2) -> (rule2 % int3)) triple2) -> (rule1 % int2))) -> (rule6 % int1))
The dog is young.
("dog" "is" "young" "+")
int1
The dog is nice.
("dog" "is" "nice" "+")
int2
The dog is red.
("dog" "is" "red" "+")
int3
The dog is red.
True
2
proof
[(((triple2) -> rule2))]
("dog" "is" "red" "+")
((triple2) -> (rule2 % int1))
The dog is red.
("dog" "is" "red" "+")
int1
The dog is not red.
False
2
inv-proof
[(((triple2) -> rule2))]
("dog" "is" "red" "-")
((triple2) -> (rule2 % int1))
The dog is red.
("dog" "is" "red" "+")
int1
The dog is nice.
True
4
proof
[(((((triple2) -> rule2) triple2) -> rule1))]
("dog" "is" "nice" "+")
((((triple2) -> (rule2 % int2)) triple2) -> (rule1 % int1))
The dog is nice.
("dog" "is" "nice" "+")
int1
The dog is red.
("dog" "is" "red" "+")
int2
The dog is not nice.
False
4
inv-proof
[(((((triple2) -> rule2) triple2) -> rule1))]
("dog" "is" "nice" "-")
((((triple2) -> (rule2 % int2)) triple2) -> (rule1 % int1))
The dog is nice.
("dog" "is" "nice" "+")
int1
The dog is red.
("dog" "is" "red" "+")
int2
The dog does not visit the dog.
Unknown
inv-random
[@0: The dog visits the dog.[CWA. Example of deepest failure = (FAIL)]]
("dog" "visits" "dog" "-")
The dog eats the dog.
Unknown
random
[@0: The dog eats the dog.[CWA. Example of deepest failure = (FAIL)]]
("dog" "eats" "dog" "+")
@0: The dog is green.[(triple1 OR ((((((triple2) -> rule2) triple2) -> rule1) triple3) -> rule5) OR ((((((triple2) -> rule2) triple2) -> rule1) ((triple2 ((((triple2) -> rule2) triple2) -> rule1)) -> rule6)) -> rule5))] The dog is kind.[(triple2)] The dog is young.[(triple3 OR ((triple2 ((((triple2) -> rule2) triple2) -> rule1)) -> rule6))] @1: The dog is red.[(((triple2) -> rule2))] @2: The dog is nice.[(((((triple2) -> rule2) triple2) -> rule1))]
The dog is green.
("dog" "is" "green" "+")
triple1
((((((triple2) -> (rule2 % int3)) triple2) -> (rule1 % int2)) triple3) -> (rule5 % int1))
The dog is green.
("dog" "is" "green" "+")
int1
The dog is nice.
("dog" "is" "nice" "+")
int2
The dog is red.
("dog" "is" "red" "+")
int3
((((((triple2) -> (rule2 % int4)) triple2) -> (rule1 % int3)) ((triple2 ((((triple2) -> (rule2 % int4)) triple2) -> (rule1 % int3))) -> (rule6 % int2))) -> (rule5 % int1))
The dog is green.
("dog" "is" "green" "+")
int1
The dog is young.
("dog" "is" "young" "+")
int2
The dog is nice.
("dog" "is" "nice" "+")
int3
The dog is red.
("dog" "is" "red" "+")
int4
The dog is kind.
("dog" "is" "kind" "+")
triple2
The dog is young.
("dog" "is" "young" "+")
triple3
((triple2 ((((triple2) -> (rule2 % int3)) triple2) -> (rule1 % int2))) -> (rule6 % int1))
The dog is young.
("dog" "is" "young" "+")
int1
The dog is nice.
("dog" "is" "nice" "+")
int2
The dog is red.
("dog" "is" "red" "+")
int3
The dog is red.
("dog" "is" "red" "+")
((triple2) -> (rule2 % int1))
The dog is red.
("dog" "is" "red" "+")
int1
The dog is nice.
("dog" "is" "nice" "+")
((((triple2) -> (rule2 % int2)) triple2) -> (rule1 % int1))
The dog is nice.
("dog" "is" "nice" "+")
int1
The dog is red.
("dog" "is" "red" "+")
int2