Bob is blue. Bob is green. Bob is kind. Bob is nice. Bob is red. Bob is smart. Bob is white. Charlie is nice. Dave is red. Dave is white. Gary is kind. Gary is red. All nice, white things are blue. If something is kind then it is smart. Nice, smart things are white. White, smart things are kind. If something is blue then it is smart. If Dave is white then Dave is blue.
Bob is blue.
("Bob" "is" "blue" "+")
Bob is green.
("Bob" "is" "green" "+")
Bob is kind.
("Bob" "is" "kind" "+")
Bob is nice.
("Bob" "is" "nice" "+")
Bob is red.
("Bob" "is" "red" "+")
Bob is smart.
("Bob" "is" "smart" "+")
Bob is white.
("Bob" "is" "white" "+")
Charlie is nice.
("Charlie" "is" "nice" "+")
Dave is red.
("Dave" "is" "red" "+")
Dave is white.
("Dave" "is" "white" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is red.
("Gary" "is" "red" "+")
All nice, white things are blue.
((("something" "is" "nice" "+") ("something" "is" "white" "+")) -> ("something" "is" "blue" "+"))
If something is kind then it is smart.
((("something" "is" "kind" "+")) -> ("something" "is" "smart" "+"))
Nice, smart things are white.
((("something" "is" "nice" "+") ("something" "is" "smart" "+")) -> ("something" "is" "white" "+"))
White, smart things are kind.
((("something" "is" "white" "+") ("something" "is" "smart" "+")) -> ("something" "is" "kind" "+"))
If something is blue then it is smart.
((("something" "is" "blue" "+")) -> ("something" "is" "smart" "+"))
If Dave is white then Dave is blue.
((("Dave" "is" "white" "+")) -> ("Dave" "is" "blue" "+"))
Bob is kind.
True
1
proof
[(triple3 OR ((triple7 triple6) -> rule4) OR ((triple7 ((triple1) -> rule5)) -> rule4) OR ((((triple4 triple6) -> rule3) triple6) -> rule4) OR ((((triple4 triple6) -> rule3) ((triple1) -> rule5)) -> rule4) OR ((triple7 ((((triple4 triple7) -> rule1)) -> rule5)) -> rule4) OR ((((triple4 ((triple1) -> rule5)) -> rule3) triple6) -> rule4) OR ((((triple4 triple6) -> rule3) ((((triple4 triple7) -> rule1)) -> rule5)) -> rule4) OR ((((triple4 ((triple1) -> rule5)) -> rule3) ((triple1) -> rule5)) -> rule4) OR ((((triple4 ((triple1) -> rule5)) -> rule3) ((((triple4 triple7) -> rule1)) -> rule5)) -> rule4))]
("Bob" "is" "kind" "+")
triple3
((triple7 triple6) -> (rule4 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
((triple7 ((triple1) -> (rule5 % int2))) -> (rule4 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is smart.
("Bob" "is" "smart" "+")
int2
((((triple4 triple6) -> (rule3 % int2)) triple6) -> (rule4 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
((((triple4 triple6) -> (rule3 % int3)) ((triple1) -> (rule5 % int2))) -> (rule4 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is smart.
("Bob" "is" "smart" "+")
int2
Bob is white.
("Bob" "is" "white" "+")
int3
((triple7 ((((triple4 triple7) -> (rule1 % int3))) -> (rule5 % int2))) -> (rule4 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is smart.
("Bob" "is" "smart" "+")
int2
Bob is blue.
("Bob" "is" "blue" "+")
int3
((((triple4 ((triple1) -> (rule5 % int3))) -> (rule3 % int2)) triple6) -> (rule4 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Bob is smart.
("Bob" "is" "smart" "+")
int3
((((triple4 triple6) -> (rule3 % int4)) ((((triple4 triple7) -> (rule1 % int3))) -> (rule5 % int2))) -> (rule4 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is smart.
("Bob" "is" "smart" "+")
int2
Bob is blue.
("Bob" "is" "blue" "+")
int3
Bob is white.
("Bob" "is" "white" "+")
int4
((((triple4 ((triple1) -> (rule5 % int3))) -> (rule3 % int2)) ((triple1) -> (rule5 % int3))) -> (rule4 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Bob is smart.
("Bob" "is" "smart" "+")
int3
((((triple4 ((triple1) -> (rule5 % int4))) -> (rule3 % int3)) ((((triple4 triple7) -> (rule1 % int2))) -> (rule5 % int4))) -> (rule4 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is blue.
("Bob" "is" "blue" "+")
int2
Bob is white.
("Bob" "is" "white" "+")
int3
Bob is smart.
("Bob" "is" "smart" "+")
int4
Dave is not white.
False
1
inv-proof
[(triple10)]
("Dave" "is" "white" "-")
triple10
Gary is smart.
True
2
proof
[(((triple11) -> rule2))]
("Gary" "is" "smart" "+")
((triple11) -> (rule2 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
Gary is not smart.
False
2
inv-proof
[(((triple11) -> rule2))]
("Gary" "is" "smart" "-")
((triple11) -> (rule2 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
Dave is smart.
True
3
proof
[(((((triple10) -> rule6)) -> rule5))]
("Dave" "is" "smart" "+")
((((triple10) -> (rule6 % int2))) -> (rule5 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
int2
Dave is not smart.
False
3
inv-proof
[(((((triple10) -> rule6)) -> rule5))]
("Dave" "is" "smart" "-")
((((triple10) -> (rule6 % int2))) -> (rule5 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
int2
Dave is kind.
True
5
proof
[(((triple10 ((((triple10) -> rule6)) -> rule5)) -> rule4))]
("Dave" "is" "kind" "+")
((triple10 ((((triple10) -> (rule6 % int3))) -> (rule5 % int2))) -> (rule4 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is smart.
("Dave" "is" "smart" "+")
int2
Dave is blue.
("Dave" "is" "blue" "+")
int3
Dave is not kind.
False
5
inv-proof
[(((triple10 ((((triple10) -> rule6)) -> rule5)) -> rule4))]
("Dave" "is" "kind" "-")
((triple10 ((((triple10) -> (rule6 % int3))) -> (rule5 % int2))) -> (rule4 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is smart.
("Dave" "is" "smart" "+")
int2
Dave is blue.
("Dave" "is" "blue" "+")
int3
Charlie is not white.
Unknown
inv-rconc
[@3: Charlie is white.[CWA. Example of deepest failure = (rule3 <- rule2 <- rule4 <- FAIL)]]
("Charlie" "is" "white" "-")
Charlie is smart.
Unknown
rconc
[@5: Charlie is smart.[CWA. Example of deepest failure = (rule2 <- rule4 <- rule3 <- rule5 <- rule1 <- FAIL)]]
("Charlie" "is" "smart" "+")
Gary is not blue.
Unknown
inv-rconc
[@1: Gary is blue.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Gary" "is" "blue" "-")
Charlie is kind.
Unknown
rconc
[@4: Charlie is kind.[CWA. Example of deepest failure = (rule4 <- rule3 <- rule5 <- rule1 <- FAIL)]]
("Charlie" "is" "kind" "+")
Dave is not green.
Unknown
inv-random
[@0: Dave is green.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "green" "-")
Dave is nice.
Unknown
random
[@0: Dave is nice.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "nice" "+")
Gary is not nice.
Unknown
inv-random
[@0: Gary is nice.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "nice" "-")
Charlie is green.
Unknown
random
[@0: Charlie is green.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "green" "+")
@0: Bob is blue.[(triple1 OR ((triple4 triple7) -> rule1) OR ((triple4 ((triple4 triple6) -> rule3)) -> rule1) OR ((triple4 ((triple4 ((triple3) -> rule2)) -> rule3)) -> rule1))] Bob is green.[(triple2)] Bob is kind.[(triple3 OR ((triple7 triple6) -> rule4) OR ((triple7 ((triple1) -> rule5)) -> rule4) OR ((((triple4 triple6) -> rule3) triple6) -> rule4) OR ((((triple4 triple6) -> rule3) ((triple1) -> rule5)) -> rule4) OR ((triple7 ((((triple4 triple7) -> rule1)) -> rule5)) -> rule4) OR ((((triple4 ((triple1) -> rule5)) -> rule3) triple6) -> rule4) OR ((((triple4 triple6) -> rule3) ((((triple4 triple7) -> rule1)) -> rule5)) -> rule4) OR ((((triple4 ((triple1) -> rule5)) -> rule3) ((triple1) -> rule5)) -> rule4) OR ((((triple4 ((triple1) -> rule5)) -> rule3) ((((triple4 triple7) -> rule1)) -> rule5)) -> rule4))] Bob is nice.[(triple4)] Bob is red.[(triple5)] Bob is smart.[(triple6 OR ((triple1) -> rule5) OR ((triple3) -> rule2) OR ((((triple4 triple7) -> rule1)) -> rule5))] Bob is white.[(triple7 OR ((triple4 triple6) -> rule3) OR ((triple4 ((triple1) -> rule5)) -> rule3) OR ((triple4 ((triple3) -> rule2)) -> rule3))] Charlie is nice.[(triple8)] Dave is red.[(triple9)] Dave is white.[(triple10)] Gary is kind.[(triple11)] Gary is red.[(triple12)] @1: Dave is blue.[(((triple10) -> rule6))] Gary is smart.[(((triple11) -> rule2))] @2: Dave is smart.[(((((triple10) -> rule6)) -> rule5))] @3: Dave is kind.[(((triple10 ((((triple10) -> rule6)) -> rule5)) -> rule4))]
Bob is blue.
("Bob" "is" "blue" "+")
triple1
((triple4 triple7) -> (rule1 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
((triple4 ((triple4 triple6) -> (rule3 % int2))) -> (rule1 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
((triple4 ((triple4 ((triple3) -> (rule2 % int3))) -> (rule3 % int2))) -> (rule1 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Bob is smart.
("Bob" "is" "smart" "+")
int3
Bob is green.
("Bob" "is" "green" "+")
triple2
Bob is kind.
("Bob" "is" "kind" "+")
triple3
((triple7 triple6) -> (rule4 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
((triple7 ((triple1) -> (rule5 % int2))) -> (rule4 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is smart.
("Bob" "is" "smart" "+")
int2
((((triple4 triple6) -> (rule3 % int2)) triple6) -> (rule4 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
((((triple4 triple6) -> (rule3 % int3)) ((triple1) -> (rule5 % int2))) -> (rule4 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is smart.
("Bob" "is" "smart" "+")
int2
Bob is white.
("Bob" "is" "white" "+")
int3
((triple7 ((((triple4 triple7) -> (rule1 % int3))) -> (rule5 % int2))) -> (rule4 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is smart.
("Bob" "is" "smart" "+")
int2
Bob is blue.
("Bob" "is" "blue" "+")
int3
((((triple4 ((triple1) -> (rule5 % int3))) -> (rule3 % int2)) triple6) -> (rule4 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Bob is smart.
("Bob" "is" "smart" "+")
int3
((((triple4 triple6) -> (rule3 % int4)) ((((triple4 triple7) -> (rule1 % int3))) -> (rule5 % int2))) -> (rule4 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is smart.
("Bob" "is" "smart" "+")
int2
Bob is blue.
("Bob" "is" "blue" "+")
int3
Bob is white.
("Bob" "is" "white" "+")
int4
((((triple4 ((triple1) -> (rule5 % int3))) -> (rule3 % int2)) ((triple1) -> (rule5 % int3))) -> (rule4 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Bob is smart.
("Bob" "is" "smart" "+")
int3
((((triple4 ((triple1) -> (rule5 % int4))) -> (rule3 % int3)) ((((triple4 triple7) -> (rule1 % int2))) -> (rule5 % int4))) -> (rule4 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is blue.
("Bob" "is" "blue" "+")
int2
Bob is white.
("Bob" "is" "white" "+")
int3
Bob is smart.
("Bob" "is" "smart" "+")
int4
Bob is nice.
("Bob" "is" "nice" "+")
triple4
Bob is red.
("Bob" "is" "red" "+")
triple5
Bob is smart.
("Bob" "is" "smart" "+")
triple6
((triple1) -> (rule5 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
((triple3) -> (rule2 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
((((triple4 triple7) -> (rule1 % int2))) -> (rule5 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
Bob is blue.
("Bob" "is" "blue" "+")
int2
Bob is white.
("Bob" "is" "white" "+")
triple7
((triple4 triple6) -> (rule3 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
((triple4 ((triple1) -> (rule5 % int2))) -> (rule3 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is smart.
("Bob" "is" "smart" "+")
int2
((triple4 ((triple3) -> (rule2 % int2))) -> (rule3 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is smart.
("Bob" "is" "smart" "+")
int2
Charlie is nice.
("Charlie" "is" "nice" "+")
triple8
Dave is red.
("Dave" "is" "red" "+")
triple9
Dave is white.
("Dave" "is" "white" "+")
triple10
Gary is kind.
("Gary" "is" "kind" "+")
triple11
Gary is red.
("Gary" "is" "red" "+")
triple12
Dave is blue.
("Dave" "is" "blue" "+")
((triple10) -> (rule6 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Gary is smart.
("Gary" "is" "smart" "+")
((triple11) -> (rule2 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
Dave is smart.
("Dave" "is" "smart" "+")
((((triple10) -> (rule6 % int2))) -> (rule5 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
int2
Dave is kind.
("Dave" "is" "kind" "+")
((triple10 ((((triple10) -> (rule6 % int3))) -> (rule5 % int2))) -> (rule4 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is smart.
("Dave" "is" "smart" "+")
int2
Dave is blue.
("Dave" "is" "blue" "+")
int3