The dog is round. If something is red then it is round. Round things are young. If something is young then it is red. If the dog is red then the dog is young. If something is red and not young then it is cold. All young, round things are not nice. All red, cold things are nice. Cold things are nice.
The dog is round.
("dog" "is" "round" "+")
If something is red then it is round.
((("something" "is" "red" "+")) -> ("something" "is" "round" "+"))
Round things are young.
((("something" "is" "round" "+")) -> ("something" "is" "young" "+"))
If something is young then it is red.
((("something" "is" "young" "+")) -> ("something" "is" "red" "+"))
If the dog is red then the dog is young.
((("dog" "is" "red" "+")) -> ("dog" "is" "young" "+"))
If something is red and not young then it is cold.
((("something" "is" "red" "+") ("something" "is" "young" "~")) -> ("something" "is" "cold" "+"))
All young, round things are not nice.
((("something" "is" "young" "+") ("something" "is" "round" "+")) -> ("something" "is" "nice" "-"))
All red, cold things are nice.
((("something" "is" "red" "+") ("something" "is" "cold" "+")) -> ("something" "is" "nice" "+"))
Cold things are nice.
((("something" "is" "cold" "+")) -> ("something" "is" "nice" "+"))
The dog is round.
True
1
proof
[(triple1)]
("dog" "is" "round" "+")
triple1
The dog is not round.
False
1
inv-proof
[(triple1)]
("dog" "is" "round" "-")
triple1
The dog is young.
True
2
proof
[(((triple1) -> rule2))]
("dog" "is" "young" "+")
((triple1) -> (rule2 % int1))
The dog is young.
("dog" "is" "young" "+")
int1
The dog is not young.
False
2
inv-proof
[(((triple1) -> rule2))]
("dog" "is" "young" "-")
((triple1) -> (rule2 % int1))
The dog is young.
("dog" "is" "young" "+")
int1
The dog is red.
True
3
proof
[(((((triple1) -> rule2)) -> rule3))]
("dog" "is" "red" "+")
((((triple1) -> (rule2 % int2))) -> (rule3 % int1))
The dog is red.
("dog" "is" "red" "+")
int1
The dog is young.
("dog" "is" "young" "+")
int2
The dog is not red.
False
3
inv-proof
[(((((triple1) -> rule2)) -> rule3))]
("dog" "is" "red" "-")
((((triple1) -> (rule2 % int2))) -> (rule3 % int1))
The dog is red.
("dog" "is" "red" "+")
int1
The dog is young.
("dog" "is" "young" "+")
int2
The dog is not cold.
Unknown
inv-rconc
[@1: The dog is cold.[CWA. Example of deepest failure = (rule5 <- FAIL)]]
("dog" "is" "cold" "-")
The dog chases the dog.
Unknown
random
[@0: The dog chases the dog.[CWA. Example of deepest failure = (FAIL)]]
("dog" "chases" "dog" "+")
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 needs the dog.
Unknown
random
[@0: The dog needs the dog.[CWA. Example of deepest failure = (FAIL)]]
("dog" "needs" "dog" "+")
@0: The dog is round.[(triple1)] @1: The dog is young.[(((triple1) -> rule2))] @2: The dog is not nice.[(((((triple1) -> rule2) triple1) -> rule6))] The dog is red.[(((((triple1) -> rule2)) -> rule3))]
The dog is round.
("dog" "is" "round" "+")
triple1
The dog is young.
("dog" "is" "young" "+")
((triple1) -> (rule2 % int1))
The dog is young.
("dog" "is" "young" "+")
int1
The dog is not nice.
("dog" "is" "nice" "-")
((((triple1) -> (rule2 % int2)) triple1) -> (rule6 % int1))
The dog is not nice.
("dog" "is" "nice" "-")
int1
The dog is young.
("dog" "is" "young" "+")
int2
The dog is red.
("dog" "is" "red" "+")
((((triple1) -> (rule2 % int2))) -> (rule3 % int1))
The dog is red.
("dog" "is" "red" "+")
int1
The dog is young.
("dog" "is" "young" "+")
int2