Description: Theorem 9.26 of Clemente p. 45, translated line by line using an interpretation of natural deduction in Metamath. This proof has some additional complications due to the fact that Metamath's existential elimination rule does not change bound variables, so we need to verify that x is bound in the conclusion. For information about ND and Metamath, see the page on Deduction Form and Natural Deduction in Metamath Proof Explorer. The original proof, which uses Fitch style, was written as follows (the leading "..." shows an embedded ND hypothesis, beginning with the initial assumption of the ND hypothesis):
# | MPE# | ND Expression | MPE Translation | ND Rationale | MPE Rationale |
---|---|---|---|---|---|
1 | 3 | E. x A. y ps ( x , y ) | ( ph -> E. x A. y ps ) | Given | $e. |
2 | 6 | ...| A. y ps ( x , y ) | ( ( ph /\ A. y ps ) -> A. y ps ) | ND hypothesis assumption | simpr . Later statements will have this scope. |
3 | 7;5,4 | ... ps ( x , y ) | ( ( ph /\ A. y ps ) -> ps ) | A.E 2,y | spsbcd (A.E), 5,6. To use it we need a1i and vex . This could be immediately done with 19.21bi , but we want to show the general approach for substitution. |
4 | 12;8,9,10,11 | ... E. x ps ( x , y ) | ( ( ph /\ A. y ps ) -> E. x ps ) | E.I 3,a | spesbcd (E.I), 11. To use it we need sylibr , which in turn requires sylib and two uses of sbcid . This could be more immediately done using 19.8a , but we want to show the general approach for substitution. |
5 | 13;1,2 | E. x ps ( x , y ) | ( ph -> E. x ps ) | E.E 1,2,4,a | exlimdd (E.E), 1,2,3,12. We'll need supporting assertions that the variable is free (not bound), as provided in nfv and nfe1 (MPE# 1,2) |
6 | 14 | A. y E. x ps ( x , y ) | ( ph -> A. y E. x ps ) | A.I 5 | alrimiv (A.I), 13 |
The original used Latin letters for predicates; we have replaced them with Greek letters to follow Metamath naming conventions and so that it is easier to follow the Metamath translation. The Metamath line-for-line translation of this natural deduction approach precedes every line with an antecedent including ph and uses the Metamath equivalents of the natural deduction rules. Below is the final Metamath proof (which reorders some steps).
Note that in the original proof, ps ( x , y ) has explicit parameters. In Metamath, these parameters are always implicit, and the parameters upon which a wff variable can depend are recorded in the "allowed substitution hints" below.
A much more efficient proof, using more of Metamath and MPE's capabilities, is shown in ex-natded9.26-2 .
(Contributed by Mario Carneiro, 9-Feb-2017) (Revised by David A. Wheeler, 18-Feb-2017) (Proof modification is discouraged.) (New usage is discouraged.)
Ref | Expression | ||
---|---|---|---|
Hypothesis | ex-natded9.26.1 | |- ( ph -> E. x A. y ps ) |
|
Assertion | ex-natded9.26 | |- ( ph -> A. y E. x ps ) |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | ex-natded9.26.1 | |- ( ph -> E. x A. y ps ) |
|
2 | nfv | |- F/ x ph |
|
3 | nfe1 | |- F/ x E. x ps |
|
4 | vex | |- y e. _V |
|
5 | 4 | a1i | |- ( ( ph /\ A. y ps ) -> y e. _V ) |
6 | simpr | |- ( ( ph /\ A. y ps ) -> A. y ps ) |
|
7 | 5 6 | spsbcd | |- ( ( ph /\ A. y ps ) -> [. y / y ]. ps ) |
8 | sbcid | |- ( [. y / y ]. ps <-> ps ) |
|
9 | 7 8 | sylib | |- ( ( ph /\ A. y ps ) -> ps ) |
10 | sbcid | |- ( [. x / x ]. ps <-> ps ) |
|
11 | 9 10 | sylibr | |- ( ( ph /\ A. y ps ) -> [. x / x ]. ps ) |
12 | 11 | spesbcd | |- ( ( ph /\ A. y ps ) -> E. x ps ) |
13 | 2 3 1 12 | exlimdd | |- ( ph -> E. x ps ) |
14 | 13 | alrimiv | |- ( ph -> A. y E. x ps ) |