Anne is furry. Anne is quiet. Anne is smart. Anne is young. Charlie is cold. Charlie is furry. Charlie is rough. Charlie is smart. Charlie is not young. Fiona is quiet. Fiona is rough. Fiona is not young. All quiet, rough things are cold. If something is furry then it is rough. If something is cold then it is white. If something is rough and not smart then it is white. If Charlie is not cold then Charlie is not white. If Fiona is not rough then Fiona is not white.
Anne is furry.
("Anne" "is" "furry" "+")
Anne is quiet.
("Anne" "is" "quiet" "+")
Anne is smart.
("Anne" "is" "smart" "+")
Anne is young.
("Anne" "is" "young" "+")
Charlie is cold.
("Charlie" "is" "cold" "+")
Charlie is furry.
("Charlie" "is" "furry" "+")
Charlie is rough.
("Charlie" "is" "rough" "+")
Charlie is smart.
("Charlie" "is" "smart" "+")
Charlie is not young.
("Charlie" "is" "young" "-")
Fiona is quiet.
("Fiona" "is" "quiet" "+")
Fiona is rough.
("Fiona" "is" "rough" "+")
Fiona is not young.
("Fiona" "is" "young" "-")
All quiet, rough things are cold.
((("something" "is" "quiet" "+") ("something" "is" "rough" "+")) -> ("something" "is" "cold" "+"))
If something is furry then it is rough.
((("something" "is" "furry" "+")) -> ("something" "is" "rough" "+"))
If something is cold then it is white.
((("something" "is" "cold" "+")) -> ("something" "is" "white" "+"))
If something is rough and not smart then it is white.
((("something" "is" "rough" "+") ("something" "is" "smart" "~")) -> ("something" "is" "white" "+"))
If Charlie is not cold then Charlie is not white.
((("Charlie" "is" "cold" "~")) -> ("Charlie" "is" "white" "-"))
If Fiona is not rough then Fiona is not white.
((("Fiona" "is" "rough" "~")) -> ("Fiona" "is" "white" "-"))
Fiona is rough.
True
1
proof
[(triple11)]
("Fiona" "is" "rough" "+")
triple11
Anne is not quiet.
False
1
inv-proof
[(triple2)]
("Anne" "is" "quiet" "-")
triple2
Anne is rough.
True
2
proof
[(((triple1) -> rule2))]
("Anne" "is" "rough" "+")
((triple1) -> (rule2 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Fiona is not cold.
False
3
inv-proof
[(((triple10 triple11) -> rule1))]
("Fiona" "is" "cold" "-")
((triple10 triple11) -> (rule1 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is white.
True
4
proof
[(((((triple10 triple11) -> rule1)) -> rule3))]
("Fiona" "is" "white" "+")
((((triple10 triple11) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Anne is not cold.
False
4
inv-proof
[(((triple2 ((triple1) -> rule2)) -> rule1))]
("Anne" "is" "cold" "-")
((triple2 ((triple1) -> (rule2 % int2))) -> (rule1 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Charlie is not quiet.
Unknown
inv-random
[@0: Charlie is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "quiet" "-")
Fiona is furry.
Unknown
random
[@0: Fiona is furry.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "furry" "+")
@0: Anne is furry.[(triple1)] Anne is quiet.[(triple2)] Anne is smart.[(triple3)] Anne is young.[(triple4)] Charlie is cold.[(triple5)] Charlie is furry.[(triple6)] Charlie is not young.[(triple9)] Charlie is rough.[(triple7 OR ((triple6) -> rule2))] Charlie is smart.[(triple8)] Fiona is not young.[(triple12)] Fiona is quiet.[(triple10)] Fiona is rough.[(triple11)] @1: Anne is rough.[(((triple1) -> rule2))] Charlie is white.[(((triple5) -> rule3))] Fiona is cold.[(((triple10 triple11) -> rule1))] @2: Anne is cold.[(((triple2 ((triple1) -> rule2)) -> rule1))] Fiona is white.[(((((triple10 triple11) -> rule1)) -> rule3))] @3: Anne is white.[(((((triple2 ((triple1) -> rule2)) -> rule1)) -> rule3))]
Anne is furry.
("Anne" "is" "furry" "+")
triple1
Anne is quiet.
("Anne" "is" "quiet" "+")
triple2
Anne is smart.
("Anne" "is" "smart" "+")
triple3
Anne is young.
("Anne" "is" "young" "+")
triple4
Charlie is cold.
("Charlie" "is" "cold" "+")
triple5
Charlie is furry.
("Charlie" "is" "furry" "+")
triple6
Charlie is not young.
("Charlie" "is" "young" "-")
triple9
Charlie is rough.
("Charlie" "is" "rough" "+")
triple7
((triple6) -> (rule2 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
triple8
Fiona is not young.
("Fiona" "is" "young" "-")
triple12
Fiona is quiet.
("Fiona" "is" "quiet" "+")
triple10
Fiona is rough.
("Fiona" "is" "rough" "+")
triple11
Anne is rough.
("Anne" "is" "rough" "+")
((triple1) -> (rule2 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
((triple5) -> (rule3 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
((triple10 triple11) -> (rule1 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Anne is cold.
("Anne" "is" "cold" "+")
((triple2 ((triple1) -> (rule2 % int2))) -> (rule1 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
((((triple10 triple11) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Anne is white.
("Anne" "is" "white" "+")
((((triple2 ((triple1) -> (rule2 % int3))) -> (rule1 % int2))) -> (rule3 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Anne is cold.
("Anne" "is" "cold" "+")
int2
Anne is rough.
("Anne" "is" "rough" "+")
int3