Dave is rough. Dave is smart. Dave is white. Erin is big. Erin is quiet. Erin is rough. Erin is white. Big people are white. Quiet people are smart. All smart, green people are white. All quiet, green people are red. If someone is rough and smart then they are big. If someone is red and rough then they are quiet. If someone is big then they are green. If someone is big and green then they are quiet.
Dave is rough.
("Dave" "is" "rough" "+")
Dave is smart.
("Dave" "is" "smart" "+")
Dave is white.
("Dave" "is" "white" "+")
Erin is big.
("Erin" "is" "big" "+")
Erin is quiet.
("Erin" "is" "quiet" "+")
Erin is rough.
("Erin" "is" "rough" "+")
Erin is white.
("Erin" "is" "white" "+")
Big people are white.
((("someone" "is" "big" "+")) -> ("someone" "is" "white" "+"))
Quiet people are smart.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "smart" "+"))
All smart, green people are white.
((("someone" "is" "smart" "+") ("someone" "is" "green" "+")) -> ("someone" "is" "white" "+"))
All quiet, green people are red.
((("someone" "is" "quiet" "+") ("someone" "is" "green" "+")) -> ("someone" "is" "red" "+"))
If someone is rough and smart then they are big.
((("someone" "is" "rough" "+") ("someone" "is" "smart" "+")) -> ("someone" "is" "big" "+"))
If someone is red and rough then they are quiet.
((("someone" "is" "red" "+") ("someone" "is" "rough" "+")) -> ("someone" "is" "quiet" "+"))
If someone is big then they are green.
((("someone" "is" "big" "+")) -> ("someone" "is" "green" "+"))
If someone is big and green then they are quiet.
((("someone" "is" "big" "+") ("someone" "is" "green" "+")) -> ("someone" "is" "quiet" "+"))
Dave is rough.
True
1
proof
[(triple1)]
("Dave" "is" "rough" "+")
triple1
Erin is not rough.
False
1
inv-proof
[(triple6)]
("Erin" "is" "rough" "-")
triple6
Dave is big.
True
3
proof
[(((triple1 triple2) -> rule5))]
("Dave" "is" "big" "+")
((triple1 triple2) -> (rule5 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is not big.
False
3
inv-proof
[(((triple1 triple2) -> rule5))]
("Dave" "is" "big" "-")
((triple1 triple2) -> (rule5 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Erin is red.
True
4
proof
[(((triple5 ((triple4) -> rule7)) -> rule4) OR ((((triple4 ((triple4) -> rule7)) -> rule8) ((triple4) -> rule7)) -> rule4) OR ((triple5 ((((triple6 ((triple5) -> rule2)) -> rule5)) -> rule7)) -> rule4) OR ((((triple4 ((triple4) -> rule7)) -> rule8) ((((triple6 ((triple5) -> rule2)) -> rule5)) -> rule7)) -> rule4))]
("Erin" "is" "red" "+")
((triple5 ((triple4) -> (rule7 % int2))) -> (rule4 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
((((triple4 ((triple4) -> (rule7 % int3))) -> (rule8 % int2)) ((triple4) -> (rule7 % int3))) -> (rule4 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
int2
Erin is green.
("Erin" "is" "green" "+")
int3
((triple5 ((((triple6 ((triple5) -> (rule2 % int4))) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule4 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
Erin is big.
("Erin" "is" "big" "+")
int3
Erin is smart.
("Erin" "is" "smart" "+")
int4
((((triple4 ((triple4) -> (rule7 % int5))) -> (rule8 % int4)) ((((triple6 ((triple5) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule7 % int5))) -> (rule4 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
Erin is smart.
("Erin" "is" "smart" "+")
int3
Erin is quiet.
("Erin" "is" "quiet" "+")
int4
Erin is green.
("Erin" "is" "green" "+")
int5
Erin is not red.
False
4
inv-proof
[(((triple5 ((triple4) -> rule7)) -> rule4) OR ((((triple4 ((triple4) -> rule7)) -> rule8) ((triple4) -> rule7)) -> rule4) OR ((triple5 ((((triple6 ((triple5) -> rule2)) -> rule5)) -> rule7)) -> rule4) OR ((((triple4 ((triple4) -> rule7)) -> rule8) ((((triple6 ((triple5) -> rule2)) -> rule5)) -> rule7)) -> rule4))]
("Erin" "is" "red" "-")
((triple5 ((triple4) -> (rule7 % int2))) -> (rule4 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
((((triple4 ((triple4) -> (rule7 % int3))) -> (rule8 % int2)) ((triple4) -> (rule7 % int3))) -> (rule4 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
int2
Erin is green.
("Erin" "is" "green" "+")
int3
((triple5 ((((triple6 ((triple5) -> (rule2 % int4))) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule4 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
Erin is big.
("Erin" "is" "big" "+")
int3
Erin is smart.
("Erin" "is" "smart" "+")
int4
((((triple4 ((triple4) -> (rule7 % int5))) -> (rule8 % int4)) ((((triple6 ((triple5) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule7 % int5))) -> (rule4 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
Erin is smart.
("Erin" "is" "smart" "+")
int3
Erin is quiet.
("Erin" "is" "quiet" "+")
int4
Erin is green.
("Erin" "is" "green" "+")
int5
Dave is quiet.
True
8
proof
[(((((triple1 triple2) -> rule5) ((((triple1 triple2) -> rule5)) -> rule7)) -> rule8))]
("Dave" "is" "quiet" "+")
((((triple1 triple2) -> (rule5 % int3)) ((((triple1 triple2) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule8 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
Dave is big.
("Dave" "is" "big" "+")
int3
Dave is not quiet.
False
8
inv-proof
[(((((triple1 triple2) -> rule5) ((((triple1 triple2) -> rule5)) -> rule7)) -> rule8))]
("Dave" "is" "quiet" "-")
((((triple1 triple2) -> (rule5 % int3)) ((((triple1 triple2) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule8 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
Dave is big.
("Dave" "is" "big" "+")
int3
@0: Dave is rough.[(triple1)] Dave is smart.[(triple2)] Dave is white.[(triple3 OR ((((triple1 triple2) -> rule5)) -> rule1) OR ((triple2 ((((triple1 triple2) -> rule5)) -> rule7)) -> rule3))] Erin is big.[(triple4 OR ((triple6 ((triple5) -> rule2)) -> rule5))] Erin is quiet.[(triple5 OR ((triple4 ((triple4) -> rule7)) -> rule8))] Erin is rough.[(triple6)] Erin is white.[(triple7 OR ((triple4) -> rule1) OR ((((triple5) -> rule2) ((triple4) -> rule7)) -> rule3) OR ((((triple6 ((triple5) -> rule2)) -> rule5)) -> rule1) OR ((((triple5) -> rule2) ((((triple6 ((triple5) -> rule2)) -> rule5)) -> rule7)) -> rule3) OR ((((((triple4 ((triple4) -> rule7)) -> rule8)) -> rule2) ((triple4) -> rule7)) -> rule3) OR ((((((triple4 ((triple4) -> rule7)) -> rule8)) -> rule2) ((((triple6 ((triple5) -> rule2)) -> rule5)) -> rule7)) -> rule3))] @1: Dave is big.[(((triple1 triple2) -> rule5))] Erin is green.[(((triple4) -> rule7) OR ((((triple6 ((triple5) -> rule2)) -> rule5)) -> rule7))] Erin is smart.[(((triple5) -> rule2) OR ((((triple4 ((triple4) -> rule7)) -> rule8)) -> rule2))] @2: Dave is green.[(((((triple1 triple2) -> rule5)) -> rule7))] Erin is red.[(((triple5 ((triple4) -> rule7)) -> rule4) OR ((((triple4 ((triple4) -> rule7)) -> rule8) ((triple4) -> rule7)) -> rule4) OR ((triple5 ((((triple6 ((triple5) -> rule2)) -> rule5)) -> rule7)) -> rule4) OR ((((triple4 ((triple4) -> rule7)) -> rule8) ((((triple6 ((triple5) -> rule2)) -> rule5)) -> rule7)) -> rule4))] @3: Dave is quiet.[(((((triple1 triple2) -> rule5) ((((triple1 triple2) -> rule5)) -> rule7)) -> rule8))] @4: Dave is red.[(((((((triple1 triple2) -> rule5) ((((triple1 triple2) -> rule5)) -> rule7)) -> rule8) ((((triple1 triple2) -> rule5)) -> rule7)) -> rule4))]
Dave is rough.
("Dave" "is" "rough" "+")
triple1
Dave is smart.
("Dave" "is" "smart" "+")
triple2
Dave is white.
("Dave" "is" "white" "+")
triple3
((((triple1 triple2) -> (rule5 % int2))) -> (rule1 % int1))
Dave is white.
("Dave" "is" "white" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
((triple2 ((((triple1 triple2) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule3 % int1))
Dave is white.
("Dave" "is" "white" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
Dave is big.
("Dave" "is" "big" "+")
int3
Erin is big.
("Erin" "is" "big" "+")
triple4
((triple6 ((triple5) -> (rule2 % int2))) -> (rule5 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is smart.
("Erin" "is" "smart" "+")
int2
Erin is quiet.
("Erin" "is" "quiet" "+")
triple5
((triple4 ((triple4) -> (rule7 % int2))) -> (rule8 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
Erin is rough.
("Erin" "is" "rough" "+")
triple6
Erin is white.
("Erin" "is" "white" "+")
triple7
((triple4) -> (rule1 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
((((triple5) -> (rule2 % int3)) ((triple4) -> (rule7 % int2))) -> (rule3 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
Erin is smart.
("Erin" "is" "smart" "+")
int3
((((triple6 ((triple5) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule1 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
Erin is smart.
("Erin" "is" "smart" "+")
int3
((((triple5) -> (rule2 % int4)) ((((triple6 ((triple5) -> (rule2 % int4))) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule3 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
Erin is big.
("Erin" "is" "big" "+")
int3
Erin is smart.
("Erin" "is" "smart" "+")
int4
((((((triple4 ((triple4) -> (rule7 % int4))) -> (rule8 % int3))) -> (rule2 % int2)) ((triple4) -> (rule7 % int4))) -> (rule3 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is smart.
("Erin" "is" "smart" "+")
int2
Erin is quiet.
("Erin" "is" "quiet" "+")
int3
Erin is green.
("Erin" "is" "green" "+")
int4
((((((triple4 ((triple4) -> (rule7 % int5))) -> (rule8 % int4))) -> (rule2 % int3)) ((((triple6 ((triple5) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule7 % int5))) -> (rule3 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
Erin is smart.
("Erin" "is" "smart" "+")
int3
Erin is quiet.
("Erin" "is" "quiet" "+")
int4
Erin is green.
("Erin" "is" "green" "+")
int5
Dave is big.
("Dave" "is" "big" "+")
((triple1 triple2) -> (rule5 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
((triple4) -> (rule7 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
((((triple6 ((triple5) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule7 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
Erin is smart.
("Erin" "is" "smart" "+")
int3
Erin is smart.
("Erin" "is" "smart" "+")
((triple5) -> (rule2 % int1))
Erin is smart.
("Erin" "is" "smart" "+")
int1
((((triple4 ((triple4) -> (rule7 % int3))) -> (rule8 % int2))) -> (rule2 % int1))
Erin is smart.
("Erin" "is" "smart" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
int2
Erin is green.
("Erin" "is" "green" "+")
int3
Dave is green.
("Dave" "is" "green" "+")
((((triple1 triple2) -> (rule5 % int2))) -> (rule7 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Erin is red.
("Erin" "is" "red" "+")
((triple5 ((triple4) -> (rule7 % int2))) -> (rule4 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
((((triple4 ((triple4) -> (rule7 % int3))) -> (rule8 % int2)) ((triple4) -> (rule7 % int3))) -> (rule4 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
int2
Erin is green.
("Erin" "is" "green" "+")
int3
((triple5 ((((triple6 ((triple5) -> (rule2 % int4))) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule4 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
Erin is big.
("Erin" "is" "big" "+")
int3
Erin is smart.
("Erin" "is" "smart" "+")
int4
((((triple4 ((triple4) -> (rule7 % int5))) -> (rule8 % int4)) ((((triple6 ((triple5) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule7 % int5))) -> (rule4 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
Erin is smart.
("Erin" "is" "smart" "+")
int3
Erin is quiet.
("Erin" "is" "quiet" "+")
int4
Erin is green.
("Erin" "is" "green" "+")
int5
Dave is quiet.
("Dave" "is" "quiet" "+")
((((triple1 triple2) -> (rule5 % int3)) ((((triple1 triple2) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule8 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
Dave is big.
("Dave" "is" "big" "+")
int3
Dave is red.
("Dave" "is" "red" "+")
((((((triple1 triple2) -> (rule5 % int4)) ((((triple1 triple2) -> (rule5 % int4))) -> (rule7 % int3))) -> (rule8 % int2)) ((((triple1 triple2) -> (rule5 % int4))) -> (rule7 % int3))) -> (rule4 % int1))
Dave is red.
("Dave" "is" "red" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
Dave is green.
("Dave" "is" "green" "+")
int3
Dave is big.
("Dave" "is" "big" "+")
int4