Anne is cold. Anne is furry. Anne is nice. Anne is white. Erin is blue. Erin is cold. Erin is furry. Erin is red. Erin is round. Erin is white. All round people are blue. Cold people are red. If someone is red then they are round.
Anne is cold.
("Anne" "is" "cold" "+")
Anne is furry.
("Anne" "is" "furry" "+")
Anne is nice.
("Anne" "is" "nice" "+")
Anne is white.
("Anne" "is" "white" "+")
Erin is blue.
("Erin" "is" "blue" "+")
Erin is cold.
("Erin" "is" "cold" "+")
Erin is furry.
("Erin" "is" "furry" "+")
Erin is red.
("Erin" "is" "red" "+")
Erin is round.
("Erin" "is" "round" "+")
Erin is white.
("Erin" "is" "white" "+")
All round people are blue.
((("someone" "is" "round" "+")) -> ("someone" "is" "blue" "+"))
Cold people are red.
((("someone" "is" "cold" "+")) -> ("someone" "is" "red" "+"))
If someone is red then they are round.
((("someone" "is" "red" "+")) -> ("someone" "is" "round" "+"))
Anne is cold.
True
1
proof
[(triple1)]
("Anne" "is" "cold" "+")
triple1
Anne is not nice.
False
1
inv-proof
[(triple3)]
("Anne" "is" "nice" "-")
triple3
Anne is red.
True
2
proof
[(((triple1) -> rule2))]
("Anne" "is" "red" "+")
((triple1) -> (rule2 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is not red.
False
2
inv-proof
[(((triple1) -> rule2))]
("Anne" "is" "red" "-")
((triple1) -> (rule2 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is round.
True
3
proof
[(((((triple1) -> rule2)) -> rule3))]
("Anne" "is" "round" "+")
((((triple1) -> (rule2 % int2))) -> (rule3 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
int2
Anne is not round.
False
3
inv-proof
[(((((triple1) -> rule2)) -> rule3))]
("Anne" "is" "round" "-")
((((triple1) -> (rule2 % int2))) -> (rule3 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
int2
Anne is blue.
True
4
proof
[(((((((triple1) -> rule2)) -> rule3)) -> rule1))]
("Anne" "is" "blue" "+")
((((((triple1) -> (rule2 % int3))) -> (rule3 % int2))) -> (rule1 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is red.
("Anne" "is" "red" "+")
int3
Anne is not blue.
False
4
inv-proof
[(((((((triple1) -> rule2)) -> rule3)) -> rule1))]
("Anne" "is" "blue" "-")
((((((triple1) -> (rule2 % int3))) -> (rule3 % int2))) -> (rule1 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is red.
("Anne" "is" "red" "+")
int3
@0: Anne is cold.[(triple1)] Anne is furry.[(triple2)] Anne is nice.[(triple3)] Anne is white.[(triple4)] Erin is blue.[(triple5 OR ((triple9) -> rule1) OR ((((triple8) -> rule3)) -> rule1) OR ((((((triple6) -> rule2)) -> rule3)) -> rule1))] Erin is cold.[(triple6)] Erin is furry.[(triple7)] Erin is red.[(triple8 OR ((triple6) -> rule2))] Erin is round.[(triple9 OR ((triple8) -> rule3) OR ((((triple6) -> rule2)) -> rule3))] Erin is white.[(triple10)] @1: Anne is red.[(((triple1) -> rule2))] @2: Anne is round.[(((((triple1) -> rule2)) -> rule3))] @3: Anne is blue.[(((((((triple1) -> rule2)) -> rule3)) -> rule1))]
Anne is cold.
("Anne" "is" "cold" "+")
triple1
Anne is furry.
("Anne" "is" "furry" "+")
triple2
Anne is nice.
("Anne" "is" "nice" "+")
triple3
Anne is white.
("Anne" "is" "white" "+")
triple4
Erin is blue.
("Erin" "is" "blue" "+")
triple5
((triple9) -> (rule1 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
((((triple8) -> (rule3 % int2))) -> (rule1 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
int2
((((((triple6) -> (rule2 % int3))) -> (rule3 % int2))) -> (rule1 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
int2
Erin is red.
("Erin" "is" "red" "+")
int3
Erin is cold.
("Erin" "is" "cold" "+")
triple6
Erin is furry.
("Erin" "is" "furry" "+")
triple7
Erin is red.
("Erin" "is" "red" "+")
triple8
((triple6) -> (rule2 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
triple9
((triple8) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
((((triple6) -> (rule2 % int2))) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is red.
("Erin" "is" "red" "+")
int2
Erin is white.
("Erin" "is" "white" "+")
triple10
Anne is red.
("Anne" "is" "red" "+")
((triple1) -> (rule2 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
((((triple1) -> (rule2 % int2))) -> (rule3 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
int2
Anne is blue.
("Anne" "is" "blue" "+")
((((((triple1) -> (rule2 % int3))) -> (rule3 % int2))) -> (rule1 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is red.
("Anne" "is" "red" "+")
int3