Erin is round. Erin is young. Fiona is not cold. Fiona is white. Gary is kind. Gary is rough. Harry is white. If something is round and kind then it is white. All rough, furry things are white. If Gary is cold then Gary is young. If Erin is cold and Erin is furry then Erin is not young. Kind things are furry. Rough, young things are kind. All young, furry things are not round. All white, rough things are cold.
Erin is round.
("Erin" "is" "round" "+")
Erin is young.
("Erin" "is" "young" "+")
Fiona is not cold.
("Fiona" "is" "cold" "-")
Fiona is white.
("Fiona" "is" "white" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is rough.
("Gary" "is" "rough" "+")
Harry is white.
("Harry" "is" "white" "+")
If something is round and kind then it is white.
((("something" "is" "round" "+") ("something" "is" "kind" "+")) -> ("something" "is" "white" "+"))
All rough, furry things are white.
((("something" "is" "rough" "+") ("something" "is" "furry" "+")) -> ("something" "is" "white" "+"))
If Gary is cold then Gary is young.
((("Gary" "is" "cold" "+")) -> ("Gary" "is" "young" "+"))
If Erin is cold and Erin is furry then Erin is not young.
((("Erin" "is" "cold" "+") ("Erin" "is" "furry" "+")) -> ("Erin" "is" "young" "-"))
Kind things are furry.
((("something" "is" "kind" "+")) -> ("something" "is" "furry" "+"))
Rough, young things are kind.
((("something" "is" "rough" "+") ("something" "is" "young" "+")) -> ("something" "is" "kind" "+"))
All young, furry things are not round.
((("something" "is" "young" "+") ("something" "is" "furry" "+")) -> ("something" "is" "round" "-"))
All white, rough things are cold.
((("something" "is" "white" "+") ("something" "is" "rough" "+")) -> ("something" "is" "cold" "+"))
Gary is rough.
True
1
proof
[(triple6)]
("Gary" "is" "rough" "+")
triple6
Gary is not rough.
False
1
inv-proof
[(triple6)]
("Gary" "is" "rough" "-")
triple6
Gary is furry.
True
2
proof
[(((triple5) -> rule5))]
("Gary" "is" "furry" "+")
((triple5) -> (rule5 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is not furry.
False
2
inv-proof
[(((triple5) -> rule5))]
("Gary" "is" "furry" "-")
((triple5) -> (rule5 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is white.
True
4
proof
[(((triple6 ((triple5) -> rule5)) -> rule2))]
("Gary" "is" "white" "+")
((triple6 ((triple5) -> (rule5 % int2))) -> (rule2 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
Gary is not white.
False
4
inv-proof
[(((triple6 ((triple5) -> rule5)) -> rule2))]
("Gary" "is" "white" "-")
((triple6 ((triple5) -> (rule5 % int2))) -> (rule2 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
Gary is cold.
True
6
proof
[(((((triple6 ((triple5) -> rule5)) -> rule2) triple6) -> rule8))]
("Gary" "is" "cold" "+")
((((triple6 ((triple5) -> (rule5 % int3))) -> (rule2 % int2)) triple6) -> (rule8 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
int2
Gary is furry.
("Gary" "is" "furry" "+")
int3
Gary is not cold.
False
6
inv-proof
[(((((triple6 ((triple5) -> rule5)) -> rule2) triple6) -> rule8))]
("Gary" "is" "cold" "-")
((((triple6 ((triple5) -> (rule5 % int3))) -> (rule2 % int2)) triple6) -> (rule8 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
int2
Gary is furry.
("Gary" "is" "furry" "+")
int3
Gary is young.
True
7
proof
[(((((((triple6 ((triple5) -> rule5)) -> rule2) triple6) -> rule8)) -> rule3))]
("Gary" "is" "young" "+")
((((((triple6 ((triple5) -> (rule5 % int4))) -> (rule2 % int3)) triple6) -> (rule8 % int2))) -> (rule3 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is white.
("Gary" "is" "white" "+")
int3
Gary is furry.
("Gary" "is" "furry" "+")
int4
Gary is not young.
False
7
inv-proof
[(((((((triple6 ((triple5) -> rule5)) -> rule2) triple6) -> rule8)) -> rule3))]
("Gary" "is" "young" "-")
((((((triple6 ((triple5) -> (rule5 % int4))) -> (rule2 % int3)) triple6) -> (rule8 % int2))) -> (rule3 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is white.
("Gary" "is" "white" "+")
int3
Gary is furry.
("Gary" "is" "furry" "+")
int4
Gary is not round.
True
10
proof
[(((((((((triple6 ((triple5) -> rule5)) -> rule2) triple6) -> rule8)) -> rule3) ((triple5) -> rule5)) -> rule7))]
("Gary" "is" "round" "-")
((((((((triple6 ((triple5) -> (rule5 % int5))) -> (rule2 % int4)) triple6) -> (rule8 % int3))) -> (rule3 % int2)) ((triple5) -> (rule5 % int5))) -> (rule7 % int1))
Gary is not round.
("Gary" "is" "round" "-")
int1
Gary is young.
("Gary" "is" "young" "+")
int2
Gary is cold.
("Gary" "is" "cold" "+")
int3
Gary is white.
("Gary" "is" "white" "+")
int4
Gary is furry.
("Gary" "is" "furry" "+")
int5
Gary is round.
False
10
inv-proof
[(((((((((triple6 ((triple5) -> rule5)) -> rule2) triple6) -> rule8)) -> rule3) ((triple5) -> rule5)) -> rule7))]
("Gary" "is" "round" "+")
((((((((triple6 ((triple5) -> (rule5 % int5))) -> (rule2 % int4)) triple6) -> (rule8 % int3))) -> (rule3 % int2)) ((triple5) -> (rule5 % int5))) -> (rule7 % int1))
Gary is not round.
("Gary" "is" "round" "-")
int1
Gary is young.
("Gary" "is" "young" "+")
int2
Gary is cold.
("Gary" "is" "cold" "+")
int3
Gary is white.
("Gary" "is" "white" "+")
int4
Gary is furry.
("Gary" "is" "furry" "+")
int5
Erin is not white.
Unknown
inv-rconc
[@2: Erin is white.[CWA. Example of deepest failure = (rule1 <- rule6 <- FAIL)]]
("Erin" "is" "white" "-")
Erin is kind.
Unknown
rconc
[@1: Erin is kind.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Erin" "is" "kind" "+")
Fiona is not kind.
Unknown
inv-rconc
[@1: Fiona is kind.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Fiona" "is" "kind" "-")
Erin is furry.
Unknown
rconc
[@2: Erin is furry.[CWA. Example of deepest failure = (rule5 <- rule6 <- FAIL)]]
("Erin" "is" "furry" "+")
Harry is not cold.
Unknown
inv-rconc
[@1: Harry is cold.[CWA. Example of deepest failure = (rule8 <- FAIL)]]
("Harry" "is" "cold" "-")
Harry is furry.
Unknown
rconc
[@2: Harry is furry.[CWA. Example of deepest failure = (rule5 <- rule6 <- FAIL)]]
("Harry" "is" "furry" "+")
Fiona is not young.
Unknown
inv-random
[@0: Fiona is young.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "young" "-")
Erin is rough.
Unknown
random
[@0: Erin is rough.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "rough" "+")
Harry is not young.
Unknown
inv-random
[@0: Harry is young.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "young" "-")
Fiona is round.
Unknown
random
[@0: Fiona is round.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "round" "+")
Harry is not rough.
Unknown
inv-random
[@0: Harry is rough.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "rough" "-")
Harry is round.
Unknown
random
[@0: Harry is round.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "round" "+")
@0: Erin is round.[(triple1)] Erin is young.[(triple2)] Fiona is not cold.[(triple3)] Fiona is white.[(triple4)] Gary is kind.[(triple5)] Gary is rough.[(triple6)] Harry is white.[(triple7)] @1: Gary is furry.[(((triple5) -> rule5))] @2: Gary is white.[(((triple6 ((triple5) -> rule5)) -> rule2))] @3: Gary is cold.[(((((triple6 ((triple5) -> rule5)) -> rule2) triple6) -> rule8))] @4: Gary is young.[(((((((triple6 ((triple5) -> rule5)) -> rule2) triple6) -> rule8)) -> rule3))] @5: Gary is not round.[(((((((((triple6 ((triple5) -> rule5)) -> rule2) triple6) -> rule8)) -> rule3) ((triple5) -> rule5)) -> rule7))]
Erin is round.
("Erin" "is" "round" "+")
triple1
Erin is young.
("Erin" "is" "young" "+")
triple2
Fiona is not cold.
("Fiona" "is" "cold" "-")
triple3
Fiona is white.
("Fiona" "is" "white" "+")
triple4
Gary is kind.
("Gary" "is" "kind" "+")
triple5
Gary is rough.
("Gary" "is" "rough" "+")
triple6
Harry is white.
("Harry" "is" "white" "+")
triple7
Gary is furry.
("Gary" "is" "furry" "+")
((triple5) -> (rule5 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
((triple6 ((triple5) -> (rule5 % int2))) -> (rule2 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
Gary is cold.
("Gary" "is" "cold" "+")
((((triple6 ((triple5) -> (rule5 % int3))) -> (rule2 % int2)) triple6) -> (rule8 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
int2
Gary is furry.
("Gary" "is" "furry" "+")
int3
Gary is young.
("Gary" "is" "young" "+")
((((((triple6 ((triple5) -> (rule5 % int4))) -> (rule2 % int3)) triple6) -> (rule8 % int2))) -> (rule3 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is white.
("Gary" "is" "white" "+")
int3
Gary is furry.
("Gary" "is" "furry" "+")
int4
Gary is not round.
("Gary" "is" "round" "-")
((((((((triple6 ((triple5) -> (rule5 % int5))) -> (rule2 % int4)) triple6) -> (rule8 % int3))) -> (rule3 % int2)) ((triple5) -> (rule5 % int5))) -> (rule7 % int1))
Gary is not round.
("Gary" "is" "round" "-")
int1
Gary is young.
("Gary" "is" "young" "+")
int2
Gary is cold.
("Gary" "is" "cold" "+")
int3
Gary is white.
("Gary" "is" "white" "+")
int4
Gary is furry.
("Gary" "is" "furry" "+")
int5