Anne is big. Anne is furry. Anne is green. Anne is rough. Charlie is smart. Fiona is big. Fiona is green. Gary is green. Gary is rough. Gary is smart. If someone is quiet then they are rough. If someone is big then they are furry. If someone is smart and big then they are quiet. If someone is big then they are green. If Charlie is quiet then Charlie is smart. Nice, green people are quiet. All nice, big people are furry. All quiet, green people are smart.
Anne is big.
("Anne" "is" "big" "+")
Anne is furry.
("Anne" "is" "furry" "+")
Anne is green.
("Anne" "is" "green" "+")
Anne is rough.
("Anne" "is" "rough" "+")
Charlie is smart.
("Charlie" "is" "smart" "+")
Fiona is big.
("Fiona" "is" "big" "+")
Fiona is green.
("Fiona" "is" "green" "+")
Gary is green.
("Gary" "is" "green" "+")
Gary is rough.
("Gary" "is" "rough" "+")
Gary is smart.
("Gary" "is" "smart" "+")
If someone is quiet then they are rough.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "rough" "+"))
If someone is big then they are furry.
((("someone" "is" "big" "+")) -> ("someone" "is" "furry" "+"))
If someone is smart and big then they are quiet.
((("someone" "is" "smart" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "quiet" "+"))
If someone is big then they are green.
((("someone" "is" "big" "+")) -> ("someone" "is" "green" "+"))
If Charlie is quiet then Charlie is smart.
((("Charlie" "is" "quiet" "+")) -> ("Charlie" "is" "smart" "+"))
Nice, green people are quiet.
((("someone" "is" "nice" "+") ("someone" "is" "green" "+")) -> ("someone" "is" "quiet" "+"))
All nice, big people are furry.
((("someone" "is" "nice" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "furry" "+"))
All quiet, green people are smart.
((("someone" "is" "quiet" "+") ("someone" "is" "green" "+")) -> ("someone" "is" "smart" "+"))
Gary is smart.
True
1
proof
[(triple10)]
("Gary" "is" "smart" "+")
triple10
Gary is not green.
False
1
inv-proof
[(triple8)]
("Gary" "is" "green" "-")
triple8
Fiona is furry.
True
2
proof
[(((triple6) -> rule2))]
("Fiona" "is" "furry" "+")
((triple6) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is not furry.
False
2
inv-proof
[(((triple6) -> rule2))]
("Fiona" "is" "furry" "-")
((triple6) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Anne is not smart.
Unknown
inv-rconc
[@2: Anne is smart.[CWA. Example of deepest failure = (rule8 <- rule3 <- FAIL)]]
("Anne" "is" "smart" "-")
Gary is quiet.
Unknown
rconc
[@1: Gary is quiet.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Gary" "is" "quiet" "+")
Fiona is not nice.
Unknown
inv-random
[@0: Fiona is nice.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "nice" "-")
Gary is nice.
Unknown
random
[@0: Gary is nice.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "nice" "+")
@0: Anne is big.[(triple1)] Anne is furry.[(triple2 OR ((triple1) -> rule2))] Anne is green.[(triple3 OR ((triple1) -> rule4))] Anne is rough.[(triple4)] Charlie is smart.[(triple5)] Fiona is big.[(triple6)] Fiona is green.[(triple7 OR ((triple6) -> rule4))] Gary is green.[(triple8)] Gary is rough.[(triple9)] Gary is smart.[(triple10)] @1: Fiona is furry.[(((triple6) -> rule2))]
Anne is big.
("Anne" "is" "big" "+")
triple1
Anne is furry.
("Anne" "is" "furry" "+")
triple2
((triple1) -> (rule2 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
triple3
((triple1) -> (rule4 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
triple4
Charlie is smart.
("Charlie" "is" "smart" "+")
triple5
Fiona is big.
("Fiona" "is" "big" "+")
triple6
Fiona is green.
("Fiona" "is" "green" "+")
triple7
((triple6) -> (rule4 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
triple8
Gary is rough.
("Gary" "is" "rough" "+")
triple9
Gary is smart.
("Gary" "is" "smart" "+")
triple10
Fiona is furry.
("Fiona" "is" "furry" "+")
((triple6) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1