Users' Mathboxes Mathbox for Stefan O'Rear < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  jm3.1 Unicode version

Theorem jm3.1 26775
Description: Diophantine expression for exponentiation. Lemma 3.1 of [JonesMatijasevic] p. 698. (Contributed by Stefan O'Rear, 16-Oct-2014.)
Assertion
Ref Expression
jm3.1  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  ( K ^ N )  =  ( ( ( A Xrm  N )  -  ( ( A  -  K )  x.  ( A Yrm  N ) ) )  mod  ( ( ( ( 2  x.  A )  x.  K
)  -  ( K ^ 2 ) )  -  1 ) ) )

Proof of Theorem jm3.1
StepHypRef Expression
1 simpl1 960 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  A  e.  ( ZZ>= `  2 )
)
2 simpl2 961 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  K  e.  ( ZZ>= `  2 )
)
3 simpl3 962 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  N  e.  NN )
4 simpr 448 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  ( K Yrm  ( N  +  1 ) )  <_  A )
51, 2, 3, 4jm3.1lem2 26773 . 2  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  ( K ^ N )  <  (
( ( ( 2  x.  A )  x.  K )  -  ( K ^ 2 ) )  -  1 ) )
6 2nn0 10163 . . . . . 6  |-  2  e.  NN0
7 eluznn0 10471 . . . . . 6  |-  ( ( 2  e.  NN0  /\  K  e.  ( ZZ>= ` 
2 ) )  ->  K  e.  NN0 )
86, 7mpan 652 . . . . 5  |-  ( K  e.  ( ZZ>= `  2
)  ->  K  e.  NN0 )
983ad2ant2 979 . . . 4  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  K  e.  NN0 )
109adantr 452 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  K  e.  NN0 )
113nnnn0d 10199 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  N  e.  NN0 )
12 jm2.18 26743 . . 3  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  NN0  /\  N  e. 
NN0 )  ->  (
( ( ( 2  x.  A )  x.  K )  -  ( K ^ 2 ) )  -  1 )  ||  ( ( ( A Xrm  N )  -  ( ( A  -  K )  x.  ( A Yrm  N ) ) )  -  ( K ^ N ) ) )
131, 10, 11, 12syl3anc 1184 . 2  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  ( (
( ( 2  x.  A )  x.  K
)  -  ( K ^ 2 ) )  -  1 )  ||  ( ( ( A Xrm  N )  -  ( ( A  -  K )  x.  ( A Yrm  N ) ) )  -  ( K ^ N ) ) )
14 simp1 957 . . . . . . 7  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  A  e.  (
ZZ>= `  2 ) )
15 nnz 10228 . . . . . . . 8  |-  ( N  e.  NN  ->  N  e.  ZZ )
16153ad2ant3 980 . . . . . . 7  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  N  e.  ZZ )
17 frmx 26660 . . . . . . . 8  |- Xrm  : (
( ZZ>= `  2 )  X.  ZZ ) --> NN0
1817fovcl 6107 . . . . . . 7  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  N  e.  ZZ )  ->  ( A Xrm 
N )  e.  NN0 )
1914, 16, 18syl2anc 643 . . . . . 6  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( A Xrm  N )  e.  NN0 )
2019nn0zd 10298 . . . . 5  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( A Xrm  N )  e.  ZZ )
21 eluzelz 10421 . . . . . . . 8  |-  ( A  e.  ( ZZ>= `  2
)  ->  A  e.  ZZ )
22 eluzelz 10421 . . . . . . . 8  |-  ( K  e.  ( ZZ>= `  2
)  ->  K  e.  ZZ )
23 zsubcl 10244 . . . . . . . 8  |-  ( ( A  e.  ZZ  /\  K  e.  ZZ )  ->  ( A  -  K
)  e.  ZZ )
2421, 22, 23syl2an 464 . . . . . . 7  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )
)  ->  ( A  -  K )  e.  ZZ )
25243adant3 977 . . . . . 6  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( A  -  K )  e.  ZZ )
26 frmy 26661 . . . . . . . 8  |- Yrm  : (
( ZZ>= `  2 )  X.  ZZ ) --> ZZ
2726fovcl 6107 . . . . . . 7  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  N  e.  ZZ )  ->  ( A Yrm 
N )  e.  ZZ )
2814, 16, 27syl2anc 643 . . . . . 6  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( A Yrm  N )  e.  ZZ )
2925, 28zmulcld 10306 . . . . 5  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( ( A  -  K )  x.  ( A Yrm  N ) )  e.  ZZ )
3020, 29zsubcld 10305 . . . 4  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( ( A Xrm  N )  -  ( ( A  -  K )  x.  ( A Yrm  N ) ) )  e.  ZZ )
3130adantr 452 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  ( ( A Xrm 
N )  -  (
( A  -  K
)  x.  ( A Yrm  N ) ) )  e.  ZZ )
321, 2, 3, 4jm3.1lem3 26774 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  ( (
( ( 2  x.  A )  x.  K
)  -  ( K ^ 2 ) )  -  1 )  e.  NN )
33 nnnn0 10153 . . . . . 6  |-  ( N  e.  NN  ->  N  e.  NN0 )
34333ad2ant3 980 . . . . 5  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  N  e.  NN0 )
359, 34nn0expcld 11465 . . . 4  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( K ^ N )  e.  NN0 )
3635adantr 452 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  ( K ^ N )  e.  NN0 )
37 divalgmodcl 26742 . . 3  |-  ( ( ( ( A Xrm  N )  -  ( ( A  -  K )  x.  ( A Yrm  N ) ) )  e.  ZZ  /\  ( ( ( ( 2  x.  A )  x.  K )  -  ( K ^ 2 ) )  -  1 )  e.  NN  /\  ( K ^ N )  e. 
NN0 )  ->  (
( K ^ N
)  =  ( ( ( A Xrm  N )  -  ( ( A  -  K )  x.  ( A Yrm 
N ) ) )  mod  ( ( ( ( 2  x.  A
)  x.  K )  -  ( K ^
2 ) )  - 
1 ) )  <->  ( ( K ^ N )  < 
( ( ( ( 2  x.  A )  x.  K )  -  ( K ^ 2 ) )  -  1 )  /\  ( ( ( ( 2  x.  A
)  x.  K )  -  ( K ^
2 ) )  - 
1 )  ||  (
( ( A Xrm  N )  -  ( ( A  -  K )  x.  ( A Yrm  N ) ) )  -  ( K ^ N ) ) ) ) )
3831, 32, 36, 37syl3anc 1184 . 2  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  ( ( K ^ N )  =  ( ( ( A Xrm  N )  -  ( ( A  -  K )  x.  ( A Yrm  N ) ) )  mod  (
( ( ( 2  x.  A )  x.  K )  -  ( K ^ 2 ) )  -  1 ) )  <-> 
( ( K ^ N )  <  (
( ( ( 2  x.  A )  x.  K )  -  ( K ^ 2 ) )  -  1 )  /\  ( ( ( ( 2  x.  A )  x.  K )  -  ( K ^ 2 ) )  -  1 ) 
||  ( ( ( A Xrm  N )  -  (
( A  -  K
)  x.  ( A Yrm  N ) ) )  -  ( K ^ N ) ) ) ) )
395, 13, 38mpbir2and 889 1  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  ( K ^ N )  =  ( ( ( A Xrm  N )  -  ( ( A  -  K )  x.  ( A Yrm  N ) ) )  mod  ( ( ( ( 2  x.  A )  x.  K
)  -  ( K ^ 2 ) )  -  1 ) ) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    <-> wb 177    /\ wa 359    /\ w3a 936    = wceq 1649    e. wcel 1717   class class class wbr 4146   ` cfv 5387  (class class class)co 6013   1c1 8917    + caddc 8919    x. cmul 8921    < clt 9046    <_ cle 9047    - cmin 9216   NNcn 9925   2c2 9974   NN0cn0 10146   ZZcz 10207   ZZ>=cuz 10413    mod cmo 11170   ^cexp 11302    || cdivides 12772   Xrm crmx 26647   Yrm crmy 26648
This theorem is referenced by:  expdiophlem1  26776
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1552  ax-5 1563  ax-17 1623  ax-9 1661  ax-8 1682  ax-13 1719  ax-14 1721  ax-6 1736  ax-7 1741  ax-11 1753  ax-12 1939  ax-ext 2361  ax-rep 4254  ax-sep 4264  ax-nul 4272  ax-pow 4311  ax-pr 4337  ax-un 4634  ax-inf2 7522  ax-cnex 8972  ax-resscn 8973  ax-1cn 8974  ax-icn 8975  ax-addcl 8976  ax-addrcl 8977  ax-mulcl 8978  ax-mulrcl 8979  ax-mulcom 8980  ax-addass 8981  ax-mulass 8982  ax-distr 8983  ax-i2m1 8984  ax-1ne0 8985  ax-1rid 8986  ax-rnegex 8987  ax-rrecex 8988  ax-cnre 8989  ax-pre-lttri 8990  ax-pre-lttrn 8991  ax-pre-ltadd 8992  ax-pre-mulgt0 8993  ax-pre-sup 8994  ax-addf 8995  ax-mulf 8996
This theorem depends on definitions:  df-bi 178  df-or 360  df-an 361  df-3or 937  df-3an 938  df-tru 1325  df-ex 1548  df-nf 1551  df-sb 1656  df-eu 2235  df-mo 2236  df-clab 2367  df-cleq 2373  df-clel 2376  df-nfc 2505  df-ne 2545  df-nel 2546  df-ral 2647  df-rex 2648  df-reu 2649  df-rmo 2650  df-rab 2651  df-v 2894  df-sbc 3098  df-csb 3188  df-dif 3259  df-un 3261  df-in 3263  df-ss 3270  df-pss 3272  df-nul 3565  df-if 3676  df-pw 3737  df-sn 3756  df-pr 3757  df-tp 3758  df-op 3759  df-uni 3951  df-int 3986  df-iun 4030  df-iin 4031  df-br 4147  df-opab 4201  df-mpt 4202  df-tr 4237  df-eprel 4428  df-id 4432  df-po 4437  df-so 4438  df-fr 4475  df-se 4476  df-we 4477  df-ord 4518  df-on 4519  df-lim 4520  df-suc 4521  df-om 4779  df-xp 4817  df-rel 4818  df-cnv 4819  df-co 4820  df-dm 4821  df-rn 4822  df-res 4823  df-ima 4824  df-iota 5351  df-fun 5389  df-fn 5390  df-f 5391  df-f1 5392  df-fo 5393  df-f1o 5394  df-fv 5395  df-isom 5396  df-ov 6016  df-oprab 6017  df-mpt2 6018  df-of 6237  df-1st 6281  df-2nd 6282  df-riota 6478  df-recs 6562  df-rdg 6597  df-1o 6653  df-2o 6654  df-oadd 6657  df-omul 6658  df-er 6834  df-map 6949  df-pm 6950  df-ixp 6993  df-en 7039  df-dom 7040  df-sdom 7041  df-fin 7042  df-fi 7344  df-sup 7374  df-oi 7405  df-card 7752  df-acn 7755  df-cda 7974  df-pnf 9048  df-mnf 9049  df-xr 9050  df-ltxr 9051  df-le 9052  df-sub 9218  df-neg 9219  df-div 9603  df-nn 9926  df-2 9983  df-3 9984  df-4 9985  df-5 9986  df-6 9987  df-7 9988  df-8 9989  df-9 9990  df-10 9991  df-n0 10147  df-z 10208  df-dec 10308  df-uz 10414  df-q 10500  df-rp 10538  df-xneg 10635  df-xadd 10636  df-xmul 10637  df-ioo 10845  df-ioc 10846  df-ico 10847  df-icc 10848  df-fz 10969  df-fzo 11059  df-fl 11122  df-mod 11171  df-seq 11244  df-exp 11303  df-fac 11487  df-bc 11514  df-hash 11539  df-shft 11802  df-cj 11824  df-re 11825  df-im 11826  df-sqr 11960  df-abs 11961  df-limsup 12185  df-clim 12202  df-rlim 12203  df-sum 12400  df-ef 12590  df-sin 12592  df-cos 12593  df-pi 12595  df-dvds 12773  df-gcd 12927  df-numer 13047  df-denom 13048  df-struct 13391  df-ndx 13392  df-slot 13393  df-base 13394  df-sets 13395  df-ress 13396  df-plusg 13462  df-mulr 13463  df-starv 13464  df-sca 13465  df-vsca 13466  df-tset 13468  df-ple 13469  df-ds 13471  df-unif 13472  df-hom 13473  df-cco 13474  df-rest 13570  df-topn 13571  df-topgen 13587  df-pt 13588  df-prds 13591  df-xrs 13646  df-0g 13647  df-gsum 13648  df-qtop 13653  df-imas 13654  df-xps 13656  df-mre 13731  df-mrc 13732  df-acs 13734  df-mnd 14610  df-submnd 14659  df-mulg 14735  df-cntz 15036  df-cmn 15334  df-xmet 16612  df-met 16613  df-bl 16614  df-mopn 16615  df-fbas 16616  df-fg 16617  df-cnfld 16620  df-top 16879  df-bases 16881  df-topon 16882  df-topsp 16883  df-cld 16999  df-ntr 17000  df-cls 17001  df-nei 17078  df-lp 17116  df-perf 17117  df-cn 17206  df-cnp 17207  df-haus 17294  df-tx 17508  df-hmeo 17701  df-fil 17792  df-fm 17884  df-flim 17885  df-flf 17886  df-xms 18252  df-ms 18253  df-tms 18254  df-cncf 18772  df-limc 19613  df-dv 19614  df-log 20314  df-squarenn 26588  df-pell1qr 26589  df-pell14qr 26590  df-pell1234qr 26591  df-pellfund 26592  df-rmx 26649  df-rmy 26650
  Copyright terms: Public domain W3C validator