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