Anne is nice. Dave is green. Fiona is blue. Gary is green. If Anne is white then Anne is green. If Gary is green and Gary is smart then Gary is blue. Kind, blue people are white. All nice, smart people are green. All smart, green people are blue. Blue people are kind.
Anne is nice.
("Anne" "is" "nice" "+")
Dave is green.
("Dave" "is" "green" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Gary is green.
("Gary" "is" "green" "+")
If Anne is white then Anne is green.
((("Anne" "is" "white" "+")) -> ("Anne" "is" "green" "+"))
If Gary is green and Gary is smart then Gary is blue.
((("Gary" "is" "green" "+") ("Gary" "is" "smart" "+")) -> ("Gary" "is" "blue" "+"))
Kind, blue people are white.
((("someone" "is" "kind" "+") ("someone" "is" "blue" "+")) -> ("someone" "is" "white" "+"))
All nice, smart people are green.
((("someone" "is" "nice" "+") ("someone" "is" "smart" "+")) -> ("someone" "is" "green" "+"))
All smart, green people are blue.
((("someone" "is" "smart" "+") ("someone" "is" "green" "+")) -> ("someone" "is" "blue" "+"))
Blue people are kind.
((("someone" "is" "blue" "+")) -> ("someone" "is" "kind" "+"))
Fiona is blue.
True
1
proof
[(triple3)]
("Fiona" "is" "blue" "+")
triple3
Gary is not green.
False
1
inv-proof
[(triple4)]
("Gary" "is" "green" "-")
triple4
Gary is not kind.
Unknown
inv-rconc
[@2: Gary is kind.[CWA. Example of deepest failure = (rule6 <- rule2 <- FAIL)]]
("Gary" "is" "kind" "-")
Anne is rough.
Unknown
random
[@0: Anne is rough.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "rough" "+")
@0: Anne is nice.[(triple1)] Dave is green.[(triple2)] Fiona is blue.[(triple3)] Gary is green.[(triple4)] @1: Fiona is kind.[(((triple3) -> rule6))] @2: Fiona is white.[(((((triple3) -> rule6) triple3) -> rule3))]
Anne is nice.
("Anne" "is" "nice" "+")
triple1
Dave is green.
("Dave" "is" "green" "+")
triple2
Fiona is blue.
("Fiona" "is" "blue" "+")
triple3
Gary is green.
("Gary" "is" "green" "+")
triple4
Fiona is kind.
("Fiona" "is" "kind" "+")
((triple3) -> (rule6 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
((((triple3) -> (rule6 % int2)) triple3) -> (rule3 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2