Dave is round. Dave is young. Erin is big. Erin is furry. Erin is green. Erin is white. Fiona is furry. Fiona is white. Gary is big. Gary is furry. Gary is green. Gary is quiet. Gary is round. Gary is white. Gary is young. Quiet people are round. All furry people are quiet. If Dave is round then Dave is furry. If someone is furry then they are big. If someone is white and furry then they are young. All young, quiet people are green. Big, white people are quiet. All green people are young.
Dave is round.
("Dave" "is" "round" "+")
Dave is young.
("Dave" "is" "young" "+")
Erin is big.
("Erin" "is" "big" "+")
Erin is furry.
("Erin" "is" "furry" "+")
Erin is green.
("Erin" "is" "green" "+")
Erin is white.
("Erin" "is" "white" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is white.
("Fiona" "is" "white" "+")
Gary is big.
("Gary" "is" "big" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is green.
("Gary" "is" "green" "+")
Gary is quiet.
("Gary" "is" "quiet" "+")
Gary is round.
("Gary" "is" "round" "+")
Gary is white.
("Gary" "is" "white" "+")
Gary is young.
("Gary" "is" "young" "+")
Quiet people are round.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "round" "+"))
All furry people are quiet.
((("someone" "is" "furry" "+")) -> ("someone" "is" "quiet" "+"))
If Dave is round then Dave is furry.
((("Dave" "is" "round" "+")) -> ("Dave" "is" "furry" "+"))
If someone is furry then they are big.
((("someone" "is" "furry" "+")) -> ("someone" "is" "big" "+"))
If someone is white and furry then they are young.
((("someone" "is" "white" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "young" "+"))
All young, quiet people are green.
((("someone" "is" "young" "+") ("someone" "is" "quiet" "+")) -> ("someone" "is" "green" "+"))
Big, white people are quiet.
((("someone" "is" "big" "+") ("someone" "is" "white" "+")) -> ("someone" "is" "quiet" "+"))
All green people are young.
((("someone" "is" "green" "+")) -> ("someone" "is" "young" "+"))
Gary is green.
True
1
proof
[(triple11 OR ((triple15 triple12) -> rule6) OR ((triple15 ((triple10) -> rule2)) -> rule6) OR ((triple15 ((triple9 triple14) -> rule7)) -> rule6) OR ((((triple14 triple10) -> rule5) triple12) -> rule6) OR ((((triple14 triple10) -> rule5) ((triple10) -> rule2)) -> rule6) OR ((((triple14 triple10) -> rule5) ((triple9 triple14) -> rule7)) -> rule6) OR ((triple15 ((((triple10) -> rule4) triple14) -> rule7)) -> rule6) OR ((((triple14 triple10) -> rule5) ((((triple10) -> rule4) triple14) -> rule7)) -> rule6))]
("Gary" "is" "green" "+")
triple11
((triple15 triple12) -> (rule6 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
((triple15 ((triple10) -> (rule2 % int2))) -> (rule6 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
((triple15 ((triple9 triple14) -> (rule7 % int2))) -> (rule6 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
((((triple14 triple10) -> (rule5 % int2)) triple12) -> (rule6 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
int2
((((triple14 triple10) -> (rule5 % int3)) ((triple10) -> (rule2 % int2))) -> (rule6 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is young.
("Gary" "is" "young" "+")
int3
((((triple14 triple10) -> (rule5 % int3)) ((triple9 triple14) -> (rule7 % int2))) -> (rule6 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is young.
("Gary" "is" "young" "+")
int3
((triple15 ((((triple10) -> (rule4 % int3)) triple14) -> (rule7 % int2))) -> (rule6 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is big.
("Gary" "is" "big" "+")
int3
((((triple14 triple10) -> (rule5 % int4)) ((((triple10) -> (rule4 % int3)) triple14) -> (rule7 % int2))) -> (rule6 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is big.
("Gary" "is" "big" "+")
int3
Gary is young.
("Gary" "is" "young" "+")
int4
Erin is not big.
False
1
inv-proof
[(triple3 OR ((triple4) -> rule4))]
("Erin" "is" "big" "-")
triple3
((triple4) -> (rule4 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is young.
True
2
proof
[(((triple5) -> rule8) OR ((triple6 triple4) -> rule5))]
("Erin" "is" "young" "+")
((triple5) -> (rule8 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
((triple6 triple4) -> (rule5 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Fiona is not quiet.
False
2
inv-proof
[(((triple7) -> rule2) OR ((((triple7) -> rule4) triple8) -> rule7))]
("Fiona" "is" "quiet" "-")
((triple7) -> (rule2 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
((((triple7) -> (rule4 % int2)) triple8) -> (rule7 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
Dave is quiet.
True
3
proof
[(((((triple1) -> rule3)) -> rule2))]
("Dave" "is" "quiet" "+")
((((triple1) -> (rule3 % int2))) -> (rule2 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
Erin is not round.
False
3
inv-proof
[(((((triple4) -> rule2)) -> rule1) OR ((((triple3 triple6) -> rule7)) -> rule1) OR ((((((triple4) -> rule4) triple6) -> rule7)) -> rule1))]
("Erin" "is" "round" "-")
((((triple4) -> (rule2 % int2))) -> (rule1 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
int2
((((triple3 triple6) -> (rule7 % int2))) -> (rule1 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
int2
((((((triple4) -> (rule4 % int3)) triple6) -> (rule7 % int2))) -> (rule1 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
int2
Erin is big.
("Erin" "is" "big" "+")
int3
Dave is green.
True
5
proof
[(((triple2 ((((triple1) -> rule3)) -> rule2)) -> rule6))]
("Dave" "is" "green" "+")
((triple2 ((((triple1) -> (rule3 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
Dave is furry.
("Dave" "is" "furry" "+")
int3
Dave is not green.
False
5
inv-proof
[(((triple2 ((((triple1) -> rule3)) -> rule2)) -> rule6))]
("Dave" "is" "green" "-")
((triple2 ((((triple1) -> (rule3 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
Dave is furry.
("Dave" "is" "furry" "+")
int3
@0: Dave is round.[(triple1)] Dave is young.[(triple2)] Erin is big.[(triple3 OR ((triple4) -> rule4))] Erin is furry.[(triple4)] Erin is green.[(triple5 OR ((((triple6 triple4) -> rule5) ((triple4) -> rule2)) -> rule6) OR ((((triple6 triple4) -> rule5) ((triple3 triple6) -> rule7)) -> rule6) OR ((((triple6 triple4) -> rule5) ((((triple4) -> rule4) triple6) -> rule7)) -> rule6))] Erin is white.[(triple6)] Fiona is furry.[(triple7)] Fiona is white.[(triple8)] Gary is big.[(triple9 OR ((triple10) -> rule4))] Gary is furry.[(triple10)] Gary is green.[(triple11 OR ((triple15 triple12) -> rule6) OR ((triple15 ((triple10) -> rule2)) -> rule6) OR ((triple15 ((triple9 triple14) -> rule7)) -> rule6) OR ((((triple14 triple10) -> rule5) triple12) -> rule6) OR ((((triple14 triple10) -> rule5) ((triple10) -> rule2)) -> rule6) OR ((((triple14 triple10) -> rule5) ((triple9 triple14) -> rule7)) -> rule6) OR ((triple15 ((((triple10) -> rule4) triple14) -> rule7)) -> rule6) OR ((((triple14 triple10) -> rule5) ((((triple10) -> rule4) triple14) -> rule7)) -> rule6))] Gary is quiet.[(triple12 OR ((triple10) -> rule2) OR ((triple9 triple14) -> rule7) OR ((((triple10) -> rule4) triple14) -> rule7))] Gary is round.[(triple13 OR ((triple12) -> rule1) OR ((((triple10) -> rule2)) -> rule1) OR ((((triple9 triple14) -> rule7)) -> rule1) OR ((((((triple10) -> rule4) triple14) -> rule7)) -> rule1))] Gary is white.[(triple14)] Gary is young.[(triple15 OR ((triple11) -> rule8) OR ((triple14 triple10) -> rule5))] @1: Dave is furry.[(((triple1) -> rule3))] Erin is quiet.[(((triple4) -> rule2) OR ((triple3 triple6) -> rule7) OR ((((triple4) -> rule4) triple6) -> rule7))] Erin is young.[(((triple5) -> rule8) OR ((triple6 triple4) -> rule5))] Fiona is big.[(((triple7) -> rule4))] Fiona is quiet.[(((triple7) -> rule2) OR ((((triple7) -> rule4) triple8) -> rule7))] Fiona is young.[(((triple8 triple7) -> rule5))] @2: Dave is big.[(((((triple1) -> rule3)) -> rule4))] Dave is quiet.[(((((triple1) -> rule3)) -> rule2))] Erin is round.[(((((triple4) -> rule2)) -> rule1) OR ((((triple3 triple6) -> rule7)) -> rule1) OR ((((((triple4) -> rule4) triple6) -> rule7)) -> rule1))] Fiona is green.[(((((triple8 triple7) -> rule5) ((triple7) -> rule2)) -> rule6) OR ((((triple8 triple7) -> rule5) ((((triple7) -> rule4) triple8) -> rule7)) -> rule6))] Fiona is round.[(((((triple7) -> rule2)) -> rule1) OR ((((((triple7) -> rule4) triple8) -> rule7)) -> rule1))] @3: Dave is green.[(((triple2 ((((triple1) -> rule3)) -> rule2)) -> rule6))]
Dave is round.
("Dave" "is" "round" "+")
triple1
Dave is young.
("Dave" "is" "young" "+")
triple2
Erin is big.
("Erin" "is" "big" "+")
triple3
((triple4) -> (rule4 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is furry.
("Erin" "is" "furry" "+")
triple4
Erin is green.
("Erin" "is" "green" "+")
triple5
((((triple6 triple4) -> (rule5 % int3)) ((triple4) -> (rule2 % int2))) -> (rule6 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
int2
Erin is young.
("Erin" "is" "young" "+")
int3
((((triple6 triple4) -> (rule5 % int3)) ((triple3 triple6) -> (rule7 % int2))) -> (rule6 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
int2
Erin is young.
("Erin" "is" "young" "+")
int3
((((triple6 triple4) -> (rule5 % int4)) ((((triple4) -> (rule4 % int3)) triple6) -> (rule7 % int2))) -> (rule6 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
int2
Erin is big.
("Erin" "is" "big" "+")
int3
Erin is young.
("Erin" "is" "young" "+")
int4
Erin is white.
("Erin" "is" "white" "+")
triple6
Fiona is furry.
("Fiona" "is" "furry" "+")
triple7
Fiona is white.
("Fiona" "is" "white" "+")
triple8
Gary is big.
("Gary" "is" "big" "+")
triple9
((triple10) -> (rule4 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
triple10
Gary is green.
("Gary" "is" "green" "+")
triple11
((triple15 triple12) -> (rule6 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
((triple15 ((triple10) -> (rule2 % int2))) -> (rule6 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
((triple15 ((triple9 triple14) -> (rule7 % int2))) -> (rule6 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
((((triple14 triple10) -> (rule5 % int2)) triple12) -> (rule6 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
int2
((((triple14 triple10) -> (rule5 % int3)) ((triple10) -> (rule2 % int2))) -> (rule6 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is young.
("Gary" "is" "young" "+")
int3
((((triple14 triple10) -> (rule5 % int3)) ((triple9 triple14) -> (rule7 % int2))) -> (rule6 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is young.
("Gary" "is" "young" "+")
int3
((triple15 ((((triple10) -> (rule4 % int3)) triple14) -> (rule7 % int2))) -> (rule6 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is big.
("Gary" "is" "big" "+")
int3
((((triple14 triple10) -> (rule5 % int4)) ((((triple10) -> (rule4 % int3)) triple14) -> (rule7 % int2))) -> (rule6 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is big.
("Gary" "is" "big" "+")
int3
Gary is young.
("Gary" "is" "young" "+")
int4
Gary is quiet.
("Gary" "is" "quiet" "+")
triple12
((triple10) -> (rule2 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
((triple9 triple14) -> (rule7 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
((((triple10) -> (rule4 % int2)) triple14) -> (rule7 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is round.
("Gary" "is" "round" "+")
triple13
((triple12) -> (rule1 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
((((triple10) -> (rule2 % int2))) -> (rule1 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
((((triple9 triple14) -> (rule7 % int2))) -> (rule1 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
((((((triple10) -> (rule4 % int3)) triple14) -> (rule7 % int2))) -> (rule1 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is big.
("Gary" "is" "big" "+")
int3
Gary is white.
("Gary" "is" "white" "+")
triple14
Gary is young.
("Gary" "is" "young" "+")
triple15
((triple11) -> (rule8 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
((triple14 triple10) -> (rule5 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
((triple1) -> (rule3 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
((triple4) -> (rule2 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
((triple3 triple6) -> (rule7 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
((((triple4) -> (rule4 % int2)) triple6) -> (rule7 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
Erin is young.
("Erin" "is" "young" "+")
((triple5) -> (rule8 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
((triple6 triple4) -> (rule5 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
((triple7) -> (rule4 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
((triple7) -> (rule2 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
((((triple7) -> (rule4 % int2)) triple8) -> (rule7 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
((triple8 triple7) -> (rule5 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
((((triple1) -> (rule3 % int2))) -> (rule4 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
Dave is quiet.
("Dave" "is" "quiet" "+")
((((triple1) -> (rule3 % int2))) -> (rule2 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
Erin is round.
("Erin" "is" "round" "+")
((((triple4) -> (rule2 % int2))) -> (rule1 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
int2
((((triple3 triple6) -> (rule7 % int2))) -> (rule1 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
int2
((((((triple4) -> (rule4 % int3)) triple6) -> (rule7 % int2))) -> (rule1 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
int2
Erin is big.
("Erin" "is" "big" "+")
int3
Fiona is green.
("Fiona" "is" "green" "+")
((((triple8 triple7) -> (rule5 % int3)) ((triple7) -> (rule2 % int2))) -> (rule6 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
int3
((((triple8 triple7) -> (rule5 % int4)) ((((triple7) -> (rule4 % int3)) triple8) -> (rule7 % int2))) -> (rule6 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int2
Fiona is big.
("Fiona" "is" "big" "+")
int3
Fiona is young.
("Fiona" "is" "young" "+")
int4
Fiona is round.
("Fiona" "is" "round" "+")
((((triple7) -> (rule2 % int2))) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int2
((((((triple7) -> (rule4 % int3)) triple8) -> (rule7 % int2))) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int2
Fiona is big.
("Fiona" "is" "big" "+")
int3
Dave is green.
("Dave" "is" "green" "+")
((triple2 ((((triple1) -> (rule3 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
Dave is furry.
("Dave" "is" "furry" "+")
int3