Anne is young. Bob is cold. Fiona is kind. If something is red then it is cold. If something is red and big then it is cold. If Bob is quiet and Bob is big then Bob is not cold. If something is kind and big then it is not red. If something is kind and quiet then it is red. If something is young then it is red. All big things are blue. If Bob is red and Bob is not kind then Bob is not blue.
Anne is young.
("Anne" "is" "young" "+")
Bob is cold.
("Bob" "is" "cold" "+")
Fiona is kind.
("Fiona" "is" "kind" "+")
If something is red then it is cold.
((("something" "is" "red" "+")) -> ("something" "is" "cold" "+"))
If something is red and big then it is cold.
((("something" "is" "red" "+") ("something" "is" "big" "+")) -> ("something" "is" "cold" "+"))
If Bob is quiet and Bob is big then Bob is not cold.
((("Bob" "is" "quiet" "+") ("Bob" "is" "big" "+")) -> ("Bob" "is" "cold" "-"))
If something is kind and big then it is not red.
((("something" "is" "kind" "+") ("something" "is" "big" "+")) -> ("something" "is" "red" "-"))
If something is kind and quiet then it is red.
((("something" "is" "kind" "+") ("something" "is" "quiet" "+")) -> ("something" "is" "red" "+"))
If something is young then it is red.
((("something" "is" "young" "+")) -> ("something" "is" "red" "+"))
All big things are blue.
((("something" "is" "big" "+")) -> ("something" "is" "blue" "+"))
If Bob is red and Bob is not kind then Bob is not blue.
((("Bob" "is" "red" "+") ("Bob" "is" "kind" "~")) -> ("Bob" "is" "blue" "-"))
Bob is cold.
True
1
proof
[(triple2)]
("Bob" "is" "cold" "+")
triple2
Fiona is not kind.
False
1
inv-proof
[(triple3)]
("Fiona" "is" "kind" "-")
triple3
Fiona is not cold.
Unknown
inv-rconc
[@2: Fiona is cold.[CWA. Example of deepest failure = (rule1 <- rule5 <- FAIL)]]
("Fiona" "is" "cold" "-")
Bob is young.
Unknown
random
[@0: Bob is young.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "young" "+")
@0: Anne is young.[(triple1)] Bob is cold.[(triple2)] Fiona is kind.[(triple3)] @1: Anne is red.[(((triple1) -> rule6))] @2: Anne is cold.[(((((triple1) -> rule6)) -> rule1))]
Anne is young.
("Anne" "is" "young" "+")
triple1
Bob is cold.
("Bob" "is" "cold" "+")
triple2
Fiona is kind.
("Fiona" "is" "kind" "+")
triple3
Anne is red.
("Anne" "is" "red" "+")
((triple1) -> (rule6 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is cold.
("Anne" "is" "cold" "+")
((((triple1) -> (rule6 % int2))) -> (rule1 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
int2