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