This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Extracting the minimum positive integer for which a property ch does not hold. This uses substitutions similar to nn0ind . (Contributed by Thierry Arnoux, 6-May-2018)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | nn0min.0 | |- ( n = 0 -> ( ps <-> ch ) ) |
|
| nn0min.1 | |- ( n = m -> ( ps <-> th ) ) |
||
| nn0min.2 | |- ( n = ( m + 1 ) -> ( ps <-> ta ) ) |
||
| nn0min.3 | |- ( ph -> -. ch ) |
||
| nn0min.4 | |- ( ph -> E. n e. NN ps ) |
||
| Assertion | nn0min | |- ( ph -> E. m e. NN0 ( -. th /\ ta ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | nn0min.0 | |- ( n = 0 -> ( ps <-> ch ) ) |
|
| 2 | nn0min.1 | |- ( n = m -> ( ps <-> th ) ) |
|
| 3 | nn0min.2 | |- ( n = ( m + 1 ) -> ( ps <-> ta ) ) |
|
| 4 | nn0min.3 | |- ( ph -> -. ch ) |
|
| 5 | nn0min.4 | |- ( ph -> E. n e. NN ps ) |
|
| 6 | 5 | adantr | |- ( ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) -> E. n e. NN ps ) |
| 7 | nfv | |- F/ m ph |
|
| 8 | nfra1 | |- F/ m A. m e. NN0 ( -. th -> -. ta ) |
|
| 9 | 7 8 | nfan | |- F/ m ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) |
| 10 | nfv | |- F/ m -. [ k / n ] ps |
|
| 11 | 9 10 | nfim | |- F/ m ( ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) -> -. [ k / n ] ps ) |
| 12 | dfsbcq2 | |- ( k = 1 -> ( [ k / n ] ps <-> [. 1 / n ]. ps ) ) |
|
| 13 | 12 | notbid | |- ( k = 1 -> ( -. [ k / n ] ps <-> -. [. 1 / n ]. ps ) ) |
| 14 | 13 | imbi2d | |- ( k = 1 -> ( ( ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) -> -. [ k / n ] ps ) <-> ( ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) -> -. [. 1 / n ]. ps ) ) ) |
| 15 | nfv | |- F/ n th |
|
| 16 | 15 2 | sbhypf | |- ( k = m -> ( [ k / n ] ps <-> th ) ) |
| 17 | 16 | notbid | |- ( k = m -> ( -. [ k / n ] ps <-> -. th ) ) |
| 18 | 17 | imbi2d | |- ( k = m -> ( ( ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) -> -. [ k / n ] ps ) <-> ( ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) -> -. th ) ) ) |
| 19 | nfv | |- F/ n ta |
|
| 20 | 19 3 | sbhypf | |- ( k = ( m + 1 ) -> ( [ k / n ] ps <-> ta ) ) |
| 21 | 20 | notbid | |- ( k = ( m + 1 ) -> ( -. [ k / n ] ps <-> -. ta ) ) |
| 22 | 21 | imbi2d | |- ( k = ( m + 1 ) -> ( ( ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) -> -. [ k / n ] ps ) <-> ( ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) -> -. ta ) ) ) |
| 23 | sbequ12r | |- ( k = n -> ( [ k / n ] ps <-> ps ) ) |
|
| 24 | 23 | notbid | |- ( k = n -> ( -. [ k / n ] ps <-> -. ps ) ) |
| 25 | 24 | imbi2d | |- ( k = n -> ( ( ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) -> -. [ k / n ] ps ) <-> ( ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) -> -. ps ) ) ) |
| 26 | 0nn0 | |- 0 e. NN0 |
|
| 27 | 15 2 | sbiev | |- ( [ m / n ] ps <-> th ) |
| 28 | nfv | |- F/ n ch |
|
| 29 | 28 1 | sbhypf | |- ( m = 0 -> ( [ m / n ] ps <-> ch ) ) |
| 30 | 27 29 | bitr3id | |- ( m = 0 -> ( th <-> ch ) ) |
| 31 | 30 | notbid | |- ( m = 0 -> ( -. th <-> -. ch ) ) |
| 32 | oveq1 | |- ( m = 0 -> ( m + 1 ) = ( 0 + 1 ) ) |
|
| 33 | 0p1e1 | |- ( 0 + 1 ) = 1 |
|
| 34 | 32 33 | eqtrdi | |- ( m = 0 -> ( m + 1 ) = 1 ) |
| 35 | 1nn | |- 1 e. NN |
|
| 36 | eleq1 | |- ( ( m + 1 ) = 1 -> ( ( m + 1 ) e. NN <-> 1 e. NN ) ) |
|
| 37 | 35 36 | mpbiri | |- ( ( m + 1 ) = 1 -> ( m + 1 ) e. NN ) |
| 38 | 3 | sbcieg | |- ( ( m + 1 ) e. NN -> ( [. ( m + 1 ) / n ]. ps <-> ta ) ) |
| 39 | 34 37 38 | 3syl | |- ( m = 0 -> ( [. ( m + 1 ) / n ]. ps <-> ta ) ) |
| 40 | 34 | sbceq1d | |- ( m = 0 -> ( [. ( m + 1 ) / n ]. ps <-> [. 1 / n ]. ps ) ) |
| 41 | 39 40 | bitr3d | |- ( m = 0 -> ( ta <-> [. 1 / n ]. ps ) ) |
| 42 | 41 | notbid | |- ( m = 0 -> ( -. ta <-> -. [. 1 / n ]. ps ) ) |
| 43 | 31 42 | imbi12d | |- ( m = 0 -> ( ( -. th -> -. ta ) <-> ( -. ch -> -. [. 1 / n ]. ps ) ) ) |
| 44 | 43 | rspcv | |- ( 0 e. NN0 -> ( A. m e. NN0 ( -. th -> -. ta ) -> ( -. ch -> -. [. 1 / n ]. ps ) ) ) |
| 45 | 26 44 | ax-mp | |- ( A. m e. NN0 ( -. th -> -. ta ) -> ( -. ch -> -. [. 1 / n ]. ps ) ) |
| 46 | 4 45 | mpan9 | |- ( ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) -> -. [. 1 / n ]. ps ) |
| 47 | cbvralsvw | |- ( A. m e. NN0 ( -. th -> -. ta ) <-> A. k e. NN0 [ k / m ] ( -. th -> -. ta ) ) |
|
| 48 | nnnn0 | |- ( m e. NN -> m e. NN0 ) |
|
| 49 | sbequ12r | |- ( k = m -> ( [ k / m ] ( -. th -> -. ta ) <-> ( -. th -> -. ta ) ) ) |
|
| 50 | 49 | rspcv | |- ( m e. NN0 -> ( A. k e. NN0 [ k / m ] ( -. th -> -. ta ) -> ( -. th -> -. ta ) ) ) |
| 51 | 48 50 | syl | |- ( m e. NN -> ( A. k e. NN0 [ k / m ] ( -. th -> -. ta ) -> ( -. th -> -. ta ) ) ) |
| 52 | 47 51 | biimtrid | |- ( m e. NN -> ( A. m e. NN0 ( -. th -> -. ta ) -> ( -. th -> -. ta ) ) ) |
| 53 | 52 | adantld | |- ( m e. NN -> ( ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) -> ( -. th -> -. ta ) ) ) |
| 54 | 53 | a2d | |- ( m e. NN -> ( ( ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) -> -. th ) -> ( ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) -> -. ta ) ) ) |
| 55 | 11 14 18 22 25 46 54 | nnindf | |- ( n e. NN -> ( ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) -> -. ps ) ) |
| 56 | 55 | rgen | |- A. n e. NN ( ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) -> -. ps ) |
| 57 | r19.21v | |- ( A. n e. NN ( ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) -> -. ps ) <-> ( ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) -> A. n e. NN -. ps ) ) |
|
| 58 | 56 57 | mpbi | |- ( ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) -> A. n e. NN -. ps ) |
| 59 | ralnex | |- ( A. n e. NN -. ps <-> -. E. n e. NN ps ) |
|
| 60 | 58 59 | sylib | |- ( ( ph /\ A. m e. NN0 ( -. th -> -. ta ) ) -> -. E. n e. NN ps ) |
| 61 | 6 60 | pm2.65da | |- ( ph -> -. A. m e. NN0 ( -. th -> -. ta ) ) |
| 62 | imnan | |- ( ( -. th -> -. ta ) <-> -. ( -. th /\ ta ) ) |
|
| 63 | 62 | ralbii | |- ( A. m e. NN0 ( -. th -> -. ta ) <-> A. m e. NN0 -. ( -. th /\ ta ) ) |
| 64 | 61 63 | sylnib | |- ( ph -> -. A. m e. NN0 -. ( -. th /\ ta ) ) |
| 65 | dfrex2 | |- ( E. m e. NN0 ( -. th /\ ta ) <-> -. A. m e. NN0 -. ( -. th /\ ta ) ) |
|
| 66 | 64 65 | sylibr | |- ( ph -> E. m e. NN0 ( -. th /\ ta ) ) |