Anne is white. Bob is big. Fiona is big. Fiona is green. Gary is big. Gary is furry. Gary is not green. If Anne is green then Anne is not big. White things are green. If Fiona is big then Fiona is white. If something is kind then it is not white. Round things are furry. If Fiona is big and Fiona is white then Fiona is red.
Anne is white.
("Anne" "is" "white" "+")
Bob is big.
("Bob" "is" "big" "+")
Fiona is big.
("Fiona" "is" "big" "+")
Fiona is green.
("Fiona" "is" "green" "+")
Gary is big.
("Gary" "is" "big" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is not green.
("Gary" "is" "green" "-")
If Anne is green then Anne is not big.
((("Anne" "is" "green" "+")) -> ("Anne" "is" "big" "-"))
White things are green.
((("something" "is" "white" "+")) -> ("something" "is" "green" "+"))
If Fiona is big then Fiona is white.
((("Fiona" "is" "big" "+")) -> ("Fiona" "is" "white" "+"))
If something is kind then it is not white.
((("something" "is" "kind" "+")) -> ("something" "is" "white" "-"))
Round things are furry.
((("something" "is" "round" "+")) -> ("something" "is" "furry" "+"))
If Fiona is big and Fiona is white then Fiona is red.
((("Fiona" "is" "big" "+") ("Fiona" "is" "white" "+")) -> ("Fiona" "is" "red" "+"))
Fiona is big.
True
1
proof
[(triple3)]
("Fiona" "is" "big" "+")
triple3
Fiona is not green.
False
1
inv-proof
[(triple4 OR ((((triple3) -> rule3)) -> rule2))]
("Fiona" "is" "green" "-")
triple4
((((triple3) -> (rule3 % int2))) -> (rule2 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Anne is green.
True
2
proof
[(((triple1) -> rule2))]
("Anne" "is" "green" "+")
((triple1) -> (rule2 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Fiona is not white.
False
2
inv-proof
[(((triple3) -> rule3))]
("Fiona" "is" "white" "-")
((triple3) -> (rule3 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Anne is not big.
True
3
proof
[(((((triple1) -> rule2)) -> rule1))]
("Anne" "is" "big" "-")
((((triple1) -> (rule2 % int2))) -> (rule1 % int1))
Anne is not big.
("Anne" "is" "big" "-")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Anne is big.
False
3
inv-proof
[(((((triple1) -> rule2)) -> rule1))]
("Anne" "is" "big" "+")
((((triple1) -> (rule2 % int2))) -> (rule1 % int1))
Anne is not big.
("Anne" "is" "big" "-")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Anne is not furry.
Unknown
inv-rconc
[@1: Anne is furry.[CWA. Example of deepest failure = (rule5 <- FAIL)]]
("Anne" "is" "furry" "-")
Bob is green.
Unknown
rconc
[@1: Bob is green.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Bob" "is" "green" "+")
Bob is not furry.
Unknown
inv-rconc
[@1: Bob is furry.[CWA. Example of deepest failure = (rule5 <- FAIL)]]
("Bob" "is" "furry" "-")
Fiona is round.
Unknown
random
[@0: Fiona is round.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "round" "+")
Anne is not kind.
Unknown
inv-random
[@0: Anne is kind.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "kind" "-")
Fiona is kind.
Unknown
random
[@0: Fiona is kind.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "kind" "+")
@0: Anne is white.[(triple1)] Bob is big.[(triple2)] Fiona is big.[(triple3)] Fiona is green.[(triple4 OR ((((triple3) -> rule3)) -> rule2))] Gary is big.[(triple5)] Gary is furry.[(triple6)] Gary is not green.[(triple7)] @1: Anne is green.[(((triple1) -> rule2))] Fiona is white.[(((triple3) -> rule3))] @2: Anne is not big.[(((((triple1) -> rule2)) -> rule1))] Fiona is red.[(((triple3 ((triple3) -> rule3)) -> rule6))]
Anne is white.
("Anne" "is" "white" "+")
triple1
Bob is big.
("Bob" "is" "big" "+")
triple2
Fiona is big.
("Fiona" "is" "big" "+")
triple3
Fiona is green.
("Fiona" "is" "green" "+")
triple4
((((triple3) -> (rule3 % int2))) -> (rule2 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Gary is big.
("Gary" "is" "big" "+")
triple5
Gary is furry.
("Gary" "is" "furry" "+")
triple6
Gary is not green.
("Gary" "is" "green" "-")
triple7
Anne is green.
("Anne" "is" "green" "+")
((triple1) -> (rule2 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
((triple3) -> (rule3 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Anne is not big.
("Anne" "is" "big" "-")
((((triple1) -> (rule2 % int2))) -> (rule1 % int1))
Anne is not big.
("Anne" "is" "big" "-")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Fiona is red.
("Fiona" "is" "red" "+")
((triple3 ((triple3) -> (rule3 % int2))) -> (rule6 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2