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