Bob is quiet. Bob is young. Erin is green. Erin is red. Fiona is quiet. Fiona is young. Harry is blue. Blue, big people are green. If someone is young then they are big. Big people are blue. If someone is red and big then they are white. All white, green people are big. If someone is green and big then they are red. If someone is white and young then they are green. If Erin is white then Erin is young.
Bob is quiet.
("Bob" "is" "quiet" "+")
Bob is young.
("Bob" "is" "young" "+")
Erin is green.
("Erin" "is" "green" "+")
Erin is red.
("Erin" "is" "red" "+")
Fiona is quiet.
("Fiona" "is" "quiet" "+")
Fiona is young.
("Fiona" "is" "young" "+")
Harry is blue.
("Harry" "is" "blue" "+")
Blue, big people are green.
((("someone" "is" "blue" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "green" "+"))
If someone is young then they are big.
((("someone" "is" "young" "+")) -> ("someone" "is" "big" "+"))
Big people are blue.
((("someone" "is" "big" "+")) -> ("someone" "is" "blue" "+"))
If someone is red and big then they are white.
((("someone" "is" "red" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "white" "+"))
All white, green people are big.
((("someone" "is" "white" "+") ("someone" "is" "green" "+")) -> ("someone" "is" "big" "+"))
If someone is green and big then they are red.
((("someone" "is" "green" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "red" "+"))
If someone is white and young then they are green.
((("someone" "is" "white" "+") ("someone" "is" "young" "+")) -> ("someone" "is" "green" "+"))
If Erin is white then Erin is young.
((("Erin" "is" "white" "+")) -> ("Erin" "is" "young" "+"))
Erin is green.
True
1
proof
[(triple3)]
("Erin" "is" "green" "+")
triple3
Bob is not young.
False
1
inv-proof
[(triple2)]
("Bob" "is" "young" "-")
triple2
Fiona is big.
True
2
proof
[(((triple6) -> rule2))]
("Fiona" "is" "big" "+")
((triple6) -> (rule2 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is not big.
False
2
inv-proof
[(((triple6) -> rule2))]
("Fiona" "is" "big" "-")
((triple6) -> (rule2 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Bob is blue.
True
3
proof
[(((((triple2) -> rule2)) -> rule3))]
("Bob" "is" "blue" "+")
((((triple2) -> (rule2 % int2))) -> (rule3 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Bob is big.
("Bob" "is" "big" "+")
int2
Fiona is not blue.
False
3
inv-proof
[(((((triple6) -> rule2)) -> rule3))]
("Fiona" "is" "blue" "-")
((((triple6) -> (rule2 % int2))) -> (rule3 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
Bob is green.
True
6
proof
[(((((((triple2) -> rule2)) -> rule3) ((triple2) -> rule2)) -> rule1))]
("Bob" "is" "green" "+")
((((((triple2) -> (rule2 % int3))) -> (rule3 % int2)) ((triple2) -> (rule2 % int3))) -> (rule1 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
Bob is blue.
("Bob" "is" "blue" "+")
int2
Bob is big.
("Bob" "is" "big" "+")
int3
Fiona is not green.
False
6
inv-proof
[(((((((triple6) -> rule2)) -> rule3) ((triple6) -> rule2)) -> rule1))]
("Fiona" "is" "green" "-")
((((((triple6) -> (rule2 % int3))) -> (rule3 % int2)) ((triple6) -> (rule2 % int3))) -> (rule1 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is big.
("Fiona" "is" "big" "+")
int3
Fiona is red.
True
9
proof
[(((((((((triple6) -> rule2)) -> rule3) ((triple6) -> rule2)) -> rule1) ((triple6) -> rule2)) -> rule6))]
("Fiona" "is" "red" "+")
((((((((triple6) -> (rule2 % int4))) -> (rule3 % int3)) ((triple6) -> (rule2 % int4))) -> (rule1 % int2)) ((triple6) -> (rule2 % int4))) -> (rule6 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
int3
Fiona is big.
("Fiona" "is" "big" "+")
int4
Bob is not red.
False
9
inv-proof
[(((((((((triple2) -> rule2)) -> rule3) ((triple2) -> rule2)) -> rule1) ((triple2) -> rule2)) -> rule6))]
("Bob" "is" "red" "-")
((((((((triple2) -> (rule2 % int4))) -> (rule3 % int3)) ((triple2) -> (rule2 % int4))) -> (rule1 % int2)) ((triple2) -> (rule2 % int4))) -> (rule6 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Bob is green.
("Bob" "is" "green" "+")
int2
Bob is blue.
("Bob" "is" "blue" "+")
int3
Bob is big.
("Bob" "is" "big" "+")
int4
Fiona is white.
True
12
proof
[(((((((((((triple6) -> rule2)) -> rule3) ((triple6) -> rule2)) -> rule1) ((triple6) -> rule2)) -> rule6) ((triple6) -> rule2)) -> rule4))]
("Fiona" "is" "white" "+")
((((((((((triple6) -> (rule2 % int5))) -> (rule3 % int4)) ((triple6) -> (rule2 % int5))) -> (rule1 % int3)) ((triple6) -> (rule2 % int5))) -> (rule6 % int2)) ((triple6) -> (rule2 % int5))) -> (rule4 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is blue.
("Fiona" "is" "blue" "+")
int4
Fiona is big.
("Fiona" "is" "big" "+")
int5
Bob is not white.
False
12
inv-proof
[(((((((((((triple2) -> rule2)) -> rule3) ((triple2) -> rule2)) -> rule1) ((triple2) -> rule2)) -> rule6) ((triple2) -> rule2)) -> rule4))]
("Bob" "is" "white" "-")
((((((((((triple2) -> (rule2 % int5))) -> (rule3 % int4)) ((triple2) -> (rule2 % int5))) -> (rule1 % int3)) ((triple2) -> (rule2 % int5))) -> (rule6 % int2)) ((triple2) -> (rule2 % int5))) -> (rule4 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
Bob is green.
("Bob" "is" "green" "+")
int3
Bob is blue.
("Bob" "is" "blue" "+")
int4
Bob is big.
("Bob" "is" "big" "+")
int5
Erin is not white.
Unknown
inv-rconc
[@3: Erin is white.[CWA. Example of deepest failure = (rule4 <- rule2 <- rule8 <- FAIL)]]
("Erin" "is" "white" "-")
Erin is blue.
Unknown
rconc
[@5: Erin is blue.[CWA. Example of deepest failure = (rule3 <- rule2 <- rule8 <- rule4 <- rule5 <- FAIL)]]
("Erin" "is" "blue" "+")
Harry is not white.
Unknown
inv-rconc
[@2: Harry is white.[CWA. Example of deepest failure = (rule4 <- rule2 <- FAIL)]]
("Harry" "is" "white" "-")
Harry is red.
Unknown
rconc
[@3: Harry is red.[CWA. Example of deepest failure = (rule6 <- rule5 <- rule4 <- FAIL)]]
("Harry" "is" "red" "+")
Harry is not green.
Unknown
inv-rconc
[@3: Harry is green.[CWA. Example of deepest failure = (rule1 <- rule5 <- rule7 <- FAIL)]]
("Harry" "is" "green" "-")
Erin is big.
Unknown
rconc
[@4: Erin is big.[CWA. Example of deepest failure = (rule2 <- rule8 <- rule4 <- rule5 <- FAIL)]]
("Erin" "is" "big" "+")
Erin is not quiet.
Unknown
inv-random
[@0: Erin is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "quiet" "-")
Harry is quiet.
Unknown
random
[@0: Harry is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "quiet" "+")
@0: Bob is quiet.[(triple1)] Bob is young.[(triple2)] Erin is green.[(triple3)] Erin is red.[(triple4)] Fiona is quiet.[(triple5)] Fiona is young.[(triple6)] Harry is blue.[(triple7)] @1: Bob is big.[(((triple2) -> rule2))] Fiona is big.[(((triple6) -> rule2))] @2: Bob is blue.[(((((triple2) -> rule2)) -> rule3))] Fiona is blue.[(((((triple6) -> rule2)) -> rule3))] @3: Bob is green.[(((((((triple2) -> rule2)) -> rule3) ((triple2) -> rule2)) -> rule1))] Fiona is green.[(((((((triple6) -> rule2)) -> rule3) ((triple6) -> rule2)) -> rule1))] @4: Bob is red.[(((((((((triple2) -> rule2)) -> rule3) ((triple2) -> rule2)) -> rule1) ((triple2) -> rule2)) -> rule6))] Fiona is red.[(((((((((triple6) -> rule2)) -> rule3) ((triple6) -> rule2)) -> rule1) ((triple6) -> rule2)) -> rule6))] @5: Bob is white.[(((((((((((triple2) -> rule2)) -> rule3) ((triple2) -> rule2)) -> rule1) ((triple2) -> rule2)) -> rule6) ((triple2) -> rule2)) -> rule4))] Fiona is white.[(((((((((((triple6) -> rule2)) -> rule3) ((triple6) -> rule2)) -> rule1) ((triple6) -> rule2)) -> rule6) ((triple6) -> rule2)) -> rule4))]
Bob is quiet.
("Bob" "is" "quiet" "+")
triple1
Bob is young.
("Bob" "is" "young" "+")
triple2
Erin is green.
("Erin" "is" "green" "+")
triple3
Erin is red.
("Erin" "is" "red" "+")
triple4
Fiona is quiet.
("Fiona" "is" "quiet" "+")
triple5
Fiona is young.
("Fiona" "is" "young" "+")
triple6
Harry is blue.
("Harry" "is" "blue" "+")
triple7
Bob is big.
("Bob" "is" "big" "+")
((triple2) -> (rule2 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
((triple6) -> (rule2 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Bob is blue.
("Bob" "is" "blue" "+")
((((triple2) -> (rule2 % int2))) -> (rule3 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Bob is big.
("Bob" "is" "big" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
((((triple6) -> (rule2 % int2))) -> (rule3 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
Bob is green.
("Bob" "is" "green" "+")
((((((triple2) -> (rule2 % int3))) -> (rule3 % int2)) ((triple2) -> (rule2 % int3))) -> (rule1 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
Bob is blue.
("Bob" "is" "blue" "+")
int2
Bob is big.
("Bob" "is" "big" "+")
int3
Fiona is green.
("Fiona" "is" "green" "+")
((((((triple6) -> (rule2 % int3))) -> (rule3 % int2)) ((triple6) -> (rule2 % int3))) -> (rule1 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is big.
("Fiona" "is" "big" "+")
int3
Bob is red.
("Bob" "is" "red" "+")
((((((((triple2) -> (rule2 % int4))) -> (rule3 % int3)) ((triple2) -> (rule2 % int4))) -> (rule1 % int2)) ((triple2) -> (rule2 % int4))) -> (rule6 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Bob is green.
("Bob" "is" "green" "+")
int2
Bob is blue.
("Bob" "is" "blue" "+")
int3
Bob is big.
("Bob" "is" "big" "+")
int4
Fiona is red.
("Fiona" "is" "red" "+")
((((((((triple6) -> (rule2 % int4))) -> (rule3 % int3)) ((triple6) -> (rule2 % int4))) -> (rule1 % int2)) ((triple6) -> (rule2 % int4))) -> (rule6 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
int3
Fiona is big.
("Fiona" "is" "big" "+")
int4
Bob is white.
("Bob" "is" "white" "+")
((((((((((triple2) -> (rule2 % int5))) -> (rule3 % int4)) ((triple2) -> (rule2 % int5))) -> (rule1 % int3)) ((triple2) -> (rule2 % int5))) -> (rule6 % int2)) ((triple2) -> (rule2 % int5))) -> (rule4 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
Bob is green.
("Bob" "is" "green" "+")
int3
Bob is blue.
("Bob" "is" "blue" "+")
int4
Bob is big.
("Bob" "is" "big" "+")
int5
Fiona is white.
("Fiona" "is" "white" "+")
((((((((((triple6) -> (rule2 % int5))) -> (rule3 % int4)) ((triple6) -> (rule2 % int5))) -> (rule1 % int3)) ((triple6) -> (rule2 % int5))) -> (rule6 % int2)) ((triple6) -> (rule2 % int5))) -> (rule4 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is blue.
("Fiona" "is" "blue" "+")
int4
Fiona is big.
("Fiona" "is" "big" "+")
int5