CADiZ

Reference manual / Z-related commands / Proof rule commands / antecedent intro


The antecedent intro command forms a single antecedent from the selected declarations, antecedents and consequents. The result appears as the first antecedent in the sub-goal, in which consequents are disjoined and negated, antecedents are conjoined, and declarations are existentially quantified. In other respects, the order in which the formulae are selected is maintained in the result.

The following examples illustrate some common cases.

| p1, p2 \vdash?   \trarrow   | p1 \land p2 \vdash?
\vdash? p1, p2   \trarrow   | \lnot (p1 \lor p2) \vdash?
| p1, p2 \vdash? p3, p4   \trarrow   | p1 \land p2 \land \lnot (p3 \lor p4) \vdash?
d1; d2 | p1, p2 \vdash? p3, p4   \trarrow   | \exists d1; d2 | p1 \land p2 @ \lnot (p3 \lor p4) \vdash?
d1; d2 | p1, p2 \vdash?   \trarrow   | \exists d1; d2 | p1 \land p2 @ true \vdash?
d1; d2 \vdash? p1, p2   \trarrow   | \exists d1; d2 @ \lnot (p1 \lor p2) \vdash?
d1; d2 \vdash?   \trarrow   | \exists d1; d2 @ true \vdash?
d1; d3 \dagger d2 \vdash?   \trarrow   \exists d1; d3 @ \exists d2 @ true \vdash?

Any antecedent or consequent may be selected multiple times, but declarations may each be selected only once. If no declarations are selected, the original occurrences of the antecedents and consequents do not appear in the sub-goal.

The antecedent intro command can also be applied to an entire goal, in which case it creates a sub-goal in which there is just one antecedent combining all the notation of the original goal.

Tactic example

"antecedent intro" p1 p2

This example applies the antecedent intro command to the antecedents or consequents p1 and p2.


IT 10-Apr-2000