Anne is cold. Fiona is red. Fiona is smart. Fiona is young. Gary is cold. Gary is furry. Gary is kind. Gary is red. Gary is young. Harry is furry. Cold people are red. Rough, red people are furry. All kind people are rough. If someone is red then they are smart. Smart people are kind. All young, red people are kind.
Anne is cold.
("Anne" "is" "cold" "+")
Fiona is red.
("Fiona" "is" "red" "+")
Fiona is smart.
("Fiona" "is" "smart" "+")
Fiona is young.
("Fiona" "is" "young" "+")
Gary is cold.
("Gary" "is" "cold" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is red.
("Gary" "is" "red" "+")
Gary is young.
("Gary" "is" "young" "+")
Harry is furry.
("Harry" "is" "furry" "+")
Cold people are red.
((("someone" "is" "cold" "+")) -> ("someone" "is" "red" "+"))
Rough, red people are furry.
((("someone" "is" "rough" "+") ("someone" "is" "red" "+")) -> ("someone" "is" "furry" "+"))
All kind people are rough.
((("someone" "is" "kind" "+")) -> ("someone" "is" "rough" "+"))
If someone is red then they are smart.
((("someone" "is" "red" "+")) -> ("someone" "is" "smart" "+"))
Smart people are kind.
((("someone" "is" "smart" "+")) -> ("someone" "is" "kind" "+"))
All young, red people are kind.
((("someone" "is" "young" "+") ("someone" "is" "red" "+")) -> ("someone" "is" "kind" "+"))
Gary is kind.
True
1
proof
[(triple7 OR ((triple9 triple8) -> rule6) OR ((((triple8) -> rule4)) -> rule5) OR ((triple9 ((triple5) -> rule1)) -> rule6) OR ((((((triple5) -> rule1)) -> rule4)) -> rule5))]
("Gary" "is" "kind" "+")
triple7
((triple9 triple8) -> (rule6 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
((((triple8) -> (rule4 % int2))) -> (rule5 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is smart.
("Gary" "is" "smart" "+")
int2
((triple9 ((triple5) -> (rule1 % int2))) -> (rule6 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
((((((triple5) -> (rule1 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is smart.
("Gary" "is" "smart" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
Fiona is not smart.
False
1
inv-proof
[(triple3 OR ((triple2) -> rule4))]
("Fiona" "is" "smart" "-")
triple3
((triple2) -> (rule4 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Anne is red.
True
2
proof
[(((triple1) -> rule1))]
("Anne" "is" "red" "+")
((triple1) -> (rule1 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Gary is not rough.
False
2
inv-proof
[(((triple7) -> rule3) OR ((((triple9 triple8) -> rule6)) -> rule3) OR ((((((triple8) -> rule4)) -> rule5)) -> rule3) OR ((((triple9 ((triple5) -> rule1)) -> rule6)) -> rule3) OR ((((((((triple5) -> rule1)) -> rule4)) -> rule5)) -> rule3))]
("Gary" "is" "rough" "-")
((triple7) -> (rule3 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
((((triple9 triple8) -> (rule6 % int2))) -> (rule3 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
((((((triple8) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule3 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
Gary is smart.
("Gary" "is" "smart" "+")
int3
((((triple9 ((triple5) -> (rule1 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
((((((((triple5) -> (rule1 % int4))) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule3 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
Gary is smart.
("Gary" "is" "smart" "+")
int3
Gary is red.
("Gary" "is" "red" "+")
int4
Anne is smart.
True
3
proof
[(((((triple1) -> rule1)) -> rule4))]
("Anne" "is" "smart" "+")
((((triple1) -> (rule1 % int2))) -> (rule4 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
int2
Fiona is not rough.
False
3
inv-proof
[(((((triple3) -> rule5)) -> rule3) OR ((((triple4 triple2) -> rule6)) -> rule3) OR ((((((triple2) -> rule4)) -> rule5)) -> rule3))]
("Fiona" "is" "rough" "-")
((((triple3) -> (rule5 % int2))) -> (rule3 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
((((triple4 triple2) -> (rule6 % int2))) -> (rule3 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
((((((triple2) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule3 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is smart.
("Fiona" "is" "smart" "+")
int3
Anne is kind.
True
4
proof
[(((((((triple1) -> rule1)) -> rule4)) -> rule5))]
("Anne" "is" "kind" "+")
((((((triple1) -> (rule1 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is smart.
("Anne" "is" "smart" "+")
int2
Anne is red.
("Anne" "is" "red" "+")
int3
Fiona is not furry.
False
5
inv-proof
[(((((((triple3) -> rule5)) -> rule3) triple2) -> rule2) OR ((((((triple4 triple2) -> rule6)) -> rule3) triple2) -> rule2) OR ((((((((triple2) -> rule4)) -> rule5)) -> rule3) triple2) -> rule2))]
("Fiona" "is" "furry" "-")
((((((triple3) -> (rule5 % int3))) -> (rule3 % int2)) triple2) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
int3
((((((triple4 triple2) -> (rule6 % int3))) -> (rule3 % int2)) triple2) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
int3
((((((((triple2) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule3 % int2)) triple2) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
int3
Fiona is smart.
("Fiona" "is" "smart" "+")
int4
Anne is rough.
True
5
proof
[(((((((((triple1) -> rule1)) -> rule4)) -> rule5)) -> rule3))]
("Anne" "is" "rough" "+")
((((((((triple1) -> (rule1 % int4))) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule3 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is kind.
("Anne" "is" "kind" "+")
int2
Anne is smart.
("Anne" "is" "smart" "+")
int3
Anne is red.
("Anne" "is" "red" "+")
int4
Anne is not rough.
False
5
inv-proof
[(((((((((triple1) -> rule1)) -> rule4)) -> rule5)) -> rule3))]
("Anne" "is" "rough" "-")
((((((((triple1) -> (rule1 % int4))) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule3 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is kind.
("Anne" "is" "kind" "+")
int2
Anne is smart.
("Anne" "is" "smart" "+")
int3
Anne is red.
("Anne" "is" "red" "+")
int4
Anne is furry.
True
8
proof
[(((((((((((triple1) -> rule1)) -> rule4)) -> rule5)) -> rule3) ((triple1) -> rule1)) -> rule2))]
("Anne" "is" "furry" "+")
((((((((((triple1) -> (rule1 % int5))) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule3 % int2)) ((triple1) -> (rule1 % int5))) -> (rule2 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is kind.
("Anne" "is" "kind" "+")
int3
Anne is smart.
("Anne" "is" "smart" "+")
int4
Anne is red.
("Anne" "is" "red" "+")
int5
Anne is not furry.
False
8
inv-proof
[(((((((((((triple1) -> rule1)) -> rule4)) -> rule5)) -> rule3) ((triple1) -> rule1)) -> rule2))]
("Anne" "is" "furry" "-")
((((((((((triple1) -> (rule1 % int5))) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule3 % int2)) ((triple1) -> (rule1 % int5))) -> (rule2 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is kind.
("Anne" "is" "kind" "+")
int3
Anne is smart.
("Anne" "is" "smart" "+")
int4
Anne is red.
("Anne" "is" "red" "+")
int5
Harry is not rough.
Unknown
inv-rconc
[@4: Harry is rough.[CWA. Example of deepest failure = (rule3 <- rule5 <- rule4 <- rule1 <- FAIL)]]
("Harry" "is" "rough" "-")
Harry is red.
Unknown
rconc
[@1: Harry is red.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Harry" "is" "red" "+")
Harry is not smart.
Unknown
inv-rconc
[@2: Harry is smart.[CWA. Example of deepest failure = (rule4 <- rule1 <- FAIL)]]
("Harry" "is" "smart" "-")
Harry is kind.
Unknown
rconc
[@3: Harry is kind.[CWA. Example of deepest failure = (rule5 <- rule4 <- rule1 <- FAIL)]]
("Harry" "is" "kind" "+")
Fiona is not cold.
Unknown
inv-random
[@0: Fiona is cold.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "cold" "-")
Harry is young.
Unknown
random
[@0: Harry is young.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "young" "+")
Harry is not cold.
Unknown
inv-random
[@0: Harry is cold.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "cold" "-")
Anne is young.
Unknown
random
[@0: Anne is young.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "young" "+")
@0: Anne is cold.[(triple1)] Fiona is red.[(triple2)] Fiona is smart.[(triple3 OR ((triple2) -> rule4))] Fiona is young.[(triple4)] Gary is cold.[(triple5)] Gary is furry.[(triple6 OR ((((triple7) -> rule3) triple8) -> rule2) OR ((((triple7) -> rule3) ((triple5) -> rule1)) -> rule2) OR ((((((triple9 triple8) -> rule6)) -> rule3) triple8) -> rule2) OR ((((((triple9 triple8) -> rule6)) -> rule3) ((triple5) -> rule1)) -> rule2) OR ((((((((triple8) -> rule4)) -> rule5)) -> rule3) triple8) -> rule2) OR ((((((triple9 ((triple5) -> rule1)) -> rule6)) -> rule3) triple8) -> rule2) OR ((((((((triple8) -> rule4)) -> rule5)) -> rule3) ((triple5) -> rule1)) -> rule2) OR ((((((triple9 ((triple5) -> rule1)) -> rule6)) -> rule3) ((triple5) -> rule1)) -> rule2) OR ((((((((((triple5) -> rule1)) -> rule4)) -> rule5)) -> rule3) triple8) -> rule2) OR ((((((((((triple5) -> rule1)) -> rule4)) -> rule5)) -> rule3) ((triple5) -> rule1)) -> rule2))] Gary is kind.[(triple7 OR ((triple9 triple8) -> rule6) OR ((((triple8) -> rule4)) -> rule5) OR ((triple9 ((triple5) -> rule1)) -> rule6) OR ((((((triple5) -> rule1)) -> rule4)) -> rule5))] Gary is red.[(triple8 OR ((triple5) -> rule1))] Gary is young.[(triple9)] Harry is furry.[(triple10)] @1: Anne is red.[(((triple1) -> rule1))] Fiona is kind.[(((triple3) -> rule5) OR ((triple4 triple2) -> rule6) OR ((((triple2) -> rule4)) -> rule5))] Gary is rough.[(((triple7) -> rule3) OR ((((triple9 triple8) -> rule6)) -> rule3) OR ((((((triple8) -> rule4)) -> rule5)) -> rule3) OR ((((triple9 ((triple5) -> rule1)) -> rule6)) -> rule3) OR ((((((((triple5) -> rule1)) -> rule4)) -> rule5)) -> rule3))] Gary is smart.[(((triple8) -> rule4) OR ((((triple5) -> rule1)) -> rule4))] @2: Anne is smart.[(((((triple1) -> rule1)) -> rule4))] Fiona is rough.[(((((triple3) -> rule5)) -> rule3) OR ((((triple4 triple2) -> rule6)) -> rule3) OR ((((((triple2) -> rule4)) -> rule5)) -> rule3))] @3: Anne is kind.[(((((((triple1) -> rule1)) -> rule4)) -> rule5))] Fiona is furry.[(((((((triple3) -> rule5)) -> rule3) triple2) -> rule2) OR ((((((triple4 triple2) -> rule6)) -> rule3) triple2) -> rule2) OR ((((((((triple2) -> rule4)) -> rule5)) -> rule3) triple2) -> rule2))] @4: Anne is rough.[(((((((((triple1) -> rule1)) -> rule4)) -> rule5)) -> rule3))] @5: Anne is furry.[(((((((((((triple1) -> rule1)) -> rule4)) -> rule5)) -> rule3) ((triple1) -> rule1)) -> rule2))]
Anne is cold.
("Anne" "is" "cold" "+")
triple1
Fiona is red.
("Fiona" "is" "red" "+")
triple2
Fiona is smart.
("Fiona" "is" "smart" "+")
triple3
((triple2) -> (rule4 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
triple4
Gary is cold.
("Gary" "is" "cold" "+")
triple5
Gary is furry.
("Gary" "is" "furry" "+")
triple6
((((triple7) -> (rule3 % int2)) triple8) -> (rule2 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
((((triple7) -> (rule3 % int3)) ((triple5) -> (rule1 % int2))) -> (rule2 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
((((((triple9 triple8) -> (rule6 % int3))) -> (rule3 % int2)) triple8) -> (rule2 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
((((((triple9 triple8) -> (rule6 % int4))) -> (rule3 % int3)) ((triple5) -> (rule1 % int2))) -> (rule2 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Gary is kind.
("Gary" "is" "kind" "+")
int4
((((((((triple8) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule3 % int2)) triple8) -> (rule2 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
Gary is smart.
("Gary" "is" "smart" "+")
int4
((((((triple9 ((triple5) -> (rule1 % int4))) -> (rule6 % int3))) -> (rule3 % int2)) triple8) -> (rule2 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
Gary is red.
("Gary" "is" "red" "+")
int4
((((((((triple8) -> (rule4 % int5))) -> (rule5 % int4))) -> (rule3 % int3)) ((triple5) -> (rule1 % int2))) -> (rule2 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Gary is kind.
("Gary" "is" "kind" "+")
int4
Gary is smart.
("Gary" "is" "smart" "+")
int5
((((((triple9 ((triple5) -> (rule1 % int4))) -> (rule6 % int3))) -> (rule3 % int2)) ((triple5) -> (rule1 % int4))) -> (rule2 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
Gary is red.
("Gary" "is" "red" "+")
int4
((((((((((triple5) -> (rule1 % int5))) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule3 % int2)) triple8) -> (rule2 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
Gary is smart.
("Gary" "is" "smart" "+")
int4
Gary is red.
("Gary" "is" "red" "+")
int5
((((((((((triple5) -> (rule1 % int5))) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule3 % int2)) ((triple5) -> (rule1 % int5))) -> (rule2 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
Gary is smart.
("Gary" "is" "smart" "+")
int4
Gary is red.
("Gary" "is" "red" "+")
int5
Gary is kind.
("Gary" "is" "kind" "+")
triple7
((triple9 triple8) -> (rule6 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
((((triple8) -> (rule4 % int2))) -> (rule5 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is smart.
("Gary" "is" "smart" "+")
int2
((triple9 ((triple5) -> (rule1 % int2))) -> (rule6 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
((((((triple5) -> (rule1 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is smart.
("Gary" "is" "smart" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
Gary is red.
("Gary" "is" "red" "+")
triple8
((triple5) -> (rule1 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
triple9
Harry is furry.
("Harry" "is" "furry" "+")
triple10
Anne is red.
("Anne" "is" "red" "+")
((triple1) -> (rule1 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
((triple3) -> (rule5 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
((triple4 triple2) -> (rule6 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
((((triple2) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
((triple7) -> (rule3 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
((((triple9 triple8) -> (rule6 % int2))) -> (rule3 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
((((((triple8) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule3 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
Gary is smart.
("Gary" "is" "smart" "+")
int3
((((triple9 ((triple5) -> (rule1 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
((((((((triple5) -> (rule1 % int4))) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule3 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
Gary is smart.
("Gary" "is" "smart" "+")
int3
Gary is red.
("Gary" "is" "red" "+")
int4
Gary is smart.
("Gary" "is" "smart" "+")
((triple8) -> (rule4 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
((((triple5) -> (rule1 % int2))) -> (rule4 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Anne is smart.
("Anne" "is" "smart" "+")
((((triple1) -> (rule1 % int2))) -> (rule4 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
int2
Fiona is rough.
("Fiona" "is" "rough" "+")
((((triple3) -> (rule5 % int2))) -> (rule3 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
((((triple4 triple2) -> (rule6 % int2))) -> (rule3 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
((((((triple2) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule3 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is smart.
("Fiona" "is" "smart" "+")
int3
Anne is kind.
("Anne" "is" "kind" "+")
((((((triple1) -> (rule1 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is smart.
("Anne" "is" "smart" "+")
int2
Anne is red.
("Anne" "is" "red" "+")
int3
Fiona is furry.
("Fiona" "is" "furry" "+")
((((((triple3) -> (rule5 % int3))) -> (rule3 % int2)) triple2) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
int3
((((((triple4 triple2) -> (rule6 % int3))) -> (rule3 % int2)) triple2) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
int3
((((((((triple2) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule3 % int2)) triple2) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
int3
Fiona is smart.
("Fiona" "is" "smart" "+")
int4
Anne is rough.
("Anne" "is" "rough" "+")
((((((((triple1) -> (rule1 % int4))) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule3 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is kind.
("Anne" "is" "kind" "+")
int2
Anne is smart.
("Anne" "is" "smart" "+")
int3
Anne is red.
("Anne" "is" "red" "+")
int4
Anne is furry.
("Anne" "is" "furry" "+")
((((((((((triple1) -> (rule1 % int5))) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule3 % int2)) ((triple1) -> (rule1 % int5))) -> (rule2 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is kind.
("Anne" "is" "kind" "+")
int3
Anne is smart.
("Anne" "is" "smart" "+")
int4
Anne is red.
("Anne" "is" "red" "+")
int5