Anne is big. Anne is blue. Anne is green. Anne is quiet. Anne is rough. Anne is round. Anne is smart. Dave is big. Dave is blue. Dave is green. Dave is quiet. Dave is rough. Dave is round. Dave is smart. Erin is big. Erin is round. If Anne is green then Anne is big. All round people are smart. Rough people are green. All big people are blue. If someone is smart and green then they are round. Blue, big people are rough.
Anne is big.
("Anne" "is" "big" "+")
Anne is blue.
("Anne" "is" "blue" "+")
Anne is green.
("Anne" "is" "green" "+")
Anne is quiet.
("Anne" "is" "quiet" "+")
Anne is rough.
("Anne" "is" "rough" "+")
Anne is round.
("Anne" "is" "round" "+")
Anne is smart.
("Anne" "is" "smart" "+")
Dave is big.
("Dave" "is" "big" "+")
Dave is blue.
("Dave" "is" "blue" "+")
Dave is green.
("Dave" "is" "green" "+")
Dave is quiet.
("Dave" "is" "quiet" "+")
Dave is rough.
("Dave" "is" "rough" "+")
Dave is round.
("Dave" "is" "round" "+")
Dave is smart.
("Dave" "is" "smart" "+")
Erin is big.
("Erin" "is" "big" "+")
Erin is round.
("Erin" "is" "round" "+")
If Anne is green then Anne is big.
((("Anne" "is" "green" "+")) -> ("Anne" "is" "big" "+"))
All round people are smart.
((("someone" "is" "round" "+")) -> ("someone" "is" "smart" "+"))
Rough people are green.
((("someone" "is" "rough" "+")) -> ("someone" "is" "green" "+"))
All big people are blue.
((("someone" "is" "big" "+")) -> ("someone" "is" "blue" "+"))
If someone is smart and green then they are round.
((("someone" "is" "smart" "+") ("someone" "is" "green" "+")) -> ("someone" "is" "round" "+"))
Blue, big people are rough.
((("someone" "is" "blue" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "rough" "+"))
Anne is green.
True
1
proof
[(triple3 OR ((triple5) -> rule3) OR ((((triple2 triple1) -> rule6)) -> rule3) OR ((((((triple1) -> rule4) triple1) -> rule6)) -> rule3))]
("Anne" "is" "green" "+")
triple3
((triple5) -> (rule3 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
((((triple2 triple1) -> (rule6 % int2))) -> (rule3 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
((((((triple1) -> (rule4 % int3)) triple1) -> (rule6 % int2))) -> (rule3 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is blue.
("Anne" "is" "blue" "+")
int3
Anne is not smart.
False
1
inv-proof
[(triple7 OR ((triple6) -> rule2))]
("Anne" "is" "smart" "-")
triple7
((triple6) -> (rule2 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Erin is blue.
True
2
proof
[(((triple15) -> rule4))]
("Erin" "is" "blue" "+")
((triple15) -> (rule4 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Erin is not smart.
False
2
inv-proof
[(((triple16) -> rule2))]
("Erin" "is" "smart" "-")
((triple16) -> (rule2 % int1))
Erin is smart.
("Erin" "is" "smart" "+")
int1
Erin is rough.
True
4
proof
[(((((triple15) -> rule4) triple15) -> rule6))]
("Erin" "is" "rough" "+")
((((triple15) -> (rule4 % int2)) triple15) -> (rule6 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
Erin is not rough.
False
4
inv-proof
[(((((triple15) -> rule4) triple15) -> rule6))]
("Erin" "is" "rough" "-")
((((triple15) -> (rule4 % int2)) triple15) -> (rule6 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
Erin is green.
True
5
proof
[(((((((triple15) -> rule4) triple15) -> rule6)) -> rule3))]
("Erin" "is" "green" "+")
((((((triple15) -> (rule4 % int3)) triple15) -> (rule6 % int2))) -> (rule3 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
int2
Erin is blue.
("Erin" "is" "blue" "+")
int3
Erin is not green.
False
5
inv-proof
[(((((((triple15) -> rule4) triple15) -> rule6)) -> rule3))]
("Erin" "is" "green" "-")
((((((triple15) -> (rule4 % int3)) triple15) -> (rule6 % int2))) -> (rule3 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
int2
Erin is blue.
("Erin" "is" "blue" "+")
int3
@0: Anne is big.[(triple1 OR ((triple3) -> rule1) OR ((((triple5) -> rule3)) -> rule1))] Anne is blue.[(triple2 OR ((triple1) -> rule4) OR ((((triple3) -> rule1)) -> rule4) OR ((((((triple5) -> rule3)) -> rule1)) -> rule4))] Anne is green.[(triple3 OR ((triple5) -> rule3) OR ((((triple2 triple1) -> rule6)) -> rule3) OR ((((((triple1) -> rule4) triple1) -> rule6)) -> rule3))] Anne is quiet.[(triple4)] Anne is rough.[(triple5 OR ((triple2 triple1) -> rule6) OR ((triple2 ((triple3) -> rule1)) -> rule6) OR ((((triple1) -> rule4) triple1) -> rule6) OR ((((triple1) -> rule4) ((triple3) -> rule1)) -> rule6) OR ((((((triple3) -> rule1)) -> rule4) triple1) -> rule6) OR ((((((triple3) -> rule1)) -> rule4) ((triple3) -> rule1)) -> rule6))] Anne is round.[(triple6 OR ((triple7 triple3) -> rule5) OR ((triple7 ((triple5) -> rule3)) -> rule5) OR ((triple7 ((((triple2 triple1) -> rule6)) -> rule3)) -> rule5) OR ((triple7 ((((((triple1) -> rule4) triple1) -> rule6)) -> rule3)) -> rule5))] Anne is smart.[(triple7 OR ((triple6) -> rule2))] Dave is big.[(triple8)] Dave is blue.[(triple9 OR ((triple8) -> rule4))] Dave is green.[(triple10 OR ((triple12) -> rule3) OR ((((triple9 triple8) -> rule6)) -> rule3) OR ((((((triple8) -> rule4) triple8) -> rule6)) -> rule3))] Dave is quiet.[(triple11)] Dave is rough.[(triple12 OR ((triple9 triple8) -> rule6) OR ((((triple8) -> rule4) triple8) -> rule6))] Dave is round.[(triple13 OR ((triple14 triple10) -> rule5) OR ((triple14 ((triple12) -> rule3)) -> rule5) OR ((triple14 ((((triple9 triple8) -> rule6)) -> rule3)) -> rule5) OR ((triple14 ((((((triple8) -> rule4) triple8) -> rule6)) -> rule3)) -> rule5))] Dave is smart.[(triple14 OR ((triple13) -> rule2))] Erin is big.[(triple15)] Erin is round.[(triple16)] @1: Erin is blue.[(((triple15) -> rule4))] Erin is smart.[(((triple16) -> rule2))] @2: Erin is rough.[(((((triple15) -> rule4) triple15) -> rule6))] @3: Erin is green.[(((((((triple15) -> rule4) triple15) -> rule6)) -> rule3))]
Anne is big.
("Anne" "is" "big" "+")
triple1
((triple3) -> (rule1 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
((((triple5) -> (rule3 % int2))) -> (rule1 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Anne is blue.
("Anne" "is" "blue" "+")
triple2
((triple1) -> (rule4 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
((((triple3) -> (rule1 % int2))) -> (rule4 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
((((((triple5) -> (rule3 % int3))) -> (rule1 % int2))) -> (rule4 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
Anne is green.
("Anne" "is" "green" "+")
triple3
((triple5) -> (rule3 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
((((triple2 triple1) -> (rule6 % int2))) -> (rule3 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
((((((triple1) -> (rule4 % int3)) triple1) -> (rule6 % int2))) -> (rule3 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is blue.
("Anne" "is" "blue" "+")
int3
Anne is quiet.
("Anne" "is" "quiet" "+")
triple4
Anne is rough.
("Anne" "is" "rough" "+")
triple5
((triple2 triple1) -> (rule6 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
((triple2 ((triple3) -> (rule1 % int2))) -> (rule6 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
((((triple1) -> (rule4 % int2)) triple1) -> (rule6 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is blue.
("Anne" "is" "blue" "+")
int2
((((triple1) -> (rule4 % int3)) ((triple3) -> (rule1 % int2))) -> (rule6 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
Anne is blue.
("Anne" "is" "blue" "+")
int3
((((((triple3) -> (rule1 % int3))) -> (rule4 % int2)) triple1) -> (rule6 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is blue.
("Anne" "is" "blue" "+")
int2
Anne is big.
("Anne" "is" "big" "+")
int3
((((((triple3) -> (rule1 % int3))) -> (rule4 % int2)) ((triple3) -> (rule1 % int3))) -> (rule6 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is blue.
("Anne" "is" "blue" "+")
int2
Anne is big.
("Anne" "is" "big" "+")
int3
Anne is round.
("Anne" "is" "round" "+")
triple6
((triple7 triple3) -> (rule5 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
((triple7 ((triple5) -> (rule3 % int2))) -> (rule5 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
((triple7 ((((triple2 triple1) -> (rule6 % int3))) -> (rule3 % int2))) -> (rule5 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Anne is rough.
("Anne" "is" "rough" "+")
int3
((triple7 ((((((triple1) -> (rule4 % int4)) triple1) -> (rule6 % int3))) -> (rule3 % int2))) -> (rule5 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Anne is rough.
("Anne" "is" "rough" "+")
int3
Anne is blue.
("Anne" "is" "blue" "+")
int4
Anne is smart.
("Anne" "is" "smart" "+")
triple7
((triple6) -> (rule2 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
triple8
Dave is blue.
("Dave" "is" "blue" "+")
triple9
((triple8) -> (rule4 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
triple10
((triple12) -> (rule3 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
((((triple9 triple8) -> (rule6 % int2))) -> (rule3 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
int2
((((((triple8) -> (rule4 % int3)) triple8) -> (rule6 % int2))) -> (rule3 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
int2
Dave is blue.
("Dave" "is" "blue" "+")
int3
Dave is quiet.
("Dave" "is" "quiet" "+")
triple11
Dave is rough.
("Dave" "is" "rough" "+")
triple12
((triple9 triple8) -> (rule6 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
((((triple8) -> (rule4 % int2)) triple8) -> (rule6 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
int2
Dave is round.
("Dave" "is" "round" "+")
triple13
((triple14 triple10) -> (rule5 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
((triple14 ((triple12) -> (rule3 % int2))) -> (rule5 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
((triple14 ((((triple9 triple8) -> (rule6 % int3))) -> (rule3 % int2))) -> (rule5 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
Dave is rough.
("Dave" "is" "rough" "+")
int3
((triple14 ((((((triple8) -> (rule4 % int4)) triple8) -> (rule6 % int3))) -> (rule3 % int2))) -> (rule5 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
Dave is rough.
("Dave" "is" "rough" "+")
int3
Dave is blue.
("Dave" "is" "blue" "+")
int4
Dave is smart.
("Dave" "is" "smart" "+")
triple14
((triple13) -> (rule2 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
triple15
Erin is round.
("Erin" "is" "round" "+")
triple16
Erin is blue.
("Erin" "is" "blue" "+")
((triple15) -> (rule4 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Erin is smart.
("Erin" "is" "smart" "+")
((triple16) -> (rule2 % int1))
Erin is smart.
("Erin" "is" "smart" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
((((triple15) -> (rule4 % int2)) triple15) -> (rule6 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
Erin is green.
("Erin" "is" "green" "+")
((((((triple15) -> (rule4 % int3)) triple15) -> (rule6 % int2))) -> (rule3 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
int2
Erin is blue.
("Erin" "is" "blue" "+")
int3