Dave is white. Erin is green. Fiona is nice. If someone is nice then they are blue. If Dave is blue and Dave is red then Dave is nice. If Dave is red then Dave is blue.
Dave is white.
("Dave" "is" "white" "+")
Erin is green.
("Erin" "is" "green" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
If someone is nice then they are blue.
((("someone" "is" "nice" "+")) -> ("someone" "is" "blue" "+"))
If Dave is blue and Dave is red then Dave is nice.
((("Dave" "is" "blue" "+") ("Dave" "is" "red" "+")) -> ("Dave" "is" "nice" "+"))
If Dave is red then Dave is blue.
((("Dave" "is" "red" "+")) -> ("Dave" "is" "blue" "+"))
Dave is white.
True
1
proof
[(triple1)]
("Dave" "is" "white" "+")
triple1
Fiona is not nice.
False
1
inv-proof
[(triple3)]
("Fiona" "is" "nice" "-")
triple3
Dave is not blue.
Unknown
inv-rconc
[@2: Dave is blue.[CWA. Example of deepest failure = (rule1 <- rule2 <- FAIL)]]
("Dave" "is" "blue" "-")
Dave is young.
Unknown
random
[@0: Dave is young.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "young" "+")
@0: Dave is white.[(triple1)] Erin is green.[(triple2)] Fiona is nice.[(triple3)] @1: Fiona is blue.[(((triple3) -> rule1))]
Dave is white.
("Dave" "is" "white" "+")
triple1
Erin is green.
("Erin" "is" "green" "+")
triple2
Fiona is nice.
("Fiona" "is" "nice" "+")
triple3
Fiona is blue.
("Fiona" "is" "blue" "+")
((triple3) -> (rule1 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1