Anne is blue. Bob is nice. Fiona is nice. If Fiona is smart then Fiona is quiet. All quiet people are red. All smart, quiet people are red. All nice people are green. Green people are blue. All blue people are nice.
Anne is blue.
("Anne" "is" "blue" "+")
Bob is nice.
("Bob" "is" "nice" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
If Fiona is smart then Fiona is quiet.
((("Fiona" "is" "smart" "+")) -> ("Fiona" "is" "quiet" "+"))
All quiet people are red.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "red" "+"))
All smart, quiet people are red.
((("someone" "is" "smart" "+") ("someone" "is" "quiet" "+")) -> ("someone" "is" "red" "+"))
All nice people are green.
((("someone" "is" "nice" "+")) -> ("someone" "is" "green" "+"))
Green people are blue.
((("someone" "is" "green" "+")) -> ("someone" "is" "blue" "+"))
All blue people are nice.
((("someone" "is" "blue" "+")) -> ("someone" "is" "nice" "+"))
Bob is nice.
True
1
proof
[(triple2)]
("Bob" "is" "nice" "+")
triple2
Anne is not blue.
False
1
inv-proof
[(triple1)]
("Anne" "is" "blue" "-")
triple1
Anne is nice.
True
2
proof
[(((triple1) -> rule6))]
("Anne" "is" "nice" "+")
((triple1) -> (rule6 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is not nice.
False
2
inv-proof
[(((triple1) -> rule6))]
("Anne" "is" "nice" "-")
((triple1) -> (rule6 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Fiona is not red.
Unknown
inv-rconc
[@2: Fiona is red.[CWA. Example of deepest failure = (rule2 <- rule1 <- FAIL)]]
("Fiona" "is" "red" "-")
Bob is red.
Unknown
rconc
[@1: Bob is red.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Bob" "is" "red" "+")
Anne is not smart.
Unknown
inv-random
[@0: Anne is smart.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "smart" "-")
Fiona is young.
Unknown
random
[@0: Fiona is young.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "young" "+")
@0: Anne is blue.[(triple1)] Bob is nice.[(triple2)] Fiona is nice.[(triple3)] @1: Anne is nice.[(((triple1) -> rule6))] Bob is green.[(((triple2) -> rule4))] Fiona is green.[(((triple3) -> rule4))] @2: Anne is green.[(((((triple1) -> rule6)) -> rule4))] Bob is blue.[(((((triple2) -> rule4)) -> rule5))] Fiona is blue.[(((((triple3) -> rule4)) -> rule5))]
Anne is blue.
("Anne" "is" "blue" "+")
triple1
Bob is nice.
("Bob" "is" "nice" "+")
triple2
Fiona is nice.
("Fiona" "is" "nice" "+")
triple3
Anne is nice.
("Anne" "is" "nice" "+")
((triple1) -> (rule6 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Bob is green.
("Bob" "is" "green" "+")
((triple2) -> (rule4 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
((triple3) -> (rule4 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
((((triple1) -> (rule6 % int2))) -> (rule4 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is nice.
("Anne" "is" "nice" "+")
int2
Bob is blue.
("Bob" "is" "blue" "+")
((((triple2) -> (rule4 % int2))) -> (rule5 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Bob is green.
("Bob" "is" "green" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
((((triple3) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2