Fiona is blue. Fiona is furry. Fiona is not kind. Fiona is nice. Fiona is red. Harry is blue. Harry is furry. Harry is green. Harry is kind. Harry is nice. Harry is red. Harry is white. Blue people are nice. If someone is nice and not red then they are furry. If someone is nice then they are white.
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is not kind.
("Fiona" "is" "kind" "-")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is red.
("Fiona" "is" "red" "+")
Harry is blue.
("Harry" "is" "blue" "+")
Harry is furry.
("Harry" "is" "furry" "+")
Harry is green.
("Harry" "is" "green" "+")
Harry is kind.
("Harry" "is" "kind" "+")
Harry is nice.
("Harry" "is" "nice" "+")
Harry is red.
("Harry" "is" "red" "+")
Harry is white.
("Harry" "is" "white" "+")
Blue people are nice.
((("someone" "is" "blue" "+")) -> ("someone" "is" "nice" "+"))
If someone is nice and not red then they are furry.
((("someone" "is" "nice" "+") ("someone" "is" "red" "~")) -> ("someone" "is" "furry" "+"))
If someone is nice then they are white.
((("someone" "is" "nice" "+")) -> ("someone" "is" "white" "+"))
Harry is red.
True
1
proof
[(triple11)]
("Harry" "is" "red" "+")
triple11
Harry is not blue.
False
1
inv-proof
[(triple6)]
("Harry" "is" "blue" "-")
triple6
Fiona is white.
True
2
proof
[(((triple4) -> rule3) OR ((((triple1) -> rule1)) -> rule3))]
("Fiona" "is" "white" "+")
((triple4) -> (rule3 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
((((triple1) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
Fiona is not white.
False
2
inv-proof
[(((triple4) -> rule3) OR ((((triple1) -> rule1)) -> rule3))]
("Fiona" "is" "white" "-")
((triple4) -> (rule3 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
((((triple1) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
@0: Fiona is blue.[(triple1)] Fiona is furry.[(triple2)] Fiona is nice.[(triple4 OR ((triple1) -> rule1))] Fiona is not kind.[(triple3)] Fiona is red.[(triple5)] Harry is blue.[(triple6)] Harry is furry.[(triple7)] Harry is green.[(triple8)] Harry is kind.[(triple9)] Harry is nice.[(triple10 OR ((triple6) -> rule1))] Harry is red.[(triple11)] Harry is white.[(triple12 OR ((triple10) -> rule3) OR ((((triple6) -> rule1)) -> rule3))] @1: Fiona is white.[(((triple4) -> rule3) OR ((((triple1) -> rule1)) -> rule3))]
Fiona is blue.
("Fiona" "is" "blue" "+")
triple1
Fiona is furry.
("Fiona" "is" "furry" "+")
triple2
Fiona is nice.
("Fiona" "is" "nice" "+")
triple4
((triple1) -> (rule1 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is not kind.
("Fiona" "is" "kind" "-")
triple3
Fiona is red.
("Fiona" "is" "red" "+")
triple5
Harry is blue.
("Harry" "is" "blue" "+")
triple6
Harry is furry.
("Harry" "is" "furry" "+")
triple7
Harry is green.
("Harry" "is" "green" "+")
triple8
Harry is kind.
("Harry" "is" "kind" "+")
triple9
Harry is nice.
("Harry" "is" "nice" "+")
triple10
((triple6) -> (rule1 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
triple11
Harry is white.
("Harry" "is" "white" "+")
triple12
((triple10) -> (rule3 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
((((triple6) -> (rule1 % int2))) -> (rule3 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
Harry is nice.
("Harry" "is" "nice" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
((triple4) -> (rule3 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
((((triple1) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2