Charlie is blue. Charlie is cold. Charlie is green. Charlie is quiet. Charlie is red. Charlie is round. Charlie is young. Erin is green. Fiona is blue. Fiona is red. Harry is cold. If something is red and round then it is quiet. If something is green then it is red. Young things are blue. All blue things are young. Young things are cold. Red things are blue. If something is young then it is round.
Charlie is blue.
("Charlie" "is" "blue" "+")
Charlie is cold.
("Charlie" "is" "cold" "+")
Charlie is green.
("Charlie" "is" "green" "+")
Charlie is quiet.
("Charlie" "is" "quiet" "+")
Charlie is red.
("Charlie" "is" "red" "+")
Charlie is round.
("Charlie" "is" "round" "+")
Charlie is young.
("Charlie" "is" "young" "+")
Erin is green.
("Erin" "is" "green" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is red.
("Fiona" "is" "red" "+")
Harry is cold.
("Harry" "is" "cold" "+")
If something is red and round then it is quiet.
((("something" "is" "red" "+") ("something" "is" "round" "+")) -> ("something" "is" "quiet" "+"))
If something is green then it is red.
((("something" "is" "green" "+")) -> ("something" "is" "red" "+"))
Young things are blue.
((("something" "is" "young" "+")) -> ("something" "is" "blue" "+"))
All blue things are young.
((("something" "is" "blue" "+")) -> ("something" "is" "young" "+"))
Young things are cold.
((("something" "is" "young" "+")) -> ("something" "is" "cold" "+"))
Red things are blue.
((("something" "is" "red" "+")) -> ("something" "is" "blue" "+"))
If something is young then it is round.
((("something" "is" "young" "+")) -> ("something" "is" "round" "+"))
Charlie is quiet.
True
1
proof
[(triple4 OR ((triple5 triple6) -> rule1) OR ((triple5 ((triple7) -> rule7)) -> rule1) OR ((((triple3) -> rule2) triple6) -> rule1) OR ((((triple3) -> rule2) ((triple7) -> rule7)) -> rule1) OR ((triple5 ((((triple1) -> rule4)) -> rule7)) -> rule1) OR ((((triple3) -> rule2) ((((triple1) -> rule4)) -> rule7)) -> rule1) OR ((triple5 ((((((triple5) -> rule6)) -> rule4)) -> rule7)) -> rule1) OR ((((triple3) -> rule2) ((((((triple5) -> rule6)) -> rule4)) -> rule7)) -> rule1) OR ((triple5 ((((((((triple3) -> rule2)) -> rule6)) -> rule4)) -> rule7)) -> rule1) OR ((((triple3) -> rule2) ((((((((triple3) -> rule2)) -> rule6)) -> rule4)) -> rule7)) -> rule1))]
("Charlie" "is" "quiet" "+")
triple4
((triple5 triple6) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
((triple5 ((triple7) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
((((triple3) -> (rule2 % int2)) triple6) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
int2
((((triple3) -> (rule2 % int3)) ((triple7) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is red.
("Charlie" "is" "red" "+")
int3
((triple5 ((((triple1) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
((((triple3) -> (rule2 % int4)) ((((triple1) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is red.
("Charlie" "is" "red" "+")
int4
((triple5 ((((((triple5) -> (rule6 % int4))) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is blue.
("Charlie" "is" "blue" "+")
int4
((((triple3) -> (rule2 % int5)) ((((((triple5) -> (rule6 % int4))) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is blue.
("Charlie" "is" "blue" "+")
int4
Charlie is red.
("Charlie" "is" "red" "+")
int5
((triple5 ((((((((triple3) -> (rule2 % int5))) -> (rule6 % int4))) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is blue.
("Charlie" "is" "blue" "+")
int4
Charlie is red.
("Charlie" "is" "red" "+")
int5
((((triple3) -> (rule2 % int5)) ((((((((triple3) -> (rule2 % int5))) -> (rule6 % int4))) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is blue.
("Charlie" "is" "blue" "+")
int4
Charlie is red.
("Charlie" "is" "red" "+")
int5
Charlie is not quiet.
False
1
inv-proof
[(triple4 OR ((triple5 triple6) -> rule1) OR ((triple5 ((triple7) -> rule7)) -> rule1) OR ((((triple3) -> rule2) triple6) -> rule1) OR ((((triple3) -> rule2) ((triple7) -> rule7)) -> rule1) OR ((triple5 ((((triple1) -> rule4)) -> rule7)) -> rule1) OR ((((triple3) -> rule2) ((((triple1) -> rule4)) -> rule7)) -> rule1) OR ((triple5 ((((((triple5) -> rule6)) -> rule4)) -> rule7)) -> rule1) OR ((((triple3) -> rule2) ((((((triple5) -> rule6)) -> rule4)) -> rule7)) -> rule1) OR ((triple5 ((((((((triple3) -> rule2)) -> rule6)) -> rule4)) -> rule7)) -> rule1) OR ((((triple3) -> rule2) ((((((((triple3) -> rule2)) -> rule6)) -> rule4)) -> rule7)) -> rule1))]
("Charlie" "is" "quiet" "-")
triple4
((triple5 triple6) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
((triple5 ((triple7) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
((((triple3) -> (rule2 % int2)) triple6) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
int2
((((triple3) -> (rule2 % int3)) ((triple7) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is red.
("Charlie" "is" "red" "+")
int3
((triple5 ((((triple1) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
((((triple3) -> (rule2 % int4)) ((((triple1) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is red.
("Charlie" "is" "red" "+")
int4
((triple5 ((((((triple5) -> (rule6 % int4))) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is blue.
("Charlie" "is" "blue" "+")
int4
((((triple3) -> (rule2 % int5)) ((((((triple5) -> (rule6 % int4))) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is blue.
("Charlie" "is" "blue" "+")
int4
Charlie is red.
("Charlie" "is" "red" "+")
int5
((triple5 ((((((((triple3) -> (rule2 % int5))) -> (rule6 % int4))) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is blue.
("Charlie" "is" "blue" "+")
int4
Charlie is red.
("Charlie" "is" "red" "+")
int5
((((triple3) -> (rule2 % int5)) ((((((((triple3) -> (rule2 % int5))) -> (rule6 % int4))) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is blue.
("Charlie" "is" "blue" "+")
int4
Charlie is red.
("Charlie" "is" "red" "+")
int5
Erin is red.
True
2
proof
[(((triple8) -> rule2))]
("Erin" "is" "red" "+")
((triple8) -> (rule2 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Fiona is not young.
False
2
inv-proof
[(((triple9) -> rule4) OR ((((triple10) -> rule6)) -> rule4))]
("Fiona" "is" "young" "-")
((triple9) -> (rule4 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
((((triple10) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is cold.
True
3
proof
[(((((triple9) -> rule4)) -> rule5) OR ((((((triple10) -> rule6)) -> rule4)) -> rule5))]
("Fiona" "is" "cold" "+")
((((triple9) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
((((((triple10) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
int3
Fiona is not cold.
False
3
inv-proof
[(((((triple9) -> rule4)) -> rule5) OR ((((((triple10) -> rule6)) -> rule4)) -> rule5))]
("Fiona" "is" "cold" "-")
((((triple9) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
((((((triple10) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
int3
Fiona is quiet.
True
5
proof
[(((triple10 ((((triple9) -> rule4)) -> rule7)) -> rule1) OR ((triple10 ((((((triple10) -> rule6)) -> rule4)) -> rule7)) -> rule1))]
("Fiona" "is" "quiet" "+")
((triple10 ((((triple9) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
int3
((triple10 ((((((triple10) -> (rule6 % int4))) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
int3
Fiona is blue.
("Fiona" "is" "blue" "+")
int4
Fiona is not quiet.
False
5
inv-proof
[(((triple10 ((((triple9) -> rule4)) -> rule7)) -> rule1) OR ((triple10 ((((((triple10) -> rule6)) -> rule4)) -> rule7)) -> rule1))]
("Fiona" "is" "quiet" "-")
((triple10 ((((triple9) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
int3
((triple10 ((((((triple10) -> (rule6 % int4))) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
int3
Fiona is blue.
("Fiona" "is" "blue" "+")
int4
Erin is cold.
True
5
proof
[(((((((((triple8) -> rule2)) -> rule6)) -> rule4)) -> rule5))]
("Erin" "is" "cold" "+")
((((((((triple8) -> (rule2 % int4))) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
Erin is cold.
("Erin" "is" "cold" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
int2
Erin is blue.
("Erin" "is" "blue" "+")
int3
Erin is red.
("Erin" "is" "red" "+")
int4
Erin is not round.
False
5
inv-proof
[(((((((((triple8) -> rule2)) -> rule6)) -> rule4)) -> rule7))]
("Erin" "is" "round" "-")
((((((((triple8) -> (rule2 % int4))) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule7 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
int2
Erin is blue.
("Erin" "is" "blue" "+")
int3
Erin is red.
("Erin" "is" "red" "+")
int4
Erin is quiet.
True
8
proof
[(((((triple8) -> rule2) ((((((((triple8) -> rule2)) -> rule6)) -> rule4)) -> rule7)) -> rule1))]
("Erin" "is" "quiet" "+")
((((triple8) -> (rule2 % int5)) ((((((((triple8) -> (rule2 % int5))) -> (rule6 % int4))) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
int2
Erin is young.
("Erin" "is" "young" "+")
int3
Erin is blue.
("Erin" "is" "blue" "+")
int4
Erin is red.
("Erin" "is" "red" "+")
int5
Erin is not quiet.
False
8
inv-proof
[(((((triple8) -> rule2) ((((((((triple8) -> rule2)) -> rule6)) -> rule4)) -> rule7)) -> rule1))]
("Erin" "is" "quiet" "-")
((((triple8) -> (rule2 % int5)) ((((((((triple8) -> (rule2 % int5))) -> (rule6 % int4))) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
int2
Erin is young.
("Erin" "is" "young" "+")
int3
Erin is blue.
("Erin" "is" "blue" "+")
int4
Erin is red.
("Erin" "is" "red" "+")
int5
Harry is not young.
Unknown
inv-rconc
[@3: Harry is young.[CWA. Example of deepest failure = (rule4 <- rule6 <- rule2 <- FAIL)]]
("Harry" "is" "young" "-")
Harry is red.
Unknown
rconc
[@1: Harry is red.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Harry" "is" "red" "+")
Harry is not blue.
Unknown
inv-rconc
[@4: Harry is blue.[CWA. Example of deepest failure = (rule3 <- rule4 <- rule6 <- rule2 <- FAIL)]]
("Harry" "is" "blue" "-")
Harry is round.
Unknown
rconc
[@4: Harry is round.[CWA. Example of deepest failure = (rule7 <- rule4 <- rule6 <- rule2 <- FAIL)]]
("Harry" "is" "round" "+")
Harry is not quiet.
Unknown
inv-rconc
[@2: Harry is quiet.[CWA. Example of deepest failure = (rule1 <- rule2 <- FAIL)]]
("Harry" "is" "quiet" "-")
Fiona is green.
Unknown
random
[@0: Fiona is green.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "green" "+")
@0: Charlie is blue.[(triple1 OR ((triple5) -> rule6) OR ((triple7) -> rule3) OR ((((triple3) -> rule2)) -> rule6))] Charlie is cold.[(triple2 OR ((triple7) -> rule5) OR ((((triple1) -> rule4)) -> rule5) OR ((((((triple5) -> rule6)) -> rule4)) -> rule5) OR ((((((((triple3) -> rule2)) -> rule6)) -> rule4)) -> rule5))] Charlie is green.[(triple3)] Charlie is quiet.[(triple4 OR ((triple5 triple6) -> rule1) OR ((triple5 ((triple7) -> rule7)) -> rule1) OR ((((triple3) -> rule2) triple6) -> rule1) OR ((((triple3) -> rule2) ((triple7) -> rule7)) -> rule1) OR ((triple5 ((((triple1) -> rule4)) -> rule7)) -> rule1) OR ((((triple3) -> rule2) ((((triple1) -> rule4)) -> rule7)) -> rule1) OR ((triple5 ((((((triple5) -> rule6)) -> rule4)) -> rule7)) -> rule1) OR ((((triple3) -> rule2) ((((((triple5) -> rule6)) -> rule4)) -> rule7)) -> rule1) OR ((triple5 ((((((((triple3) -> rule2)) -> rule6)) -> rule4)) -> rule7)) -> rule1) OR ((((triple3) -> rule2) ((((((((triple3) -> rule2)) -> rule6)) -> rule4)) -> rule7)) -> rule1))] Charlie is red.[(triple5 OR ((triple3) -> rule2))] Charlie is round.[(triple6 OR ((triple7) -> rule7) OR ((((triple1) -> rule4)) -> rule7) OR ((((((triple5) -> rule6)) -> rule4)) -> rule7) OR ((((((((triple3) -> rule2)) -> rule6)) -> rule4)) -> rule7))] Charlie is young.[(triple7 OR ((triple1) -> rule4) OR ((((triple5) -> rule6)) -> rule4) OR ((((((triple3) -> rule2)) -> rule6)) -> rule4))] Erin is green.[(triple8)] Fiona is blue.[(triple9 OR ((triple10) -> rule6))] Fiona is red.[(triple10)] Harry is cold.[(triple11)] @1: Erin is red.[(((triple8) -> rule2))] Fiona is young.[(((triple9) -> rule4) OR ((((triple10) -> rule6)) -> rule4))] @2: Erin is blue.[(((((triple8) -> rule2)) -> rule6))] Fiona is cold.[(((((triple9) -> rule4)) -> rule5) OR ((((((triple10) -> rule6)) -> rule4)) -> rule5))] Fiona is round.[(((((triple9) -> rule4)) -> rule7) OR ((((((triple10) -> rule6)) -> rule4)) -> rule7))] @3: Erin is young.[(((((((triple8) -> rule2)) -> rule6)) -> rule4))] Fiona is quiet.[(((triple10 ((((triple9) -> rule4)) -> rule7)) -> rule1) OR ((triple10 ((((((triple10) -> rule6)) -> rule4)) -> rule7)) -> rule1))] @4: Erin is cold.[(((((((((triple8) -> rule2)) -> rule6)) -> rule4)) -> rule5))] Erin is round.[(((((((((triple8) -> rule2)) -> rule6)) -> rule4)) -> rule7))] @5: Erin is quiet.[(((((triple8) -> rule2) ((((((((triple8) -> rule2)) -> rule6)) -> rule4)) -> rule7)) -> rule1))]
Charlie is blue.
("Charlie" "is" "blue" "+")
triple1
((triple5) -> (rule6 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
((triple7) -> (rule3 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
((((triple3) -> (rule2 % int2))) -> (rule6 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
triple2
((triple7) -> (rule5 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
((((triple1) -> (rule4 % int2))) -> (rule5 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
((((((triple5) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is blue.
("Charlie" "is" "blue" "+")
int3
((((((((triple3) -> (rule2 % int4))) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is blue.
("Charlie" "is" "blue" "+")
int3
Charlie is red.
("Charlie" "is" "red" "+")
int4
Charlie is green.
("Charlie" "is" "green" "+")
triple3
Charlie is quiet.
("Charlie" "is" "quiet" "+")
triple4
((triple5 triple6) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
((triple5 ((triple7) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
((((triple3) -> (rule2 % int2)) triple6) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
int2
((((triple3) -> (rule2 % int3)) ((triple7) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is red.
("Charlie" "is" "red" "+")
int3
((triple5 ((((triple1) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
((((triple3) -> (rule2 % int4)) ((((triple1) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is red.
("Charlie" "is" "red" "+")
int4
((triple5 ((((((triple5) -> (rule6 % int4))) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is blue.
("Charlie" "is" "blue" "+")
int4
((((triple3) -> (rule2 % int5)) ((((((triple5) -> (rule6 % int4))) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is blue.
("Charlie" "is" "blue" "+")
int4
Charlie is red.
("Charlie" "is" "red" "+")
int5
((triple5 ((((((((triple3) -> (rule2 % int5))) -> (rule6 % int4))) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is blue.
("Charlie" "is" "blue" "+")
int4
Charlie is red.
("Charlie" "is" "red" "+")
int5
((((triple3) -> (rule2 % int5)) ((((((((triple3) -> (rule2 % int5))) -> (rule6 % int4))) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is blue.
("Charlie" "is" "blue" "+")
int4
Charlie is red.
("Charlie" "is" "red" "+")
int5
Charlie is red.
("Charlie" "is" "red" "+")
triple5
((triple3) -> (rule2 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
triple6
((triple7) -> (rule7 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
((((triple1) -> (rule4 % int2))) -> (rule7 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
((((((triple5) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule7 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is blue.
("Charlie" "is" "blue" "+")
int3
((((((((triple3) -> (rule2 % int4))) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule7 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is blue.
("Charlie" "is" "blue" "+")
int3
Charlie is red.
("Charlie" "is" "red" "+")
int4
Charlie is young.
("Charlie" "is" "young" "+")
triple7
((triple1) -> (rule4 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
((((triple5) -> (rule6 % int2))) -> (rule4 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
((((((triple3) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
Charlie is red.
("Charlie" "is" "red" "+")
int3
Erin is green.
("Erin" "is" "green" "+")
triple8
Fiona is blue.
("Fiona" "is" "blue" "+")
triple9
((triple10) -> (rule6 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
triple10
Harry is cold.
("Harry" "is" "cold" "+")
triple11
Erin is red.
("Erin" "is" "red" "+")
((triple8) -> (rule2 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
((triple9) -> (rule4 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
((((triple10) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Erin is blue.
("Erin" "is" "blue" "+")
((((triple8) -> (rule2 % int2))) -> (rule6 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Erin is red.
("Erin" "is" "red" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
((((triple9) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
((((((triple10) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
int3
Fiona is round.
("Fiona" "is" "round" "+")
((((triple9) -> (rule4 % int2))) -> (rule7 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
((((((triple10) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule7 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
int3
Erin is young.
("Erin" "is" "young" "+")
((((((triple8) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
Erin is red.
("Erin" "is" "red" "+")
int3
Fiona is quiet.
("Fiona" "is" "quiet" "+")
((triple10 ((((triple9) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
int3
((triple10 ((((((triple10) -> (rule6 % int4))) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
int3
Fiona is blue.
("Fiona" "is" "blue" "+")
int4
Erin is cold.
("Erin" "is" "cold" "+")
((((((((triple8) -> (rule2 % int4))) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
Erin is cold.
("Erin" "is" "cold" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
int2
Erin is blue.
("Erin" "is" "blue" "+")
int3
Erin is red.
("Erin" "is" "red" "+")
int4
Erin is round.
("Erin" "is" "round" "+")
((((((((triple8) -> (rule2 % int4))) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule7 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
int2
Erin is blue.
("Erin" "is" "blue" "+")
int3
Erin is red.
("Erin" "is" "red" "+")
int4
Erin is quiet.
("Erin" "is" "quiet" "+")
((((triple8) -> (rule2 % int5)) ((((((((triple8) -> (rule2 % int5))) -> (rule6 % int4))) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
int2
Erin is young.
("Erin" "is" "young" "+")
int3
Erin is blue.
("Erin" "is" "blue" "+")
int4
Erin is red.
("Erin" "is" "red" "+")
int5