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