Anne is cold. Charlie is cold. Charlie is smart. Erin is furry. Erin is smart. Harry is big. Harry is smart. If Charlie is furry then Charlie is smart. All cold, smart people are rough. If someone is smart and furry then they are green. White people are furry. If someone is rough then they are white. All cold people are smart.
Anne is cold.
("Anne" "is" "cold" "+")
Charlie is cold.
("Charlie" "is" "cold" "+")
Charlie is smart.
("Charlie" "is" "smart" "+")
Erin is furry.
("Erin" "is" "furry" "+")
Erin is smart.
("Erin" "is" "smart" "+")
Harry is big.
("Harry" "is" "big" "+")
Harry is smart.
("Harry" "is" "smart" "+")
If Charlie is furry then Charlie is smart.
((("Charlie" "is" "furry" "+")) -> ("Charlie" "is" "smart" "+"))
All cold, smart people are rough.
((("someone" "is" "cold" "+") ("someone" "is" "smart" "+")) -> ("someone" "is" "rough" "+"))
If someone is smart and furry then they are green.
((("someone" "is" "smart" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "green" "+"))
White people are furry.
((("someone" "is" "white" "+")) -> ("someone" "is" "furry" "+"))
If someone is rough then they are white.
((("someone" "is" "rough" "+")) -> ("someone" "is" "white" "+"))
All cold people are smart.
((("someone" "is" "cold" "+")) -> ("someone" "is" "smart" "+"))
Harry is big.
True
1
proof
[(triple6)]
("Harry" "is" "big" "+")
triple6
Anne is not cold.
False
1
inv-proof
[(triple1)]
("Anne" "is" "cold" "-")
triple1
Erin is green.
True
3
proof
[(((triple5 triple4) -> rule3))]
("Erin" "is" "green" "+")
((triple5 triple4) -> (rule3 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
Erin is not green.
False
3
inv-proof
[(((triple5 triple4) -> rule3))]
("Erin" "is" "green" "-")
((triple5 triple4) -> (rule3 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
Charlie is white.
True
4
proof
[(((((triple2 triple3) -> rule2)) -> rule5) OR ((((triple2 ((triple2) -> rule6)) -> rule2)) -> rule5))]
("Charlie" "is" "white" "+")
((((triple2 triple3) -> (rule2 % int2))) -> (rule5 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
((((triple2 ((triple2) -> (rule6 % int3))) -> (rule2 % int2))) -> (rule5 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
int3
Anne is not rough.
False
4
inv-proof
[(((triple1 ((triple1) -> rule6)) -> rule2))]
("Anne" "is" "rough" "-")
((triple1 ((triple1) -> (rule6 % int2))) -> (rule2 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is smart.
("Anne" "is" "smart" "+")
int2
Charlie is furry.
True
5
proof
[(((((((triple2 triple3) -> rule2)) -> rule5)) -> rule4) OR ((((((triple2 ((triple2) -> rule6)) -> rule2)) -> rule5)) -> rule4))]
("Charlie" "is" "furry" "+")
((((((triple2 triple3) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule4 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is rough.
("Charlie" "is" "rough" "+")
int3
((((((triple2 ((triple2) -> (rule6 % int4))) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule4 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is rough.
("Charlie" "is" "rough" "+")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
int4
Anne is not white.
False
5
inv-proof
[(((((triple1 ((triple1) -> rule6)) -> rule2)) -> rule5))]
("Anne" "is" "white" "-")
((((triple1 ((triple1) -> (rule6 % int3))) -> (rule2 % int2))) -> (rule5 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is smart.
("Anne" "is" "smart" "+")
int3
Anne is furry.
True
6
proof
[(((((((triple1 ((triple1) -> rule6)) -> rule2)) -> rule5)) -> rule4))]
("Anne" "is" "furry" "+")
((((((triple1 ((triple1) -> (rule6 % int4))) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule4 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
int2
Anne is rough.
("Anne" "is" "rough" "+")
int3
Anne is smart.
("Anne" "is" "smart" "+")
int4
Charlie is not green.
False
7
inv-proof
[(((triple3 ((((((triple2 triple3) -> rule2)) -> rule5)) -> rule4)) -> rule3) OR ((((triple2) -> rule6) ((((((triple2 triple3) -> rule2)) -> rule5)) -> rule4)) -> rule3) OR ((triple3 ((((((triple2 ((triple2) -> rule6)) -> rule2)) -> rule5)) -> rule4)) -> rule3) OR ((((triple2) -> rule6) ((((((triple2 ((triple2) -> rule6)) -> rule2)) -> rule5)) -> rule4)) -> rule3))]
("Charlie" "is" "green" "-")
((triple3 ((((((triple2 triple3) -> (rule2 % int4))) -> (rule5 % int3))) -> (rule4 % int2))) -> (rule3 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
int2
Charlie is white.
("Charlie" "is" "white" "+")
int3
Charlie is rough.
("Charlie" "is" "rough" "+")
int4
((((triple2) -> (rule6 % int5)) ((((((triple2 triple3) -> (rule2 % int4))) -> (rule5 % int3))) -> (rule4 % int2))) -> (rule3 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
int2
Charlie is white.
("Charlie" "is" "white" "+")
int3
Charlie is rough.
("Charlie" "is" "rough" "+")
int4
Charlie is smart.
("Charlie" "is" "smart" "+")
int5
((triple3 ((((((triple2 ((triple2) -> (rule6 % int5))) -> (rule2 % int4))) -> (rule5 % int3))) -> (rule4 % int2))) -> (rule3 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
int2
Charlie is white.
("Charlie" "is" "white" "+")
int3
Charlie is rough.
("Charlie" "is" "rough" "+")
int4
Charlie is smart.
("Charlie" "is" "smart" "+")
int5
((((triple2) -> (rule6 % int5)) ((((((triple2 ((triple2) -> (rule6 % int5))) -> (rule2 % int4))) -> (rule5 % int3))) -> (rule4 % int2))) -> (rule3 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
int2
Charlie is white.
("Charlie" "is" "white" "+")
int3
Charlie is rough.
("Charlie" "is" "rough" "+")
int4
Charlie is smart.
("Charlie" "is" "smart" "+")
int5
Anne is green.
True
9
proof
[(((((triple1) -> rule6) ((((((triple1 ((triple1) -> rule6)) -> rule2)) -> rule5)) -> rule4)) -> rule3))]
("Anne" "is" "green" "+")
((((triple1) -> (rule6 % int5)) ((((((triple1 ((triple1) -> (rule6 % int5))) -> (rule2 % int4))) -> (rule5 % int3))) -> (rule4 % int2))) -> (rule3 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is white.
("Anne" "is" "white" "+")
int3
Anne is rough.
("Anne" "is" "rough" "+")
int4
Anne is smart.
("Anne" "is" "smart" "+")
int5
Anne is not green.
False
9
inv-proof
[(((((triple1) -> rule6) ((((((triple1 ((triple1) -> rule6)) -> rule2)) -> rule5)) -> rule4)) -> rule3))]
("Anne" "is" "green" "-")
((((triple1) -> (rule6 % int5)) ((((((triple1 ((triple1) -> (rule6 % int5))) -> (rule2 % int4))) -> (rule5 % int3))) -> (rule4 % int2))) -> (rule3 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is white.
("Anne" "is" "white" "+")
int3
Anne is rough.
("Anne" "is" "rough" "+")
int4
Anne is smart.
("Anne" "is" "smart" "+")
int5
Erin is not rough.
Unknown
inv-rconc
[@1: Erin is rough.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Erin" "is" "rough" "-")
Harry is green.
Unknown
rconc
[@4: Harry is green.[CWA. Example of deepest failure = (rule3 <- rule4 <- rule5 <- rule2 <- FAIL)]]
("Harry" "is" "green" "+")
Harry is not furry.
Unknown
inv-rconc
[@3: Harry is furry.[CWA. Example of deepest failure = (rule4 <- rule5 <- rule2 <- FAIL)]]
("Harry" "is" "furry" "-")
Harry is white.
Unknown
rconc
[@2: Harry is white.[CWA. Example of deepest failure = (rule5 <- rule2 <- FAIL)]]
("Harry" "is" "white" "+")
Harry is not rough.
Unknown
inv-rconc
[@1: Harry is rough.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Harry" "is" "rough" "-")
Erin is white.
Unknown
rconc
[@2: Erin is white.[CWA. Example of deepest failure = (rule5 <- rule2 <- FAIL)]]
("Erin" "is" "white" "+")
Charlie is not big.
Unknown
inv-random
[@0: Charlie is big.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "big" "-")
Anne is big.
Unknown
random
[@0: Anne is big.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "big" "+")
Erin is not big.
Unknown
inv-random
[@0: Erin is big.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "big" "-")
Erin is cold.
Unknown
random
[@0: Erin is cold.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "cold" "+")
@0: Anne is cold.[(triple1)] Charlie is cold.[(triple2)] Charlie is smart.[(triple3 OR ((triple2) -> rule6))] Erin is furry.[(triple4)] Erin is smart.[(triple5)] Harry is big.[(triple6)] Harry is smart.[(triple7)] @1: Anne is smart.[(((triple1) -> rule6))] Charlie is rough.[(((triple2 triple3) -> rule2) OR ((triple2 ((triple2) -> rule6)) -> rule2))] Erin is green.[(((triple5 triple4) -> rule3))] @2: Anne is rough.[(((triple1 ((triple1) -> rule6)) -> rule2))] Charlie is white.[(((((triple2 triple3) -> rule2)) -> rule5) OR ((((triple2 ((triple2) -> rule6)) -> rule2)) -> rule5))] @3: Anne is white.[(((((triple1 ((triple1) -> rule6)) -> rule2)) -> rule5))] Charlie is furry.[(((((((triple2 triple3) -> rule2)) -> rule5)) -> rule4) OR ((((((triple2 ((triple2) -> rule6)) -> rule2)) -> rule5)) -> rule4))] @4: Anne is furry.[(((((((triple1 ((triple1) -> rule6)) -> rule2)) -> rule5)) -> rule4))] Charlie is green.[(((triple3 ((((((triple2 triple3) -> rule2)) -> rule5)) -> rule4)) -> rule3) OR ((((triple2) -> rule6) ((((((triple2 triple3) -> rule2)) -> rule5)) -> rule4)) -> rule3) OR ((triple3 ((((((triple2 ((triple2) -> rule6)) -> rule2)) -> rule5)) -> rule4)) -> rule3) OR ((((triple2) -> rule6) ((((((triple2 ((triple2) -> rule6)) -> rule2)) -> rule5)) -> rule4)) -> rule3))] @5: Anne is green.[(((((triple1) -> rule6) ((((((triple1 ((triple1) -> rule6)) -> rule2)) -> rule5)) -> rule4)) -> rule3))]
Anne is cold.
("Anne" "is" "cold" "+")
triple1
Charlie is cold.
("Charlie" "is" "cold" "+")
triple2
Charlie is smart.
("Charlie" "is" "smart" "+")
triple3
((triple2) -> (rule6 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
Erin is furry.
("Erin" "is" "furry" "+")
triple4
Erin is smart.
("Erin" "is" "smart" "+")
triple5
Harry is big.
("Harry" "is" "big" "+")
triple6
Harry is smart.
("Harry" "is" "smart" "+")
triple7
Anne is smart.
("Anne" "is" "smart" "+")
((triple1) -> (rule6 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
((triple2 triple3) -> (rule2 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
((triple2 ((triple2) -> (rule6 % int2))) -> (rule2 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
int2
Erin is green.
("Erin" "is" "green" "+")
((triple5 triple4) -> (rule3 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
((triple1 ((triple1) -> (rule6 % int2))) -> (rule2 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is smart.
("Anne" "is" "smart" "+")
int2
Charlie is white.
("Charlie" "is" "white" "+")
((((triple2 triple3) -> (rule2 % int2))) -> (rule5 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
((((triple2 ((triple2) -> (rule6 % int3))) -> (rule2 % int2))) -> (rule5 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
int3
Anne is white.
("Anne" "is" "white" "+")
((((triple1 ((triple1) -> (rule6 % int3))) -> (rule2 % int2))) -> (rule5 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is smart.
("Anne" "is" "smart" "+")
int3
Charlie is furry.
("Charlie" "is" "furry" "+")
((((((triple2 triple3) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule4 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is rough.
("Charlie" "is" "rough" "+")
int3
((((((triple2 ((triple2) -> (rule6 % int4))) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule4 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is rough.
("Charlie" "is" "rough" "+")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
int4
Anne is furry.
("Anne" "is" "furry" "+")
((((((triple1 ((triple1) -> (rule6 % int4))) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule4 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
int2
Anne is rough.
("Anne" "is" "rough" "+")
int3
Anne is smart.
("Anne" "is" "smart" "+")
int4
Charlie is green.
("Charlie" "is" "green" "+")
((triple3 ((((((triple2 triple3) -> (rule2 % int4))) -> (rule5 % int3))) -> (rule4 % int2))) -> (rule3 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
int2
Charlie is white.
("Charlie" "is" "white" "+")
int3
Charlie is rough.
("Charlie" "is" "rough" "+")
int4
((((triple2) -> (rule6 % int5)) ((((((triple2 triple3) -> (rule2 % int4))) -> (rule5 % int3))) -> (rule4 % int2))) -> (rule3 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
int2
Charlie is white.
("Charlie" "is" "white" "+")
int3
Charlie is rough.
("Charlie" "is" "rough" "+")
int4
Charlie is smart.
("Charlie" "is" "smart" "+")
int5
((triple3 ((((((triple2 ((triple2) -> (rule6 % int5))) -> (rule2 % int4))) -> (rule5 % int3))) -> (rule4 % int2))) -> (rule3 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
int2
Charlie is white.
("Charlie" "is" "white" "+")
int3
Charlie is rough.
("Charlie" "is" "rough" "+")
int4
Charlie is smart.
("Charlie" "is" "smart" "+")
int5
((((triple2) -> (rule6 % int5)) ((((((triple2 ((triple2) -> (rule6 % int5))) -> (rule2 % int4))) -> (rule5 % int3))) -> (rule4 % int2))) -> (rule3 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
int2
Charlie is white.
("Charlie" "is" "white" "+")
int3
Charlie is rough.
("Charlie" "is" "rough" "+")
int4
Charlie is smart.
("Charlie" "is" "smart" "+")
int5
Anne is green.
("Anne" "is" "green" "+")
((((triple1) -> (rule6 % int5)) ((((((triple1 ((triple1) -> (rule6 % int5))) -> (rule2 % int4))) -> (rule5 % int3))) -> (rule4 % int2))) -> (rule3 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is white.
("Anne" "is" "white" "+")
int3
Anne is rough.
("Anne" "is" "rough" "+")
int4
Anne is smart.
("Anne" "is" "smart" "+")
int5