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