Anne is smart. Bob is blue. Bob is furry. Bob is smart. Dave is blue. Dave is furry. Dave is kind. Dave is nice. Dave is red. Dave is smart. If something is smart then it is nice. If something is smart then it is blue. Quiet, smart things are blue. If Bob is nice then Bob is smart. If something is smart and blue then it is red. All nice, kind things are red. If Bob is not nice and Bob is not blue then Bob is kind. All red things are kind.
Anne is smart.
("Anne" "is" "smart" "+")
Bob is blue.
("Bob" "is" "blue" "+")
Bob is furry.
("Bob" "is" "furry" "+")
Bob is smart.
("Bob" "is" "smart" "+")
Dave is blue.
("Dave" "is" "blue" "+")
Dave is furry.
("Dave" "is" "furry" "+")
Dave is kind.
("Dave" "is" "kind" "+")
Dave is nice.
("Dave" "is" "nice" "+")
Dave is red.
("Dave" "is" "red" "+")
Dave is smart.
("Dave" "is" "smart" "+")
If something is smart then it is nice.
((("something" "is" "smart" "+")) -> ("something" "is" "nice" "+"))
If something is smart then it is blue.
((("something" "is" "smart" "+")) -> ("something" "is" "blue" "+"))
Quiet, smart things are blue.
((("something" "is" "quiet" "+") ("something" "is" "smart" "+")) -> ("something" "is" "blue" "+"))
If Bob is nice then Bob is smart.
((("Bob" "is" "nice" "+")) -> ("Bob" "is" "smart" "+"))
If something is smart and blue then it is red.
((("something" "is" "smart" "+") ("something" "is" "blue" "+")) -> ("something" "is" "red" "+"))
All nice, kind things are red.
((("something" "is" "nice" "+") ("something" "is" "kind" "+")) -> ("something" "is" "red" "+"))
If Bob is not nice and Bob is not blue then Bob is kind.
((("Bob" "is" "nice" "~") ("Bob" "is" "blue" "~")) -> ("Bob" "is" "kind" "+"))
All red things are kind.
((("something" "is" "red" "+")) -> ("something" "is" "kind" "+"))
Anne is smart.
True
1
proof
[(triple1)]
("Anne" "is" "smart" "+")
triple1
Anne is not smart.
False
1
inv-proof
[(triple1)]
("Anne" "is" "smart" "-")
triple1
Bob is nice.
True
2
proof
[(((triple4) -> rule1))]
("Bob" "is" "nice" "+")
((triple4) -> (rule1 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Anne is not blue.
False
2
inv-proof
[(((triple1) -> rule2))]
("Anne" "is" "blue" "-")
((triple1) -> (rule2 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Anne is red.
True
4
proof
[(((triple1 ((triple1) -> rule2)) -> rule5))]
("Anne" "is" "red" "+")
((triple1 ((triple1) -> (rule2 % int2))) -> (rule5 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is blue.
("Anne" "is" "blue" "+")
int2
Bob is not kind.
False
4
inv-proof
[(((((triple4 triple2) -> rule5)) -> rule8) OR ((((triple4 ((triple4) -> rule2)) -> rule5)) -> rule8))]
("Bob" "is" "kind" "-")
((((triple4 triple2) -> (rule5 % int2))) -> (rule8 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
((((triple4 ((triple4) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule8 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
Bob is blue.
("Bob" "is" "blue" "+")
int3
Anne is kind.
True
5
proof
[(((((triple1 ((triple1) -> rule2)) -> rule5)) -> rule8))]
("Anne" "is" "kind" "+")
((((triple1 ((triple1) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule8 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
int2
Anne is blue.
("Anne" "is" "blue" "+")
int3
Anne is not kind.
False
5
inv-proof
[(((((triple1 ((triple1) -> rule2)) -> rule5)) -> rule8))]
("Anne" "is" "kind" "-")
((((triple1 ((triple1) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule8 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
int2
Anne is blue.
("Anne" "is" "blue" "+")
int3
Anne is not furry.
Unknown
inv-random
[@0: Anne is furry.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "furry" "-")
Anne is quiet.
Unknown
random
[@0: Anne is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "quiet" "+")
Bob is not quiet.
Unknown
inv-random
[@0: Bob is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "quiet" "-")
Dave is quiet.
Unknown
random
[@0: Dave is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "quiet" "+")
@0: Anne is smart.[(triple1)] Bob is blue.[(triple2 OR ((triple4) -> rule2))] Bob is furry.[(triple3)] Bob is smart.[(triple4)] Dave is blue.[(triple5 OR ((triple10) -> rule2))] Dave is furry.[(triple6)] Dave is kind.[(triple7 OR ((triple9) -> rule8) OR ((((triple10 triple5) -> rule5)) -> rule8) OR ((((triple10 ((triple10) -> rule2)) -> rule5)) -> rule8))] Dave is nice.[(triple8 OR ((triple10) -> rule1))] Dave is red.[(triple9 OR ((triple10 triple5) -> rule5) OR ((triple8 triple7) -> rule6) OR ((triple10 ((triple10) -> rule2)) -> rule5) OR ((((triple10) -> rule1) triple7) -> rule6))] Dave is smart.[(triple10)] @1: Anne is blue.[(((triple1) -> rule2))] Anne is nice.[(((triple1) -> rule1))] Bob is nice.[(((triple4) -> rule1))] Bob is red.[(((triple4 triple2) -> rule5) OR ((triple4 ((triple4) -> rule2)) -> rule5))] @2: Anne is red.[(((triple1 ((triple1) -> rule2)) -> rule5))] Bob is kind.[(((((triple4 triple2) -> rule5)) -> rule8) OR ((((triple4 ((triple4) -> rule2)) -> rule5)) -> rule8))] @3: Anne is kind.[(((((triple1 ((triple1) -> rule2)) -> rule5)) -> rule8))]
Anne is smart.
("Anne" "is" "smart" "+")
triple1
Bob is blue.
("Bob" "is" "blue" "+")
triple2
((triple4) -> (rule2 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Bob is furry.
("Bob" "is" "furry" "+")
triple3
Bob is smart.
("Bob" "is" "smart" "+")
triple4
Dave is blue.
("Dave" "is" "blue" "+")
triple5
((triple10) -> (rule2 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
triple6
Dave is kind.
("Dave" "is" "kind" "+")
triple7
((triple9) -> (rule8 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
((((triple10 triple5) -> (rule5 % int2))) -> (rule8 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is red.
("Dave" "is" "red" "+")
int2
((((triple10 ((triple10) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule8 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is red.
("Dave" "is" "red" "+")
int2
Dave is blue.
("Dave" "is" "blue" "+")
int3
Dave is nice.
("Dave" "is" "nice" "+")
triple8
((triple10) -> (rule1 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is red.
("Dave" "is" "red" "+")
triple9
((triple10 triple5) -> (rule5 % int1))
Dave is red.
("Dave" "is" "red" "+")
int1
((triple8 triple7) -> (rule6 % int1))
Dave is red.
("Dave" "is" "red" "+")
int1
((triple10 ((triple10) -> (rule2 % int2))) -> (rule5 % int1))
Dave is red.
("Dave" "is" "red" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
int2
((((triple10) -> (rule1 % int2)) triple7) -> (rule6 % int1))
Dave is red.
("Dave" "is" "red" "+")
int1
Dave is nice.
("Dave" "is" "nice" "+")
int2
Dave is smart.
("Dave" "is" "smart" "+")
triple10
Anne is blue.
("Anne" "is" "blue" "+")
((triple1) -> (rule2 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Anne is nice.
("Anne" "is" "nice" "+")
((triple1) -> (rule1 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Bob is nice.
("Bob" "is" "nice" "+")
((triple4) -> (rule1 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
((triple4 triple2) -> (rule5 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
((triple4 ((triple4) -> (rule2 % int2))) -> (rule5 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Bob is blue.
("Bob" "is" "blue" "+")
int2
Anne is red.
("Anne" "is" "red" "+")
((triple1 ((triple1) -> (rule2 % int2))) -> (rule5 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is blue.
("Anne" "is" "blue" "+")
int2
Bob is kind.
("Bob" "is" "kind" "+")
((((triple4 triple2) -> (rule5 % int2))) -> (rule8 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
((((triple4 ((triple4) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule8 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
Bob is blue.
("Bob" "is" "blue" "+")
int3
Anne is kind.
("Anne" "is" "kind" "+")
((((triple1 ((triple1) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule8 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
int2
Anne is blue.
("Anne" "is" "blue" "+")
int3