Fiona is furry. Fiona is green. Fiona is nice. Fiona is red. Fiona is round. Fiona is white. Fiona is young. Gary is furry. Gary is green. Gary is nice. Gary is red. Gary is round. Gary is white. Gary is young. Furry, young people are round. If Gary is young and Gary is red then Gary is nice. Green people are young.
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is green.
("Fiona" "is" "green" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is red.
("Fiona" "is" "red" "+")
Fiona is round.
("Fiona" "is" "round" "+")
Fiona is white.
("Fiona" "is" "white" "+")
Fiona is young.
("Fiona" "is" "young" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is green.
("Gary" "is" "green" "+")
Gary is nice.
("Gary" "is" "nice" "+")
Gary is red.
("Gary" "is" "red" "+")
Gary is round.
("Gary" "is" "round" "+")
Gary is white.
("Gary" "is" "white" "+")
Gary is young.
("Gary" "is" "young" "+")
Furry, young people are round.
((("someone" "is" "furry" "+") ("someone" "is" "young" "+")) -> ("someone" "is" "round" "+"))
If Gary is young and Gary is red then Gary is nice.
((("Gary" "is" "young" "+") ("Gary" "is" "red" "+")) -> ("Gary" "is" "nice" "+"))
Green people are young.
((("someone" "is" "green" "+")) -> ("someone" "is" "young" "+"))
Fiona is young.
True
1
proof
[(triple7 OR ((triple2) -> rule3))]
("Fiona" "is" "young" "+")
triple7
((triple2) -> (rule3 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is not nice.
False
1
inv-proof
[(triple3)]
("Fiona" "is" "nice" "-")
triple3
@0: Fiona is furry.[(triple1)] Fiona is green.[(triple2)] Fiona is nice.[(triple3)] Fiona is red.[(triple4)] Fiona is round.[(triple5 OR ((triple1 triple7) -> rule1) OR ((triple1 ((triple2) -> rule3)) -> rule1))] Fiona is white.[(triple6)] Fiona is young.[(triple7 OR ((triple2) -> rule3))] Gary is furry.[(triple8)] Gary is green.[(triple9)] Gary is nice.[(triple10 OR ((triple14 triple11) -> rule2) OR ((((triple9) -> rule3) triple11) -> rule2))] Gary is red.[(triple11)] Gary is round.[(triple12 OR ((triple8 triple14) -> rule1) OR ((triple8 ((triple9) -> rule3)) -> rule1))] Gary is white.[(triple13)] Gary is young.[(triple14 OR ((triple9) -> rule3))]
Fiona is furry.
("Fiona" "is" "furry" "+")
triple1
Fiona is green.
("Fiona" "is" "green" "+")
triple2
Fiona is nice.
("Fiona" "is" "nice" "+")
triple3
Fiona is red.
("Fiona" "is" "red" "+")
triple4
Fiona is round.
("Fiona" "is" "round" "+")
triple5
((triple1 triple7) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
((triple1 ((triple2) -> (rule3 % int2))) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
triple6
Fiona is young.
("Fiona" "is" "young" "+")
triple7
((triple2) -> (rule3 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
triple8
Gary is green.
("Gary" "is" "green" "+")
triple9
Gary is nice.
("Gary" "is" "nice" "+")
triple10
((triple14 triple11) -> (rule2 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
((((triple9) -> (rule3 % int2)) triple11) -> (rule2 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
triple11
Gary is round.
("Gary" "is" "round" "+")
triple12
((triple8 triple14) -> (rule1 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
((triple8 ((triple9) -> (rule3 % int2))) -> (rule1 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
int2
Gary is white.
("Gary" "is" "white" "+")
triple13
Gary is young.
("Gary" "is" "young" "+")
triple14
((triple9) -> (rule3 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1