Bob is green. Bob is young. Charlie is blue. Charlie is cold. Charlie is green. Charlie is nice. Charlie is white. Erin is blue. Erin is cold. Erin is green. Erin is white. Erin is young. Fiona is cold. Fiona is green. Fiona is nice. Fiona is white. White, nice things are cold. If something is nice then it is white. If something is cold and blue then it is kind. White, cold things are nice. If something is young and white then it is nice. If something is white then it is blue. All young things are cold. Green, kind things are blue.
Bob is green.
("Bob" "is" "green" "+")
Bob is young.
("Bob" "is" "young" "+")
Charlie is blue.
("Charlie" "is" "blue" "+")
Charlie is cold.
("Charlie" "is" "cold" "+")
Charlie is green.
("Charlie" "is" "green" "+")
Charlie is nice.
("Charlie" "is" "nice" "+")
Charlie is white.
("Charlie" "is" "white" "+")
Erin is blue.
("Erin" "is" "blue" "+")
Erin is cold.
("Erin" "is" "cold" "+")
Erin is green.
("Erin" "is" "green" "+")
Erin is white.
("Erin" "is" "white" "+")
Erin is young.
("Erin" "is" "young" "+")
Fiona is cold.
("Fiona" "is" "cold" "+")
Fiona is green.
("Fiona" "is" "green" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is white.
("Fiona" "is" "white" "+")
White, nice things are cold.
((("something" "is" "white" "+") ("something" "is" "nice" "+")) -> ("something" "is" "cold" "+"))
If something is nice then it is white.
((("something" "is" "nice" "+")) -> ("something" "is" "white" "+"))
If something is cold and blue then it is kind.
((("something" "is" "cold" "+") ("something" "is" "blue" "+")) -> ("something" "is" "kind" "+"))
White, cold things are nice.
((("something" "is" "white" "+") ("something" "is" "cold" "+")) -> ("something" "is" "nice" "+"))
If something is young and white then it is nice.
((("something" "is" "young" "+") ("something" "is" "white" "+")) -> ("something" "is" "nice" "+"))
If something is white then it is blue.
((("something" "is" "white" "+")) -> ("something" "is" "blue" "+"))
All young things are cold.
((("something" "is" "young" "+")) -> ("something" "is" "cold" "+"))
Green, kind things are blue.
((("something" "is" "green" "+") ("something" "is" "kind" "+")) -> ("something" "is" "blue" "+"))
Erin is young.
True
1
proof
[(triple12)]
("Erin" "is" "young" "+")
triple12
Bob is not young.
False
1
inv-proof
[(triple2)]
("Bob" "is" "young" "-")
triple2
Bob is not white.
Unknown
inv-rconc
[@2: Bob is white.[CWA. Example of deepest failure = (rule2 <- rule4 <- FAIL)]]
("Bob" "is" "white" "-")
Fiona is young.
Unknown
random
[@0: Fiona is young.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "young" "+")
@0: Bob is green.[(triple1)] Bob is young.[(triple2)] Charlie is blue.[(triple3 OR ((triple7) -> rule6) OR ((((triple6) -> rule2)) -> rule6))] Charlie is cold.[(triple4 OR ((triple7 triple6) -> rule1) OR ((((triple6) -> rule2) triple6) -> rule1))] Charlie is green.[(triple5)] Charlie is nice.[(triple6 OR ((triple7 triple4) -> rule4))] Charlie is white.[(triple7 OR ((triple6) -> rule2))] Erin is blue.[(triple8 OR ((triple11) -> rule6))] Erin is cold.[(triple9 OR ((triple12) -> rule7) OR ((triple11 ((triple12 triple11) -> rule5)) -> rule1))] Erin is green.[(triple10)] Erin is white.[(triple11)] Erin is young.[(triple12)] Fiona is cold.[(triple13 OR ((triple16 triple15) -> rule1) OR ((((triple15) -> rule2) triple15) -> rule1))] Fiona is green.[(triple14)] Fiona is nice.[(triple15 OR ((triple16 triple13) -> rule4))] Fiona is white.[(triple16 OR ((triple15) -> rule2))] @1: Bob is cold.[(((triple2) -> rule7))] Charlie is kind.[(((triple4 triple3) -> rule3) OR ((triple4 ((triple7) -> rule6)) -> rule3) OR ((((triple7 triple6) -> rule1) triple3) -> rule3) OR ((((triple7 triple6) -> rule1) ((triple7) -> rule6)) -> rule3) OR ((triple4 ((((triple6) -> rule2)) -> rule6)) -> rule3) OR ((((((triple6) -> rule2) triple6) -> rule1) triple3) -> rule3) OR ((((triple7 triple6) -> rule1) ((((triple6) -> rule2)) -> rule6)) -> rule3) OR ((((((triple6) -> rule2) triple6) -> rule1) ((triple7) -> rule6)) -> rule3) OR ((((((triple6) -> rule2) triple6) -> rule1) ((((triple6) -> rule2)) -> rule6)) -> rule3))] Erin is kind.[(((triple9 triple8) -> rule3) OR ((triple9 ((triple11) -> rule6)) -> rule3) OR ((((triple12) -> rule7) triple8) -> rule3) OR ((((triple12) -> rule7) ((triple11) -> rule6)) -> rule3) OR ((((triple11 ((triple12 triple11) -> rule5)) -> rule1) triple8) -> rule3) OR ((((triple11 ((triple12 triple11) -> rule5)) -> rule1) ((triple11) -> rule6)) -> rule3))] Erin is nice.[(((triple11 triple9) -> rule4) OR ((triple12 triple11) -> rule5) OR ((triple11 ((triple12) -> rule7)) -> rule4))] Fiona is blue.[(((triple16) -> rule6) OR ((((triple15) -> rule2)) -> rule6))] @2: Fiona is kind.[(((triple13 ((triple16) -> rule6)) -> rule3) OR ((((triple16 triple15) -> rule1) ((triple16) -> rule6)) -> rule3) OR ((triple13 ((((triple15) -> rule2)) -> rule6)) -> rule3) OR ((((triple16 triple15) -> rule1) ((((triple15) -> rule2)) -> rule6)) -> rule3) OR ((((((triple15) -> rule2) triple15) -> rule1) ((triple16) -> rule6)) -> rule3) OR ((((((triple15) -> rule2) triple15) -> rule1) ((((triple15) -> rule2)) -> rule6)) -> rule3))]
Bob is green.
("Bob" "is" "green" "+")
triple1
Bob is young.
("Bob" "is" "young" "+")
triple2
Charlie is blue.
("Charlie" "is" "blue" "+")
triple3
((triple7) -> (rule6 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
((((triple6) -> (rule2 % int2))) -> (rule6 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
triple4
((triple7 triple6) -> (rule1 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
((((triple6) -> (rule2 % int2)) triple6) -> (rule1 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
triple5
Charlie is nice.
("Charlie" "is" "nice" "+")
triple6
((triple7 triple4) -> (rule4 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
triple7
((triple6) -> (rule2 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
triple8
((triple11) -> (rule6 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Erin is cold.
("Erin" "is" "cold" "+")
triple9
((triple12) -> (rule7 % int1))
Erin is cold.
("Erin" "is" "cold" "+")
int1
((triple11 ((triple12 triple11) -> (rule5 % int2))) -> (rule1 % int1))
Erin is cold.
("Erin" "is" "cold" "+")
int1
Erin is nice.
("Erin" "is" "nice" "+")
int2
Erin is green.
("Erin" "is" "green" "+")
triple10
Erin is white.
("Erin" "is" "white" "+")
triple11
Erin is young.
("Erin" "is" "young" "+")
triple12
Fiona is cold.
("Fiona" "is" "cold" "+")
triple13
((triple16 triple15) -> (rule1 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
((((triple15) -> (rule2 % int2)) triple15) -> (rule1 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
triple14
Fiona is nice.
("Fiona" "is" "nice" "+")
triple15
((triple16 triple13) -> (rule4 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
triple16
((triple15) -> (rule2 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
((triple2) -> (rule7 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
((triple4 triple3) -> (rule3 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
((triple4 ((triple7) -> (rule6 % int2))) -> (rule3 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
((((triple7 triple6) -> (rule1 % int2)) triple3) -> (rule3 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
((((triple7 triple6) -> (rule1 % int3)) ((triple7) -> (rule6 % int2))) -> (rule3 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
int3
((triple4 ((((triple6) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
Charlie is white.
("Charlie" "is" "white" "+")
int3
((((((triple6) -> (rule2 % int3)) triple6) -> (rule1 % int2)) triple3) -> (rule3 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is white.
("Charlie" "is" "white" "+")
int3
((((triple7 triple6) -> (rule1 % int4)) ((((triple6) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
Charlie is white.
("Charlie" "is" "white" "+")
int3
Charlie is cold.
("Charlie" "is" "cold" "+")
int4
((((((triple6) -> (rule2 % int4)) triple6) -> (rule1 % int3)) ((triple7) -> (rule6 % int2))) -> (rule3 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
int3
Charlie is white.
("Charlie" "is" "white" "+")
int4
((((((triple6) -> (rule2 % int4)) triple6) -> (rule1 % int3)) ((((triple6) -> (rule2 % int4))) -> (rule6 % int2))) -> (rule3 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
int3
Charlie is white.
("Charlie" "is" "white" "+")
int4
Erin is kind.
("Erin" "is" "kind" "+")
((triple9 triple8) -> (rule3 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
((triple9 ((triple11) -> (rule6 % int2))) -> (rule3 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
((((triple12) -> (rule7 % int2)) triple8) -> (rule3 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Erin is cold.
("Erin" "is" "cold" "+")
int2
((((triple12) -> (rule7 % int3)) ((triple11) -> (rule6 % int2))) -> (rule3 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
Erin is cold.
("Erin" "is" "cold" "+")
int3
((((triple11 ((triple12 triple11) -> (rule5 % int3))) -> (rule1 % int2)) triple8) -> (rule3 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Erin is cold.
("Erin" "is" "cold" "+")
int2
Erin is nice.
("Erin" "is" "nice" "+")
int3
((((triple11 ((triple12 triple11) -> (rule5 % int4))) -> (rule1 % int3)) ((triple11) -> (rule6 % int2))) -> (rule3 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
Erin is cold.
("Erin" "is" "cold" "+")
int3
Erin is nice.
("Erin" "is" "nice" "+")
int4
Erin is nice.
("Erin" "is" "nice" "+")
((triple11 triple9) -> (rule4 % int1))
Erin is nice.
("Erin" "is" "nice" "+")
int1
((triple12 triple11) -> (rule5 % int1))
Erin is nice.
("Erin" "is" "nice" "+")
int1
((triple11 ((triple12) -> (rule7 % int2))) -> (rule4 % int1))
Erin is nice.
("Erin" "is" "nice" "+")
int1
Erin is cold.
("Erin" "is" "cold" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
((triple16) -> (rule6 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
((((triple15) -> (rule2 % int2))) -> (rule6 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
((triple13 ((triple16) -> (rule6 % int2))) -> (rule3 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
((((triple16 triple15) -> (rule1 % int3)) ((triple16) -> (rule6 % int2))) -> (rule3 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
int3
((triple13 ((((triple15) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
int3
((((triple16 triple15) -> (rule1 % int4)) ((((triple15) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
int3
Fiona is cold.
("Fiona" "is" "cold" "+")
int4
((((((triple15) -> (rule2 % int4)) triple15) -> (rule1 % int3)) ((triple16) -> (rule6 % int2))) -> (rule3 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
int3
Fiona is white.
("Fiona" "is" "white" "+")
int4
((((((triple15) -> (rule2 % int4)) triple15) -> (rule1 % int3)) ((((triple15) -> (rule2 % int4))) -> (rule6 % int2))) -> (rule3 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
int3
Fiona is white.
("Fiona" "is" "white" "+")
int4