Anne is kind. Anne is smart. Bob is nice. Bob is young. Fiona is red. Fiona is smart. Fiona is young. Furry people are not big. If someone is kind then they are red. If someone is red then they are furry.
Anne is kind.
("Anne" "is" "kind" "+")
Anne is smart.
("Anne" "is" "smart" "+")
Bob is nice.
("Bob" "is" "nice" "+")
Bob is young.
("Bob" "is" "young" "+")
Fiona is red.
("Fiona" "is" "red" "+")
Fiona is smart.
("Fiona" "is" "smart" "+")
Fiona is young.
("Fiona" "is" "young" "+")
Furry people are not big.
((("someone" "is" "furry" "+")) -> ("someone" "is" "big" "-"))
If someone is kind then they are red.
((("someone" "is" "kind" "+")) -> ("someone" "is" "red" "+"))
If someone is red then they are furry.
((("someone" "is" "red" "+")) -> ("someone" "is" "furry" "+"))
Fiona is young.
True
1
proof
[(triple7)]
("Fiona" "is" "young" "+")
triple7
Fiona is not red.
False
1
inv-proof
[(triple5)]
("Fiona" "is" "red" "-")
triple5
Fiona is furry.
True
2
proof
[(((triple5) -> rule3))]
("Fiona" "is" "furry" "+")
((triple5) -> (rule3 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Anne is not red.
False
2
inv-proof
[(((triple1) -> rule2))]
("Anne" "is" "red" "-")
((triple1) -> (rule2 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Fiona is not big.
True
3
proof
[(((((triple5) -> rule3)) -> rule1))]
("Fiona" "is" "big" "-")
((((triple5) -> (rule3 % int2))) -> (rule1 % int1))
Fiona is not big.
("Fiona" "is" "big" "-")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Anne is not furry.
False
3
inv-proof
[(((((triple1) -> rule2)) -> rule3))]
("Anne" "is" "furry" "-")
((((triple1) -> (rule2 % int2))) -> (rule3 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
int2
Anne is not big.
True
4
proof
[(((((((triple1) -> rule2)) -> rule3)) -> rule1))]
("Anne" "is" "big" "-")
((((((triple1) -> (rule2 % int3))) -> (rule3 % int2))) -> (rule1 % int1))
Anne is not big.
("Anne" "is" "big" "-")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is red.
("Anne" "is" "red" "+")
int3
Anne is big.
False
4
inv-proof
[(((((((triple1) -> rule2)) -> rule3)) -> rule1))]
("Anne" "is" "big" "+")
((((((triple1) -> (rule2 % int3))) -> (rule3 % int2))) -> (rule1 % int1))
Anne is not big.
("Anne" "is" "big" "-")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is red.
("Anne" "is" "red" "+")
int3
Bob is not furry.
Unknown
inv-rconc
[@2: Bob is furry.[CWA. Example of deepest failure = (rule3 <- rule2 <- FAIL)]]
("Bob" "is" "furry" "-")
Bob is red.
Unknown
rconc
[@1: Bob is red.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Bob" "is" "red" "+")
Bob is not kind.
Unknown
inv-random
[@0: Bob is kind.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "kind" "-")
Fiona is nice.
Unknown
random
[@0: Fiona is nice.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "nice" "+")
Bob is not smart.
Unknown
inv-random
[@0: Bob is smart.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "smart" "-")
Anne is nice.
Unknown
random
[@0: Anne is nice.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "nice" "+")
Anne is not young.
Unknown
inv-random
[@0: Anne is young.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "young" "-")
Bob is big.
Unknown
random
[@0: Bob is big.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "big" "+")
@0: Anne is kind.[(triple1)] Anne is smart.[(triple2)] Bob is nice.[(triple3)] Bob is young.[(triple4)] Fiona is red.[(triple5)] Fiona is smart.[(triple6)] Fiona is young.[(triple7)] @1: Anne is red.[(((triple1) -> rule2))] Fiona is furry.[(((triple5) -> rule3))] @2: Anne is furry.[(((((triple1) -> rule2)) -> rule3))] Fiona is not big.[(((((triple5) -> rule3)) -> rule1))] @3: Anne is not big.[(((((((triple1) -> rule2)) -> rule3)) -> rule1))]
Anne is kind.
("Anne" "is" "kind" "+")
triple1
Anne is smart.
("Anne" "is" "smart" "+")
triple2
Bob is nice.
("Bob" "is" "nice" "+")
triple3
Bob is young.
("Bob" "is" "young" "+")
triple4
Fiona is red.
("Fiona" "is" "red" "+")
triple5
Fiona is smart.
("Fiona" "is" "smart" "+")
triple6
Fiona is young.
("Fiona" "is" "young" "+")
triple7
Anne is red.
("Anne" "is" "red" "+")
((triple1) -> (rule2 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
((triple5) -> (rule3 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
((((triple1) -> (rule2 % int2))) -> (rule3 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
int2
Fiona is not big.
("Fiona" "is" "big" "-")
((((triple5) -> (rule3 % int2))) -> (rule1 % int1))
Fiona is not big.
("Fiona" "is" "big" "-")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Anne is not big.
("Anne" "is" "big" "-")
((((((triple1) -> (rule2 % int3))) -> (rule3 % int2))) -> (rule1 % int1))
Anne is not big.
("Anne" "is" "big" "-")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is red.
("Anne" "is" "red" "+")
int3