Fiona is kind. Fiona is quiet. Fiona is red. Fiona is rough. Fiona is round. Fiona is smart. Fiona is young. Gary is kind. Gary is quiet. Gary is red. Gary is rough. Gary is round. Gary is not smart. Gary is young. If something is red and not quiet then it is kind. If something is kind then it is round. If something is red and not rough then it is round. Kind things are red. Quiet things are red. If Fiona is not red then Fiona is smart.
Fiona is kind.
("Fiona" "is" "kind" "+")
Fiona is quiet.
("Fiona" "is" "quiet" "+")
Fiona is red.
("Fiona" "is" "red" "+")
Fiona is rough.
("Fiona" "is" "rough" "+")
Fiona is round.
("Fiona" "is" "round" "+")
Fiona is smart.
("Fiona" "is" "smart" "+")
Fiona is young.
("Fiona" "is" "young" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is quiet.
("Gary" "is" "quiet" "+")
Gary is red.
("Gary" "is" "red" "+")
Gary is rough.
("Gary" "is" "rough" "+")
Gary is round.
("Gary" "is" "round" "+")
Gary is not smart.
("Gary" "is" "smart" "-")
Gary is young.
("Gary" "is" "young" "+")
If something is red and not quiet then it is kind.
((("something" "is" "red" "+") ("something" "is" "quiet" "~")) -> ("something" "is" "kind" "+"))
If something is kind then it is round.
((("something" "is" "kind" "+")) -> ("something" "is" "round" "+"))
If something is red and not rough then it is round.
((("something" "is" "red" "+") ("something" "is" "rough" "~")) -> ("something" "is" "round" "+"))
Kind things are red.
((("something" "is" "kind" "+")) -> ("something" "is" "red" "+"))
Quiet things are red.
((("something" "is" "quiet" "+")) -> ("something" "is" "red" "+"))
If Fiona is not red then Fiona is smart.
((("Fiona" "is" "red" "~")) -> ("Fiona" "is" "smart" "+"))
Fiona is young.
True
1
proof
[(triple7)]
("Fiona" "is" "young" "+")
triple7
Fiona is not round.
False
1
inv-proof
[(triple5 OR ((triple1) -> rule2))]
("Fiona" "is" "round" "-")
triple5
((triple1) -> (rule2 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
@0: Fiona is kind.[(triple1)] Fiona is quiet.[(triple2)] Fiona is red.[(triple3 OR ((triple1) -> rule4) OR ((triple2) -> rule5))] Fiona is rough.[(triple4)] Fiona is round.[(triple5 OR ((triple1) -> rule2))] Fiona is smart.[(triple6)] Fiona is young.[(triple7)] Gary is kind.[(triple8)] Gary is not smart.[(triple13)] Gary is quiet.[(triple9)] Gary is red.[(triple10 OR ((triple8) -> rule4) OR ((triple9) -> rule5))] Gary is rough.[(triple11)] Gary is round.[(triple12 OR ((triple8) -> rule2))] Gary is young.[(triple14)]
Fiona is kind.
("Fiona" "is" "kind" "+")
triple1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
triple2
Fiona is red.
("Fiona" "is" "red" "+")
triple3
((triple1) -> (rule4 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
((triple2) -> (rule5 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
triple4
Fiona is round.
("Fiona" "is" "round" "+")
triple5
((triple1) -> (rule2 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
triple6
Fiona is young.
("Fiona" "is" "young" "+")
triple7
Gary is kind.
("Gary" "is" "kind" "+")
triple8
Gary is not smart.
("Gary" "is" "smart" "-")
triple13
Gary is quiet.
("Gary" "is" "quiet" "+")
triple9
Gary is red.
("Gary" "is" "red" "+")
triple10
((triple8) -> (rule4 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
((triple9) -> (rule5 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
triple11
Gary is round.
("Gary" "is" "round" "+")
triple12
((triple8) -> (rule2 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
triple14