Dave is furry. Dave is kind. Dave is rough. Dave is round. Dave is white. Dave is young. Erin is kind. Erin is smart. Erin is young. Gary is furry. Gary is kind. Gary is rough. Gary is round. Gary is smart. Gary is white. Gary is young. Furry, young people are rough. White people are furry. If someone is smart then they are white. If someone is smart and round then they are furry. If Gary is furry then Gary is round. If Dave is furry then Dave is round.
Dave is furry.
("Dave" "is" "furry" "+")
Dave is kind.
("Dave" "is" "kind" "+")
Dave is rough.
("Dave" "is" "rough" "+")
Dave is round.
("Dave" "is" "round" "+")
Dave is white.
("Dave" "is" "white" "+")
Dave is young.
("Dave" "is" "young" "+")
Erin is kind.
("Erin" "is" "kind" "+")
Erin is smart.
("Erin" "is" "smart" "+")
Erin is young.
("Erin" "is" "young" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is rough.
("Gary" "is" "rough" "+")
Gary is round.
("Gary" "is" "round" "+")
Gary is smart.
("Gary" "is" "smart" "+")
Gary is white.
("Gary" "is" "white" "+")
Gary is young.
("Gary" "is" "young" "+")
Furry, young people are rough.
((("someone" "is" "furry" "+") ("someone" "is" "young" "+")) -> ("someone" "is" "rough" "+"))
White people are furry.
((("someone" "is" "white" "+")) -> ("someone" "is" "furry" "+"))
If someone is smart then they are white.
((("someone" "is" "smart" "+")) -> ("someone" "is" "white" "+"))
If someone is smart and round then they are furry.
((("someone" "is" "smart" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "furry" "+"))
If Gary is furry then Gary is round.
((("Gary" "is" "furry" "+")) -> ("Gary" "is" "round" "+"))
If Dave is furry then Dave is round.
((("Dave" "is" "furry" "+")) -> ("Dave" "is" "round" "+"))
Dave is furry.
True
1
proof
[(triple1 OR ((triple5) -> rule2))]
("Dave" "is" "furry" "+")
triple1
((triple5) -> (rule2 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
Gary is not round.
False
1
inv-proof
[(triple13 OR ((triple10) -> rule5) OR ((((triple15) -> rule2)) -> rule5) OR ((((((triple14) -> rule3)) -> rule2)) -> rule5))]
("Gary" "is" "round" "-")
triple13
((triple10) -> (rule5 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
((((triple15) -> (rule2 % int2))) -> (rule5 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
((((((triple14) -> (rule3 % int3))) -> (rule2 % int2))) -> (rule5 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
Gary is white.
("Gary" "is" "white" "+")
int3
Erin is white.
True
2
proof
[(((triple8) -> rule3))]
("Erin" "is" "white" "+")
((triple8) -> (rule3 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is not white.
False
2
inv-proof
[(((triple8) -> rule3))]
("Erin" "is" "white" "-")
((triple8) -> (rule3 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is furry.
True
3
proof
[(((((triple8) -> rule3)) -> rule2))]
("Erin" "is" "furry" "+")
((((triple8) -> (rule3 % int2))) -> (rule2 % int1))
Erin is furry.
("Erin" "is" "furry" "+")
int1
Erin is white.
("Erin" "is" "white" "+")
int2
Erin is not furry.
False
3
inv-proof
[(((((triple8) -> rule3)) -> rule2))]
("Erin" "is" "furry" "-")
((((triple8) -> (rule3 % int2))) -> (rule2 % int1))
Erin is furry.
("Erin" "is" "furry" "+")
int1
Erin is white.
("Erin" "is" "white" "+")
int2
Erin is rough.
True
5
proof
[(((((((triple8) -> rule3)) -> rule2) triple9) -> rule1))]
("Erin" "is" "rough" "+")
((((((triple8) -> (rule3 % int3))) -> (rule2 % int2)) triple9) -> (rule1 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Erin is furry.
("Erin" "is" "furry" "+")
int2
Erin is white.
("Erin" "is" "white" "+")
int3
Erin is not rough.
False
5
inv-proof
[(((((((triple8) -> rule3)) -> rule2) triple9) -> rule1))]
("Erin" "is" "rough" "-")
((((((triple8) -> (rule3 % int3))) -> (rule2 % int2)) triple9) -> (rule1 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Erin is furry.
("Erin" "is" "furry" "+")
int2
Erin is white.
("Erin" "is" "white" "+")
int3
Dave is not smart.
Unknown
inv-random
[@0: Dave is smart.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "smart" "-")
Erin is round.
Unknown
random
[@0: Erin is round.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "round" "+")
@0: Dave is furry.[(triple1 OR ((triple5) -> rule2))] Dave is kind.[(triple2)] Dave is rough.[(triple3 OR ((triple1 triple6) -> rule1) OR ((((triple5) -> rule2) triple6) -> rule1))] Dave is round.[(triple4 OR ((triple1) -> rule6) OR ((((triple5) -> rule2)) -> rule6))] Dave is white.[(triple5)] Dave is young.[(triple6)] Erin is kind.[(triple7)] Erin is smart.[(triple8)] Erin is young.[(triple9)] Gary is furry.[(triple10 OR ((triple15) -> rule2) OR ((triple14 triple13) -> rule4) OR ((((triple14) -> rule3)) -> rule2))] Gary is kind.[(triple11)] Gary is rough.[(triple12 OR ((triple10 triple16) -> rule1) OR ((((triple15) -> rule2) triple16) -> rule1) OR ((((triple14 triple13) -> rule4) triple16) -> rule1) OR ((((((triple14) -> rule3)) -> rule2) triple16) -> rule1))] Gary is round.[(triple13 OR ((triple10) -> rule5) OR ((((triple15) -> rule2)) -> rule5) OR ((((((triple14) -> rule3)) -> rule2)) -> rule5))] Gary is smart.[(triple14)] Gary is white.[(triple15 OR ((triple14) -> rule3))] Gary is young.[(triple16)] @1: Erin is white.[(((triple8) -> rule3))] @2: Erin is furry.[(((((triple8) -> rule3)) -> rule2))] @3: Erin is rough.[(((((((triple8) -> rule3)) -> rule2) triple9) -> rule1))]
Dave is furry.
("Dave" "is" "furry" "+")
triple1
((triple5) -> (rule2 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
triple2
Dave is rough.
("Dave" "is" "rough" "+")
triple3
((triple1 triple6) -> (rule1 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
((((triple5) -> (rule2 % int2)) triple6) -> (rule1 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
Dave is round.
("Dave" "is" "round" "+")
triple4
((triple1) -> (rule6 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
((((triple5) -> (rule2 % int2))) -> (rule6 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
Dave is white.
("Dave" "is" "white" "+")
triple5
Dave is young.
("Dave" "is" "young" "+")
triple6
Erin is kind.
("Erin" "is" "kind" "+")
triple7
Erin is smart.
("Erin" "is" "smart" "+")
triple8
Erin is young.
("Erin" "is" "young" "+")
triple9
Gary is furry.
("Gary" "is" "furry" "+")
triple10
((triple15) -> (rule2 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
((triple14 triple13) -> (rule4 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
((((triple14) -> (rule3 % int2))) -> (rule2 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
triple11
Gary is rough.
("Gary" "is" "rough" "+")
triple12
((triple10 triple16) -> (rule1 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
((((triple15) -> (rule2 % int2)) triple16) -> (rule1 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
((((triple14 triple13) -> (rule4 % int2)) triple16) -> (rule1 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
((((((triple14) -> (rule3 % int3))) -> (rule2 % int2)) triple16) -> (rule1 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
Gary is white.
("Gary" "is" "white" "+")
int3
Gary is round.
("Gary" "is" "round" "+")
triple13
((triple10) -> (rule5 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
((((triple15) -> (rule2 % int2))) -> (rule5 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
((((((triple14) -> (rule3 % int3))) -> (rule2 % int2))) -> (rule5 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
Gary is white.
("Gary" "is" "white" "+")
int3
Gary is smart.
("Gary" "is" "smart" "+")
triple14
Gary is white.
("Gary" "is" "white" "+")
triple15
((triple14) -> (rule3 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
triple16
Erin is white.
("Erin" "is" "white" "+")
((triple8) -> (rule3 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is furry.
("Erin" "is" "furry" "+")
((((triple8) -> (rule3 % int2))) -> (rule2 % int1))
Erin is furry.
("Erin" "is" "furry" "+")
int1
Erin is white.
("Erin" "is" "white" "+")
int2
Erin is rough.
("Erin" "is" "rough" "+")
((((((triple8) -> (rule3 % int3))) -> (rule2 % int2)) triple9) -> (rule1 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Erin is furry.
("Erin" "is" "furry" "+")
int2
Erin is white.
("Erin" "is" "white" "+")
int3