Anne is cold. Anne is kind. Anne is white. Bob is cold. Bob is furry. Bob is green. Bob is kind. Bob is rough. Bob is round. Fiona is kind. If Anne is kind and Anne is furry then Anne is rough. If Bob is furry then Bob is green. All kind, furry people are white. If someone is white and rough then they are green. Rough people are kind. If Fiona is white and Fiona is rough then Fiona is kind. All white people are furry. If Anne is furry then Anne is white.
Anne is cold.
("Anne" "is" "cold" "+")
Anne is kind.
("Anne" "is" "kind" "+")
Anne is white.
("Anne" "is" "white" "+")
Bob is cold.
("Bob" "is" "cold" "+")
Bob is furry.
("Bob" "is" "furry" "+")
Bob is green.
("Bob" "is" "green" "+")
Bob is kind.
("Bob" "is" "kind" "+")
Bob is rough.
("Bob" "is" "rough" "+")
Bob is round.
("Bob" "is" "round" "+")
Fiona is kind.
("Fiona" "is" "kind" "+")
If Anne is kind and Anne is furry then Anne is rough.
((("Anne" "is" "kind" "+") ("Anne" "is" "furry" "+")) -> ("Anne" "is" "rough" "+"))
If Bob is furry then Bob is green.
((("Bob" "is" "furry" "+")) -> ("Bob" "is" "green" "+"))
All kind, furry people are white.
((("someone" "is" "kind" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "white" "+"))
If someone is white and rough then they are green.
((("someone" "is" "white" "+") ("someone" "is" "rough" "+")) -> ("someone" "is" "green" "+"))
Rough people are kind.
((("someone" "is" "rough" "+")) -> ("someone" "is" "kind" "+"))
If Fiona is white and Fiona is rough then Fiona is kind.
((("Fiona" "is" "white" "+") ("Fiona" "is" "rough" "+")) -> ("Fiona" "is" "kind" "+"))
All white people are furry.
((("someone" "is" "white" "+")) -> ("someone" "is" "furry" "+"))
If Anne is furry then Anne is white.
((("Anne" "is" "furry" "+")) -> ("Anne" "is" "white" "+"))
Bob is round.
True
1
proof
[(triple9)]
("Bob" "is" "round" "+")
triple9
Fiona is not kind.
False
1
inv-proof
[(triple10)]
("Fiona" "is" "kind" "-")
triple10
Anne is furry.
True
2
proof
[(((triple3) -> rule7))]
("Anne" "is" "furry" "+")
((triple3) -> (rule7 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Bob is not white.
False
3
inv-proof
[(((triple7 triple5) -> rule3) OR ((((triple8) -> rule5) triple5) -> rule3))]
("Bob" "is" "white" "-")
((triple7 triple5) -> (rule3 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
((((triple8) -> (rule5 % int2)) triple5) -> (rule3 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
Anne is rough.
True
4
proof
[(((triple2 ((triple3) -> rule7)) -> rule1))]
("Anne" "is" "rough" "+")
((triple2 ((triple3) -> (rule7 % int2))) -> (rule1 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is not rough.
False
4
inv-proof
[(((triple2 ((triple3) -> rule7)) -> rule1))]
("Anne" "is" "rough" "-")
((triple2 ((triple3) -> (rule7 % int2))) -> (rule1 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is green.
True
6
proof
[(((triple3 ((triple2 ((triple3) -> rule7)) -> rule1)) -> rule4))]
("Anne" "is" "green" "+")
((triple3 ((triple2 ((triple3) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule4 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is furry.
("Anne" "is" "furry" "+")
int3
Anne is not green.
False
6
inv-proof
[(((triple3 ((triple2 ((triple3) -> rule7)) -> rule1)) -> rule4))]
("Anne" "is" "green" "-")
((triple3 ((triple2 ((triple3) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule4 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is furry.
("Anne" "is" "furry" "+")
int3
Fiona is not green.
Unknown
inv-rconc
[@1: Fiona is green.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Fiona" "is" "green" "-")
Fiona is furry.
Unknown
rconc
[@2: Fiona is furry.[CWA. Example of deepest failure = (rule7 <- rule3 <- FAIL)]]
("Fiona" "is" "furry" "+")
Fiona is not white.
Unknown
inv-rconc
[@2: Fiona is white.[CWA. Example of deepest failure = (rule3 <- rule7 <- FAIL)]]
("Fiona" "is" "white" "-")
Fiona is cold.
Unknown
random
[@0: Fiona is cold.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "cold" "+")
Fiona is not rough.
Unknown
inv-random
[@0: Fiona is rough.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "rough" "-")
Anne is round.
Unknown
random
[@0: Anne is round.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "round" "+")
@0: Anne is cold.[(triple1)] Anne is kind.[(triple2)] Anne is white.[(triple3)] Bob is cold.[(triple4)] Bob is furry.[(triple5)] Bob is green.[(triple6 OR ((triple5) -> rule2) OR ((((triple7 triple5) -> rule3) triple8) -> rule4) OR ((((((triple8) -> rule5) triple5) -> rule3) triple8) -> rule4))] Bob is kind.[(triple7 OR ((triple8) -> rule5))] Bob is rough.[(triple8)] Bob is round.[(triple9)] Fiona is kind.[(triple10)] @1: Anne is furry.[(((triple3) -> rule7))] Bob is white.[(((triple7 triple5) -> rule3) OR ((((triple8) -> rule5) triple5) -> rule3))] @2: Anne is rough.[(((triple2 ((triple3) -> rule7)) -> rule1))] @3: Anne is green.[(((triple3 ((triple2 ((triple3) -> rule7)) -> rule1)) -> rule4))]
Anne is cold.
("Anne" "is" "cold" "+")
triple1
Anne is kind.
("Anne" "is" "kind" "+")
triple2
Anne is white.
("Anne" "is" "white" "+")
triple3
Bob is cold.
("Bob" "is" "cold" "+")
triple4
Bob is furry.
("Bob" "is" "furry" "+")
triple5
Bob is green.
("Bob" "is" "green" "+")
triple6
((triple5) -> (rule2 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
((((triple7 triple5) -> (rule3 % int2)) triple8) -> (rule4 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
((((((triple8) -> (rule5 % int3)) triple5) -> (rule3 % int2)) triple8) -> (rule4 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Bob is kind.
("Bob" "is" "kind" "+")
int3
Bob is kind.
("Bob" "is" "kind" "+")
triple7
((triple8) -> (rule5 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
triple8
Bob is round.
("Bob" "is" "round" "+")
triple9
Fiona is kind.
("Fiona" "is" "kind" "+")
triple10
Anne is furry.
("Anne" "is" "furry" "+")
((triple3) -> (rule7 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
((triple7 triple5) -> (rule3 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
((((triple8) -> (rule5 % int2)) triple5) -> (rule3 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
Anne is rough.
("Anne" "is" "rough" "+")
((triple2 ((triple3) -> (rule7 % int2))) -> (rule1 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
((triple3 ((triple2 ((triple3) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule4 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is furry.
("Anne" "is" "furry" "+")
int3