CADiZ

Reference manual / Z-related commands / Proof rule commands / elimination


The elimination command performs proof steps that break up whole antecedent or consequent logical predicates into smaller antecedents and consequents. Those that generate a single sub-goal are as follows.

| \lnot p \vdash?   \trarrow   \vdash? p
| \lnot e \vdash?   \trarrow   \vdash? e
\vdash? \lnot p   \trarrow   | p \vdash?
\vdash? \lnot e   \trarrow   | e \vdash?
| p1 \land p2 \vdash?   \trarrow   | p1, p2 \vdash?
| e1 \land e2 \vdash?   \trarrow   | e1, e2 \vdash?
\vdash? p1 \lor p2   \trarrow   \vdash? p1, p2
\vdash? e1 \lor e2   \trarrow   \vdash? e1, e2
\vdash? p1 \implies p2   \trarrow   | p1 \vdash? p2
\vdash? e1 \implies e2   \trarrow   | e1 \vdash? e2
\vdash? \forall ds | p1 @ p2   \trarrow   ds | p1 \vdash? p2
| \exists ds | p1 @ p2 \vdash?   \trarrow   ds | p1, p2 \vdash?

Those that generate two separate sub-goals are as follows.

\vdash? p1    \vdash? p2
\vdash? p1 \land p2

\vdash? e1    \vdash? e2
\vdash? e1 \land e2

| p1 \vdash?    | p2 \vdash?
| p1 \lor p2 \vdash?

| e1 \vdash?    | e2 \vdash?
| e1 \lor e2 \vdash?

\vdash? p1    | p2 \vdash?
| p1 \implies p2 \vdash?

\vdash? e1    | e2 \vdash?
| e1 \implies e2 \vdash?

Tactic example

"elimination" p3 p4

This example applies the elimination command to predicates p3 and p4.


IT 27-Sep-1999