Anne is big. Anne is furry. Anne is kind. Anne is white. Bob is big. Bob is young. Gary is big. Gary is cold. Gary is furry. Gary is kind. Gary is young. Harry is cold. Harry is furry. Harry is kind. Harry is white. Harry is young. If something is young then it is quiet. If something is cold and furry then it is white. If something is furry and big then it is kind. Big, white things are furry. If something is big then it is white. White, furry things are big. Kind things are furry. All kind things are white.
Anne is big.
("Anne" "is" "big" "+")
Anne is furry.
("Anne" "is" "furry" "+")
Anne is kind.
("Anne" "is" "kind" "+")
Anne is white.
("Anne" "is" "white" "+")
Bob is big.
("Bob" "is" "big" "+")
Bob is young.
("Bob" "is" "young" "+")
Gary is big.
("Gary" "is" "big" "+")
Gary is cold.
("Gary" "is" "cold" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is young.
("Gary" "is" "young" "+")
Harry is cold.
("Harry" "is" "cold" "+")
Harry is furry.
("Harry" "is" "furry" "+")
Harry is kind.
("Harry" "is" "kind" "+")
Harry is white.
("Harry" "is" "white" "+")
Harry is young.
("Harry" "is" "young" "+")
If something is young then it is quiet.
((("something" "is" "young" "+")) -> ("something" "is" "quiet" "+"))
If something is cold and furry then it is white.
((("something" "is" "cold" "+") ("something" "is" "furry" "+")) -> ("something" "is" "white" "+"))
If something is furry and big then it is kind.
((("something" "is" "furry" "+") ("something" "is" "big" "+")) -> ("something" "is" "kind" "+"))
Big, white things are furry.
((("something" "is" "big" "+") ("something" "is" "white" "+")) -> ("something" "is" "furry" "+"))
If something is big then it is white.
((("something" "is" "big" "+")) -> ("something" "is" "white" "+"))
White, furry things are big.
((("something" "is" "white" "+") ("something" "is" "furry" "+")) -> ("something" "is" "big" "+"))
Kind things are furry.
((("something" "is" "kind" "+")) -> ("something" "is" "furry" "+"))
All kind things are white.
((("something" "is" "kind" "+")) -> ("something" "is" "white" "+"))
Gary is young.
True
1
proof
[(triple11)]
("Gary" "is" "young" "+")
triple11
Harry is not cold.
False
1
inv-proof
[(triple12)]
("Harry" "is" "cold" "-")
triple12
Bob is quiet.
True
2
proof
[(((triple6) -> rule1))]
("Bob" "is" "quiet" "+")
((triple6) -> (rule1 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
Harry is not quiet.
False
2
inv-proof
[(((triple16) -> rule1))]
("Harry" "is" "quiet" "-")
((triple16) -> (rule1 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Bob is furry.
True
4
proof
[(((triple5 ((triple5) -> rule5)) -> rule4))]
("Bob" "is" "furry" "+")
((triple5 ((triple5) -> (rule5 % int2))) -> (rule4 % int1))
Bob is furry.
("Bob" "is" "furry" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Bob is not furry.
False
4
inv-proof
[(((triple5 ((triple5) -> rule5)) -> rule4))]
("Bob" "is" "furry" "-")
((triple5 ((triple5) -> (rule5 % int2))) -> (rule4 % int1))
Bob is furry.
("Bob" "is" "furry" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Bob is kind.
True
6
proof
[(((((triple5 ((triple5) -> rule5)) -> rule4) triple5) -> rule3))]
("Bob" "is" "kind" "+")
((((triple5 ((triple5) -> (rule5 % int3))) -> (rule4 % int2)) triple5) -> (rule3 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is furry.
("Bob" "is" "furry" "+")
int2
Bob is white.
("Bob" "is" "white" "+")
int3
Bob is not kind.
False
6
inv-proof
[(((((triple5 ((triple5) -> rule5)) -> rule4) triple5) -> rule3))]
("Bob" "is" "kind" "-")
((((triple5 ((triple5) -> (rule5 % int3))) -> (rule4 % int2)) triple5) -> (rule3 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is furry.
("Bob" "is" "furry" "+")
int2
Bob is white.
("Bob" "is" "white" "+")
int3
Anne is not quiet.
Unknown
inv-rconc
[@1: Anne is quiet.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Anne" "is" "quiet" "-")
Bob is cold.
Unknown
random
[@0: Bob is cold.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "cold" "+")
Anne is not young.
Unknown
inv-random
[@0: Anne is young.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "young" "-")
Anne is cold.
Unknown
random
[@0: Anne is cold.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "cold" "+")
@0: Anne is big.[(triple1 OR ((triple4 triple2) -> rule6) OR ((triple4 ((triple3) -> rule7)) -> rule6) OR ((((triple3) -> rule8) triple2) -> rule6) OR ((((triple3) -> rule8) ((triple3) -> rule7)) -> rule6))] Anne is furry.[(triple2 OR ((triple3) -> rule7) OR ((triple1 triple4) -> rule4) OR ((triple1 ((triple1) -> rule5)) -> rule4) OR ((triple1 ((triple3) -> rule8)) -> rule4))] Anne is kind.[(triple3 OR ((triple2 triple1) -> rule3) OR ((triple2 ((triple4 triple2) -> rule6)) -> rule3) OR ((((triple1 triple4) -> rule4) triple1) -> rule3) OR ((((triple1 triple4) -> rule4) ((triple4 triple2) -> rule6)) -> rule3) OR ((((triple1 ((triple1) -> rule5)) -> rule4) triple1) -> rule3) OR ((((triple1 ((triple1) -> rule5)) -> rule4) ((triple4 triple2) -> rule6)) -> rule3))] Anne is white.[(triple4 OR ((triple1) -> rule5) OR ((triple3) -> rule8) OR ((((triple2 triple1) -> rule3)) -> rule8))] Bob is big.[(triple5)] Bob is young.[(triple6)] Gary is big.[(triple7 OR ((((triple10) -> rule8) triple9) -> rule6) OR ((((triple8 triple9) -> rule2) triple9) -> rule6) OR ((((triple10) -> rule8) ((triple10) -> rule7)) -> rule6) OR ((((triple8 triple9) -> rule2) ((triple10) -> rule7)) -> rule6) OR ((((triple8 ((triple10) -> rule7)) -> rule2) triple9) -> rule6) OR ((((triple8 ((triple10) -> rule7)) -> rule2) ((triple10) -> rule7)) -> rule6))] Gary is cold.[(triple8)] Gary is furry.[(triple9 OR ((triple10) -> rule7) OR ((triple7 ((triple10) -> rule8)) -> rule4) OR ((triple7 ((triple7) -> rule5)) -> rule4))] Gary is kind.[(triple10 OR ((triple9 triple7) -> rule3) OR ((triple9 ((((triple8 triple9) -> rule2) triple9) -> rule6)) -> rule3) OR ((((triple7 ((triple7) -> rule5)) -> rule4) triple7) -> rule3) OR ((((triple7 ((triple7) -> rule5)) -> rule4) ((((triple8 triple9) -> rule2) triple9) -> rule6)) -> rule3))] Gary is young.[(triple11)] Harry is cold.[(triple12)] Harry is furry.[(triple13 OR ((triple14) -> rule7))] Harry is kind.[(triple14 OR ((triple13 ((triple15 triple13) -> rule6)) -> rule3) OR ((triple13 ((((triple12 triple13) -> rule2) triple13) -> rule6)) -> rule3))] Harry is white.[(triple15 OR ((triple14) -> rule8) OR ((triple12 triple13) -> rule2) OR ((triple12 ((triple14) -> rule7)) -> rule2))] Harry is young.[(triple16)] @1: Bob is quiet.[(((triple6) -> rule1))] Bob is white.[(((triple5) -> rule5))] Gary is quiet.[(((triple11) -> rule1))] Gary is white.[(((triple10) -> rule8) OR ((triple7) -> rule5) OR ((triple8 triple9) -> rule2) OR ((((triple9 triple7) -> rule3)) -> rule8) OR ((triple8 ((triple10) -> rule7)) -> rule2))] Harry is big.[(((triple15 triple13) -> rule6) OR ((triple15 ((triple14) -> rule7)) -> rule6) OR ((((triple14) -> rule8) triple13) -> rule6) OR ((((triple12 triple13) -> rule2) triple13) -> rule6) OR ((((triple14) -> rule8) ((triple14) -> rule7)) -> rule6) OR ((((triple12 triple13) -> rule2) ((triple14) -> rule7)) -> rule6) OR ((((triple12 ((triple14) -> rule7)) -> rule2) triple13) -> rule6) OR ((((triple12 ((triple14) -> rule7)) -> rule2) ((triple14) -> rule7)) -> rule6))] Harry is quiet.[(((triple16) -> rule1))] @2: Bob is furry.[(((triple5 ((triple5) -> rule5)) -> rule4))] @3: Bob is kind.[(((((triple5 ((triple5) -> rule5)) -> rule4) triple5) -> rule3))]
Anne is big.
("Anne" "is" "big" "+")
triple1
((triple4 triple2) -> (rule6 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
((triple4 ((triple3) -> (rule7 % int2))) -> (rule6 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
((((triple3) -> (rule8 % int2)) triple2) -> (rule6 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
int2
((((triple3) -> (rule8 % int3)) ((triple3) -> (rule7 % int2))) -> (rule6 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is white.
("Anne" "is" "white" "+")
int3
Anne is furry.
("Anne" "is" "furry" "+")
triple2
((triple3) -> (rule7 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
((triple1 triple4) -> (rule4 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
((triple1 ((triple1) -> (rule5 % int2))) -> (rule4 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
int2
((triple1 ((triple3) -> (rule8 % int2))) -> (rule4 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
int2
Anne is kind.
("Anne" "is" "kind" "+")
triple3
((triple2 triple1) -> (rule3 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
((triple2 ((triple4 triple2) -> (rule6 % int2))) -> (rule3 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
((((triple1 triple4) -> (rule4 % int2)) triple1) -> (rule3 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
((((triple1 triple4) -> (rule4 % int3)) ((triple4 triple2) -> (rule6 % int2))) -> (rule3 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
Anne is furry.
("Anne" "is" "furry" "+")
int3
((((triple1 ((triple1) -> (rule5 % int3))) -> (rule4 % int2)) triple1) -> (rule3 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is white.
("Anne" "is" "white" "+")
int3
((((triple1 ((triple1) -> (rule5 % int4))) -> (rule4 % int3)) ((triple4 triple2) -> (rule6 % int2))) -> (rule3 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
Anne is furry.
("Anne" "is" "furry" "+")
int3
Anne is white.
("Anne" "is" "white" "+")
int4
Anne is white.
("Anne" "is" "white" "+")
triple4
((triple1) -> (rule5 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
((triple3) -> (rule8 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
((((triple2 triple1) -> (rule3 % int2))) -> (rule8 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Anne is kind.
("Anne" "is" "kind" "+")
int2
Bob is big.
("Bob" "is" "big" "+")
triple5
Bob is young.
("Bob" "is" "young" "+")
triple6
Gary is big.
("Gary" "is" "big" "+")
triple7
((((triple10) -> (rule8 % int2)) triple9) -> (rule6 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
int2
((((triple8 triple9) -> (rule2 % int2)) triple9) -> (rule6 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
int2
((((triple10) -> (rule8 % int3)) ((triple10) -> (rule7 % int2))) -> (rule6 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
Gary is white.
("Gary" "is" "white" "+")
int3
((((triple8 triple9) -> (rule2 % int3)) ((triple10) -> (rule7 % int2))) -> (rule6 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
Gary is white.
("Gary" "is" "white" "+")
int3
((((triple8 ((triple10) -> (rule7 % int3))) -> (rule2 % int2)) triple9) -> (rule6 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
int2
Gary is furry.
("Gary" "is" "furry" "+")
int3
((((triple8 ((triple10) -> (rule7 % int3))) -> (rule2 % int2)) ((triple10) -> (rule7 % int3))) -> (rule6 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
int2
Gary is furry.
("Gary" "is" "furry" "+")
int3
Gary is cold.
("Gary" "is" "cold" "+")
triple8
Gary is furry.
("Gary" "is" "furry" "+")
triple9
((triple10) -> (rule7 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
((triple7 ((triple10) -> (rule8 % int2))) -> (rule4 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
int2
((triple7 ((triple7) -> (rule5 % int2))) -> (rule4 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
triple10
((triple9 triple7) -> (rule3 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
((triple9 ((((triple8 triple9) -> (rule2 % int3)) triple9) -> (rule6 % int2))) -> (rule3 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is white.
("Gary" "is" "white" "+")
int3
((((triple7 ((triple7) -> (rule5 % int3))) -> (rule4 % int2)) triple7) -> (rule3 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
Gary is white.
("Gary" "is" "white" "+")
int3
((((triple7 ((triple7) -> (rule5 % int4))) -> (rule4 % int3)) ((((triple8 triple9) -> (rule2 % int4)) triple9) -> (rule6 % int2))) -> (rule3 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is furry.
("Gary" "is" "furry" "+")
int3
Gary is white.
("Gary" "is" "white" "+")
int4
Gary is young.
("Gary" "is" "young" "+")
triple11
Harry is cold.
("Harry" "is" "cold" "+")
triple12
Harry is furry.
("Harry" "is" "furry" "+")
triple13
((triple14) -> (rule7 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
triple14
((triple13 ((triple15 triple13) -> (rule6 % int2))) -> (rule3 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
((triple13 ((((triple12 triple13) -> (rule2 % int3)) triple13) -> (rule6 % int2))) -> (rule3 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
Harry is white.
("Harry" "is" "white" "+")
int3
Harry is white.
("Harry" "is" "white" "+")
triple15
((triple14) -> (rule8 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
((triple12 triple13) -> (rule2 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
((triple12 ((triple14) -> (rule7 % int2))) -> (rule2 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2
Harry is young.
("Harry" "is" "young" "+")
triple16
Bob is quiet.
("Bob" "is" "quiet" "+")
((triple6) -> (rule1 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
((triple5) -> (rule5 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
((triple11) -> (rule1 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
((triple10) -> (rule8 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
((triple7) -> (rule5 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
((triple8 triple9) -> (rule2 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
((((triple9 triple7) -> (rule3 % int2))) -> (rule8 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
((triple8 ((triple10) -> (rule7 % int2))) -> (rule2 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
Harry is big.
("Harry" "is" "big" "+")
((triple15 triple13) -> (rule6 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
((triple15 ((triple14) -> (rule7 % int2))) -> (rule6 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2
((((triple14) -> (rule8 % int2)) triple13) -> (rule6 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
((((triple12 triple13) -> (rule2 % int2)) triple13) -> (rule6 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
((((triple14) -> (rule8 % int3)) ((triple14) -> (rule7 % int2))) -> (rule6 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2
Harry is white.
("Harry" "is" "white" "+")
int3
((((triple12 triple13) -> (rule2 % int3)) ((triple14) -> (rule7 % int2))) -> (rule6 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2
Harry is white.
("Harry" "is" "white" "+")
int3
((((triple12 ((triple14) -> (rule7 % int3))) -> (rule2 % int2)) triple13) -> (rule6 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
Harry is furry.
("Harry" "is" "furry" "+")
int3
((((triple12 ((triple14) -> (rule7 % int3))) -> (rule2 % int2)) ((triple14) -> (rule7 % int3))) -> (rule6 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
Harry is furry.
("Harry" "is" "furry" "+")
int3
Harry is quiet.
("Harry" "is" "quiet" "+")
((triple16) -> (rule1 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Bob is furry.
("Bob" "is" "furry" "+")
((triple5 ((triple5) -> (rule5 % int2))) -> (rule4 % int1))
Bob is furry.
("Bob" "is" "furry" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Bob is kind.
("Bob" "is" "kind" "+")
((((triple5 ((triple5) -> (rule5 % int3))) -> (rule4 % int2)) triple5) -> (rule3 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is furry.
("Bob" "is" "furry" "+")
int2
Bob is white.
("Bob" "is" "white" "+")
int3