Charlie is young. Erin is red. Fiona is kind. All red things are blue. Big things are cold. All white, young things are cold. If something is cold and kind then it is big. If something is red then it is blue. All blue things are cold. White things are red. All big, kind things are white.
Charlie is young.
("Charlie" "is" "young" "+")
Erin is red.
("Erin" "is" "red" "+")
Fiona is kind.
("Fiona" "is" "kind" "+")
All red things are blue.
((("something" "is" "red" "+")) -> ("something" "is" "blue" "+"))
Big things are cold.
((("something" "is" "big" "+")) -> ("something" "is" "cold" "+"))
All white, young things are cold.
((("something" "is" "white" "+") ("something" "is" "young" "+")) -> ("something" "is" "cold" "+"))
If something is cold and kind then it is big.
((("something" "is" "cold" "+") ("something" "is" "kind" "+")) -> ("something" "is" "big" "+"))
If something is red then it is blue.
((("something" "is" "red" "+")) -> ("something" "is" "blue" "+"))
All blue things are cold.
((("something" "is" "blue" "+")) -> ("something" "is" "cold" "+"))
White things are red.
((("something" "is" "white" "+")) -> ("something" "is" "red" "+"))
All big, kind things are white.
((("something" "is" "big" "+") ("something" "is" "kind" "+")) -> ("something" "is" "white" "+"))
Fiona is kind.
True
1
proof
[(triple3)]
("Fiona" "is" "kind" "+")
triple3
Erin is not red.
False
1
inv-proof
[(triple2)]
("Erin" "is" "red" "-")
triple2
Erin is blue.
True
2
proof
[(((triple2) -> rule1) OR ((triple2) -> rule5))]
("Erin" "is" "blue" "+")
((triple2) -> (rule1 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
((triple2) -> (rule5 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Erin is not blue.
False
2
inv-proof
[(((triple2) -> rule1) OR ((triple2) -> rule5))]
("Erin" "is" "blue" "-")
((triple2) -> (rule1 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
((triple2) -> (rule5 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Erin is cold.
True
3
proof
[(((((triple2) -> rule1)) -> rule6) OR ((((triple2) -> rule5)) -> rule6))]
("Erin" "is" "cold" "+")
((((triple2) -> (rule1 % int2))) -> (rule6 % int1))
Erin is cold.
("Erin" "is" "cold" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
((((triple2) -> (rule5 % int2))) -> (rule6 % int1))
Erin is cold.
("Erin" "is" "cold" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
Erin is not cold.
False
3
inv-proof
[(((((triple2) -> rule1)) -> rule6) OR ((((triple2) -> rule5)) -> rule6))]
("Erin" "is" "cold" "-")
((((triple2) -> (rule1 % int2))) -> (rule6 % int1))
Erin is cold.
("Erin" "is" "cold" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
((((triple2) -> (rule5 % int2))) -> (rule6 % int1))
Erin is cold.
("Erin" "is" "cold" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
Charlie is not cold.
Unknown
inv-rconc
[@4: Charlie is cold.[CWA. Example of deepest failure = (rule6 <- rule1 <- rule7 <- rule8 <- FAIL)]]
("Charlie" "is" "cold" "-")
Charlie is blue.
Unknown
rconc
[@3: Charlie is blue.[CWA. Example of deepest failure = (rule1 <- rule7 <- rule8 <- FAIL)]]
("Charlie" "is" "blue" "+")
Charlie is not big.
Unknown
inv-rconc
[@1: Charlie is big.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Charlie" "is" "big" "-")
Erin is young.
Unknown
random
[@0: Erin is young.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "young" "+")
Fiona is not young.
Unknown
inv-random
[@0: Fiona is young.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "young" "-")
Charlie is kind.
Unknown
random
[@0: Charlie is kind.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "kind" "+")
@0: Charlie is young.[(triple1)] Erin is red.[(triple2)] Fiona is kind.[(triple3)] @1: Erin is blue.[(((triple2) -> rule1) OR ((triple2) -> rule5))] @2: Erin is cold.[(((((triple2) -> rule1)) -> rule6) OR ((((triple2) -> rule5)) -> rule6))]
Charlie is young.
("Charlie" "is" "young" "+")
triple1
Erin is red.
("Erin" "is" "red" "+")
triple2
Fiona is kind.
("Fiona" "is" "kind" "+")
triple3
Erin is blue.
("Erin" "is" "blue" "+")
((triple2) -> (rule1 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
((triple2) -> (rule5 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Erin is cold.
("Erin" "is" "cold" "+")
((((triple2) -> (rule1 % int2))) -> (rule6 % int1))
Erin is cold.
("Erin" "is" "cold" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
((((triple2) -> (rule5 % int2))) -> (rule6 % int1))
Erin is cold.
("Erin" "is" "cold" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2