Dave is cold. Erin is blue. Erin is furry. Harry is cold. Harry is quiet. Harry is red. Harry is round. If someone is blue and round then they are white. If someone is furry then they are round. All red people are white. If Harry is white then Harry is cold. If someone is white then they are quiet. All blue, white people are round.
Dave is cold.
("Dave" "is" "cold" "+")
Erin is blue.
("Erin" "is" "blue" "+")
Erin is furry.
("Erin" "is" "furry" "+")
Harry is cold.
("Harry" "is" "cold" "+")
Harry is quiet.
("Harry" "is" "quiet" "+")
Harry is red.
("Harry" "is" "red" "+")
Harry is round.
("Harry" "is" "round" "+")
If someone is blue and round then they are white.
((("someone" "is" "blue" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "white" "+"))
If someone is furry then they are round.
((("someone" "is" "furry" "+")) -> ("someone" "is" "round" "+"))
All red people are white.
((("someone" "is" "red" "+")) -> ("someone" "is" "white" "+"))
If Harry is white then Harry is cold.
((("Harry" "is" "white" "+")) -> ("Harry" "is" "cold" "+"))
If someone is white then they are quiet.
((("someone" "is" "white" "+")) -> ("someone" "is" "quiet" "+"))
All blue, white people are round.
((("someone" "is" "blue" "+") ("someone" "is" "white" "+")) -> ("someone" "is" "round" "+"))
Erin is furry.
True
1
proof
[(triple3)]
("Erin" "is" "furry" "+")
triple3
Erin is not blue.
False
1
inv-proof
[(triple2)]
("Erin" "is" "blue" "-")
triple2
Erin is round.
True
2
proof
[(((triple3) -> rule2))]
("Erin" "is" "round" "+")
((triple3) -> (rule2 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Harry is not white.
False
2
inv-proof
[(((triple6) -> rule3))]
("Harry" "is" "white" "-")
((triple6) -> (rule3 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
Erin is white.
True
4
proof
[(((triple2 ((triple3) -> rule2)) -> rule1))]
("Erin" "is" "white" "+")
((triple2 ((triple3) -> (rule2 % int2))) -> (rule1 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
int2
Erin is not white.
False
4
inv-proof
[(((triple2 ((triple3) -> rule2)) -> rule1))]
("Erin" "is" "white" "-")
((triple2 ((triple3) -> (rule2 % int2))) -> (rule1 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
int2
Dave is not round.
Unknown
inv-rconc
[@1: Dave is round.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Dave" "is" "round" "-")
Dave is white.
Unknown
rconc
[@1: Dave is white.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Dave" "is" "white" "+")
Dave is not quiet.
Unknown
inv-rconc
[@2: Dave is quiet.[CWA. Example of deepest failure = (rule5 <- rule1 <- FAIL)]]
("Dave" "is" "quiet" "-")
Erin is cold.
Unknown
random
[@0: Erin is cold.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "cold" "+")
Erin is not red.
Unknown
inv-random
[@0: Erin is red.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "red" "-")
Harry is blue.
Unknown
random
[@0: Harry is blue.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "blue" "+")
@0: Dave is cold.[(triple1)] Erin is blue.[(triple2)] Erin is furry.[(triple3)] Harry is cold.[(triple4 OR ((((triple6) -> rule3)) -> rule4))] Harry is quiet.[(triple5 OR ((((triple6) -> rule3)) -> rule5))] Harry is red.[(triple6)] Harry is round.[(triple7)] @1: Erin is round.[(((triple3) -> rule2))] Harry is white.[(((triple6) -> rule3))] @2: Erin is white.[(((triple2 ((triple3) -> rule2)) -> rule1))] @3: Erin is quiet.[(((((triple2 ((triple3) -> rule2)) -> rule1)) -> rule5))]
Dave is cold.
("Dave" "is" "cold" "+")
triple1
Erin is blue.
("Erin" "is" "blue" "+")
triple2
Erin is furry.
("Erin" "is" "furry" "+")
triple3
Harry is cold.
("Harry" "is" "cold" "+")
triple4
((((triple6) -> (rule3 % int2))) -> (rule4 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
Harry is quiet.
("Harry" "is" "quiet" "+")
triple5
((((triple6) -> (rule3 % int2))) -> (rule5 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
Harry is red.
("Harry" "is" "red" "+")
triple6
Harry is round.
("Harry" "is" "round" "+")
triple7
Erin is round.
("Erin" "is" "round" "+")
((triple3) -> (rule2 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
((triple6) -> (rule3 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
Erin is white.
("Erin" "is" "white" "+")
((triple2 ((triple3) -> (rule2 % int2))) -> (rule1 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
int2
Erin is quiet.
("Erin" "is" "quiet" "+")
((((triple2 ((triple3) -> (rule2 % int3))) -> (rule1 % int2))) -> (rule5 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is white.
("Erin" "is" "white" "+")
int2
Erin is round.
("Erin" "is" "round" "+")
int3