Anne is blue. Anne is furry. Anne is kind. Anne is not rough. Anne is young. Fiona is blue. Fiona is furry. Fiona is green. Fiona is not kind. Fiona is rough. Fiona is round. Fiona is young. All young, furry things are round. All green, blue things are furry.
Anne is blue.
("Anne" "is" "blue" "+")
Anne is furry.
("Anne" "is" "furry" "+")
Anne is kind.
("Anne" "is" "kind" "+")
Anne is not rough.
("Anne" "is" "rough" "-")
Anne is young.
("Anne" "is" "young" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is green.
("Fiona" "is" "green" "+")
Fiona is not kind.
("Fiona" "is" "kind" "-")
Fiona is rough.
("Fiona" "is" "rough" "+")
Fiona is round.
("Fiona" "is" "round" "+")
Fiona is young.
("Fiona" "is" "young" "+")
All young, furry things are round.
((("something" "is" "young" "+") ("something" "is" "furry" "+")) -> ("something" "is" "round" "+"))
All green, blue things are furry.
((("something" "is" "green" "+") ("something" "is" "blue" "+")) -> ("something" "is" "furry" "+"))
Fiona is not kind.
True
1
proof
[(triple9)]
("Fiona" "is" "kind" "-")
triple9
Fiona is not round.
False
1
inv-proof
[(triple11 OR ((triple12 triple7) -> rule1) OR ((triple12 ((triple8 triple6) -> rule2)) -> rule1))]
("Fiona" "is" "round" "-")
triple11
((triple12 triple7) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
((triple12 ((triple8 triple6) -> (rule2 % int2))) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
@0: Anne is blue.[(triple1)] Anne is furry.[(triple2)] Anne is kind.[(triple3)] Anne is not rough.[(triple4)] Anne is young.[(triple5)] Fiona is blue.[(triple6)] Fiona is furry.[(triple7 OR ((triple8 triple6) -> rule2))] Fiona is green.[(triple8)] Fiona is not kind.[(triple9)] Fiona is rough.[(triple10)] Fiona is round.[(triple11 OR ((triple12 triple7) -> rule1) OR ((triple12 ((triple8 triple6) -> rule2)) -> rule1))] Fiona is young.[(triple12)] @1: Anne is round.[(((triple5 triple2) -> rule1))]
Anne is blue.
("Anne" "is" "blue" "+")
triple1
Anne is furry.
("Anne" "is" "furry" "+")
triple2
Anne is kind.
("Anne" "is" "kind" "+")
triple3
Anne is not rough.
("Anne" "is" "rough" "-")
triple4
Anne is young.
("Anne" "is" "young" "+")
triple5
Fiona is blue.
("Fiona" "is" "blue" "+")
triple6
Fiona is furry.
("Fiona" "is" "furry" "+")
triple7
((triple8 triple6) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
triple8
Fiona is not kind.
("Fiona" "is" "kind" "-")
triple9
Fiona is rough.
("Fiona" "is" "rough" "+")
triple10
Fiona is round.
("Fiona" "is" "round" "+")
triple11
((triple12 triple7) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
((triple12 ((triple8 triple6) -> (rule2 % int2))) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
triple12
Anne is round.
("Anne" "is" "round" "+")
((triple5 triple2) -> (rule1 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1