Anne is rough. All rough people are green. Nice, green people are smart. All green people are nice. If someone is nice and not green then they are not round. If Anne is young and Anne is not nice then Anne is round. If Anne is not round and Anne is not green then Anne is cold.
Anne is rough.
("Anne" "is" "rough" "+")
All rough people are green.
((("someone" "is" "rough" "+")) -> ("someone" "is" "green" "+"))
Nice, green people are smart.
((("someone" "is" "nice" "+") ("someone" "is" "green" "+")) -> ("someone" "is" "smart" "+"))
All green people are nice.
((("someone" "is" "green" "+")) -> ("someone" "is" "nice" "+"))
If someone is nice and not green then they are not round.
((("someone" "is" "nice" "+") ("someone" "is" "green" "~")) -> ("someone" "is" "round" "-"))
If Anne is young and Anne is not nice then Anne is round.
((("Anne" "is" "young" "+") ("Anne" "is" "nice" "~")) -> ("Anne" "is" "round" "+"))
If Anne is not round and Anne is not green then Anne is cold.
((("Anne" "is" "round" "~") ("Anne" "is" "green" "~")) -> ("Anne" "is" "cold" "+"))
Anne is rough.
True
1
proof
[(triple1)]
("Anne" "is" "rough" "+")
triple1
Anne is not rough.
False
1
inv-proof
[(triple1)]
("Anne" "is" "rough" "-")
triple1
Anne is green.
True
2
proof
[(((triple1) -> rule1))]
("Anne" "is" "green" "+")
((triple1) -> (rule1 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is not green.
False
2
inv-proof
[(((triple1) -> rule1))]
("Anne" "is" "green" "-")
((triple1) -> (rule1 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is nice.
True
3
proof
[(((((triple1) -> rule1)) -> rule3))]
("Anne" "is" "nice" "+")
((((triple1) -> (rule1 % int2))) -> (rule3 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Anne is not nice.
False
3
inv-proof
[(((((triple1) -> rule1)) -> rule3))]
("Anne" "is" "nice" "-")
((((triple1) -> (rule1 % int2))) -> (rule3 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Anne is smart.
True
6
proof
[(((((((triple1) -> rule1)) -> rule3) ((triple1) -> rule1)) -> rule2))]
("Anne" "is" "smart" "+")
((((((triple1) -> (rule1 % int3))) -> (rule3 % int2)) ((triple1) -> (rule1 % int3))) -> (rule2 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Anne is nice.
("Anne" "is" "nice" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
Anne is not smart.
False
6
inv-proof
[(((((((triple1) -> rule1)) -> rule3) ((triple1) -> rule1)) -> rule2))]
("Anne" "is" "smart" "-")
((((((triple1) -> (rule1 % int3))) -> (rule3 % int2)) ((triple1) -> (rule1 % int3))) -> (rule2 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Anne is nice.
("Anne" "is" "nice" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
Anne is not round.
Unknown
inv-rconc
[@1: Anne is round.[CWA. Example of deepest failure = (rule5 <- FAIL)]]
("Anne" "is" "round" "-")
Anne is cold.
Unknown
rconc
[@1: Anne is cold.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Anne" "is" "cold" "+")
@0: Anne is rough.[(triple1)] @1: Anne is green.[(((triple1) -> rule1))] @2: Anne is nice.[(((((triple1) -> rule1)) -> rule3))] @3: Anne is smart.[(((((((triple1) -> rule1)) -> rule3) ((triple1) -> rule1)) -> rule2))]
Anne is rough.
("Anne" "is" "rough" "+")
triple1
Anne is green.
("Anne" "is" "green" "+")
((triple1) -> (rule1 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is nice.
("Anne" "is" "nice" "+")
((((triple1) -> (rule1 % int2))) -> (rule3 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Anne is smart.
("Anne" "is" "smart" "+")
((((((triple1) -> (rule1 % int3))) -> (rule3 % int2)) ((triple1) -> (rule1 % int3))) -> (rule2 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Anne is nice.
("Anne" "is" "nice" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3