Anne is quiet. Anne is young. Charlie is big. Charlie is quiet. Charlie is white. Dave is big. Dave is cold. Dave is round. Dave is white. Harry is big. Harry is cold. Harry is kind. If someone is kind then they are cold. White, young people are cold. If Harry is round and Harry is big then Harry is cold. If Dave is white then Dave is round. Quiet people are big. Round people are kind. If Charlie is kind and Charlie is round then Charlie is young. All white people are round.
Anne is quiet.
("Anne" "is" "quiet" "+")
Anne is young.
("Anne" "is" "young" "+")
Charlie is big.
("Charlie" "is" "big" "+")
Charlie is quiet.
("Charlie" "is" "quiet" "+")
Charlie is white.
("Charlie" "is" "white" "+")
Dave is big.
("Dave" "is" "big" "+")
Dave is cold.
("Dave" "is" "cold" "+")
Dave is round.
("Dave" "is" "round" "+")
Dave is white.
("Dave" "is" "white" "+")
Harry is big.
("Harry" "is" "big" "+")
Harry is cold.
("Harry" "is" "cold" "+")
Harry is kind.
("Harry" "is" "kind" "+")
If someone is kind then they are cold.
((("someone" "is" "kind" "+")) -> ("someone" "is" "cold" "+"))
White, young people are cold.
((("someone" "is" "white" "+") ("someone" "is" "young" "+")) -> ("someone" "is" "cold" "+"))
If Harry is round and Harry is big then Harry is cold.
((("Harry" "is" "round" "+") ("Harry" "is" "big" "+")) -> ("Harry" "is" "cold" "+"))
If Dave is white then Dave is round.
((("Dave" "is" "white" "+")) -> ("Dave" "is" "round" "+"))
Quiet people are big.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "big" "+"))
Round people are kind.
((("someone" "is" "round" "+")) -> ("someone" "is" "kind" "+"))
If Charlie is kind and Charlie is round then Charlie is young.
((("Charlie" "is" "kind" "+") ("Charlie" "is" "round" "+")) -> ("Charlie" "is" "young" "+"))
All white people are round.
((("someone" "is" "white" "+")) -> ("someone" "is" "round" "+"))
Harry is kind.
True
1
proof
[(triple12)]
("Harry" "is" "kind" "+")
triple12
Charlie is not white.
False
1
inv-proof
[(triple5)]
("Charlie" "is" "white" "-")
triple5
Charlie is round.
True
2
proof
[(((triple5) -> rule8))]
("Charlie" "is" "round" "+")
((triple5) -> (rule8 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Anne is not big.
False
2
inv-proof
[(((triple1) -> rule5))]
("Anne" "is" "big" "-")
((triple1) -> (rule5 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Charlie is kind.
True
3
proof
[(((((triple5) -> rule8)) -> rule6))]
("Charlie" "is" "kind" "+")
((((triple5) -> (rule8 % int2))) -> (rule6 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is not kind.
False
3
inv-proof
[(((((triple5) -> rule8)) -> rule6))]
("Charlie" "is" "kind" "-")
((((triple5) -> (rule8 % int2))) -> (rule6 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is cold.
True
4
proof
[(((((((triple5) -> rule8)) -> rule6)) -> rule1) OR ((triple5 ((((((triple5) -> rule8)) -> rule6) ((triple5) -> rule8)) -> rule7)) -> rule2))]
("Charlie" "is" "cold" "+")
((((((triple5) -> (rule8 % int3))) -> (rule6 % int2))) -> (rule1 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
Charlie is round.
("Charlie" "is" "round" "+")
int3
((triple5 ((((((triple5) -> (rule8 % int4))) -> (rule6 % int3)) ((triple5) -> (rule8 % int4))) -> (rule7 % int2))) -> (rule2 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is kind.
("Charlie" "is" "kind" "+")
int3
Charlie is round.
("Charlie" "is" "round" "+")
int4
Charlie is not cold.
False
4
inv-proof
[(((((((triple5) -> rule8)) -> rule6)) -> rule1) OR ((triple5 ((((((triple5) -> rule8)) -> rule6) ((triple5) -> rule8)) -> rule7)) -> rule2))]
("Charlie" "is" "cold" "-")
((((((triple5) -> (rule8 % int3))) -> (rule6 % int2))) -> (rule1 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
Charlie is round.
("Charlie" "is" "round" "+")
int3
((triple5 ((((((triple5) -> (rule8 % int4))) -> (rule6 % int3)) ((triple5) -> (rule8 % int4))) -> (rule7 % int2))) -> (rule2 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is kind.
("Charlie" "is" "kind" "+")
int3
Charlie is round.
("Charlie" "is" "round" "+")
int4
Anne is not round.
Unknown
inv-rconc
[@1: Anne is round.[CWA. Example of deepest failure = (rule8 <- FAIL)]]
("Anne" "is" "round" "-")
Harry is round.
Unknown
rconc
[@1: Harry is round.[CWA. Example of deepest failure = (rule8 <- FAIL)]]
("Harry" "is" "round" "+")
Anne is not cold.
Unknown
inv-rconc
[@3: Anne is cold.[CWA. Example of deepest failure = (rule1 <- rule6 <- rule8 <- FAIL)]]
("Anne" "is" "cold" "-")
Anne is kind.
Unknown
rconc
[@2: Anne is kind.[CWA. Example of deepest failure = (rule6 <- rule8 <- FAIL)]]
("Anne" "is" "kind" "+")
Harry is not white.
Unknown
inv-random
[@0: Harry is white.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "white" "-")
Harry is quiet.
Unknown
random
[@0: Harry is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "quiet" "+")
Anne is not white.
Unknown
inv-random
[@0: Anne is white.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "white" "-")
Dave is young.
Unknown
random
[@0: Dave is young.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "young" "+")
@0: Anne is quiet.[(triple1)] Anne is young.[(triple2)] Charlie is big.[(triple3 OR ((triple4) -> rule5))] Charlie is quiet.[(triple4)] Charlie is white.[(triple5)] Dave is big.[(triple6)] Dave is cold.[(triple7 OR ((((triple8) -> rule6)) -> rule1) OR ((((((triple9) -> rule4)) -> rule6)) -> rule1) OR ((((((triple9) -> rule8)) -> rule6)) -> rule1))] Dave is round.[(triple8 OR ((triple9) -> rule4) OR ((triple9) -> rule8))] Dave is white.[(triple9)] Harry is big.[(triple10)] Harry is cold.[(triple11 OR ((triple12) -> rule1))] Harry is kind.[(triple12)] @1: Anne is big.[(((triple1) -> rule5))] Charlie is round.[(((triple5) -> rule8))] Dave is kind.[(((triple8) -> rule6) OR ((((triple9) -> rule4)) -> rule6) OR ((((triple9) -> rule8)) -> rule6))] @2: Charlie is kind.[(((((triple5) -> rule8)) -> rule6))] @3: Charlie is cold.[(((((((triple5) -> rule8)) -> rule6)) -> rule1) OR ((triple5 ((((((triple5) -> rule8)) -> rule6) ((triple5) -> rule8)) -> rule7)) -> rule2))] Charlie is young.[(((((((triple5) -> rule8)) -> rule6) ((triple5) -> rule8)) -> rule7))]
Anne is quiet.
("Anne" "is" "quiet" "+")
triple1
Anne is young.
("Anne" "is" "young" "+")
triple2
Charlie is big.
("Charlie" "is" "big" "+")
triple3
((triple4) -> (rule5 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
triple4
Charlie is white.
("Charlie" "is" "white" "+")
triple5
Dave is big.
("Dave" "is" "big" "+")
triple6
Dave is cold.
("Dave" "is" "cold" "+")
triple7
((((triple8) -> (rule6 % int2))) -> (rule1 % int1))
Dave is cold.
("Dave" "is" "cold" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
int2
((((((triple9) -> (rule4 % int3))) -> (rule6 % int2))) -> (rule1 % int1))
Dave is cold.
("Dave" "is" "cold" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
int2
Dave is round.
("Dave" "is" "round" "+")
int3
((((((triple9) -> (rule8 % int3))) -> (rule6 % int2))) -> (rule1 % int1))
Dave is cold.
("Dave" "is" "cold" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
int2
Dave is round.
("Dave" "is" "round" "+")
int3
Dave is round.
("Dave" "is" "round" "+")
triple8
((triple9) -> (rule4 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
((triple9) -> (rule8 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
Dave is white.
("Dave" "is" "white" "+")
triple9
Harry is big.
("Harry" "is" "big" "+")
triple10
Harry is cold.
("Harry" "is" "cold" "+")
triple11
((triple12) -> (rule1 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
triple12
Anne is big.
("Anne" "is" "big" "+")
((triple1) -> (rule5 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
((triple5) -> (rule8 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
((triple8) -> (rule6 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
((((triple9) -> (rule4 % int2))) -> (rule6 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is round.
("Dave" "is" "round" "+")
int2
((((triple9) -> (rule8 % int2))) -> (rule6 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is round.
("Dave" "is" "round" "+")
int2
Charlie is kind.
("Charlie" "is" "kind" "+")
((((triple5) -> (rule8 % int2))) -> (rule6 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
((((((triple5) -> (rule8 % int3))) -> (rule6 % int2))) -> (rule1 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
Charlie is round.
("Charlie" "is" "round" "+")
int3
((triple5 ((((((triple5) -> (rule8 % int4))) -> (rule6 % int3)) ((triple5) -> (rule8 % int4))) -> (rule7 % int2))) -> (rule2 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is kind.
("Charlie" "is" "kind" "+")
int3
Charlie is round.
("Charlie" "is" "round" "+")
int4
Charlie is young.
("Charlie" "is" "young" "+")
((((((triple5) -> (rule8 % int3))) -> (rule6 % int2)) ((triple5) -> (rule8 % int3))) -> (rule7 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
Charlie is round.
("Charlie" "is" "round" "+")
int3