Anne is furry. Anne is smart. Dave is red. Dave is smart. Fiona is blue. Fiona is furry. Fiona is kind. Fiona is nice. Fiona is red. Fiona is rough. Fiona is smart. Gary is furry. Gary is kind. Gary is red. Gary is smart. If Gary is nice then Gary is kind. If Fiona is blue and Fiona is furry then Fiona is smart. Rough people are red. If Fiona is kind then Fiona is blue. If Dave is kind and Dave is blue then Dave is furry. If Gary is blue then Gary is smart. If someone is rough and smart then they are kind. If someone is red then they are rough.
Anne is furry.
("Anne" "is" "furry" "+")
Anne is smart.
("Anne" "is" "smart" "+")
Dave is red.
("Dave" "is" "red" "+")
Dave is smart.
("Dave" "is" "smart" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is kind.
("Fiona" "is" "kind" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is red.
("Fiona" "is" "red" "+")
Fiona is rough.
("Fiona" "is" "rough" "+")
Fiona is smart.
("Fiona" "is" "smart" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is red.
("Gary" "is" "red" "+")
Gary is smart.
("Gary" "is" "smart" "+")
If Gary is nice then Gary is kind.
((("Gary" "is" "nice" "+")) -> ("Gary" "is" "kind" "+"))
If Fiona is blue and Fiona is furry then Fiona is smart.
((("Fiona" "is" "blue" "+") ("Fiona" "is" "furry" "+")) -> ("Fiona" "is" "smart" "+"))
Rough people are red.
((("someone" "is" "rough" "+")) -> ("someone" "is" "red" "+"))
If Fiona is kind then Fiona is blue.
((("Fiona" "is" "kind" "+")) -> ("Fiona" "is" "blue" "+"))
If Dave is kind and Dave is blue then Dave is furry.
((("Dave" "is" "kind" "+") ("Dave" "is" "blue" "+")) -> ("Dave" "is" "furry" "+"))
If Gary is blue then Gary is smart.
((("Gary" "is" "blue" "+")) -> ("Gary" "is" "smart" "+"))
If someone is rough and smart then they are kind.
((("someone" "is" "rough" "+") ("someone" "is" "smart" "+")) -> ("someone" "is" "kind" "+"))
If someone is red then they are rough.
((("someone" "is" "red" "+")) -> ("someone" "is" "rough" "+"))
Fiona is red.
True
1
proof
[(triple9 OR ((triple10) -> rule3))]
("Fiona" "is" "red" "+")
triple9
((triple10) -> (rule3 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Gary is not smart.
False
1
inv-proof
[(triple15)]
("Gary" "is" "smart" "-")
triple15
Dave is rough.
True
2
proof
[(((triple3) -> rule8))]
("Dave" "is" "rough" "+")
((triple3) -> (rule8 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Gary is not rough.
False
2
inv-proof
[(((triple14) -> rule8))]
("Gary" "is" "rough" "-")
((triple14) -> (rule8 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Dave is kind.
True
4
proof
[(((((triple3) -> rule8) triple4) -> rule7))]
("Dave" "is" "kind" "+")
((((triple3) -> (rule8 % int2)) triple4) -> (rule7 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
int2
Dave is not kind.
False
4
inv-proof
[(((((triple3) -> rule8) triple4) -> rule7))]
("Dave" "is" "kind" "-")
((((triple3) -> (rule8 % int2)) triple4) -> (rule7 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
int2
Anne is not red.
Unknown
inv-rconc
[@2: Anne is red.[CWA. Example of deepest failure = (rule3 <- rule8 <- FAIL)]]
("Anne" "is" "red" "-")
Anne is kind.
Unknown
rconc
[@3: Anne is kind.[CWA. Example of deepest failure = (rule7 <- rule8 <- rule3 <- FAIL)]]
("Anne" "is" "kind" "+")
Dave is not furry.
Unknown
inv-rconc
[@1: Dave is furry.[CWA. Example of deepest failure = (rule5 <- FAIL)]]
("Dave" "is" "furry" "-")
Anne is blue.
Unknown
random
[@0: Anne is blue.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "blue" "+")
Dave is not blue.
Unknown
inv-random
[@0: Dave is blue.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "blue" "-")
Dave is nice.
Unknown
random
[@0: Dave is nice.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "nice" "+")
@0: Anne is furry.[(triple1)] Anne is smart.[(triple2)] Dave is red.[(triple3)] Dave is smart.[(triple4)] Fiona is blue.[(triple5 OR ((triple7) -> rule4) OR ((((triple10 triple11) -> rule7)) -> rule4) OR ((((((triple9) -> rule8) triple11) -> rule7)) -> rule4))] Fiona is furry.[(triple6)] Fiona is kind.[(triple7 OR ((triple10 triple11) -> rule7) OR ((triple10 ((triple5 triple6) -> rule2)) -> rule7) OR ((((triple9) -> rule8) triple11) -> rule7) OR ((((triple9) -> rule8) ((triple5 triple6) -> rule2)) -> rule7))] Fiona is nice.[(triple8)] Fiona is red.[(triple9 OR ((triple10) -> rule3))] Fiona is rough.[(triple10 OR ((triple9) -> rule8))] Fiona is smart.[(triple11 OR ((triple5 triple6) -> rule2) OR ((((triple7) -> rule4) triple6) -> rule2))] Gary is furry.[(triple12)] Gary is kind.[(triple13 OR ((((triple14) -> rule8) triple15) -> rule7))] Gary is red.[(triple14)] Gary is smart.[(triple15)] @1: Dave is rough.[(((triple3) -> rule8))] Gary is rough.[(((triple14) -> rule8))] @2: Dave is kind.[(((((triple3) -> rule8) triple4) -> rule7))]
Anne is furry.
("Anne" "is" "furry" "+")
triple1
Anne is smart.
("Anne" "is" "smart" "+")
triple2
Dave is red.
("Dave" "is" "red" "+")
triple3
Dave is smart.
("Dave" "is" "smart" "+")
triple4
Fiona is blue.
("Fiona" "is" "blue" "+")
triple5
((triple7) -> (rule4 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
((((triple10 triple11) -> (rule7 % int2))) -> (rule4 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
((((((triple9) -> (rule8 % int3)) triple11) -> (rule7 % int2))) -> (rule4 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is rough.
("Fiona" "is" "rough" "+")
int3
Fiona is furry.
("Fiona" "is" "furry" "+")
triple6
Fiona is kind.
("Fiona" "is" "kind" "+")
triple7
((triple10 triple11) -> (rule7 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
((triple10 ((triple5 triple6) -> (rule2 % int2))) -> (rule7 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
((((triple9) -> (rule8 % int2)) triple11) -> (rule7 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
((((triple9) -> (rule8 % int3)) ((triple5 triple6) -> (rule2 % int2))) -> (rule7 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
Fiona is rough.
("Fiona" "is" "rough" "+")
int3
Fiona is nice.
("Fiona" "is" "nice" "+")
triple8
Fiona is red.
("Fiona" "is" "red" "+")
triple9
((triple10) -> (rule3 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
triple10
((triple9) -> (rule8 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
triple11
((triple5 triple6) -> (rule2 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
((((triple7) -> (rule4 % int2)) triple6) -> (rule2 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Gary is furry.
("Gary" "is" "furry" "+")
triple12
Gary is kind.
("Gary" "is" "kind" "+")
triple13
((((triple14) -> (rule8 % int2)) triple15) -> (rule7 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
triple14
Gary is smart.
("Gary" "is" "smart" "+")
triple15
Dave is rough.
("Dave" "is" "rough" "+")
((triple3) -> (rule8 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
((triple14) -> (rule8 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
((((triple3) -> (rule8 % int2)) triple4) -> (rule7 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
int2