Charlie is cold. Dave is big. Dave is cold. Dave is furry. Dave is kind. Erin is kind. Gary is big. Gary is green. Gary is kind. Gary is quiet. If Charlie is cold and Charlie is quiet then Charlie is kind. If someone is big and furry then they are green. If someone is cold then they are furry. If someone is green and kind then they are furry. If Charlie is nice and Charlie is furry then Charlie is quiet. All kind, big people are quiet. If someone is cold and furry then they are big. Cold, big people are nice.
Charlie is cold.
("Charlie" "is" "cold" "+")
Dave is big.
("Dave" "is" "big" "+")
Dave is cold.
("Dave" "is" "cold" "+")
Dave is furry.
("Dave" "is" "furry" "+")
Dave is kind.
("Dave" "is" "kind" "+")
Erin is kind.
("Erin" "is" "kind" "+")
Gary is big.
("Gary" "is" "big" "+")
Gary is green.
("Gary" "is" "green" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is quiet.
("Gary" "is" "quiet" "+")
If Charlie is cold and Charlie is quiet then Charlie is kind.
((("Charlie" "is" "cold" "+") ("Charlie" "is" "quiet" "+")) -> ("Charlie" "is" "kind" "+"))
If someone is big and furry then they are green.
((("someone" "is" "big" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "green" "+"))
If someone is cold then they are furry.
((("someone" "is" "cold" "+")) -> ("someone" "is" "furry" "+"))
If someone is green and kind then they are furry.
((("someone" "is" "green" "+") ("someone" "is" "kind" "+")) -> ("someone" "is" "furry" "+"))
If Charlie is nice and Charlie is furry then Charlie is quiet.
((("Charlie" "is" "nice" "+") ("Charlie" "is" "furry" "+")) -> ("Charlie" "is" "quiet" "+"))
All kind, big people are quiet.
((("someone" "is" "kind" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "quiet" "+"))
If someone is cold and furry then they are big.
((("someone" "is" "cold" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "big" "+"))
Cold, big people are nice.
((("someone" "is" "cold" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "nice" "+"))
Dave is cold.
True
1
proof
[(triple3)]
("Dave" "is" "cold" "+")
triple3
Dave is not cold.
False
1
inv-proof
[(triple3)]
("Dave" "is" "cold" "-")
triple3
Dave is green.
True
3
proof
[(((triple2 triple4) -> rule2) OR ((triple2 ((triple3) -> rule3)) -> rule2) OR ((((triple3 triple4) -> rule7) triple4) -> rule2) OR ((((triple3 triple4) -> rule7) ((triple3) -> rule3)) -> rule2) OR ((((triple3 ((triple3) -> rule3)) -> rule7) triple4) -> rule2) OR ((((triple3 ((triple3) -> rule3)) -> rule7) ((triple3) -> rule3)) -> rule2))]
("Dave" "is" "green" "+")
((triple2 triple4) -> (rule2 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
((triple2 ((triple3) -> (rule3 % int2))) -> (rule2 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
((((triple3 triple4) -> (rule7 % int2)) triple4) -> (rule2 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
((((triple3 triple4) -> (rule7 % int3)) ((triple3) -> (rule3 % int2))) -> (rule2 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
Dave is big.
("Dave" "is" "big" "+")
int3
((((triple3 ((triple3) -> (rule3 % int3))) -> (rule7 % int2)) triple4) -> (rule2 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is furry.
("Dave" "is" "furry" "+")
int3
((((triple3 ((triple3) -> (rule3 % int3))) -> (rule7 % int2)) ((triple3) -> (rule3 % int3))) -> (rule2 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is furry.
("Dave" "is" "furry" "+")
int3
Dave is not nice.
False
3
inv-proof
[(((triple3 triple2) -> rule8) OR ((triple3 ((triple3 triple4) -> rule7)) -> rule8) OR ((triple3 ((triple3 ((triple3) -> rule3)) -> rule7)) -> rule8))]
("Dave" "is" "nice" "-")
((triple3 triple2) -> (rule8 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
((triple3 ((triple3 triple4) -> (rule7 % int2))) -> (rule8 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
((triple3 ((triple3 ((triple3) -> (rule3 % int3))) -> (rule7 % int2))) -> (rule8 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is furry.
("Dave" "is" "furry" "+")
int3
Charlie is big.
True
4
proof
[(((triple1 ((triple1) -> rule3)) -> rule7))]
("Charlie" "is" "big" "+")
((triple1 ((triple1) -> (rule3 % int2))) -> (rule7 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
int2
Charlie is not big.
False
4
inv-proof
[(((triple1 ((triple1) -> rule3)) -> rule7))]
("Charlie" "is" "big" "-")
((triple1 ((triple1) -> (rule3 % int2))) -> (rule7 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
int2
Charlie is nice.
True
6
proof
[(((triple1 ((triple1 ((triple1) -> rule3)) -> rule7)) -> rule8))]
("Charlie" "is" "nice" "+")
((triple1 ((triple1 ((triple1) -> (rule3 % int3))) -> (rule7 % int2))) -> (rule8 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
Charlie is furry.
("Charlie" "is" "furry" "+")
int3
Charlie is not nice.
False
6
inv-proof
[(((triple1 ((triple1 ((triple1) -> rule3)) -> rule7)) -> rule8))]
("Charlie" "is" "nice" "-")
((triple1 ((triple1 ((triple1) -> (rule3 % int3))) -> (rule7 % int2))) -> (rule8 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
Charlie is furry.
("Charlie" "is" "furry" "+")
int3
Charlie is quiet.
True
9
proof
[(((((triple1 ((triple1 ((triple1) -> rule3)) -> rule7)) -> rule8) ((triple1) -> rule3)) -> rule5))]
("Charlie" "is" "quiet" "+")
((((triple1 ((triple1 ((triple1) -> (rule3 % int4))) -> (rule7 % int3))) -> (rule8 % int2)) ((triple1) -> (rule3 % int4))) -> (rule5 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
int2
Charlie is big.
("Charlie" "is" "big" "+")
int3
Charlie is furry.
("Charlie" "is" "furry" "+")
int4
Charlie is not quiet.
False
9
inv-proof
[(((((triple1 ((triple1 ((triple1) -> rule3)) -> rule7)) -> rule8) ((triple1) -> rule3)) -> rule5))]
("Charlie" "is" "quiet" "-")
((((triple1 ((triple1 ((triple1) -> (rule3 % int4))) -> (rule7 % int3))) -> (rule8 % int2)) ((triple1) -> (rule3 % int4))) -> (rule5 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
int2
Charlie is big.
("Charlie" "is" "big" "+")
int3
Charlie is furry.
("Charlie" "is" "furry" "+")
int4
Charlie is kind.
True
11
proof
[(((triple1 ((((triple1 ((triple1 ((triple1) -> rule3)) -> rule7)) -> rule8) ((triple1) -> rule3)) -> rule5)) -> rule1))]
("Charlie" "is" "kind" "+")
((triple1 ((((triple1 ((triple1 ((triple1) -> (rule3 % int5))) -> (rule7 % int4))) -> (rule8 % int3)) ((triple1) -> (rule3 % int5))) -> (rule5 % int2))) -> (rule1 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int2
Charlie is nice.
("Charlie" "is" "nice" "+")
int3
Charlie is big.
("Charlie" "is" "big" "+")
int4
Charlie is furry.
("Charlie" "is" "furry" "+")
int5
Charlie is not kind.
False
11
inv-proof
[(((triple1 ((((triple1 ((triple1 ((triple1) -> rule3)) -> rule7)) -> rule8) ((triple1) -> rule3)) -> rule5)) -> rule1))]
("Charlie" "is" "kind" "-")
((triple1 ((((triple1 ((triple1 ((triple1) -> (rule3 % int5))) -> (rule7 % int4))) -> (rule8 % int3)) ((triple1) -> (rule3 % int5))) -> (rule5 % int2))) -> (rule1 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int2
Charlie is nice.
("Charlie" "is" "nice" "+")
int3
Charlie is big.
("Charlie" "is" "big" "+")
int4
Charlie is furry.
("Charlie" "is" "furry" "+")
int5
Erin is not quiet.
Unknown
inv-rconc
[@2: Erin is quiet.[CWA. Example of deepest failure = (rule6 <- rule7 <- FAIL)]]
("Erin" "is" "quiet" "-")
Erin is nice.
Unknown
rconc
[@1: Erin is nice.[CWA. Example of deepest failure = (rule8 <- FAIL)]]
("Erin" "is" "nice" "+")
Erin is not big.
Unknown
inv-rconc
[@1: Erin is big.[CWA. Example of deepest failure = (rule7 <- FAIL)]]
("Erin" "is" "big" "-")
Erin is green.
Unknown
rconc
[@2: Erin is green.[CWA. Example of deepest failure = (rule2 <- rule7 <- FAIL)]]
("Erin" "is" "green" "+")
Erin is not furry.
Unknown
inv-rconc
[@3: Erin is furry.[CWA. Example of deepest failure = (rule4 <- rule2 <- rule7 <- FAIL)]]
("Erin" "is" "furry" "-")
Gary is nice.
Unknown
rconc
[@1: Gary is nice.[CWA. Example of deepest failure = (rule8 <- FAIL)]]
("Gary" "is" "nice" "+")
Gary is not cold.
Unknown
inv-random
[@0: Gary is cold.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "cold" "-")
Erin is cold.
Unknown
random
[@0: Erin is cold.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "cold" "+")
@0: Charlie is cold.[(triple1)] Dave is big.[(triple2 OR ((triple3 triple4) -> rule7) OR ((triple3 ((triple3) -> rule3)) -> rule7))] Dave is cold.[(triple3)] Dave is furry.[(triple4 OR ((triple3) -> rule3))] Dave is kind.[(triple5)] Erin is kind.[(triple6)] Gary is big.[(triple7)] Gary is green.[(triple8)] Gary is kind.[(triple9)] Gary is quiet.[(triple10 OR ((triple9 triple7) -> rule6))] @1: Charlie is furry.[(((triple1) -> rule3))] Dave is green.[(((triple2 triple4) -> rule2) OR ((triple2 ((triple3) -> rule3)) -> rule2) OR ((((triple3 triple4) -> rule7) triple4) -> rule2) OR ((((triple3 triple4) -> rule7) ((triple3) -> rule3)) -> rule2) OR ((((triple3 ((triple3) -> rule3)) -> rule7) triple4) -> rule2) OR ((((triple3 ((triple3) -> rule3)) -> rule7) ((triple3) -> rule3)) -> rule2))] Dave is nice.[(((triple3 triple2) -> rule8) OR ((triple3 ((triple3 triple4) -> rule7)) -> rule8) OR ((triple3 ((triple3 ((triple3) -> rule3)) -> rule7)) -> rule8))] Dave is quiet.[(((triple5 triple2) -> rule6) OR ((triple5 ((triple3 triple4) -> rule7)) -> rule6) OR ((triple5 ((triple3 ((triple3) -> rule3)) -> rule7)) -> rule6))] Gary is furry.[(((triple8 triple9) -> rule4))] @2: Charlie is big.[(((triple1 ((triple1) -> rule3)) -> rule7))] @3: Charlie is green.[(((((triple1 ((triple1) -> rule3)) -> rule7) ((triple1) -> rule3)) -> rule2))] Charlie is nice.[(((triple1 ((triple1 ((triple1) -> rule3)) -> rule7)) -> rule8))] @4: Charlie is quiet.[(((((triple1 ((triple1 ((triple1) -> rule3)) -> rule7)) -> rule8) ((triple1) -> rule3)) -> rule5))] @5: Charlie is kind.[(((triple1 ((((triple1 ((triple1 ((triple1) -> rule3)) -> rule7)) -> rule8) ((triple1) -> rule3)) -> rule5)) -> rule1))]
Charlie is cold.
("Charlie" "is" "cold" "+")
triple1
Dave is big.
("Dave" "is" "big" "+")
triple2
((triple3 triple4) -> (rule7 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
((triple3 ((triple3) -> (rule3 % int2))) -> (rule7 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
Dave is cold.
("Dave" "is" "cold" "+")
triple3
Dave is furry.
("Dave" "is" "furry" "+")
triple4
((triple3) -> (rule3 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
triple5
Erin is kind.
("Erin" "is" "kind" "+")
triple6
Gary is big.
("Gary" "is" "big" "+")
triple7
Gary is green.
("Gary" "is" "green" "+")
triple8
Gary is kind.
("Gary" "is" "kind" "+")
triple9
Gary is quiet.
("Gary" "is" "quiet" "+")
triple10
((triple9 triple7) -> (rule6 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
((triple1) -> (rule3 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
((triple2 triple4) -> (rule2 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
((triple2 ((triple3) -> (rule3 % int2))) -> (rule2 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
((((triple3 triple4) -> (rule7 % int2)) triple4) -> (rule2 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
((((triple3 triple4) -> (rule7 % int3)) ((triple3) -> (rule3 % int2))) -> (rule2 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
Dave is big.
("Dave" "is" "big" "+")
int3
((((triple3 ((triple3) -> (rule3 % int3))) -> (rule7 % int2)) triple4) -> (rule2 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is furry.
("Dave" "is" "furry" "+")
int3
((((triple3 ((triple3) -> (rule3 % int3))) -> (rule7 % int2)) ((triple3) -> (rule3 % int3))) -> (rule2 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is furry.
("Dave" "is" "furry" "+")
int3
Dave is nice.
("Dave" "is" "nice" "+")
((triple3 triple2) -> (rule8 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
((triple3 ((triple3 triple4) -> (rule7 % int2))) -> (rule8 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
((triple3 ((triple3 ((triple3) -> (rule3 % int3))) -> (rule7 % int2))) -> (rule8 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is furry.
("Dave" "is" "furry" "+")
int3
Dave is quiet.
("Dave" "is" "quiet" "+")
((triple5 triple2) -> (rule6 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
((triple5 ((triple3 triple4) -> (rule7 % int2))) -> (rule6 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
((triple5 ((triple3 ((triple3) -> (rule3 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is furry.
("Dave" "is" "furry" "+")
int3
Gary is furry.
("Gary" "is" "furry" "+")
((triple8 triple9) -> (rule4 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
((triple1 ((triple1) -> (rule3 % int2))) -> (rule7 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
((((triple1 ((triple1) -> (rule3 % int3))) -> (rule7 % int2)) ((triple1) -> (rule3 % int3))) -> (rule2 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
Charlie is furry.
("Charlie" "is" "furry" "+")
int3
Charlie is nice.
("Charlie" "is" "nice" "+")
((triple1 ((triple1 ((triple1) -> (rule3 % int3))) -> (rule7 % int2))) -> (rule8 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
Charlie is furry.
("Charlie" "is" "furry" "+")
int3
Charlie is quiet.
("Charlie" "is" "quiet" "+")
((((triple1 ((triple1 ((triple1) -> (rule3 % int4))) -> (rule7 % int3))) -> (rule8 % int2)) ((triple1) -> (rule3 % int4))) -> (rule5 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
int2
Charlie is big.
("Charlie" "is" "big" "+")
int3
Charlie is furry.
("Charlie" "is" "furry" "+")
int4
Charlie is kind.
("Charlie" "is" "kind" "+")
((triple1 ((((triple1 ((triple1 ((triple1) -> (rule3 % int5))) -> (rule7 % int4))) -> (rule8 % int3)) ((triple1) -> (rule3 % int5))) -> (rule5 % int2))) -> (rule1 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int2
Charlie is nice.
("Charlie" "is" "nice" "+")
int3
Charlie is big.
("Charlie" "is" "big" "+")
int4
Charlie is furry.
("Charlie" "is" "furry" "+")
int5