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