Anne is green. Anne is kind. Anne is nice. Bob is nice. Charlie is furry. Charlie is red. Erin is blue. Furry, red people are green. All blue, kind people are red. Blue, furry people are quiet. All kind, quiet people are blue. Furry people are nice. Furry, quiet people are blue. If someone is quiet then they are nice. Quiet people are green.
Anne is green.
("Anne" "is" "green" "+")
Anne is kind.
("Anne" "is" "kind" "+")
Anne is nice.
("Anne" "is" "nice" "+")
Bob is nice.
("Bob" "is" "nice" "+")
Charlie is furry.
("Charlie" "is" "furry" "+")
Charlie is red.
("Charlie" "is" "red" "+")
Erin is blue.
("Erin" "is" "blue" "+")
Furry, red people are green.
((("someone" "is" "furry" "+") ("someone" "is" "red" "+")) -> ("someone" "is" "green" "+"))
All blue, kind people are red.
((("someone" "is" "blue" "+") ("someone" "is" "kind" "+")) -> ("someone" "is" "red" "+"))
Blue, furry people are quiet.
((("someone" "is" "blue" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "quiet" "+"))
All kind, quiet people are blue.
((("someone" "is" "kind" "+") ("someone" "is" "quiet" "+")) -> ("someone" "is" "blue" "+"))
Furry people are nice.
((("someone" "is" "furry" "+")) -> ("someone" "is" "nice" "+"))
Furry, quiet people are blue.
((("someone" "is" "furry" "+") ("someone" "is" "quiet" "+")) -> ("someone" "is" "blue" "+"))
If someone is quiet then they are nice.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "nice" "+"))
Quiet people are green.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "green" "+"))
Anne is kind.
True
1
proof
[(triple2)]
("Anne" "is" "kind" "+")
triple2
Erin is not blue.
False
1
inv-proof
[(triple7)]
("Erin" "is" "blue" "-")
triple7
Bob is not green.
Unknown
inv-rconc
[@2: Bob is green.[CWA. Example of deepest failure = (rule8 <- rule3 <- FAIL)]]
("Bob" "is" "green" "-")
Bob is kind.
Unknown
random
[@0: Bob is kind.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "kind" "+")
@0: Anne is green.[(triple1)] Anne is kind.[(triple2)] Anne is nice.[(triple3)] Bob is nice.[(triple4)] Charlie is furry.[(triple5)] Charlie is red.[(triple6)] Erin is blue.[(triple7)] @1: Charlie is green.[(((triple5 triple6) -> rule1))] Charlie is nice.[(((triple5) -> rule5))]
Anne is green.
("Anne" "is" "green" "+")
triple1
Anne is kind.
("Anne" "is" "kind" "+")
triple2
Anne is nice.
("Anne" "is" "nice" "+")
triple3
Bob is nice.
("Bob" "is" "nice" "+")
triple4
Charlie is furry.
("Charlie" "is" "furry" "+")
triple5
Charlie is red.
("Charlie" "is" "red" "+")
triple6
Erin is blue.
("Erin" "is" "blue" "+")
triple7
Charlie is green.
("Charlie" "is" "green" "+")
((triple5 triple6) -> (rule1 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
((triple5) -> (rule5 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1