Charlie is red. Dave is not white. Fiona is rough. Harry is white. If something is rough and white then it is not round. If Fiona is round then Fiona is not white. All red, round things are blue.
Charlie is red.
("Charlie" "is" "red" "+")
Dave is not white.
("Dave" "is" "white" "-")
Fiona is rough.
("Fiona" "is" "rough" "+")
Harry is white.
("Harry" "is" "white" "+")
If something is rough and white then it is not round.
((("something" "is" "rough" "+") ("something" "is" "white" "+")) -> ("something" "is" "round" "-"))
If Fiona is round then Fiona is not white.
((("Fiona" "is" "round" "+")) -> ("Fiona" "is" "white" "-"))
All red, round things are blue.
((("something" "is" "red" "+") ("something" "is" "round" "+")) -> ("something" "is" "blue" "+"))
Fiona is rough.
True
1
proof
[(triple3)]
("Fiona" "is" "rough" "+")
triple3
Dave is white.
False
1
inv-proof
[(triple2)]
("Dave" "is" "white" "+")
triple2
Harry is not blue.
Unknown
inv-rconc
[@1: Harry is blue.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Harry" "is" "blue" "-")
Charlie is round.
Unknown
random
[@0: Charlie is round.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "round" "+")
@0: Charlie is red.[(triple1)] Dave is not white.[(triple2)] Fiona is rough.[(triple3)] Harry is white.[(triple4)]
Charlie is red.
("Charlie" "is" "red" "+")
triple1
Dave is not white.
("Dave" "is" "white" "-")
triple2
Fiona is rough.
("Fiona" "is" "rough" "+")
triple3
Harry is white.
("Harry" "is" "white" "+")
triple4