Bob is cold. Bob is nice. Bob is round. Bob is white. Erin is furry. Erin is kind. Erin is red. Fiona is furry. Fiona is nice. Fiona is red. Furry, nice things are cold. All kind things are nice. If something is cold and red then it is round.
Bob is cold.
("Bob" "is" "cold" "+")
Bob is nice.
("Bob" "is" "nice" "+")
Bob is round.
("Bob" "is" "round" "+")
Bob is white.
("Bob" "is" "white" "+")
Erin is furry.
("Erin" "is" "furry" "+")
Erin is kind.
("Erin" "is" "kind" "+")
Erin is red.
("Erin" "is" "red" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is red.
("Fiona" "is" "red" "+")
Furry, nice things are cold.
((("something" "is" "furry" "+") ("something" "is" "nice" "+")) -> ("something" "is" "cold" "+"))
All kind things are nice.
((("something" "is" "kind" "+")) -> ("something" "is" "nice" "+"))
If something is cold and red then it is round.
((("something" "is" "cold" "+") ("something" "is" "red" "+")) -> ("something" "is" "round" "+"))
Bob is round.
True
1
proof
[(triple3)]
("Bob" "is" "round" "+")
triple3
Erin is not kind.
False
1
inv-proof
[(triple6)]
("Erin" "is" "kind" "-")
triple6
Erin is nice.
True
2
proof
[(((triple6) -> rule2))]
("Erin" "is" "nice" "+")
((triple6) -> (rule2 % int1))
Erin is nice.
("Erin" "is" "nice" "+")
int1
Erin is not nice.
False
2
inv-proof
[(((triple6) -> rule2))]
("Erin" "is" "nice" "-")
((triple6) -> (rule2 % int1))
Erin is nice.
("Erin" "is" "nice" "+")
int1
Fiona is round.
True
5
proof
[(((((triple8 triple9) -> rule1) triple10) -> rule3))]
("Fiona" "is" "round" "+")
((((triple8 triple9) -> (rule1 % int2)) triple10) -> (rule3 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Fiona is not round.
False
5
inv-proof
[(((((triple8 triple9) -> rule1) triple10) -> rule3))]
("Fiona" "is" "round" "-")
((((triple8 triple9) -> (rule1 % int2)) triple10) -> (rule3 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Erin is round.
True
6
proof
[(((((triple5 ((triple6) -> rule2)) -> rule1) triple7) -> rule3))]
("Erin" "is" "round" "+")
((((triple5 ((triple6) -> (rule2 % int3))) -> (rule1 % int2)) triple7) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is cold.
("Erin" "is" "cold" "+")
int2
Erin is nice.
("Erin" "is" "nice" "+")
int3
Erin is not round.
False
6
inv-proof
[(((((triple5 ((triple6) -> rule2)) -> rule1) triple7) -> rule3))]
("Erin" "is" "round" "-")
((((triple5 ((triple6) -> (rule2 % int3))) -> (rule1 % int2)) triple7) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is cold.
("Erin" "is" "cold" "+")
int2
Erin is nice.
("Erin" "is" "nice" "+")
int3
Bob is not furry.
Unknown
inv-random
[@0: Bob is furry.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "furry" "-")
Bob is red.
Unknown
random
[@0: Bob is red.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "red" "+")
Bob is not kind.
Unknown
inv-random
[@0: Bob is kind.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "kind" "-")
Erin is white.
Unknown
random
[@0: Erin is white.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "white" "+")
Fiona is not white.
Unknown
inv-random
[@0: Fiona is white.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "white" "-")
Fiona is kind.
Unknown
random
[@0: Fiona is kind.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "kind" "+")
@0: Bob is cold.[(triple1)] Bob is nice.[(triple2)] Bob is round.[(triple3)] Bob is white.[(triple4)] Erin is furry.[(triple5)] Erin is kind.[(triple6)] Erin is red.[(triple7)] Fiona is furry.[(triple8)] Fiona is nice.[(triple9)] Fiona is red.[(triple10)] @1: Erin is nice.[(((triple6) -> rule2))] Fiona is cold.[(((triple8 triple9) -> rule1))] @2: Erin is cold.[(((triple5 ((triple6) -> rule2)) -> rule1))] Fiona is round.[(((((triple8 triple9) -> rule1) triple10) -> rule3))] @3: Erin is round.[(((((triple5 ((triple6) -> rule2)) -> rule1) triple7) -> rule3))]
Bob is cold.
("Bob" "is" "cold" "+")
triple1
Bob is nice.
("Bob" "is" "nice" "+")
triple2
Bob is round.
("Bob" "is" "round" "+")
triple3
Bob is white.
("Bob" "is" "white" "+")
triple4
Erin is furry.
("Erin" "is" "furry" "+")
triple5
Erin is kind.
("Erin" "is" "kind" "+")
triple6
Erin is red.
("Erin" "is" "red" "+")
triple7
Fiona is furry.
("Fiona" "is" "furry" "+")
triple8
Fiona is nice.
("Fiona" "is" "nice" "+")
triple9
Fiona is red.
("Fiona" "is" "red" "+")
triple10
Erin is nice.
("Erin" "is" "nice" "+")
((triple6) -> (rule2 % int1))
Erin is nice.
("Erin" "is" "nice" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
((triple8 triple9) -> (rule1 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Erin is cold.
("Erin" "is" "cold" "+")
((triple5 ((triple6) -> (rule2 % int2))) -> (rule1 % int1))
Erin is cold.
("Erin" "is" "cold" "+")
int1
Erin is nice.
("Erin" "is" "nice" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
((((triple8 triple9) -> (rule1 % int2)) triple10) -> (rule3 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Erin is round.
("Erin" "is" "round" "+")
((((triple5 ((triple6) -> (rule2 % int3))) -> (rule1 % int2)) triple7) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is cold.
("Erin" "is" "cold" "+")
int2
Erin is nice.
("Erin" "is" "nice" "+")
int3