Erin is big. Erin is blue. Erin is green. Erin is quiet. Erin is red. Erin is round. Erin is white. If Erin is big then Erin is blue. If someone is red then they are round. Blue, big people are round. If someone is quiet then they are big. If someone is green and blue then they are big. If someone is big then they are quiet. All white people are green. All big people are white.
Erin is big.
("Erin" "is" "big" "+")
Erin is blue.
("Erin" "is" "blue" "+")
Erin is green.
("Erin" "is" "green" "+")
Erin is quiet.
("Erin" "is" "quiet" "+")
Erin is red.
("Erin" "is" "red" "+")
Erin is round.
("Erin" "is" "round" "+")
Erin is white.
("Erin" "is" "white" "+")
If Erin is big then Erin is blue.
((("Erin" "is" "big" "+")) -> ("Erin" "is" "blue" "+"))
If someone is red then they are round.
((("someone" "is" "red" "+")) -> ("someone" "is" "round" "+"))
Blue, big people are round.
((("someone" "is" "blue" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "round" "+"))
If someone is quiet then they are big.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "big" "+"))
If someone is green and blue then they are big.
((("someone" "is" "green" "+") ("someone" "is" "blue" "+")) -> ("someone" "is" "big" "+"))
If someone is big then they are quiet.
((("someone" "is" "big" "+")) -> ("someone" "is" "quiet" "+"))
All white people are green.
((("someone" "is" "white" "+")) -> ("someone" "is" "green" "+"))
All big people are white.
((("someone" "is" "big" "+")) -> ("someone" "is" "white" "+"))
Erin is white.
True
1
proof
[(triple7 OR ((triple1) -> rule8) OR ((((triple4) -> rule4)) -> rule8) OR ((((triple3 triple2) -> rule5)) -> rule8))]
("Erin" "is" "white" "+")
triple7
((triple1) -> (rule8 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
((((triple4) -> (rule4 % int2))) -> (rule8 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
((((triple3 triple2) -> (rule5 % int2))) -> (rule8 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
Erin is not quiet.
False
1
inv-proof
[(triple4 OR ((triple1) -> rule6) OR ((((triple3 triple2) -> rule5)) -> rule6) OR ((((((triple7) -> rule7) triple2) -> rule5)) -> rule6))]
("Erin" "is" "quiet" "-")
triple4
((triple1) -> (rule6 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
((((triple3 triple2) -> (rule5 % int2))) -> (rule6 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
((((((triple7) -> (rule7 % int3)) triple2) -> (rule5 % int2))) -> (rule6 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
Erin is green.
("Erin" "is" "green" "+")
int3
@0: Erin is big.[(triple1 OR ((triple4) -> rule4) OR ((triple3 triple2) -> rule5) OR ((((triple7) -> rule7) triple2) -> rule5))] Erin is blue.[(triple2 OR ((triple1) -> rule1) OR ((((triple4) -> rule4)) -> rule1))] Erin is green.[(triple3 OR ((triple7) -> rule7) OR ((((triple1) -> rule8)) -> rule7) OR ((((((triple4) -> rule4)) -> rule8)) -> rule7))] Erin is quiet.[(triple4 OR ((triple1) -> rule6) OR ((((triple3 triple2) -> rule5)) -> rule6) OR ((((((triple7) -> rule7) triple2) -> rule5)) -> rule6))] Erin is red.[(triple5)] Erin is round.[(triple6 OR ((triple5) -> rule2) OR ((triple2 triple1) -> rule3) OR ((triple2 ((triple4) -> rule4)) -> rule3) OR ((triple2 ((triple3 triple2) -> rule5)) -> rule3) OR ((((triple1) -> rule1) triple1) -> rule3) OR ((((triple1) -> rule1) ((triple4) -> rule4)) -> rule3) OR ((((triple1) -> rule1) ((triple3 triple2) -> rule5)) -> rule3) OR ((triple2 ((((triple7) -> rule7) triple2) -> rule5)) -> rule3) OR ((((((triple4) -> rule4)) -> rule1) triple1) -> rule3) OR ((((triple1) -> rule1) ((((triple7) -> rule7) triple2) -> rule5)) -> rule3) OR ((((((triple4) -> rule4)) -> rule1) ((triple4) -> rule4)) -> rule3) OR ((((((triple4) -> rule4)) -> rule1) ((triple3 triple2) -> rule5)) -> rule3) OR ((((((triple4) -> rule4)) -> rule1) ((((triple7) -> rule7) triple2) -> rule5)) -> rule3))] Erin is white.[(triple7 OR ((triple1) -> rule8) OR ((((triple4) -> rule4)) -> rule8) OR ((((triple3 triple2) -> rule5)) -> rule8))]
Erin is big.
("Erin" "is" "big" "+")
triple1
((triple4) -> (rule4 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
((triple3 triple2) -> (rule5 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
((((triple7) -> (rule7 % int2)) triple2) -> (rule5 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
Erin is blue.
("Erin" "is" "blue" "+")
triple2
((triple1) -> (rule1 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
((((triple4) -> (rule4 % int2))) -> (rule1 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
Erin is green.
("Erin" "is" "green" "+")
triple3
((triple7) -> (rule7 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
((((triple1) -> (rule8 % int2))) -> (rule7 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
Erin is white.
("Erin" "is" "white" "+")
int2
((((((triple4) -> (rule4 % int3))) -> (rule8 % int2))) -> (rule7 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
Erin is white.
("Erin" "is" "white" "+")
int2
Erin is big.
("Erin" "is" "big" "+")
int3
Erin is quiet.
("Erin" "is" "quiet" "+")
triple4
((triple1) -> (rule6 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
((((triple3 triple2) -> (rule5 % int2))) -> (rule6 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
((((((triple7) -> (rule7 % int3)) triple2) -> (rule5 % int2))) -> (rule6 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
Erin is green.
("Erin" "is" "green" "+")
int3
Erin is red.
("Erin" "is" "red" "+")
triple5
Erin is round.
("Erin" "is" "round" "+")
triple6
((triple5) -> (rule2 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
((triple2 triple1) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
((triple2 ((triple4) -> (rule4 % int2))) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
((triple2 ((triple3 triple2) -> (rule5 % int2))) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
((((triple1) -> (rule1 % int2)) triple1) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
((((triple1) -> (rule1 % int3)) ((triple4) -> (rule4 % int2))) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
Erin is blue.
("Erin" "is" "blue" "+")
int3
((((triple1) -> (rule1 % int3)) ((triple3 triple2) -> (rule5 % int2))) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
Erin is blue.
("Erin" "is" "blue" "+")
int3
((triple2 ((((triple7) -> (rule7 % int3)) triple2) -> (rule5 % int2))) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
Erin is green.
("Erin" "is" "green" "+")
int3
((((((triple4) -> (rule4 % int3))) -> (rule1 % int2)) triple1) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
Erin is big.
("Erin" "is" "big" "+")
int3
((((triple1) -> (rule1 % int4)) ((((triple7) -> (rule7 % int3)) triple2) -> (rule5 % int2))) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
Erin is green.
("Erin" "is" "green" "+")
int3
Erin is blue.
("Erin" "is" "blue" "+")
int4
((((((triple4) -> (rule4 % int3))) -> (rule1 % int2)) ((triple4) -> (rule4 % int3))) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
Erin is big.
("Erin" "is" "big" "+")
int3
((((((triple4) -> (rule4 % int3))) -> (rule1 % int2)) ((triple3 triple2) -> (rule5 % int3))) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
Erin is big.
("Erin" "is" "big" "+")
int3
((((((triple4) -> (rule4 % int4))) -> (rule1 % int3)) ((((triple7) -> (rule7 % int2)) triple2) -> (rule5 % int4))) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
Erin is blue.
("Erin" "is" "blue" "+")
int3
Erin is big.
("Erin" "is" "big" "+")
int4
Erin is white.
("Erin" "is" "white" "+")
triple7
((triple1) -> (rule8 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
((((triple4) -> (rule4 % int2))) -> (rule8 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
((((triple3 triple2) -> (rule5 % int2))) -> (rule8 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2