Anne is nice. Anne is rough. Anne is round. Charlie is nice. Charlie is rough. Charlie is not round. Charlie is young. Harry is big. Harry is green. Harry is rough. All round people are not green. If Charlie is round and Charlie is green then Charlie is not rough. If Charlie is rough and Charlie is not green then Charlie is not red. If someone is rough and not round then they are nice. If someone is nice and not green then they are rough. If someone is nice and not rough then they are red.
Anne is nice.
("Anne" "is" "nice" "+")
Anne is rough.
("Anne" "is" "rough" "+")
Anne is round.
("Anne" "is" "round" "+")
Charlie is nice.
("Charlie" "is" "nice" "+")
Charlie is rough.
("Charlie" "is" "rough" "+")
Charlie is not round.
("Charlie" "is" "round" "-")
Charlie is young.
("Charlie" "is" "young" "+")
Harry is big.
("Harry" "is" "big" "+")
Harry is green.
("Harry" "is" "green" "+")
Harry is rough.
("Harry" "is" "rough" "+")
All round people are not green.
((("someone" "is" "round" "+")) -> ("someone" "is" "green" "-"))
If Charlie is round and Charlie is green then Charlie is not rough.
((("Charlie" "is" "round" "+") ("Charlie" "is" "green" "+")) -> ("Charlie" "is" "rough" "-"))
If Charlie is rough and Charlie is not green then Charlie is not red.
((("Charlie" "is" "rough" "+") ("Charlie" "is" "green" "~")) -> ("Charlie" "is" "red" "-"))
If someone is rough and not round then they are nice.
((("someone" "is" "rough" "+") ("someone" "is" "round" "~")) -> ("someone" "is" "nice" "+"))
If someone is nice and not green then they are rough.
((("someone" "is" "nice" "+") ("someone" "is" "green" "~")) -> ("someone" "is" "rough" "+"))
If someone is nice and not rough then they are red.
((("someone" "is" "nice" "+") ("someone" "is" "rough" "~")) -> ("someone" "is" "red" "+"))
Charlie is young.
True
1
proof
[(triple7)]
("Charlie" "is" "young" "+")
triple7
Anne is not rough.
False
1
inv-proof
[(triple2 OR ((triple1 ((triple3) -> rule1)) -> rule5))]
("Anne" "is" "rough" "-")
triple2
((triple1 ((triple3) -> (rule1 % int2))) -> (rule5 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is not green.
("Anne" "is" "green" "-")
int2
Anne is not green.
True
2
proof
[(((triple3) -> rule1))]
("Anne" "is" "green" "-")
((triple3) -> (rule1 % int1))
Anne is not green.
("Anne" "is" "green" "-")
int1
Anne is green.
False
2
inv-proof
[(((triple3) -> rule1))]
("Anne" "is" "green" "+")
((triple3) -> (rule1 % int1))
Anne is not green.
("Anne" "is" "green" "-")
int1
Anne is not red.
Unknown
inv-rconc
[@1: Anne is red.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Anne" "is" "red" "-")
Harry is nice.
Unknown
rconc
[@1: Harry is nice.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Harry" "is" "nice" "+")
Harry is not round.
Unknown
inv-random
[@0: Harry is round.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "round" "-")
Charlie is big.
Unknown
random
[@0: Charlie is big.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "big" "+")
@0: Anne is nice.[(triple1)] Anne is rough.[(triple2 OR ((triple1 ((triple3) -> rule1)) -> rule5))] Anne is round.[(triple3)] Charlie is nice.[(triple4 OR ((triple5 triple6) -> rule4))] Charlie is not round.[(triple6)] Charlie is rough.[(triple5)] Charlie is young.[(triple7)] Harry is big.[(triple8)] Harry is green.[(triple9)] Harry is rough.[(triple10)] @1: Anne is not green.[(((triple3) -> rule1))]
Anne is nice.
("Anne" "is" "nice" "+")
triple1
Anne is rough.
("Anne" "is" "rough" "+")
triple2
((triple1 ((triple3) -> (rule1 % int2))) -> (rule5 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is not green.
("Anne" "is" "green" "-")
int2
Anne is round.
("Anne" "is" "round" "+")
triple3
Charlie is nice.
("Charlie" "is" "nice" "+")
triple4
((triple5 triple6) -> (rule4 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is not round.
("Charlie" "is" "round" "-")
triple6
Charlie is rough.
("Charlie" "is" "rough" "+")
triple5
Charlie is young.
("Charlie" "is" "young" "+")
triple7
Harry is big.
("Harry" "is" "big" "+")
triple8
Harry is green.
("Harry" "is" "green" "+")
triple9
Harry is rough.
("Harry" "is" "rough" "+")
triple10
Anne is not green.
("Anne" "is" "green" "-")
((triple3) -> (rule1 % int1))
Anne is not green.
("Anne" "is" "green" "-")
int1