Anne is furry. Anne is young. Bob is furry. Bob is green. Bob is red. Bob is smart. Gary is furry. Gary is green. Gary is nice. Gary is rough. Gary is smart. Harry is furry. If something is furry and green then it is red. If something is red and furry then it is rough. If Bob is smart then Bob is green. Furry, green things are red. Furry things are green. Nice things are smart. If something is rough then it is nice. If Bob is rough then Bob is green.
Anne is furry.
("Anne" "is" "furry" "+")
Anne is young.
("Anne" "is" "young" "+")
Bob is furry.
("Bob" "is" "furry" "+")
Bob is green.
("Bob" "is" "green" "+")
Bob is red.
("Bob" "is" "red" "+")
Bob is smart.
("Bob" "is" "smart" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is green.
("Gary" "is" "green" "+")
Gary is nice.
("Gary" "is" "nice" "+")
Gary is rough.
("Gary" "is" "rough" "+")
Gary is smart.
("Gary" "is" "smart" "+")
Harry is furry.
("Harry" "is" "furry" "+")
If something is furry and green then it is red.
((("something" "is" "furry" "+") ("something" "is" "green" "+")) -> ("something" "is" "red" "+"))
If something is red and furry then it is rough.
((("something" "is" "red" "+") ("something" "is" "furry" "+")) -> ("something" "is" "rough" "+"))
If Bob is smart then Bob is green.
((("Bob" "is" "smart" "+")) -> ("Bob" "is" "green" "+"))
Furry, green things are red.
((("something" "is" "furry" "+") ("something" "is" "green" "+")) -> ("something" "is" "red" "+"))
Furry things are green.
((("something" "is" "furry" "+")) -> ("something" "is" "green" "+"))
Nice things are smart.
((("something" "is" "nice" "+")) -> ("something" "is" "smart" "+"))
If something is rough then it is nice.
((("something" "is" "rough" "+")) -> ("something" "is" "nice" "+"))
If Bob is rough then Bob is green.
((("Bob" "is" "rough" "+")) -> ("Bob" "is" "green" "+"))
Gary is nice.
True
1
proof
[(triple9 OR ((triple10) -> rule7) OR ((((((triple7 triple8) -> rule1) triple7) -> rule2)) -> rule7) OR ((((((triple7 triple8) -> rule4) triple7) -> rule2)) -> rule7) OR ((((((triple7 ((triple7) -> rule5)) -> rule1) triple7) -> rule2)) -> rule7) OR ((((((triple7 ((triple7) -> rule5)) -> rule4) triple7) -> rule2)) -> rule7))]
("Gary" "is" "nice" "+")
triple9
((triple10) -> (rule7 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
((((((triple7 triple8) -> (rule1 % int3)) triple7) -> (rule2 % int2))) -> (rule7 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
((((((triple7 triple8) -> (rule4 % int3)) triple7) -> (rule2 % int2))) -> (rule7 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
((((((triple7 ((triple7) -> (rule5 % int4))) -> (rule1 % int3)) triple7) -> (rule2 % int2))) -> (rule7 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
Gary is green.
("Gary" "is" "green" "+")
int4
((((((triple7 ((triple7) -> (rule5 % int4))) -> (rule4 % int3)) triple7) -> (rule2 % int2))) -> (rule7 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
Gary is green.
("Gary" "is" "green" "+")
int4
Gary is not nice.
False
1
inv-proof
[(triple9 OR ((triple10) -> rule7) OR ((((((triple7 triple8) -> rule1) triple7) -> rule2)) -> rule7) OR ((((((triple7 triple8) -> rule4) triple7) -> rule2)) -> rule7) OR ((((((triple7 ((triple7) -> rule5)) -> rule1) triple7) -> rule2)) -> rule7) OR ((((((triple7 ((triple7) -> rule5)) -> rule4) triple7) -> rule2)) -> rule7))]
("Gary" "is" "nice" "-")
triple9
((triple10) -> (rule7 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
((((((triple7 triple8) -> (rule1 % int3)) triple7) -> (rule2 % int2))) -> (rule7 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
((((((triple7 triple8) -> (rule4 % int3)) triple7) -> (rule2 % int2))) -> (rule7 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
((((((triple7 ((triple7) -> (rule5 % int4))) -> (rule1 % int3)) triple7) -> (rule2 % int2))) -> (rule7 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
Gary is green.
("Gary" "is" "green" "+")
int4
((((((triple7 ((triple7) -> (rule5 % int4))) -> (rule4 % int3)) triple7) -> (rule2 % int2))) -> (rule7 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
Gary is green.
("Gary" "is" "green" "+")
int4
Bob is rough.
True
3
proof
[(((triple5 triple3) -> rule2) OR ((((triple3 triple4) -> rule1) triple3) -> rule2) OR ((((triple3 triple4) -> rule4) triple3) -> rule2) OR ((((triple3 ((triple3) -> rule5)) -> rule1) triple3) -> rule2) OR ((((triple3 ((triple3) -> rule5)) -> rule4) triple3) -> rule2) OR ((((triple3 ((triple6) -> rule3)) -> rule1) triple3) -> rule2) OR ((((triple3 ((triple6) -> rule3)) -> rule4) triple3) -> rule2))]
("Bob" "is" "rough" "+")
((triple5 triple3) -> (rule2 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
((((triple3 triple4) -> (rule1 % int2)) triple3) -> (rule2 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
((((triple3 triple4) -> (rule4 % int2)) triple3) -> (rule2 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
((((triple3 ((triple3) -> (rule5 % int3))) -> (rule1 % int2)) triple3) -> (rule2 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
Bob is green.
("Bob" "is" "green" "+")
int3
((((triple3 ((triple3) -> (rule5 % int3))) -> (rule4 % int2)) triple3) -> (rule2 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
Bob is green.
("Bob" "is" "green" "+")
int3
((((triple3 ((triple6) -> (rule3 % int3))) -> (rule1 % int2)) triple3) -> (rule2 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
Bob is green.
("Bob" "is" "green" "+")
int3
((((triple3 ((triple6) -> (rule3 % int3))) -> (rule4 % int2)) triple3) -> (rule2 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
Bob is green.
("Bob" "is" "green" "+")
int3
Gary is not red.
False
3
inv-proof
[(((triple7 triple8) -> rule1) OR ((triple7 triple8) -> rule4) OR ((triple7 ((triple7) -> rule5)) -> rule1) OR ((triple7 ((triple7) -> rule5)) -> rule4))]
("Gary" "is" "red" "-")
((triple7 triple8) -> (rule1 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
((triple7 triple8) -> (rule4 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
((triple7 ((triple7) -> (rule5 % int2))) -> (rule1 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
int2
((triple7 ((triple7) -> (rule5 % int2))) -> (rule4 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
int2
Bob is nice.
True
4
proof
[(((((triple5 triple3) -> rule2)) -> rule7) OR ((((((triple3 triple4) -> rule1) triple3) -> rule2)) -> rule7) OR ((((((triple3 triple4) -> rule4) triple3) -> rule2)) -> rule7) OR ((((((triple3 ((triple3) -> rule5)) -> rule1) triple3) -> rule2)) -> rule7) OR ((((((triple3 ((triple3) -> rule5)) -> rule4) triple3) -> rule2)) -> rule7) OR ((((((triple3 ((triple6) -> rule3)) -> rule1) triple3) -> rule2)) -> rule7) OR ((((((triple3 ((triple6) -> rule3)) -> rule4) triple3) -> rule2)) -> rule7))]
("Bob" "is" "nice" "+")
((((triple5 triple3) -> (rule2 % int2))) -> (rule7 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
((((((triple3 triple4) -> (rule1 % int3)) triple3) -> (rule2 % int2))) -> (rule7 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
Bob is red.
("Bob" "is" "red" "+")
int3
((((((triple3 triple4) -> (rule4 % int3)) triple3) -> (rule2 % int2))) -> (rule7 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
Bob is red.
("Bob" "is" "red" "+")
int3
((((((triple3 ((triple3) -> (rule5 % int4))) -> (rule1 % int3)) triple3) -> (rule2 % int2))) -> (rule7 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
Bob is red.
("Bob" "is" "red" "+")
int3
Bob is green.
("Bob" "is" "green" "+")
int4
((((((triple3 ((triple3) -> (rule5 % int4))) -> (rule4 % int3)) triple3) -> (rule2 % int2))) -> (rule7 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
Bob is red.
("Bob" "is" "red" "+")
int3
Bob is green.
("Bob" "is" "green" "+")
int4
((((((triple3 ((triple6) -> (rule3 % int4))) -> (rule1 % int3)) triple3) -> (rule2 % int2))) -> (rule7 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
Bob is red.
("Bob" "is" "red" "+")
int3
Bob is green.
("Bob" "is" "green" "+")
int4
((((((triple3 ((triple6) -> (rule3 % int4))) -> (rule4 % int3)) triple3) -> (rule2 % int2))) -> (rule7 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
Bob is red.
("Bob" "is" "red" "+")
int3
Bob is green.
("Bob" "is" "green" "+")
int4
Harry is not red.
False
4
inv-proof
[(((triple12 ((triple12) -> rule5)) -> rule1) OR ((triple12 ((triple12) -> rule5)) -> rule4))]
("Harry" "is" "red" "-")
((triple12 ((triple12) -> (rule5 % int2))) -> (rule1 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
int2
((triple12 ((triple12) -> (rule5 % int2))) -> (rule4 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
int2
Harry is rough.
True
6
proof
[(((((triple12 ((triple12) -> rule5)) -> rule1) triple12) -> rule2) OR ((((triple12 ((triple12) -> rule5)) -> rule4) triple12) -> rule2))]
("Harry" "is" "rough" "+")
((((triple12 ((triple12) -> (rule5 % int3))) -> (rule1 % int2)) triple12) -> (rule2 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
Harry is green.
("Harry" "is" "green" "+")
int3
((((triple12 ((triple12) -> (rule5 % int3))) -> (rule4 % int2)) triple12) -> (rule2 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
Harry is green.
("Harry" "is" "green" "+")
int3
Harry is not rough.
False
6
inv-proof
[(((((triple12 ((triple12) -> rule5)) -> rule1) triple12) -> rule2) OR ((((triple12 ((triple12) -> rule5)) -> rule4) triple12) -> rule2))]
("Harry" "is" "rough" "-")
((((triple12 ((triple12) -> (rule5 % int3))) -> (rule1 % int2)) triple12) -> (rule2 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
Harry is green.
("Harry" "is" "green" "+")
int3
((((triple12 ((triple12) -> (rule5 % int3))) -> (rule4 % int2)) triple12) -> (rule2 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
Harry is green.
("Harry" "is" "green" "+")
int3
Harry is nice.
True
7
proof
[(((((((triple12 ((triple12) -> rule5)) -> rule1) triple12) -> rule2)) -> rule7) OR ((((((triple12 ((triple12) -> rule5)) -> rule4) triple12) -> rule2)) -> rule7))]
("Harry" "is" "nice" "+")
((((((triple12 ((triple12) -> (rule5 % int4))) -> (rule1 % int3)) triple12) -> (rule2 % int2))) -> (rule7 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
Harry is red.
("Harry" "is" "red" "+")
int3
Harry is green.
("Harry" "is" "green" "+")
int4
((((((triple12 ((triple12) -> (rule5 % int4))) -> (rule4 % int3)) triple12) -> (rule2 % int2))) -> (rule7 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
Harry is red.
("Harry" "is" "red" "+")
int3
Harry is green.
("Harry" "is" "green" "+")
int4
Anne is not nice.
False
7
inv-proof
[(((((((triple1 ((triple1) -> rule5)) -> rule1) triple1) -> rule2)) -> rule7) OR ((((((triple1 ((triple1) -> rule5)) -> rule4) triple1) -> rule2)) -> rule7))]
("Anne" "is" "nice" "-")
((((((triple1 ((triple1) -> (rule5 % int4))) -> (rule1 % int3)) triple1) -> (rule2 % int2))) -> (rule7 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is red.
("Anne" "is" "red" "+")
int3
Anne is green.
("Anne" "is" "green" "+")
int4
((((((triple1 ((triple1) -> (rule5 % int4))) -> (rule4 % int3)) triple1) -> (rule2 % int2))) -> (rule7 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is red.
("Anne" "is" "red" "+")
int3
Anne is green.
("Anne" "is" "green" "+")
int4
Harry is smart.
True
8
proof
[(((((((((triple12 ((triple12) -> rule5)) -> rule1) triple12) -> rule2)) -> rule7)) -> rule6) OR ((((((((triple12 ((triple12) -> rule5)) -> rule4) triple12) -> rule2)) -> rule7)) -> rule6))]
("Harry" "is" "smart" "+")
((((((((triple12 ((triple12) -> (rule5 % int5))) -> (rule1 % int4)) triple12) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Harry is smart.
("Harry" "is" "smart" "+")
int1
Harry is nice.
("Harry" "is" "nice" "+")
int2
Harry is rough.
("Harry" "is" "rough" "+")
int3
Harry is red.
("Harry" "is" "red" "+")
int4
Harry is green.
("Harry" "is" "green" "+")
int5
((((((((triple12 ((triple12) -> (rule5 % int5))) -> (rule4 % int4)) triple12) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Harry is smart.
("Harry" "is" "smart" "+")
int1
Harry is nice.
("Harry" "is" "nice" "+")
int2
Harry is rough.
("Harry" "is" "rough" "+")
int3
Harry is red.
("Harry" "is" "red" "+")
int4
Harry is green.
("Harry" "is" "green" "+")
int5
Harry is not smart.
False
8
inv-proof
[(((((((((triple12 ((triple12) -> rule5)) -> rule1) triple12) -> rule2)) -> rule7)) -> rule6) OR ((((((((triple12 ((triple12) -> rule5)) -> rule4) triple12) -> rule2)) -> rule7)) -> rule6))]
("Harry" "is" "smart" "-")
((((((((triple12 ((triple12) -> (rule5 % int5))) -> (rule1 % int4)) triple12) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Harry is smart.
("Harry" "is" "smart" "+")
int1
Harry is nice.
("Harry" "is" "nice" "+")
int2
Harry is rough.
("Harry" "is" "rough" "+")
int3
Harry is red.
("Harry" "is" "red" "+")
int4
Harry is green.
("Harry" "is" "green" "+")
int5
((((((((triple12 ((triple12) -> (rule5 % int5))) -> (rule4 % int4)) triple12) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Harry is smart.
("Harry" "is" "smart" "+")
int1
Harry is nice.
("Harry" "is" "nice" "+")
int2
Harry is rough.
("Harry" "is" "rough" "+")
int3
Harry is red.
("Harry" "is" "red" "+")
int4
Harry is green.
("Harry" "is" "green" "+")
int5
Gary is not young.
Unknown
inv-random
[@0: Gary is young.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "young" "-")
Harry is young.
Unknown
random
[@0: Harry is young.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "young" "+")
@0: Anne is furry.[(triple1)] Anne is young.[(triple2)] Bob is furry.[(triple3)] Bob is green.[(triple4 OR ((triple3) -> rule5) OR ((triple6) -> rule3) OR ((((triple5 triple3) -> rule2)) -> rule8) OR ((((((((triple5 triple3) -> rule2)) -> rule7)) -> rule6)) -> rule3))] Bob is red.[(triple5 OR ((triple3 triple4) -> rule1) OR ((triple3 triple4) -> rule4) OR ((triple3 ((triple3) -> rule5)) -> rule1) OR ((triple3 ((triple3) -> rule5)) -> rule4) OR ((triple3 ((triple6) -> rule3)) -> rule1) OR ((triple3 ((triple6) -> rule3)) -> rule4))] Bob is smart.[(triple6 OR ((((((triple5 triple3) -> rule2)) -> rule7)) -> rule6) OR ((((((((triple3 triple4) -> rule1) triple3) -> rule2)) -> rule7)) -> rule6) OR ((((((((triple3 triple4) -> rule4) triple3) -> rule2)) -> rule7)) -> rule6) OR ((((((((triple3 ((triple3) -> rule5)) -> rule1) triple3) -> rule2)) -> rule7)) -> rule6) OR ((((((((triple3 ((triple3) -> rule5)) -> rule4) triple3) -> rule2)) -> rule7)) -> rule6))] Gary is furry.[(triple7)] Gary is green.[(triple8 OR ((triple7) -> rule5))] Gary is nice.[(triple9 OR ((triple10) -> rule7) OR ((((((triple7 triple8) -> rule1) triple7) -> rule2)) -> rule7) OR ((((((triple7 triple8) -> rule4) triple7) -> rule2)) -> rule7) OR ((((((triple7 ((triple7) -> rule5)) -> rule1) triple7) -> rule2)) -> rule7) OR ((((((triple7 ((triple7) -> rule5)) -> rule4) triple7) -> rule2)) -> rule7))] Gary is rough.[(triple10 OR ((((triple7 triple8) -> rule1) triple7) -> rule2) OR ((((triple7 triple8) -> rule4) triple7) -> rule2) OR ((((triple7 ((triple7) -> rule5)) -> rule1) triple7) -> rule2) OR ((((triple7 ((triple7) -> rule5)) -> rule4) triple7) -> rule2))] Gary is smart.[(triple11 OR ((triple9) -> rule6) OR ((((triple10) -> rule7)) -> rule6) OR ((((((((triple7 triple8) -> rule1) triple7) -> rule2)) -> rule7)) -> rule6) OR ((((((((triple7 triple8) -> rule4) triple7) -> rule2)) -> rule7)) -> rule6) OR ((((((((triple7 ((triple7) -> rule5)) -> rule1) triple7) -> rule2)) -> rule7)) -> rule6) OR ((((((((triple7 ((triple7) -> rule5)) -> rule4) triple7) -> rule2)) -> rule7)) -> rule6))] Harry is furry.[(triple12)] @1: Anne is green.[(((triple1) -> rule5))] Bob is rough.[(((triple5 triple3) -> rule2) OR ((((triple3 triple4) -> rule1) triple3) -> rule2) OR ((((triple3 triple4) -> rule4) triple3) -> rule2) OR ((((triple3 ((triple3) -> rule5)) -> rule1) triple3) -> rule2) OR ((((triple3 ((triple3) -> rule5)) -> rule4) triple3) -> rule2) OR ((((triple3 ((triple6) -> rule3)) -> rule1) triple3) -> rule2) OR ((((triple3 ((triple6) -> rule3)) -> rule4) triple3) -> rule2))] Gary is red.[(((triple7 triple8) -> rule1) OR ((triple7 triple8) -> rule4) OR ((triple7 ((triple7) -> rule5)) -> rule1) OR ((triple7 ((triple7) -> rule5)) -> rule4))] Harry is green.[(((triple12) -> rule5))] @2: Anne is red.[(((triple1 ((triple1) -> rule5)) -> rule1) OR ((triple1 ((triple1) -> rule5)) -> rule4))] Bob is nice.[(((((triple5 triple3) -> rule2)) -> rule7) OR ((((((triple3 triple4) -> rule1) triple3) -> rule2)) -> rule7) OR ((((((triple3 triple4) -> rule4) triple3) -> rule2)) -> rule7) OR ((((((triple3 ((triple3) -> rule5)) -> rule1) triple3) -> rule2)) -> rule7) OR ((((((triple3 ((triple3) -> rule5)) -> rule4) triple3) -> rule2)) -> rule7) OR ((((((triple3 ((triple6) -> rule3)) -> rule1) triple3) -> rule2)) -> rule7) OR ((((((triple3 ((triple6) -> rule3)) -> rule4) triple3) -> rule2)) -> rule7))] Harry is red.[(((triple12 ((triple12) -> rule5)) -> rule1) OR ((triple12 ((triple12) -> rule5)) -> rule4))] @3: Anne is rough.[(((((triple1 ((triple1) -> rule5)) -> rule1) triple1) -> rule2) OR ((((triple1 ((triple1) -> rule5)) -> rule4) triple1) -> rule2))] Harry is rough.[(((((triple12 ((triple12) -> rule5)) -> rule1) triple12) -> rule2) OR ((((triple12 ((triple12) -> rule5)) -> rule4) triple12) -> rule2))] @4: Anne is nice.[(((((((triple1 ((triple1) -> rule5)) -> rule1) triple1) -> rule2)) -> rule7) OR ((((((triple1 ((triple1) -> rule5)) -> rule4) triple1) -> rule2)) -> rule7))] Harry is nice.[(((((((triple12 ((triple12) -> rule5)) -> rule1) triple12) -> rule2)) -> rule7) OR ((((((triple12 ((triple12) -> rule5)) -> rule4) triple12) -> rule2)) -> rule7))] @5: Anne is smart.[(((((((((triple1 ((triple1) -> rule5)) -> rule1) triple1) -> rule2)) -> rule7)) -> rule6) OR ((((((((triple1 ((triple1) -> rule5)) -> rule4) triple1) -> rule2)) -> rule7)) -> rule6))] Harry is smart.[(((((((((triple12 ((triple12) -> rule5)) -> rule1) triple12) -> rule2)) -> rule7)) -> rule6) OR ((((((((triple12 ((triple12) -> rule5)) -> rule4) triple12) -> rule2)) -> rule7)) -> rule6))]
Anne is furry.
("Anne" "is" "furry" "+")
triple1
Anne is young.
("Anne" "is" "young" "+")
triple2
Bob is furry.
("Bob" "is" "furry" "+")
triple3
Bob is green.
("Bob" "is" "green" "+")
triple4
((triple3) -> (rule5 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
((triple6) -> (rule3 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
((((triple5 triple3) -> (rule2 % int2))) -> (rule8 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
((((((((triple5 triple3) -> (rule2 % int4))) -> (rule7 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
Bob is smart.
("Bob" "is" "smart" "+")
int2
Bob is nice.
("Bob" "is" "nice" "+")
int3
Bob is rough.
("Bob" "is" "rough" "+")
int4
Bob is red.
("Bob" "is" "red" "+")
triple5
((triple3 triple4) -> (rule1 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
((triple3 triple4) -> (rule4 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
((triple3 ((triple3) -> (rule5 % int2))) -> (rule1 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Bob is green.
("Bob" "is" "green" "+")
int2
((triple3 ((triple3) -> (rule5 % int2))) -> (rule4 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Bob is green.
("Bob" "is" "green" "+")
int2
((triple3 ((triple6) -> (rule3 % int2))) -> (rule1 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Bob is green.
("Bob" "is" "green" "+")
int2
((triple3 ((triple6) -> (rule3 % int2))) -> (rule4 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Bob is green.
("Bob" "is" "green" "+")
int2
Bob is smart.
("Bob" "is" "smart" "+")
triple6
((((((triple5 triple3) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
Bob is nice.
("Bob" "is" "nice" "+")
int2
Bob is rough.
("Bob" "is" "rough" "+")
int3
((((((((triple3 triple4) -> (rule1 % int4)) triple3) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
Bob is nice.
("Bob" "is" "nice" "+")
int2
Bob is rough.
("Bob" "is" "rough" "+")
int3
Bob is red.
("Bob" "is" "red" "+")
int4
((((((((triple3 triple4) -> (rule4 % int4)) triple3) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
Bob is nice.
("Bob" "is" "nice" "+")
int2
Bob is rough.
("Bob" "is" "rough" "+")
int3
Bob is red.
("Bob" "is" "red" "+")
int4
((((((((triple3 ((triple3) -> (rule5 % int5))) -> (rule1 % int4)) triple3) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
Bob is nice.
("Bob" "is" "nice" "+")
int2
Bob is rough.
("Bob" "is" "rough" "+")
int3
Bob is red.
("Bob" "is" "red" "+")
int4
Bob is green.
("Bob" "is" "green" "+")
int5
((((((((triple3 ((triple3) -> (rule5 % int5))) -> (rule4 % int4)) triple3) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
Bob is nice.
("Bob" "is" "nice" "+")
int2
Bob is rough.
("Bob" "is" "rough" "+")
int3
Bob is red.
("Bob" "is" "red" "+")
int4
Bob is green.
("Bob" "is" "green" "+")
int5
Gary is furry.
("Gary" "is" "furry" "+")
triple7
Gary is green.
("Gary" "is" "green" "+")
triple8
((triple7) -> (rule5 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
triple9
((triple10) -> (rule7 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
((((((triple7 triple8) -> (rule1 % int3)) triple7) -> (rule2 % int2))) -> (rule7 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
((((((triple7 triple8) -> (rule4 % int3)) triple7) -> (rule2 % int2))) -> (rule7 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
((((((triple7 ((triple7) -> (rule5 % int4))) -> (rule1 % int3)) triple7) -> (rule2 % int2))) -> (rule7 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
Gary is green.
("Gary" "is" "green" "+")
int4
((((((triple7 ((triple7) -> (rule5 % int4))) -> (rule4 % int3)) triple7) -> (rule2 % int2))) -> (rule7 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
Gary is green.
("Gary" "is" "green" "+")
int4
Gary is rough.
("Gary" "is" "rough" "+")
triple10
((((triple7 triple8) -> (rule1 % int2)) triple7) -> (rule2 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
((((triple7 triple8) -> (rule4 % int2)) triple7) -> (rule2 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
((((triple7 ((triple7) -> (rule5 % int3))) -> (rule1 % int2)) triple7) -> (rule2 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
int3
((((triple7 ((triple7) -> (rule5 % int3))) -> (rule4 % int2)) triple7) -> (rule2 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
int3
Gary is smart.
("Gary" "is" "smart" "+")
triple11
((triple9) -> (rule6 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
((((triple10) -> (rule7 % int2))) -> (rule6 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
int2
((((((((triple7 triple8) -> (rule1 % int4)) triple7) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Gary is red.
("Gary" "is" "red" "+")
int4
((((((((triple7 triple8) -> (rule4 % int4)) triple7) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Gary is red.
("Gary" "is" "red" "+")
int4
((((((((triple7 ((triple7) -> (rule5 % int5))) -> (rule1 % int4)) triple7) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Gary is red.
("Gary" "is" "red" "+")
int4
Gary is green.
("Gary" "is" "green" "+")
int5
((((((((triple7 ((triple7) -> (rule5 % int5))) -> (rule4 % int4)) triple7) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Gary is red.
("Gary" "is" "red" "+")
int4
Gary is green.
("Gary" "is" "green" "+")
int5
Harry is furry.
("Harry" "is" "furry" "+")
triple12
Anne is green.
("Anne" "is" "green" "+")
((triple1) -> (rule5 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
((triple5 triple3) -> (rule2 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
((((triple3 triple4) -> (rule1 % int2)) triple3) -> (rule2 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
((((triple3 triple4) -> (rule4 % int2)) triple3) -> (rule2 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
((((triple3 ((triple3) -> (rule5 % int3))) -> (rule1 % int2)) triple3) -> (rule2 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
Bob is green.
("Bob" "is" "green" "+")
int3
((((triple3 ((triple3) -> (rule5 % int3))) -> (rule4 % int2)) triple3) -> (rule2 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
Bob is green.
("Bob" "is" "green" "+")
int3
((((triple3 ((triple6) -> (rule3 % int3))) -> (rule1 % int2)) triple3) -> (rule2 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
Bob is green.
("Bob" "is" "green" "+")
int3
((((triple3 ((triple6) -> (rule3 % int3))) -> (rule4 % int2)) triple3) -> (rule2 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
Bob is green.
("Bob" "is" "green" "+")
int3
Gary is red.
("Gary" "is" "red" "+")
((triple7 triple8) -> (rule1 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
((triple7 triple8) -> (rule4 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
((triple7 ((triple7) -> (rule5 % int2))) -> (rule1 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
int2
((triple7 ((triple7) -> (rule5 % int2))) -> (rule4 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
int2
Harry is green.
("Harry" "is" "green" "+")
((triple12) -> (rule5 % int1))
Harry is green.
("Harry" "is" "green" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
((triple1 ((triple1) -> (rule5 % int2))) -> (rule1 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
((triple1 ((triple1) -> (rule5 % int2))) -> (rule4 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Bob is nice.
("Bob" "is" "nice" "+")
((((triple5 triple3) -> (rule2 % int2))) -> (rule7 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
((((((triple3 triple4) -> (rule1 % int3)) triple3) -> (rule2 % int2))) -> (rule7 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
Bob is red.
("Bob" "is" "red" "+")
int3
((((((triple3 triple4) -> (rule4 % int3)) triple3) -> (rule2 % int2))) -> (rule7 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
Bob is red.
("Bob" "is" "red" "+")
int3
((((((triple3 ((triple3) -> (rule5 % int4))) -> (rule1 % int3)) triple3) -> (rule2 % int2))) -> (rule7 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
Bob is red.
("Bob" "is" "red" "+")
int3
Bob is green.
("Bob" "is" "green" "+")
int4
((((((triple3 ((triple3) -> (rule5 % int4))) -> (rule4 % int3)) triple3) -> (rule2 % int2))) -> (rule7 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
Bob is red.
("Bob" "is" "red" "+")
int3
Bob is green.
("Bob" "is" "green" "+")
int4
((((((triple3 ((triple6) -> (rule3 % int4))) -> (rule1 % int3)) triple3) -> (rule2 % int2))) -> (rule7 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
Bob is red.
("Bob" "is" "red" "+")
int3
Bob is green.
("Bob" "is" "green" "+")
int4
((((((triple3 ((triple6) -> (rule3 % int4))) -> (rule4 % int3)) triple3) -> (rule2 % int2))) -> (rule7 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
Bob is red.
("Bob" "is" "red" "+")
int3
Bob is green.
("Bob" "is" "green" "+")
int4
Harry is red.
("Harry" "is" "red" "+")
((triple12 ((triple12) -> (rule5 % int2))) -> (rule1 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
int2
((triple12 ((triple12) -> (rule5 % int2))) -> (rule4 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
int2
Anne is rough.
("Anne" "is" "rough" "+")
((((triple1 ((triple1) -> (rule5 % int3))) -> (rule1 % int2)) triple1) -> (rule2 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
((((triple1 ((triple1) -> (rule5 % int3))) -> (rule4 % int2)) triple1) -> (rule2 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
Harry is rough.
("Harry" "is" "rough" "+")
((((triple12 ((triple12) -> (rule5 % int3))) -> (rule1 % int2)) triple12) -> (rule2 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
Harry is green.
("Harry" "is" "green" "+")
int3
((((triple12 ((triple12) -> (rule5 % int3))) -> (rule4 % int2)) triple12) -> (rule2 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
Harry is green.
("Harry" "is" "green" "+")
int3
Anne is nice.
("Anne" "is" "nice" "+")
((((((triple1 ((triple1) -> (rule5 % int4))) -> (rule1 % int3)) triple1) -> (rule2 % int2))) -> (rule7 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is red.
("Anne" "is" "red" "+")
int3
Anne is green.
("Anne" "is" "green" "+")
int4
((((((triple1 ((triple1) -> (rule5 % int4))) -> (rule4 % int3)) triple1) -> (rule2 % int2))) -> (rule7 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is red.
("Anne" "is" "red" "+")
int3
Anne is green.
("Anne" "is" "green" "+")
int4
Harry is nice.
("Harry" "is" "nice" "+")
((((((triple12 ((triple12) -> (rule5 % int4))) -> (rule1 % int3)) triple12) -> (rule2 % int2))) -> (rule7 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
Harry is red.
("Harry" "is" "red" "+")
int3
Harry is green.
("Harry" "is" "green" "+")
int4
((((((triple12 ((triple12) -> (rule5 % int4))) -> (rule4 % int3)) triple12) -> (rule2 % int2))) -> (rule7 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
Harry is red.
("Harry" "is" "red" "+")
int3
Harry is green.
("Harry" "is" "green" "+")
int4
Anne is smart.
("Anne" "is" "smart" "+")
((((((((triple1 ((triple1) -> (rule5 % int5))) -> (rule1 % int4)) triple1) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Anne is nice.
("Anne" "is" "nice" "+")
int2
Anne is rough.
("Anne" "is" "rough" "+")
int3
Anne is red.
("Anne" "is" "red" "+")
int4
Anne is green.
("Anne" "is" "green" "+")
int5
((((((((triple1 ((triple1) -> (rule5 % int5))) -> (rule4 % int4)) triple1) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Anne is nice.
("Anne" "is" "nice" "+")
int2
Anne is rough.
("Anne" "is" "rough" "+")
int3
Anne is red.
("Anne" "is" "red" "+")
int4
Anne is green.
("Anne" "is" "green" "+")
int5
Harry is smart.
("Harry" "is" "smart" "+")
((((((((triple12 ((triple12) -> (rule5 % int5))) -> (rule1 % int4)) triple12) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Harry is smart.
("Harry" "is" "smart" "+")
int1
Harry is nice.
("Harry" "is" "nice" "+")
int2
Harry is rough.
("Harry" "is" "rough" "+")
int3
Harry is red.
("Harry" "is" "red" "+")
int4
Harry is green.
("Harry" "is" "green" "+")
int5
((((((((triple12 ((triple12) -> (rule5 % int5))) -> (rule4 % int4)) triple12) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Harry is smart.
("Harry" "is" "smart" "+")
int1
Harry is nice.
("Harry" "is" "nice" "+")
int2
Harry is rough.
("Harry" "is" "rough" "+")
int3
Harry is red.
("Harry" "is" "red" "+")
int4
Harry is green.
("Harry" "is" "green" "+")
int5