Anne is furry. Charlie is nice. Fiona is quiet. All blue, quiet things are rough. Furry things are not rough. Furry, quiet things are white. Nice things are not white. All white things are nice. If something is furry and not rough then it is nice.
Anne is furry.
("Anne" "is" "furry" "+")
Charlie is nice.
("Charlie" "is" "nice" "+")
Fiona is quiet.
("Fiona" "is" "quiet" "+")
All blue, quiet things are rough.
((("something" "is" "blue" "+") ("something" "is" "quiet" "+")) -> ("something" "is" "rough" "+"))
Furry things are not rough.
((("something" "is" "furry" "+")) -> ("something" "is" "rough" "-"))
Furry, quiet things are white.
((("something" "is" "furry" "+") ("something" "is" "quiet" "+")) -> ("something" "is" "white" "+"))
Nice things are not white.
((("something" "is" "nice" "+")) -> ("something" "is" "white" "-"))
All white things are nice.
((("something" "is" "white" "+")) -> ("something" "is" "nice" "+"))
If something is furry and not rough then it is nice.
((("something" "is" "furry" "+") ("something" "is" "rough" "~")) -> ("something" "is" "nice" "+"))
Fiona is quiet.
True
1
proof
[(triple3)]
("Fiona" "is" "quiet" "+")
triple3
Anne is not furry.
False
1
inv-proof
[(triple1)]
("Anne" "is" "furry" "-")
triple1
Anne is not rough.
True
2
proof
[(((triple1) -> rule2))]
("Anne" "is" "rough" "-")
((triple1) -> (rule2 % int1))
Anne is not rough.
("Anne" "is" "rough" "-")
int1
Charlie is white.
False
2
inv-proof
[(((triple2) -> rule4))]
("Charlie" "is" "white" "+")
((triple2) -> (rule4 % int1))
Charlie is not white.
("Charlie" "is" "white" "-")
int1
Anne is nice.
True
4
proof
[(((triple1 ((triple1) -> rule2)) -> rule6))]
("Anne" "is" "nice" "+")
((triple1 ((triple1) -> (rule2 % int2))) -> (rule6 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is not rough.
("Anne" "is" "rough" "-")
int2
Anne is not nice.
False
4
inv-proof
[(((triple1 ((triple1) -> rule2)) -> rule6))]
("Anne" "is" "nice" "-")
((triple1 ((triple1) -> (rule2 % int2))) -> (rule6 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is not rough.
("Anne" "is" "rough" "-")
int2
Anne is not white.
True
5
proof
[(((((triple1 ((triple1) -> rule2)) -> rule6)) -> rule4))]
("Anne" "is" "white" "-")
((((triple1 ((triple1) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Anne is not white.
("Anne" "is" "white" "-")
int1
Anne is nice.
("Anne" "is" "nice" "+")
int2
Anne is not rough.
("Anne" "is" "rough" "-")
int3
Anne is white.
False
5
inv-proof
[(((((triple1 ((triple1) -> rule2)) -> rule6)) -> rule4))]
("Anne" "is" "white" "+")
((((triple1 ((triple1) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Anne is not white.
("Anne" "is" "white" "-")
int1
Anne is nice.
("Anne" "is" "nice" "+")
int2
Anne is not rough.
("Anne" "is" "rough" "-")
int3
Fiona is not nice.
Unknown
inv-rconc
[@2: Fiona is nice.[CWA. Example of deepest failure = (rule5 <- rule3 <- FAIL)]]
("Fiona" "is" "nice" "-")
Fiona is rough.
Unknown
rconc
[@1: Fiona is rough.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Fiona" "is" "rough" "+")
Fiona is not white.
Unknown
inv-rconc
[@1: Fiona is white.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Fiona" "is" "white" "-")
Charlie is rough.
Unknown
rconc
[@1: Charlie is rough.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Charlie" "is" "rough" "+")
Fiona is not round.
Unknown
inv-random
[@0: Fiona is round.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "round" "-")
Charlie is furry.
Unknown
random
[@0: Charlie is furry.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "furry" "+")
Anne is not round.
Unknown
inv-random
[@0: Anne is round.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "round" "-")
Anne is quiet.
Unknown
random
[@0: Anne is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "quiet" "+")
@0: Anne is furry.[(triple1)] Charlie is nice.[(triple2)] Fiona is quiet.[(triple3)] @1: Anne is not rough.[(((triple1) -> rule2))] Charlie is not white.[(((triple2) -> rule4))] @2: Anne is nice.[(((triple1 ((triple1) -> rule2)) -> rule6))] @3: Anne is not white.[(((((triple1 ((triple1) -> rule2)) -> rule6)) -> rule4))]
Anne is furry.
("Anne" "is" "furry" "+")
triple1
Charlie is nice.
("Charlie" "is" "nice" "+")
triple2
Fiona is quiet.
("Fiona" "is" "quiet" "+")
triple3
Anne is not rough.
("Anne" "is" "rough" "-")
((triple1) -> (rule2 % int1))
Anne is not rough.
("Anne" "is" "rough" "-")
int1
Charlie is not white.
("Charlie" "is" "white" "-")
((triple2) -> (rule4 % int1))
Charlie is not white.
("Charlie" "is" "white" "-")
int1
Anne is nice.
("Anne" "is" "nice" "+")
((triple1 ((triple1) -> (rule2 % int2))) -> (rule6 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is not rough.
("Anne" "is" "rough" "-")
int2
Anne is not white.
("Anne" "is" "white" "-")
((((triple1 ((triple1) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Anne is not white.
("Anne" "is" "white" "-")
int1
Anne is nice.
("Anne" "is" "nice" "+")
int2
Anne is not rough.
("Anne" "is" "rough" "-")
int3