Anne is big. Anne is blue. Anne is green. Anne is kind. Anne is round. Anne is smart. Anne is white. All big, round things are kind. If something is smart and green then it is kind. If something is round then it is white. If Anne is white then Anne is green. If Anne is round then Anne is big. If Anne is green and Anne is white then Anne is round.
Anne is big.
("Anne" "is" "big" "+")
Anne is blue.
("Anne" "is" "blue" "+")
Anne is green.
("Anne" "is" "green" "+")
Anne is kind.
("Anne" "is" "kind" "+")
Anne is round.
("Anne" "is" "round" "+")
Anne is smart.
("Anne" "is" "smart" "+")
Anne is white.
("Anne" "is" "white" "+")
All big, round things are kind.
((("something" "is" "big" "+") ("something" "is" "round" "+")) -> ("something" "is" "kind" "+"))
If something is smart and green then it is kind.
((("something" "is" "smart" "+") ("something" "is" "green" "+")) -> ("something" "is" "kind" "+"))
If something is round then it is white.
((("something" "is" "round" "+")) -> ("something" "is" "white" "+"))
If Anne is white then Anne is green.
((("Anne" "is" "white" "+")) -> ("Anne" "is" "green" "+"))
If Anne is round then Anne is big.
((("Anne" "is" "round" "+")) -> ("Anne" "is" "big" "+"))
If Anne is green and Anne is white then Anne is round.
((("Anne" "is" "green" "+") ("Anne" "is" "white" "+")) -> ("Anne" "is" "round" "+"))
Anne is green.
True
1
proof
[(triple3 OR ((triple7) -> rule4) OR ((((triple5) -> rule3)) -> rule4))]
("Anne" "is" "green" "+")
triple3
((triple7) -> (rule4 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
((((triple5) -> (rule3 % int2))) -> (rule4 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
int2
Anne is not blue.
False
1
inv-proof
[(triple2)]
("Anne" "is" "blue" "-")
triple2
@0: Anne is big.[(triple1 OR ((triple5) -> rule5) OR ((((triple3 triple7) -> rule6)) -> rule5) OR ((((((triple7) -> rule4) triple7) -> rule6)) -> rule5))] Anne is blue.[(triple2)] Anne is green.[(triple3 OR ((triple7) -> rule4) OR ((((triple5) -> rule3)) -> rule4))] Anne is kind.[(triple4 OR ((triple1 triple5) -> rule1) OR ((triple6 triple3) -> rule2) OR ((triple1 ((triple3 triple7) -> rule6)) -> rule1) OR ((triple6 ((triple7) -> rule4)) -> rule2) OR ((((triple5) -> rule5) triple5) -> rule1) OR ((((triple5) -> rule5) ((triple3 triple7) -> rule6)) -> rule1) OR ((triple1 ((((triple7) -> rule4) triple7) -> rule6)) -> rule1) OR ((triple6 ((((triple5) -> rule3)) -> rule4)) -> rule2) OR ((((((triple3 triple7) -> rule6)) -> rule5) triple5) -> rule1) OR ((((triple5) -> rule5) ((((triple7) -> rule4) triple7) -> rule6)) -> rule1) OR ((((((triple3 triple7) -> rule6)) -> rule5) ((triple3 triple7) -> rule6)) -> rule1) OR ((((((triple3 triple7) -> rule6)) -> rule5) ((((triple7) -> rule4) triple7) -> rule6)) -> rule1) OR ((((((((triple7) -> rule4) triple7) -> rule6)) -> rule5) triple5) -> rule1) OR ((((((((triple7) -> rule4) triple7) -> rule6)) -> rule5) ((triple3 triple7) -> rule6)) -> rule1) OR ((((((((triple7) -> rule4) triple7) -> rule6)) -> rule5) ((((triple7) -> rule4) triple7) -> rule6)) -> rule1))] Anne is round.[(triple5 OR ((triple3 triple7) -> rule6) OR ((((triple7) -> rule4) triple7) -> rule6))] Anne is smart.[(triple6)] Anne is white.[(triple7 OR ((triple5) -> rule3))]
Anne is big.
("Anne" "is" "big" "+")
triple1
((triple5) -> (rule5 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
((((triple3 triple7) -> (rule6 % int2))) -> (rule5 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
((((((triple7) -> (rule4 % int3)) triple7) -> (rule6 % int2))) -> (rule5 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
Anne is blue.
("Anne" "is" "blue" "+")
triple2
Anne is green.
("Anne" "is" "green" "+")
triple3
((triple7) -> (rule4 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
((((triple5) -> (rule3 % int2))) -> (rule4 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
int2
Anne is kind.
("Anne" "is" "kind" "+")
triple4
((triple1 triple5) -> (rule1 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
((triple6 triple3) -> (rule2 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
((triple1 ((triple3 triple7) -> (rule6 % int2))) -> (rule1 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
((triple6 ((triple7) -> (rule4 % int2))) -> (rule2 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
((((triple5) -> (rule5 % int2)) triple5) -> (rule1 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
((((triple5) -> (rule5 % int3)) ((triple3 triple7) -> (rule6 % int2))) -> (rule1 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is big.
("Anne" "is" "big" "+")
int3
((triple1 ((((triple7) -> (rule4 % int3)) triple7) -> (rule6 % int2))) -> (rule1 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
((triple6 ((((triple5) -> (rule3 % int3))) -> (rule4 % int2))) -> (rule2 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Anne is white.
("Anne" "is" "white" "+")
int3
((((((triple3 triple7) -> (rule6 % int3))) -> (rule5 % int2)) triple5) -> (rule1 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
Anne is round.
("Anne" "is" "round" "+")
int3
((((triple5) -> (rule5 % int4)) ((((triple7) -> (rule4 % int3)) triple7) -> (rule6 % int2))) -> (rule1 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
Anne is big.
("Anne" "is" "big" "+")
int4
((((((triple3 triple7) -> (rule6 % int3))) -> (rule5 % int2)) ((triple3 triple7) -> (rule6 % int3))) -> (rule1 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
Anne is round.
("Anne" "is" "round" "+")
int3
((((((triple3 triple7) -> (rule6 % int4))) -> (rule5 % int3)) ((((triple7) -> (rule4 % int2)) triple7) -> (rule6 % int4))) -> (rule1 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Anne is big.
("Anne" "is" "big" "+")
int3
Anne is round.
("Anne" "is" "round" "+")
int4
((((((((triple7) -> (rule4 % int4)) triple7) -> (rule6 % int3))) -> (rule5 % int2)) triple5) -> (rule1 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
Anne is round.
("Anne" "is" "round" "+")
int3
Anne is green.
("Anne" "is" "green" "+")
int4
((((((((triple7) -> (rule4 % int4)) triple7) -> (rule6 % int3))) -> (rule5 % int2)) ((triple3 triple7) -> (rule6 % int3))) -> (rule1 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
Anne is round.
("Anne" "is" "round" "+")
int3
Anne is green.
("Anne" "is" "green" "+")
int4
((((((((triple7) -> (rule4 % int4)) triple7) -> (rule6 % int3))) -> (rule5 % int2)) ((((triple7) -> (rule4 % int4)) triple7) -> (rule6 % int3))) -> (rule1 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
Anne is round.
("Anne" "is" "round" "+")
int3
Anne is green.
("Anne" "is" "green" "+")
int4
Anne is round.
("Anne" "is" "round" "+")
triple5
((triple3 triple7) -> (rule6 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
((((triple7) -> (rule4 % int2)) triple7) -> (rule6 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Anne is smart.
("Anne" "is" "smart" "+")
triple6
Anne is white.
("Anne" "is" "white" "+")
triple7
((triple5) -> (rule3 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1