Dave is blue. Dave is kind. Dave is red. Dave is white. Dave is young. Erin is blue. Erin is green. Erin is kind. Erin is red. Erin is round. Erin is white. Fiona is blue. Fiona is red. Fiona is round. Fiona is white. If Dave is blue then Dave is kind. If something is white and green then it is young. All young, round things are kind. If something is blue and white then it is green. All round things are green. If Erin is kind then Erin is green.
Dave is blue.
("Dave" "is" "blue" "+")
Dave is kind.
("Dave" "is" "kind" "+")
Dave is red.
("Dave" "is" "red" "+")
Dave is white.
("Dave" "is" "white" "+")
Dave is young.
("Dave" "is" "young" "+")
Erin is blue.
("Erin" "is" "blue" "+")
Erin is green.
("Erin" "is" "green" "+")
Erin is kind.
("Erin" "is" "kind" "+")
Erin is red.
("Erin" "is" "red" "+")
Erin is round.
("Erin" "is" "round" "+")
Erin is white.
("Erin" "is" "white" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is red.
("Fiona" "is" "red" "+")
Fiona is round.
("Fiona" "is" "round" "+")
Fiona is white.
("Fiona" "is" "white" "+")
If Dave is blue then Dave is kind.
((("Dave" "is" "blue" "+")) -> ("Dave" "is" "kind" "+"))
If something is white and green then it is young.
((("something" "is" "white" "+") ("something" "is" "green" "+")) -> ("something" "is" "young" "+"))
All young, round things are kind.
((("something" "is" "young" "+") ("something" "is" "round" "+")) -> ("something" "is" "kind" "+"))
If something is blue and white then it is green.
((("something" "is" "blue" "+") ("something" "is" "white" "+")) -> ("something" "is" "green" "+"))
All round things are green.
((("something" "is" "round" "+")) -> ("something" "is" "green" "+"))
If Erin is kind then Erin is green.
((("Erin" "is" "kind" "+")) -> ("Erin" "is" "green" "+"))
Dave is blue.
True
1
proof
[(triple1)]
("Dave" "is" "blue" "+")
triple1
Erin is not blue.
False
1
inv-proof
[(triple6)]
("Erin" "is" "blue" "-")
triple6
Fiona is green.
True
2
proof
[(((triple14) -> rule5) OR ((triple12 triple15) -> rule4))]
("Fiona" "is" "green" "+")
((triple14) -> (rule5 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
((triple12 triple15) -> (rule4 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Dave is not green.
False
3
inv-proof
[(((triple1 triple4) -> rule4))]
("Dave" "is" "green" "-")
((triple1 triple4) -> (rule4 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Fiona is young.
True
4
proof
[(((triple15 ((triple14) -> rule5)) -> rule2) OR ((triple15 ((triple12 triple15) -> rule4)) -> rule2))]
("Fiona" "is" "young" "+")
((triple15 ((triple14) -> (rule5 % int2))) -> (rule2 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
((triple15 ((triple12 triple15) -> (rule4 % int2))) -> (rule2 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is not young.
False
4
inv-proof
[(((triple15 ((triple14) -> rule5)) -> rule2) OR ((triple15 ((triple12 triple15) -> rule4)) -> rule2))]
("Fiona" "is" "young" "-")
((triple15 ((triple14) -> (rule5 % int2))) -> (rule2 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
((triple15 ((triple12 triple15) -> (rule4 % int2))) -> (rule2 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is kind.
True
6
proof
[(((((triple15 ((triple14) -> rule5)) -> rule2) triple14) -> rule3) OR ((((triple15 ((triple12 triple15) -> rule4)) -> rule2) triple14) -> rule3))]
("Fiona" "is" "kind" "+")
((((triple15 ((triple14) -> (rule5 % int3))) -> (rule2 % int2)) triple14) -> (rule3 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
((((triple15 ((triple12 triple15) -> (rule4 % int3))) -> (rule2 % int2)) triple14) -> (rule3 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is not kind.
False
6
inv-proof
[(((((triple15 ((triple14) -> rule5)) -> rule2) triple14) -> rule3) OR ((((triple15 ((triple12 triple15) -> rule4)) -> rule2) triple14) -> rule3))]
("Fiona" "is" "kind" "-")
((((triple15 ((triple14) -> (rule5 % int3))) -> (rule2 % int2)) triple14) -> (rule3 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
((((triple15 ((triple12 triple15) -> (rule4 % int3))) -> (rule2 % int2)) triple14) -> (rule3 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
@0: Dave is blue.[(triple1)] Dave is kind.[(triple2 OR ((triple1) -> rule1))] Dave is red.[(triple3)] Dave is white.[(triple4)] Dave is young.[(triple5 OR ((triple4 ((triple1 triple4) -> rule4)) -> rule2))] Erin is blue.[(triple6)] Erin is green.[(triple7 OR ((triple10) -> rule5) OR ((triple8) -> rule6) OR ((triple6 triple11) -> rule4))] Erin is kind.[(triple8 OR ((((triple11 triple7) -> rule2) triple10) -> rule3) OR ((((triple11 ((triple10) -> rule5)) -> rule2) triple10) -> rule3) OR ((((triple11 ((triple6 triple11) -> rule4)) -> rule2) triple10) -> rule3))] Erin is red.[(triple9)] Erin is round.[(triple10)] Erin is white.[(triple11)] Fiona is blue.[(triple12)] Fiona is red.[(triple13)] Fiona is round.[(triple14)] Fiona is white.[(triple15)] @1: Dave is green.[(((triple1 triple4) -> rule4))] Erin is young.[(((triple11 triple7) -> rule2) OR ((triple11 ((triple10) -> rule5)) -> rule2) OR ((triple11 ((triple8) -> rule6)) -> rule2) OR ((triple11 ((triple6 triple11) -> rule4)) -> rule2))] Fiona is green.[(((triple14) -> rule5) OR ((triple12 triple15) -> rule4))] @2: Fiona is young.[(((triple15 ((triple14) -> rule5)) -> rule2) OR ((triple15 ((triple12 triple15) -> rule4)) -> rule2))] @3: Fiona is kind.[(((((triple15 ((triple14) -> rule5)) -> rule2) triple14) -> rule3) OR ((((triple15 ((triple12 triple15) -> rule4)) -> rule2) triple14) -> rule3))]
Dave is blue.
("Dave" "is" "blue" "+")
triple1
Dave is kind.
("Dave" "is" "kind" "+")
triple2
((triple1) -> (rule1 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is red.
("Dave" "is" "red" "+")
triple3
Dave is white.
("Dave" "is" "white" "+")
triple4
Dave is young.
("Dave" "is" "young" "+")
triple5
((triple4 ((triple1 triple4) -> (rule4 % int2))) -> (rule2 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
Erin is blue.
("Erin" "is" "blue" "+")
triple6
Erin is green.
("Erin" "is" "green" "+")
triple7
((triple10) -> (rule5 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
((triple8) -> (rule6 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
((triple6 triple11) -> (rule4 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
Erin is kind.
("Erin" "is" "kind" "+")
triple8
((((triple11 triple7) -> (rule2 % int2)) triple10) -> (rule3 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
int2
((((triple11 ((triple10) -> (rule5 % int3))) -> (rule2 % int2)) triple10) -> (rule3 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
int2
Erin is green.
("Erin" "is" "green" "+")
int3
((((triple11 ((triple6 triple11) -> (rule4 % int3))) -> (rule2 % int2)) triple10) -> (rule3 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
int2
Erin is green.
("Erin" "is" "green" "+")
int3
Erin is red.
("Erin" "is" "red" "+")
triple9
Erin is round.
("Erin" "is" "round" "+")
triple10
Erin is white.
("Erin" "is" "white" "+")
triple11
Fiona is blue.
("Fiona" "is" "blue" "+")
triple12
Fiona is red.
("Fiona" "is" "red" "+")
triple13
Fiona is round.
("Fiona" "is" "round" "+")
triple14
Fiona is white.
("Fiona" "is" "white" "+")
triple15
Dave is green.
("Dave" "is" "green" "+")
((triple1 triple4) -> (rule4 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
((triple11 triple7) -> (rule2 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
((triple11 ((triple10) -> (rule5 % int2))) -> (rule2 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
((triple11 ((triple8) -> (rule6 % int2))) -> (rule2 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
((triple11 ((triple6 triple11) -> (rule4 % int2))) -> (rule2 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
((triple14) -> (rule5 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
((triple12 triple15) -> (rule4 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
((triple15 ((triple14) -> (rule5 % int2))) -> (rule2 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
((triple15 ((triple12 triple15) -> (rule4 % int2))) -> (rule2 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
((((triple15 ((triple14) -> (rule5 % int3))) -> (rule2 % int2)) triple14) -> (rule3 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
((((triple15 ((triple12 triple15) -> (rule4 % int3))) -> (rule2 % int2)) triple14) -> (rule3 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3