Bob is white. Dave is red. Fiona is white. Gary is not kind. All kind, white people are furry. If someone is white then they are not furry. All rough people are cold. All white people are not kind. If someone is white then they are not kind. If Dave is kind and Dave is not white then Dave is rough.
Bob is white.
("Bob" "is" "white" "+")
Dave is red.
("Dave" "is" "red" "+")
Fiona is white.
("Fiona" "is" "white" "+")
Gary is not kind.
("Gary" "is" "kind" "-")
All kind, white people are furry.
((("someone" "is" "kind" "+") ("someone" "is" "white" "+")) -> ("someone" "is" "furry" "+"))
If someone is white then they are not furry.
((("someone" "is" "white" "+")) -> ("someone" "is" "furry" "-"))
All rough people are cold.
((("someone" "is" "rough" "+")) -> ("someone" "is" "cold" "+"))
All white people are not kind.
((("someone" "is" "white" "+")) -> ("someone" "is" "kind" "-"))
If someone is white then they are not kind.
((("someone" "is" "white" "+")) -> ("someone" "is" "kind" "-"))
If Dave is kind and Dave is not white then Dave is rough.
((("Dave" "is" "kind" "+") ("Dave" "is" "white" "~")) -> ("Dave" "is" "rough" "+"))
Fiona is white.
True
1
proof
[(triple3)]
("Fiona" "is" "white" "+")
triple3
Dave is not red.
False
1
inv-proof
[(triple2)]
("Dave" "is" "red" "-")
triple2
Bob is not furry.
True
2
proof
[(((triple1) -> rule2))]
("Bob" "is" "furry" "-")
((triple1) -> (rule2 % int1))
Bob is not furry.
("Bob" "is" "furry" "-")
int1
Bob is kind.
False
2
inv-proof
[(((triple1) -> rule4) OR ((triple1) -> rule5))]
("Bob" "is" "kind" "+")
((triple1) -> (rule4 % int1))
Bob is not kind.
("Bob" "is" "kind" "-")
int1
((triple1) -> (rule5 % int1))
Bob is not kind.
("Bob" "is" "kind" "-")
int1
Dave is not cold.
Unknown
inv-rconc
[@2: Dave is cold.[CWA. Example of deepest failure = (rule3 <- rule6 <- FAIL)]]
("Dave" "is" "cold" "-")
Gary is cold.
Unknown
rconc
[@1: Gary is cold.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Gary" "is" "cold" "+")
Bob is not red.
Unknown
inv-random
[@0: Bob is red.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "red" "-")
Dave is kind.
Unknown
random
[@0: Dave is kind.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "kind" "+")
@0: Bob is white.[(triple1)] Dave is red.[(triple2)] Fiona is white.[(triple3)] Gary is not kind.[(triple4)] @1: Bob is not furry.[(((triple1) -> rule2))] Bob is not kind.[(((triple1) -> rule4) OR ((triple1) -> rule5))] Fiona is not furry.[(((triple3) -> rule2))] Fiona is not kind.[(((triple3) -> rule4) OR ((triple3) -> rule5))]
Bob is white.
("Bob" "is" "white" "+")
triple1
Dave is red.
("Dave" "is" "red" "+")
triple2
Fiona is white.
("Fiona" "is" "white" "+")
triple3
Gary is not kind.
("Gary" "is" "kind" "-")
triple4
Bob is not furry.
("Bob" "is" "furry" "-")
((triple1) -> (rule2 % int1))
Bob is not furry.
("Bob" "is" "furry" "-")
int1
Bob is not kind.
("Bob" "is" "kind" "-")
((triple1) -> (rule4 % int1))
Bob is not kind.
("Bob" "is" "kind" "-")
int1
((triple1) -> (rule5 % int1))
Bob is not kind.
("Bob" "is" "kind" "-")
int1
Fiona is not furry.
("Fiona" "is" "furry" "-")
((triple3) -> (rule2 % int1))
Fiona is not furry.
("Fiona" "is" "furry" "-")
int1
Fiona is not kind.
("Fiona" "is" "kind" "-")
((triple3) -> (rule4 % int1))
Fiona is not kind.
("Fiona" "is" "kind" "-")
int1
((triple3) -> (rule5 % int1))
Fiona is not kind.
("Fiona" "is" "kind" "-")
int1