Anne is big. Anne is green. Anne is nice. Anne is quiet. Anne is white. Anne is young. Dave is big. Dave is green. Dave is nice. Dave is quiet. Dave is white. Dave is young. Furry, green things are nice. All furry things are quiet. If Anne is green and Anne is furry then Anne is big. If something is young and green then it is big. If Anne is green then Anne is young. All furry things are white. If Anne is green then Anne is furry. If Anne is white then Anne is green.
Anne is big.
("Anne" "is" "big" "+")
Anne is green.
("Anne" "is" "green" "+")
Anne is nice.
("Anne" "is" "nice" "+")
Anne is quiet.
("Anne" "is" "quiet" "+")
Anne is white.
("Anne" "is" "white" "+")
Anne is young.
("Anne" "is" "young" "+")
Dave is big.
("Dave" "is" "big" "+")
Dave is green.
("Dave" "is" "green" "+")
Dave is nice.
("Dave" "is" "nice" "+")
Dave is quiet.
("Dave" "is" "quiet" "+")
Dave is white.
("Dave" "is" "white" "+")
Dave is young.
("Dave" "is" "young" "+")
Furry, green things are nice.
((("something" "is" "furry" "+") ("something" "is" "green" "+")) -> ("something" "is" "nice" "+"))
All furry things are quiet.
((("something" "is" "furry" "+")) -> ("something" "is" "quiet" "+"))
If Anne is green and Anne is furry then Anne is big.
((("Anne" "is" "green" "+") ("Anne" "is" "furry" "+")) -> ("Anne" "is" "big" "+"))
If something is young and green then it is big.
((("something" "is" "young" "+") ("something" "is" "green" "+")) -> ("something" "is" "big" "+"))
If Anne is green then Anne is young.
((("Anne" "is" "green" "+")) -> ("Anne" "is" "young" "+"))
All furry things are white.
((("something" "is" "furry" "+")) -> ("something" "is" "white" "+"))
If Anne is green then Anne is furry.
((("Anne" "is" "green" "+")) -> ("Anne" "is" "furry" "+"))
If Anne is white then Anne is green.
((("Anne" "is" "white" "+")) -> ("Anne" "is" "green" "+"))
Anne is nice.
True
1
proof
[(triple3 OR ((((triple2) -> rule7) triple2) -> rule1) OR ((((triple2) -> rule7) ((triple5) -> rule8)) -> rule1) OR ((((((triple5) -> rule8)) -> rule7) triple2) -> rule1) OR ((((((triple5) -> rule8)) -> rule7) ((triple5) -> rule8)) -> rule1))]
("Anne" "is" "nice" "+")
triple3
((((triple2) -> (rule7 % int2)) triple2) -> (rule1 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
((((triple2) -> (rule7 % int3)) ((triple5) -> (rule8 % int2))) -> (rule1 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Anne is furry.
("Anne" "is" "furry" "+")
int3
((((((triple5) -> (rule8 % int3))) -> (rule7 % int2)) triple2) -> (rule1 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
((((((triple5) -> (rule8 % int3))) -> (rule7 % int2)) ((triple5) -> (rule8 % int3))) -> (rule1 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
Anne is not big.
False
1
inv-proof
[(triple1 OR ((triple6 triple2) -> rule4) OR ((triple2 ((triple2) -> rule7)) -> rule3) OR ((triple6 ((triple5) -> rule8)) -> rule4) OR ((((triple2) -> rule5) triple2) -> rule4) OR ((((triple2) -> rule5) ((triple5) -> rule8)) -> rule4) OR ((((triple5) -> rule8) ((triple2) -> rule7)) -> rule3) OR ((triple2 ((((triple5) -> rule8)) -> rule7)) -> rule3) OR ((((((triple5) -> rule8)) -> rule5) triple2) -> rule4) OR ((((triple5) -> rule8) ((((triple5) -> rule8)) -> rule7)) -> rule3) OR ((((((triple5) -> rule8)) -> rule5) ((triple5) -> rule8)) -> rule4))]
("Anne" "is" "big" "-")
triple1
((triple6 triple2) -> (rule4 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
((triple2 ((triple2) -> (rule7 % int2))) -> (rule3 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
((triple6 ((triple5) -> (rule8 % int2))) -> (rule4 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
((((triple2) -> (rule5 % int2)) triple2) -> (rule4 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is young.
("Anne" "is" "young" "+")
int2
((((triple2) -> (rule5 % int3)) ((triple5) -> (rule8 % int2))) -> (rule4 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Anne is young.
("Anne" "is" "young" "+")
int3
((((triple5) -> (rule8 % int3)) ((triple2) -> (rule7 % int2))) -> (rule3 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
((triple2 ((((triple5) -> (rule8 % int3))) -> (rule7 % int2))) -> (rule3 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
((((((triple5) -> (rule8 % int3))) -> (rule5 % int2)) triple2) -> (rule4 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is young.
("Anne" "is" "young" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
((((triple5) -> (rule8 % int3)) ((((triple5) -> (rule8 % int3))) -> (rule7 % int2))) -> (rule3 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
((((((triple5) -> (rule8 % int3))) -> (rule5 % int2)) ((triple5) -> (rule8 % int3))) -> (rule4 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is young.
("Anne" "is" "young" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
@0: Anne is big.[(triple1 OR ((triple6 triple2) -> rule4) OR ((triple2 ((triple2) -> rule7)) -> rule3) OR ((triple6 ((triple5) -> rule8)) -> rule4) OR ((((triple2) -> rule5) triple2) -> rule4) OR ((((triple2) -> rule5) ((triple5) -> rule8)) -> rule4) OR ((((triple5) -> rule8) ((triple2) -> rule7)) -> rule3) OR ((triple2 ((((triple5) -> rule8)) -> rule7)) -> rule3) OR ((((((triple5) -> rule8)) -> rule5) triple2) -> rule4) OR ((((triple5) -> rule8) ((((triple5) -> rule8)) -> rule7)) -> rule3) OR ((((((triple5) -> rule8)) -> rule5) ((triple5) -> rule8)) -> rule4))] Anne is green.[(triple2 OR ((triple5) -> rule8))] Anne is nice.[(triple3 OR ((((triple2) -> rule7) triple2) -> rule1) OR ((((triple2) -> rule7) ((triple5) -> rule8)) -> rule1) OR ((((((triple5) -> rule8)) -> rule7) triple2) -> rule1) OR ((((((triple5) -> rule8)) -> rule7) ((triple5) -> rule8)) -> rule1))] Anne is quiet.[(triple4 OR ((((triple2) -> rule7)) -> rule2) OR ((((((triple5) -> rule8)) -> rule7)) -> rule2))] Anne is white.[(triple5 OR ((((triple2) -> rule7)) -> rule6))] Anne is young.[(triple6 OR ((triple2) -> rule5) OR ((((triple5) -> rule8)) -> rule5))] Dave is big.[(triple7 OR ((triple12 triple8) -> rule4))] Dave is green.[(triple8)] Dave is nice.[(triple9)] Dave is quiet.[(triple10)] Dave is white.[(triple11)] Dave is young.[(triple12)] @1: Anne is furry.[(((triple2) -> rule7) OR ((((triple5) -> rule8)) -> rule7))]
Anne is big.
("Anne" "is" "big" "+")
triple1
((triple6 triple2) -> (rule4 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
((triple2 ((triple2) -> (rule7 % int2))) -> (rule3 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
((triple6 ((triple5) -> (rule8 % int2))) -> (rule4 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
((((triple2) -> (rule5 % int2)) triple2) -> (rule4 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is young.
("Anne" "is" "young" "+")
int2
((((triple2) -> (rule5 % int3)) ((triple5) -> (rule8 % int2))) -> (rule4 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Anne is young.
("Anne" "is" "young" "+")
int3
((((triple5) -> (rule8 % int3)) ((triple2) -> (rule7 % int2))) -> (rule3 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
((triple2 ((((triple5) -> (rule8 % int3))) -> (rule7 % int2))) -> (rule3 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
((((((triple5) -> (rule8 % int3))) -> (rule5 % int2)) triple2) -> (rule4 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is young.
("Anne" "is" "young" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
((((triple5) -> (rule8 % int3)) ((((triple5) -> (rule8 % int3))) -> (rule7 % int2))) -> (rule3 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
((((((triple5) -> (rule8 % int3))) -> (rule5 % int2)) ((triple5) -> (rule8 % int3))) -> (rule4 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is young.
("Anne" "is" "young" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
Anne is green.
("Anne" "is" "green" "+")
triple2
((triple5) -> (rule8 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is nice.
("Anne" "is" "nice" "+")
triple3
((((triple2) -> (rule7 % int2)) triple2) -> (rule1 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
((((triple2) -> (rule7 % int3)) ((triple5) -> (rule8 % int2))) -> (rule1 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Anne is furry.
("Anne" "is" "furry" "+")
int3
((((((triple5) -> (rule8 % int3))) -> (rule7 % int2)) triple2) -> (rule1 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
((((((triple5) -> (rule8 % int3))) -> (rule7 % int2)) ((triple5) -> (rule8 % int3))) -> (rule1 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
Anne is quiet.
("Anne" "is" "quiet" "+")
triple4
((((triple2) -> (rule7 % int2))) -> (rule2 % int1))
Anne is quiet.
("Anne" "is" "quiet" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
((((((triple5) -> (rule8 % int3))) -> (rule7 % int2))) -> (rule2 % int1))
Anne is quiet.
("Anne" "is" "quiet" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
Anne is white.
("Anne" "is" "white" "+")
triple5
((((triple2) -> (rule7 % int2))) -> (rule6 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is young.
("Anne" "is" "young" "+")
triple6
((triple2) -> (rule5 % int1))
Anne is young.
("Anne" "is" "young" "+")
int1
((((triple5) -> (rule8 % int2))) -> (rule5 % int1))
Anne is young.
("Anne" "is" "young" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Dave is big.
("Dave" "is" "big" "+")
triple7
((triple12 triple8) -> (rule4 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
triple8
Dave is nice.
("Dave" "is" "nice" "+")
triple9
Dave is quiet.
("Dave" "is" "quiet" "+")
triple10
Dave is white.
("Dave" "is" "white" "+")
triple11
Dave is young.
("Dave" "is" "young" "+")
triple12
Anne is furry.
("Anne" "is" "furry" "+")
((triple2) -> (rule7 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
((((triple5) -> (rule8 % int2))) -> (rule7 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2