Anne is big. Charlie is not big. Gary is not rough. All big things are quiet. All round things are quiet. All quiet things are round. Rough things are red. All big things are red. If something is big and round then it is rough.
Anne is big.
("Anne" "is" "big" "+")
Charlie is not big.
("Charlie" "is" "big" "-")
Gary is not rough.
("Gary" "is" "rough" "-")
All big things are quiet.
((("something" "is" "big" "+")) -> ("something" "is" "quiet" "+"))
All round things are quiet.
((("something" "is" "round" "+")) -> ("something" "is" "quiet" "+"))
All quiet things are round.
((("something" "is" "quiet" "+")) -> ("something" "is" "round" "+"))
Rough things are red.
((("something" "is" "rough" "+")) -> ("something" "is" "red" "+"))
All big things are red.
((("something" "is" "big" "+")) -> ("something" "is" "red" "+"))
If something is big and round then it is rough.
((("something" "is" "big" "+") ("something" "is" "round" "+")) -> ("something" "is" "rough" "+"))
Anne is big.
True
1
proof
[(triple1)]
("Anne" "is" "big" "+")
triple1
Gary is rough.
False
1
inv-proof
[(triple3)]
("Gary" "is" "rough" "+")
triple3
Anne is red.
True
2
proof
[(((triple1) -> rule5) OR ((((triple1 ((((triple1) -> rule1)) -> rule3)) -> rule6)) -> rule4))]
("Anne" "is" "red" "+")
((triple1) -> (rule5 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
((((triple1 ((((triple1) -> (rule1 % int4))) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is round.
("Anne" "is" "round" "+")
int3
Anne is quiet.
("Anne" "is" "quiet" "+")
int4
Anne is not red.
False
2
inv-proof
[(((triple1) -> rule5) OR ((((triple1 ((((triple1) -> rule1)) -> rule3)) -> rule6)) -> rule4))]
("Anne" "is" "red" "-")
((triple1) -> (rule5 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
((((triple1 ((((triple1) -> (rule1 % int4))) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is round.
("Anne" "is" "round" "+")
int3
Anne is quiet.
("Anne" "is" "quiet" "+")
int4
Anne is round.
True
3
proof
[(((((triple1) -> rule1)) -> rule3))]
("Anne" "is" "round" "+")
((((triple1) -> (rule1 % int2))) -> (rule3 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Anne is quiet.
("Anne" "is" "quiet" "+")
int2
Anne is not round.
False
3
inv-proof
[(((((triple1) -> rule1)) -> rule3))]
("Anne" "is" "round" "-")
((((triple1) -> (rule1 % int2))) -> (rule3 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Anne is quiet.
("Anne" "is" "quiet" "+")
int2
Anne is rough.
True
5
proof
[(((triple1 ((((triple1) -> rule1)) -> rule3)) -> rule6))]
("Anne" "is" "rough" "+")
((triple1 ((((triple1) -> (rule1 % int3))) -> (rule3 % int2))) -> (rule6 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is quiet.
("Anne" "is" "quiet" "+")
int3
Anne is not rough.
False
5
inv-proof
[(((triple1 ((((triple1) -> rule1)) -> rule3)) -> rule6))]
("Anne" "is" "rough" "-")
((triple1 ((((triple1) -> (rule1 % int3))) -> (rule3 % int2))) -> (rule6 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is quiet.
("Anne" "is" "quiet" "+")
int3
Charlie is not red.
Unknown
inv-rconc
[@2: Charlie is red.[CWA. Example of deepest failure = (rule4 <- rule6 <- FAIL)]]
("Charlie" "is" "red" "-")
Gary is quiet.
Unknown
rconc
[@3: Gary is quiet.[CWA. Example of deepest failure = (rule2 <- rule3 <- rule1 <- FAIL)]]
("Gary" "is" "quiet" "+")
Gary is not round.
Unknown
inv-rconc
[@2: Gary is round.[CWA. Example of deepest failure = (rule3 <- rule1 <- FAIL)]]
("Gary" "is" "round" "-")
Charlie is round.
Unknown
rconc
[@2: Charlie is round.[CWA. Example of deepest failure = (rule3 <- rule1 <- FAIL)]]
("Charlie" "is" "round" "+")
Anne is not young.
Unknown
inv-random
[@0: Anne is young.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "young" "-")
Anne is green.
Unknown
random
[@0: Anne is green.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "green" "+")
Charlie is not green.
Unknown
inv-random
[@0: Charlie is green.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "green" "-")
Gary is big.
Unknown
random
[@0: Gary is big.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "big" "+")
@0: Anne is big.[(triple1)] Charlie is not big.[(triple2)] Gary is not rough.[(triple3)] @1: Anne is quiet.[(((triple1) -> rule1))] Anne is red.[(((triple1) -> rule5) OR ((((triple1 ((((triple1) -> rule1)) -> rule3)) -> rule6)) -> rule4))] @2: Anne is round.[(((((triple1) -> rule1)) -> rule3))] @3: Anne is rough.[(((triple1 ((((triple1) -> rule1)) -> rule3)) -> rule6))]
Anne is big.
("Anne" "is" "big" "+")
triple1
Charlie is not big.
("Charlie" "is" "big" "-")
triple2
Gary is not rough.
("Gary" "is" "rough" "-")
triple3
Anne is quiet.
("Anne" "is" "quiet" "+")
((triple1) -> (rule1 % int1))
Anne is quiet.
("Anne" "is" "quiet" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
((triple1) -> (rule5 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
((((triple1 ((((triple1) -> (rule1 % int4))) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is round.
("Anne" "is" "round" "+")
int3
Anne is quiet.
("Anne" "is" "quiet" "+")
int4
Anne is round.
("Anne" "is" "round" "+")
((((triple1) -> (rule1 % int2))) -> (rule3 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Anne is quiet.
("Anne" "is" "quiet" "+")
int2
Anne is rough.
("Anne" "is" "rough" "+")
((triple1 ((((triple1) -> (rule1 % int3))) -> (rule3 % int2))) -> (rule6 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is quiet.
("Anne" "is" "quiet" "+")
int3