Anne is blue. Erin is cold. Erin is young. Gary is red. Gary is young. Harry is big. Harry is blue. If something is blue then it is big. If Harry is young and Harry is big then Harry is red. If something is young then it is smart. If something is big then it is cold. If something is blue and red then it is young. If something is young and smart then it is rough. If something is smart and rough then it is blue. All cold, blue things are big. If something is cold and young then it is big.
Anne is blue.
("Anne" "is" "blue" "+")
Erin is cold.
("Erin" "is" "cold" "+")
Erin is young.
("Erin" "is" "young" "+")
Gary is red.
("Gary" "is" "red" "+")
Gary is young.
("Gary" "is" "young" "+")
Harry is big.
("Harry" "is" "big" "+")
Harry is blue.
("Harry" "is" "blue" "+")
If something is blue then it is big.
((("something" "is" "blue" "+")) -> ("something" "is" "big" "+"))
If Harry is young and Harry is big then Harry is red.
((("Harry" "is" "young" "+") ("Harry" "is" "big" "+")) -> ("Harry" "is" "red" "+"))
If something is young then it is smart.
((("something" "is" "young" "+")) -> ("something" "is" "smart" "+"))
If something is big then it is cold.
((("something" "is" "big" "+")) -> ("something" "is" "cold" "+"))
If something is blue and red then it is young.
((("something" "is" "blue" "+") ("something" "is" "red" "+")) -> ("something" "is" "young" "+"))
If something is young and smart then it is rough.
((("something" "is" "young" "+") ("something" "is" "smart" "+")) -> ("something" "is" "rough" "+"))
If something is smart and rough then it is blue.
((("something" "is" "smart" "+") ("something" "is" "rough" "+")) -> ("something" "is" "blue" "+"))
All cold, blue things are big.
((("something" "is" "cold" "+") ("something" "is" "blue" "+")) -> ("something" "is" "big" "+"))
If something is cold and young then it is big.
((("something" "is" "cold" "+") ("something" "is" "young" "+")) -> ("something" "is" "big" "+"))
Gary is young.
True
1
proof
[(triple5)]
("Gary" "is" "young" "+")
triple5
Harry is not blue.
False
1
inv-proof
[(triple7)]
("Harry" "is" "blue" "-")
triple7
Anne is big.
True
2
proof
[(((triple1) -> rule1))]
("Anne" "is" "big" "+")
((triple1) -> (rule1 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is not big.
False
2
inv-proof
[(((triple1) -> rule1))]
("Anne" "is" "big" "-")
((triple1) -> (rule1 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Erin is rough.
True
4
proof
[(((triple3 ((triple3) -> rule3)) -> rule6))]
("Erin" "is" "rough" "+")
((triple3 ((triple3) -> (rule3 % int2))) -> (rule6 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Erin is smart.
("Erin" "is" "smart" "+")
int2
Erin is not rough.
False
4
inv-proof
[(((triple3 ((triple3) -> rule3)) -> rule6))]
("Erin" "is" "rough" "-")
((triple3 ((triple3) -> (rule3 % int2))) -> (rule6 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Erin is smart.
("Erin" "is" "smart" "+")
int2
Gary is blue.
True
7
proof
[(((((triple5) -> rule3) ((triple5 ((triple5) -> rule3)) -> rule6)) -> rule7))]
("Gary" "is" "blue" "+")
((((triple5) -> (rule3 % int3)) ((triple5 ((triple5) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule7 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is smart.
("Gary" "is" "smart" "+")
int3
Gary is not blue.
False
7
inv-proof
[(((((triple5) -> rule3) ((triple5 ((triple5) -> rule3)) -> rule6)) -> rule7))]
("Gary" "is" "blue" "-")
((((triple5) -> (rule3 % int3)) ((triple5 ((triple5) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule7 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is smart.
("Gary" "is" "smart" "+")
int3
Gary is big.
True
8
proof
[(((((((triple5) -> rule3) ((triple5 ((triple5) -> rule3)) -> rule6)) -> rule7)) -> rule1))]
("Gary" "is" "big" "+")
((((((triple5) -> (rule3 % int4)) ((triple5 ((triple5) -> (rule3 % int4))) -> (rule6 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is blue.
("Gary" "is" "blue" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Gary is smart.
("Gary" "is" "smart" "+")
int4
Gary is not big.
False
8
inv-proof
[(((((((triple5) -> rule3) ((triple5 ((triple5) -> rule3)) -> rule6)) -> rule7)) -> rule1))]
("Gary" "is" "big" "-")
((((((triple5) -> (rule3 % int4)) ((triple5 ((triple5) -> (rule3 % int4))) -> (rule6 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is blue.
("Gary" "is" "blue" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Gary is smart.
("Gary" "is" "smart" "+")
int4
Gary is cold.
True
9
proof
[(((((((((triple5) -> rule3) ((triple5 ((triple5) -> rule3)) -> rule6)) -> rule7)) -> rule1)) -> rule4))]
("Gary" "is" "cold" "+")
((((((((triple5) -> (rule3 % int5)) ((triple5 ((triple5) -> (rule3 % int5))) -> (rule6 % int4))) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule4 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is blue.
("Gary" "is" "blue" "+")
int3
Gary is rough.
("Gary" "is" "rough" "+")
int4
Gary is smart.
("Gary" "is" "smart" "+")
int5
Gary is not cold.
False
9
inv-proof
[(((((((((triple5) -> rule3) ((triple5 ((triple5) -> rule3)) -> rule6)) -> rule7)) -> rule1)) -> rule4))]
("Gary" "is" "cold" "-")
((((((((triple5) -> (rule3 % int5)) ((triple5 ((triple5) -> (rule3 % int5))) -> (rule6 % int4))) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule4 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is blue.
("Gary" "is" "blue" "+")
int3
Gary is rough.
("Gary" "is" "rough" "+")
int4
Gary is smart.
("Gary" "is" "smart" "+")
int5
Harry is not smart.
Unknown
inv-rconc
[@3: Harry is smart.[CWA. Example of deepest failure = (rule3 <- rule5 <- rule2 <- FAIL)]]
("Harry" "is" "smart" "-")
Anne is young.
Unknown
rconc
[@1: Anne is young.[CWA. Example of deepest failure = (rule5 <- FAIL)]]
("Anne" "is" "young" "+")
Harry is not young.
Unknown
inv-rconc
[@2: Harry is young.[CWA. Example of deepest failure = (rule5 <- rule2 <- FAIL)]]
("Harry" "is" "young" "-")
Harry is rough.
Unknown
rconc
[@3: Harry is rough.[CWA. Example of deepest failure = (rule6 <- rule5 <- rule2 <- FAIL)]]
("Harry" "is" "rough" "+")
Anne is not smart.
Unknown
inv-rconc
[@2: Anne is smart.[CWA. Example of deepest failure = (rule3 <- rule5 <- FAIL)]]
("Anne" "is" "smart" "-")
Harry is red.
Unknown
rconc
[@2: Harry is red.[CWA. Example of deepest failure = (rule2 <- rule5 <- FAIL)]]
("Harry" "is" "red" "+")
Anne is not red.
Unknown
inv-random
[@0: Anne is red.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "red" "-")
Erin is red.
Unknown
random
[@0: Erin is red.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "red" "+")
@0: Anne is blue.[(triple1)] Erin is cold.[(triple2 OR ((((((((triple3) -> rule3) ((triple3 ((triple3) -> rule3)) -> rule6)) -> rule7)) -> rule1)) -> rule4))] Erin is young.[(triple3)] Gary is red.[(triple4)] Gary is young.[(triple5)] Harry is big.[(triple6 OR ((triple7) -> rule1))] Harry is blue.[(triple7)] @1: Anne is big.[(((triple1) -> rule1))] Erin is big.[(((triple2 triple3) -> rule9) OR ((((((triple3) -> rule3) ((triple3 ((triple3) -> rule3)) -> rule6)) -> rule7)) -> rule1) OR ((triple2 ((((triple3) -> rule3) ((triple3 ((triple3) -> rule3)) -> rule6)) -> rule7)) -> rule8))] Erin is smart.[(((triple3) -> rule3))] Gary is smart.[(((triple5) -> rule3))] Harry is cold.[(((triple6) -> rule4) OR ((((triple7) -> rule1)) -> rule4))] @2: Anne is cold.[(((((triple1) -> rule1)) -> rule4))] Erin is rough.[(((triple3 ((triple3) -> rule3)) -> rule6))] Gary is rough.[(((triple5 ((triple5) -> rule3)) -> rule6))] @3: Erin is blue.[(((((triple3) -> rule3) ((triple3 ((triple3) -> rule3)) -> rule6)) -> rule7))] Gary is blue.[(((((triple5) -> rule3) ((triple5 ((triple5) -> rule3)) -> rule6)) -> rule7))] @4: Gary is big.[(((((((triple5) -> rule3) ((triple5 ((triple5) -> rule3)) -> rule6)) -> rule7)) -> rule1))] @5: Gary is cold.[(((((((((triple5) -> rule3) ((triple5 ((triple5) -> rule3)) -> rule6)) -> rule7)) -> rule1)) -> rule4))]
Anne is blue.
("Anne" "is" "blue" "+")
triple1
Erin is cold.
("Erin" "is" "cold" "+")
triple2
((((((((triple3) -> (rule3 % int5)) ((triple3 ((triple3) -> (rule3 % int5))) -> (rule6 % int4))) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule4 % int1))
Erin is cold.
("Erin" "is" "cold" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
Erin is blue.
("Erin" "is" "blue" "+")
int3
Erin is rough.
("Erin" "is" "rough" "+")
int4
Erin is smart.
("Erin" "is" "smart" "+")
int5
Erin is young.
("Erin" "is" "young" "+")
triple3
Gary is red.
("Gary" "is" "red" "+")
triple4
Gary is young.
("Gary" "is" "young" "+")
triple5
Harry is big.
("Harry" "is" "big" "+")
triple6
((triple7) -> (rule1 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
triple7
Anne is big.
("Anne" "is" "big" "+")
((triple1) -> (rule1 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
((triple2 triple3) -> (rule9 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
((((((triple3) -> (rule3 % int4)) ((triple3 ((triple3) -> (rule3 % int4))) -> (rule6 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
Erin is rough.
("Erin" "is" "rough" "+")
int3
Erin is smart.
("Erin" "is" "smart" "+")
int4
((triple2 ((((triple3) -> (rule3 % int4)) ((triple3 ((triple3) -> (rule3 % int4))) -> (rule6 % int3))) -> (rule7 % int2))) -> (rule8 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
Erin is rough.
("Erin" "is" "rough" "+")
int3
Erin is smart.
("Erin" "is" "smart" "+")
int4
Erin is smart.
("Erin" "is" "smart" "+")
((triple3) -> (rule3 % int1))
Erin is smart.
("Erin" "is" "smart" "+")
int1
Gary is smart.
("Gary" "is" "smart" "+")
((triple5) -> (rule3 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
((triple6) -> (rule4 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
((((triple7) -> (rule1 % int2))) -> (rule4 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
Anne is cold.
("Anne" "is" "cold" "+")
((((triple1) -> (rule1 % int2))) -> (rule4 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
Erin is rough.
("Erin" "is" "rough" "+")
((triple3 ((triple3) -> (rule3 % int2))) -> (rule6 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Erin is smart.
("Erin" "is" "smart" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
((triple5 ((triple5) -> (rule3 % int2))) -> (rule6 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is smart.
("Gary" "is" "smart" "+")
int2
Erin is blue.
("Erin" "is" "blue" "+")
((((triple3) -> (rule3 % int3)) ((triple3 ((triple3) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule7 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
int2
Erin is smart.
("Erin" "is" "smart" "+")
int3
Gary is blue.
("Gary" "is" "blue" "+")
((((triple5) -> (rule3 % int3)) ((triple5 ((triple5) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule7 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is smart.
("Gary" "is" "smart" "+")
int3
Gary is big.
("Gary" "is" "big" "+")
((((((triple5) -> (rule3 % int4)) ((triple5 ((triple5) -> (rule3 % int4))) -> (rule6 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is blue.
("Gary" "is" "blue" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Gary is smart.
("Gary" "is" "smart" "+")
int4
Gary is cold.
("Gary" "is" "cold" "+")
((((((((triple5) -> (rule3 % int5)) ((triple5 ((triple5) -> (rule3 % int5))) -> (rule6 % int4))) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule4 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is blue.
("Gary" "is" "blue" "+")
int3
Gary is rough.
("Gary" "is" "rough" "+")
int4
Gary is smart.
("Gary" "is" "smart" "+")
int5