Anne is big. Anne is nice. Anne is quiet. Anne is red. Anne is round. Dave is big. Dave is blue. Dave is furry. Dave is nice. Dave is quiet. Dave is red. Dave is round. All furry people are big. If someone is furry and big then they are blue. Nice people are blue. All red people are nice. All quiet people are blue. If Anne is quiet then Anne is furry.
Anne is big.
("Anne" "is" "big" "+")
Anne is nice.
("Anne" "is" "nice" "+")
Anne is quiet.
("Anne" "is" "quiet" "+")
Anne is red.
("Anne" "is" "red" "+")
Anne is round.
("Anne" "is" "round" "+")
Dave is big.
("Dave" "is" "big" "+")
Dave is blue.
("Dave" "is" "blue" "+")
Dave is furry.
("Dave" "is" "furry" "+")
Dave is nice.
("Dave" "is" "nice" "+")
Dave is quiet.
("Dave" "is" "quiet" "+")
Dave is red.
("Dave" "is" "red" "+")
Dave is round.
("Dave" "is" "round" "+")
All furry people are big.
((("someone" "is" "furry" "+")) -> ("someone" "is" "big" "+"))
If someone is furry and big then they are blue.
((("someone" "is" "furry" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "blue" "+"))
Nice people are blue.
((("someone" "is" "nice" "+")) -> ("someone" "is" "blue" "+"))
All red people are nice.
((("someone" "is" "red" "+")) -> ("someone" "is" "nice" "+"))
All quiet people are blue.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "blue" "+"))
If Anne is quiet then Anne is furry.
((("Anne" "is" "quiet" "+")) -> ("Anne" "is" "furry" "+"))
Anne is round.
True
1
proof
[(triple5)]
("Anne" "is" "round" "+")
triple5
Anne is not big.
False
1
inv-proof
[(triple1 OR ((((triple3) -> rule6)) -> rule1))]
("Anne" "is" "big" "-")
triple1
((((triple3) -> (rule6 % int2))) -> (rule1 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
@0: Anne is big.[(triple1 OR ((((triple3) -> rule6)) -> rule1))] Anne is nice.[(triple2 OR ((triple4) -> rule4))] Anne is quiet.[(triple3)] Anne is red.[(triple4)] Anne is round.[(triple5)] Dave is big.[(triple6 OR ((triple8) -> rule1))] Dave is blue.[(triple7 OR ((triple10) -> rule5) OR ((triple9) -> rule3) OR ((triple8 triple6) -> rule2) OR ((((triple11) -> rule4)) -> rule3) OR ((triple8 ((triple8) -> rule1)) -> rule2))] Dave is furry.[(triple8)] Dave is nice.[(triple9 OR ((triple11) -> rule4))] Dave is quiet.[(triple10)] Dave is red.[(triple11)] Dave is round.[(triple12)] @1: Anne is blue.[(((triple2) -> rule3) OR ((triple3) -> rule5) OR ((((triple4) -> rule4)) -> rule3) OR ((((triple3) -> rule6) triple1) -> rule2) OR ((((triple3) -> rule6) ((((triple3) -> rule6)) -> rule1)) -> rule2))] Anne is furry.[(((triple3) -> rule6))]
Anne is big.
("Anne" "is" "big" "+")
triple1
((((triple3) -> (rule6 % int2))) -> (rule1 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is nice.
("Anne" "is" "nice" "+")
triple2
((triple4) -> (rule4 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is quiet.
("Anne" "is" "quiet" "+")
triple3
Anne is red.
("Anne" "is" "red" "+")
triple4
Anne is round.
("Anne" "is" "round" "+")
triple5
Dave is big.
("Dave" "is" "big" "+")
triple6
((triple8) -> (rule1 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
triple7
((triple10) -> (rule5 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
((triple9) -> (rule3 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
((triple8 triple6) -> (rule2 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
((((triple11) -> (rule4 % int2))) -> (rule3 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is nice.
("Dave" "is" "nice" "+")
int2
((triple8 ((triple8) -> (rule1 % int2))) -> (rule2 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is furry.
("Dave" "is" "furry" "+")
triple8
Dave is nice.
("Dave" "is" "nice" "+")
triple9
((triple11) -> (rule4 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
triple10
Dave is red.
("Dave" "is" "red" "+")
triple11
Dave is round.
("Dave" "is" "round" "+")
triple12
Anne is blue.
("Anne" "is" "blue" "+")
((triple2) -> (rule3 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
((triple3) -> (rule5 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
((((triple4) -> (rule4 % int2))) -> (rule3 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Anne is nice.
("Anne" "is" "nice" "+")
int2
((((triple3) -> (rule6 % int2)) triple1) -> (rule2 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
((((triple3) -> (rule6 % int3)) ((((triple3) -> (rule6 % int3))) -> (rule1 % int2))) -> (rule2 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
Anne is furry.
("Anne" "is" "furry" "+")
int3
Anne is furry.
("Anne" "is" "furry" "+")
((triple3) -> (rule6 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1