Anne is big. Anne is quiet. Charlie is big. Dave is big. Dave is white. Gary is big. Gary is white. Quiet things are nice. If something is white and nice then it is rough. Kind, big things are quiet. Rough, kind things are furry. If something is white then it is kind. If Anne is quiet then Anne is white. All kind things are quiet.
Anne is big.
("Anne" "is" "big" "+")
Anne is quiet.
("Anne" "is" "quiet" "+")
Charlie is big.
("Charlie" "is" "big" "+")
Dave is big.
("Dave" "is" "big" "+")
Dave is white.
("Dave" "is" "white" "+")
Gary is big.
("Gary" "is" "big" "+")
Gary is white.
("Gary" "is" "white" "+")
Quiet things are nice.
((("something" "is" "quiet" "+")) -> ("something" "is" "nice" "+"))
If something is white and nice then it is rough.
((("something" "is" "white" "+") ("something" "is" "nice" "+")) -> ("something" "is" "rough" "+"))
Kind, big things are quiet.
((("something" "is" "kind" "+") ("something" "is" "big" "+")) -> ("something" "is" "quiet" "+"))
Rough, kind things are furry.
((("something" "is" "rough" "+") ("something" "is" "kind" "+")) -> ("something" "is" "furry" "+"))
If something is white then it is kind.
((("something" "is" "white" "+")) -> ("something" "is" "kind" "+"))
If Anne is quiet then Anne is white.
((("Anne" "is" "quiet" "+")) -> ("Anne" "is" "white" "+"))
All kind things are quiet.
((("something" "is" "kind" "+")) -> ("something" "is" "quiet" "+"))
Gary is big.
True
1
proof
[(triple6)]
("Gary" "is" "big" "+")
triple6
Dave is not big.
False
1
inv-proof
[(triple4)]
("Dave" "is" "big" "-")
triple4
Dave is kind.
True
2
proof
[(((triple5) -> rule5))]
("Dave" "is" "kind" "+")
((triple5) -> (rule5 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Anne is not white.
False
2
inv-proof
[(((triple2) -> rule6))]
("Anne" "is" "white" "-")
((triple2) -> (rule6 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Anne is kind.
True
3
proof
[(((((triple2) -> rule6)) -> rule5))]
("Anne" "is" "kind" "+")
((((triple2) -> (rule6 % int2))) -> (rule5 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
int2
Anne is not rough.
False
5
inv-proof
[(((((triple2) -> rule6) ((triple2) -> rule1)) -> rule2))]
("Anne" "is" "rough" "-")
((((triple2) -> (rule6 % int3)) ((triple2) -> (rule1 % int2))) -> (rule2 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is nice.
("Anne" "is" "nice" "+")
int2
Anne is white.
("Anne" "is" "white" "+")
int3
Gary is nice.
True
4
proof
[(((((((triple7) -> rule5)) -> rule7)) -> rule1) OR ((((((triple7) -> rule5) triple6) -> rule3)) -> rule1))]
("Gary" "is" "nice" "+")
((((((triple7) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
((((((triple7) -> (rule5 % int3)) triple6) -> (rule3 % int2))) -> (rule1 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
Gary is not nice.
False
4
inv-proof
[(((((((triple7) -> rule5)) -> rule7)) -> rule1) OR ((((((triple7) -> rule5) triple6) -> rule3)) -> rule1))]
("Gary" "is" "nice" "-")
((((((triple7) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
((((((triple7) -> (rule5 % int3)) triple6) -> (rule3 % int2))) -> (rule1 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
Dave is rough.
True
6
proof
[(((triple5 ((((((triple5) -> rule5)) -> rule7)) -> rule1)) -> rule2) OR ((triple5 ((((((triple5) -> rule5) triple4) -> rule3)) -> rule1)) -> rule2))]
("Dave" "is" "rough" "+")
((triple5 ((((((triple5) -> (rule5 % int4))) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule2 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Dave is nice.
("Dave" "is" "nice" "+")
int2
Dave is quiet.
("Dave" "is" "quiet" "+")
int3
Dave is kind.
("Dave" "is" "kind" "+")
int4
((triple5 ((((((triple5) -> (rule5 % int4)) triple4) -> (rule3 % int3))) -> (rule1 % int2))) -> (rule2 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Dave is nice.
("Dave" "is" "nice" "+")
int2
Dave is quiet.
("Dave" "is" "quiet" "+")
int3
Dave is kind.
("Dave" "is" "kind" "+")
int4
Gary is not rough.
False
6
inv-proof
[(((triple7 ((((((triple7) -> rule5)) -> rule7)) -> rule1)) -> rule2) OR ((triple7 ((((((triple7) -> rule5) triple6) -> rule3)) -> rule1)) -> rule2))]
("Gary" "is" "rough" "-")
((triple7 ((((((triple7) -> (rule5 % int4))) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule2 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
int3
Gary is kind.
("Gary" "is" "kind" "+")
int4
((triple7 ((((((triple7) -> (rule5 % int4)) triple6) -> (rule3 % int3))) -> (rule1 % int2))) -> (rule2 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
int3
Gary is kind.
("Gary" "is" "kind" "+")
int4
Gary is furry.
True
9
proof
[(((((triple7 ((((((triple7) -> rule5)) -> rule7)) -> rule1)) -> rule2) ((triple7) -> rule5)) -> rule4) OR ((((triple7 ((((((triple7) -> rule5) triple6) -> rule3)) -> rule1)) -> rule2) ((triple7) -> rule5)) -> rule4))]
("Gary" "is" "furry" "+")
((((triple7 ((((((triple7) -> (rule5 % int5))) -> (rule7 % int4))) -> (rule1 % int3))) -> (rule2 % int2)) ((triple7) -> (rule5 % int5))) -> (rule4 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is nice.
("Gary" "is" "nice" "+")
int3
Gary is quiet.
("Gary" "is" "quiet" "+")
int4
Gary is kind.
("Gary" "is" "kind" "+")
int5
((((triple7 ((((((triple7) -> (rule5 % int5)) triple6) -> (rule3 % int4))) -> (rule1 % int3))) -> (rule2 % int2)) ((triple7) -> (rule5 % int5))) -> (rule4 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is nice.
("Gary" "is" "nice" "+")
int3
Gary is quiet.
("Gary" "is" "quiet" "+")
int4
Gary is kind.
("Gary" "is" "kind" "+")
int5
Gary is not furry.
False
9
inv-proof
[(((((triple7 ((((((triple7) -> rule5)) -> rule7)) -> rule1)) -> rule2) ((triple7) -> rule5)) -> rule4) OR ((((triple7 ((((((triple7) -> rule5) triple6) -> rule3)) -> rule1)) -> rule2) ((triple7) -> rule5)) -> rule4))]
("Gary" "is" "furry" "-")
((((triple7 ((((((triple7) -> (rule5 % int5))) -> (rule7 % int4))) -> (rule1 % int3))) -> (rule2 % int2)) ((triple7) -> (rule5 % int5))) -> (rule4 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is nice.
("Gary" "is" "nice" "+")
int3
Gary is quiet.
("Gary" "is" "quiet" "+")
int4
Gary is kind.
("Gary" "is" "kind" "+")
int5
((((triple7 ((((((triple7) -> (rule5 % int5)) triple6) -> (rule3 % int4))) -> (rule1 % int3))) -> (rule2 % int2)) ((triple7) -> (rule5 % int5))) -> (rule4 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is nice.
("Gary" "is" "nice" "+")
int3
Gary is quiet.
("Gary" "is" "quiet" "+")
int4
Gary is kind.
("Gary" "is" "kind" "+")
int5
Charlie is not furry.
Unknown
inv-rconc
[@2: Charlie is furry.[CWA. Example of deepest failure = (rule4 <- rule2 <- FAIL)]]
("Charlie" "is" "furry" "-")
Charlie is quiet.
Unknown
rconc
[@2: Charlie is quiet.[CWA. Example of deepest failure = (rule3 <- rule5 <- FAIL)]]
("Charlie" "is" "quiet" "+")
Charlie is not nice.
Unknown
inv-rconc
[@3: Charlie is nice.[CWA. Example of deepest failure = (rule1 <- rule3 <- rule5 <- FAIL)]]
("Charlie" "is" "nice" "-")
Charlie is kind.
Unknown
rconc
[@1: Charlie is kind.[CWA. Example of deepest failure = (rule5 <- FAIL)]]
("Charlie" "is" "kind" "+")
Charlie is not rough.
Unknown
inv-rconc
[@1: Charlie is rough.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Charlie" "is" "rough" "-")
Charlie is white.
Unknown
random
[@0: Charlie is white.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "white" "+")
@0: Anne is big.[(triple1)] Anne is quiet.[(triple2)] Charlie is big.[(triple3)] Dave is big.[(triple4)] Dave is white.[(triple5)] Gary is big.[(triple6)] Gary is white.[(triple7)] @1: Anne is nice.[(((triple2) -> rule1))] Anne is white.[(((triple2) -> rule6))] Dave is kind.[(((triple5) -> rule5))] Gary is kind.[(((triple7) -> rule5))] @2: Anne is kind.[(((((triple2) -> rule6)) -> rule5))] Anne is rough.[(((((triple2) -> rule6) ((triple2) -> rule1)) -> rule2))] Dave is quiet.[(((((triple5) -> rule5)) -> rule7) OR ((((triple5) -> rule5) triple4) -> rule3))] Gary is quiet.[(((((triple7) -> rule5)) -> rule7) OR ((((triple7) -> rule5) triple6) -> rule3))] @3: Anne is furry.[(((((((triple2) -> rule6) ((triple2) -> rule1)) -> rule2) ((((triple2) -> rule6)) -> rule5)) -> rule4))] Dave is nice.[(((((((triple5) -> rule5)) -> rule7)) -> rule1) OR ((((((triple5) -> rule5) triple4) -> rule3)) -> rule1))] Gary is nice.[(((((((triple7) -> rule5)) -> rule7)) -> rule1) OR ((((((triple7) -> rule5) triple6) -> rule3)) -> rule1))] @4: Dave is rough.[(((triple5 ((((((triple5) -> rule5)) -> rule7)) -> rule1)) -> rule2) OR ((triple5 ((((((triple5) -> rule5) triple4) -> rule3)) -> rule1)) -> rule2))] Gary is rough.[(((triple7 ((((((triple7) -> rule5)) -> rule7)) -> rule1)) -> rule2) OR ((triple7 ((((((triple7) -> rule5) triple6) -> rule3)) -> rule1)) -> rule2))] @5: Dave is furry.[(((((triple5 ((((((triple5) -> rule5)) -> rule7)) -> rule1)) -> rule2) ((triple5) -> rule5)) -> rule4) OR ((((triple5 ((((((triple5) -> rule5) triple4) -> rule3)) -> rule1)) -> rule2) ((triple5) -> rule5)) -> rule4))] Gary is furry.[(((((triple7 ((((((triple7) -> rule5)) -> rule7)) -> rule1)) -> rule2) ((triple7) -> rule5)) -> rule4) OR ((((triple7 ((((((triple7) -> rule5) triple6) -> rule3)) -> rule1)) -> rule2) ((triple7) -> rule5)) -> rule4))]
Anne is big.
("Anne" "is" "big" "+")
triple1
Anne is quiet.
("Anne" "is" "quiet" "+")
triple2
Charlie is big.
("Charlie" "is" "big" "+")
triple3
Dave is big.
("Dave" "is" "big" "+")
triple4
Dave is white.
("Dave" "is" "white" "+")
triple5
Gary is big.
("Gary" "is" "big" "+")
triple6
Gary is white.
("Gary" "is" "white" "+")
triple7
Anne is nice.
("Anne" "is" "nice" "+")
((triple2) -> (rule1 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
((triple2) -> (rule6 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
((triple5) -> (rule5 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
((triple7) -> (rule5 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Anne is kind.
("Anne" "is" "kind" "+")
((((triple2) -> (rule6 % int2))) -> (rule5 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
int2
Anne is rough.
("Anne" "is" "rough" "+")
((((triple2) -> (rule6 % int3)) ((triple2) -> (rule1 % int2))) -> (rule2 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is nice.
("Anne" "is" "nice" "+")
int2
Anne is white.
("Anne" "is" "white" "+")
int3
Dave is quiet.
("Dave" "is" "quiet" "+")
((((triple5) -> (rule5 % int2))) -> (rule7 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
int2
((((triple5) -> (rule5 % int2)) triple4) -> (rule3 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
((((triple7) -> (rule5 % int2))) -> (rule7 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
((((triple7) -> (rule5 % int2)) triple6) -> (rule3 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
Anne is furry.
("Anne" "is" "furry" "+")
((((((triple2) -> (rule6 % int5)) ((triple2) -> (rule1 % int4))) -> (rule2 % int3)) ((((triple2) -> (rule6 % int5))) -> (rule5 % int2))) -> (rule4 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is kind.
("Anne" "is" "kind" "+")
int2
Anne is rough.
("Anne" "is" "rough" "+")
int3
Anne is nice.
("Anne" "is" "nice" "+")
int4
Anne is white.
("Anne" "is" "white" "+")
int5
Dave is nice.
("Dave" "is" "nice" "+")
((((((triple5) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
Dave is kind.
("Dave" "is" "kind" "+")
int3
((((((triple5) -> (rule5 % int3)) triple4) -> (rule3 % int2))) -> (rule1 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
Dave is kind.
("Dave" "is" "kind" "+")
int3
Gary is nice.
("Gary" "is" "nice" "+")
((((((triple7) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
((((((triple7) -> (rule5 % int3)) triple6) -> (rule3 % int2))) -> (rule1 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
Dave is rough.
("Dave" "is" "rough" "+")
((triple5 ((((((triple5) -> (rule5 % int4))) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule2 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Dave is nice.
("Dave" "is" "nice" "+")
int2
Dave is quiet.
("Dave" "is" "quiet" "+")
int3
Dave is kind.
("Dave" "is" "kind" "+")
int4
((triple5 ((((((triple5) -> (rule5 % int4)) triple4) -> (rule3 % int3))) -> (rule1 % int2))) -> (rule2 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Dave is nice.
("Dave" "is" "nice" "+")
int2
Dave is quiet.
("Dave" "is" "quiet" "+")
int3
Dave is kind.
("Dave" "is" "kind" "+")
int4
Gary is rough.
("Gary" "is" "rough" "+")
((triple7 ((((((triple7) -> (rule5 % int4))) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule2 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
int3
Gary is kind.
("Gary" "is" "kind" "+")
int4
((triple7 ((((((triple7) -> (rule5 % int4)) triple6) -> (rule3 % int3))) -> (rule1 % int2))) -> (rule2 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
int3
Gary is kind.
("Gary" "is" "kind" "+")
int4
Dave is furry.
("Dave" "is" "furry" "+")
((((triple5 ((((((triple5) -> (rule5 % int5))) -> (rule7 % int4))) -> (rule1 % int3))) -> (rule2 % int2)) ((triple5) -> (rule5 % int5))) -> (rule4 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
int2
Dave is nice.
("Dave" "is" "nice" "+")
int3
Dave is quiet.
("Dave" "is" "quiet" "+")
int4
Dave is kind.
("Dave" "is" "kind" "+")
int5
((((triple5 ((((((triple5) -> (rule5 % int5)) triple4) -> (rule3 % int4))) -> (rule1 % int3))) -> (rule2 % int2)) ((triple5) -> (rule5 % int5))) -> (rule4 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
int2
Dave is nice.
("Dave" "is" "nice" "+")
int3
Dave is quiet.
("Dave" "is" "quiet" "+")
int4
Dave is kind.
("Dave" "is" "kind" "+")
int5
Gary is furry.
("Gary" "is" "furry" "+")
((((triple7 ((((((triple7) -> (rule5 % int5))) -> (rule7 % int4))) -> (rule1 % int3))) -> (rule2 % int2)) ((triple7) -> (rule5 % int5))) -> (rule4 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is nice.
("Gary" "is" "nice" "+")
int3
Gary is quiet.
("Gary" "is" "quiet" "+")
int4
Gary is kind.
("Gary" "is" "kind" "+")
int5
((((triple7 ((((((triple7) -> (rule5 % int5)) triple6) -> (rule3 % int4))) -> (rule1 % int3))) -> (rule2 % int2)) ((triple7) -> (rule5 % int5))) -> (rule4 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is nice.
("Gary" "is" "nice" "+")
int3
Gary is quiet.
("Gary" "is" "quiet" "+")
int4
Gary is kind.
("Gary" "is" "kind" "+")
int5