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