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