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 26436
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 958 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  A  e.  ( ZZ>= `  2 )
)
2 simpl2 959 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  K  e.  ( ZZ>= `  2 )
)
3 simpl3 960 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  N  e.  NN )
4 simpr 447 . . 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 26434 . 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 10071 . . . . . 6  |-  2  e.  NN0
7 eluznn0 10377 . . . . . 6  |-  ( ( 2  e.  NN0  /\  K  e.  ( ZZ>= ` 
2 ) )  ->  K  e.  NN0 )
86, 7mpan 651 . . . . 5  |-  ( K  e.  ( ZZ>= `  2
)  ->  K  e.  NN0 )
983ad2ant2 977 . . . 4  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  K  e.  NN0 )
109adantr 451 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  K  e.  NN0 )
11 nnnn0 10061 . . . 4  |-  ( N  e.  NN  ->  N  e.  NN0 )
123, 11syl 15 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  N  e.  NN0 )
13 jm2.18 26404 . . 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 ) ) )
141, 10, 12, 13syl3anc 1182 . 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 ) ) )
15 simp1 955 . . . . . . 7  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  A  e.  (
ZZ>= `  2 ) )
16 nnz 10134 . . . . . . . 8  |-  ( N  e.  NN  ->  N  e.  ZZ )
17163ad2ant3 978 . . . . . . 7  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  N  e.  ZZ )
18 frmx 26321 . . . . . . . 8  |- Xrm  : (
( ZZ>= `  2 )  X.  ZZ ) --> NN0
1918fovcl 6033 . . . . . . 7  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  N  e.  ZZ )  ->  ( A Xrm 
N )  e.  NN0 )
2015, 17, 19syl2anc 642 . . . . . 6  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( A Xrm  N )  e.  NN0 )
2120nn0zd 10204 . . . . 5  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( A Xrm  N )  e.  ZZ )
22 eluzelz 10327 . . . . . . . 8  |-  ( A  e.  ( ZZ>= `  2
)  ->  A  e.  ZZ )
23 eluzelz 10327 . . . . . . . 8  |-  ( K  e.  ( ZZ>= `  2
)  ->  K  e.  ZZ )
24 zsubcl 10150 . . . . . . . 8  |-  ( ( A  e.  ZZ  /\  K  e.  ZZ )  ->  ( A  -  K
)  e.  ZZ )
2522, 23, 24syl2an 463 . . . . . . 7  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )
)  ->  ( A  -  K )  e.  ZZ )
26253adant3 975 . . . . . 6  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( A  -  K )  e.  ZZ )
27 frmy 26322 . . . . . . . 8  |- Yrm  : (
( ZZ>= `  2 )  X.  ZZ ) --> ZZ
2827fovcl 6033 . . . . . . 7  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  N  e.  ZZ )  ->  ( A Yrm 
N )  e.  ZZ )
2915, 17, 28syl2anc 642 . . . . . 6  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( A Yrm  N )  e.  ZZ )
3026, 29zmulcld 10212 . . . . 5  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( ( A  -  K )  x.  ( A Yrm  N ) )  e.  ZZ )
3121, 30zsubcld 10211 . . . 4  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( ( A Xrm  N )  -  ( ( A  -  K )  x.  ( A Yrm  N ) ) )  e.  ZZ )
3231adantr 451 . . 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 )
331, 2, 3, 4jm3.1lem3 26435 . . 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 )
34113ad2ant3 978 . . . . 5  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  N  e.  NN0 )
359, 34nn0expcld 11357 . . . 4  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( K ^ N )  e.  NN0 )
3635adantr 451 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  ( K ^ N )  e.  NN0 )
37 divalgmodcl 26403 . . 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 ) ) ) ) )
3832, 33, 36, 37syl3anc 1182 . 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, 14, 38mpbir2and 888 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 176    /\ wa 358    /\ w3a 934    = wceq 1642    e. wcel 1710   class class class wbr 4102   ` cfv 5334  (class class class)co 5942   1c1 8825    + caddc 8827    x. cmul 8829    < clt 8954    <_ cle 8955    - cmin 9124   NNcn 9833   2c2 9882   NN0cn0 10054   ZZcz 10113   ZZ>=cuz 10319    mod cmo 11062   ^cexp 11194    || cdivides 12622   Xrm crmx 26308   Yrm crmy 26309
This theorem is referenced by:  expdiophlem1  26437
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1546  ax-5 1557  ax-17 1616  ax-9 1654  ax-8 1675  ax-13 1712  ax-14 1714  ax-6 1729  ax-7 1734  ax-11 1746  ax-12 1930  ax-ext 2339  ax-rep 4210  ax-sep 4220  ax-nul 4228  ax-pow 4267  ax-pr 4293  ax-un 4591  ax-inf2 7429  ax-cnex 8880  ax-resscn 8881  ax-1cn 8882  ax-icn 8883  ax-addcl 8884  ax-addrcl 8885  ax-mulcl 8886  ax-mulrcl 8887  ax-mulcom 8888  ax-addass 8889  ax-mulass 8890  ax-distr 8891  ax-i2m1 8892  ax-1ne0 8893  ax-1rid 8894  ax-rnegex 8895  ax-rrecex 8896  ax-cnre 8897  ax-pre-lttri 8898  ax-pre-lttrn 8899  ax-pre-ltadd 8900  ax-pre-mulgt0 8901  ax-pre-sup 8902  ax-addf 8903  ax-mulf 8904
This theorem depends on definitions:  df-bi 177  df-or 359  df-an 360  df-3or 935  df-3an 936  df-tru 1319  df-ex 1542  df-nf 1545  df-sb 1649  df-eu 2213  df-mo 2214  df-clab 2345  df-cleq 2351  df-clel 2354  df-nfc 2483  df-ne 2523  df-nel 2524  df-ral 2624  df-rex 2625  df-reu 2626  df-rmo 2627  df-rab 2628  df-v 2866  df-sbc 3068  df-csb 3158  df-dif 3231  df-un 3233  df-in 3235  df-ss 3242  df-pss 3244  df-nul 3532  df-if 3642  df-pw 3703  df-sn 3722  df-pr 3723  df-tp 3724  df-op 3725  df-uni 3907  df-int 3942  df-iun 3986  df-iin 3987  df-br 4103  df-opab 4157  df-mpt 4158  df-tr 4193  df-eprel 4384  df-id 4388  df-po 4393  df-so 4394  df-fr 4431  df-se 4432  df-we 4433  df-ord 4474  df-on 4475  df-lim 4476  df-suc 4477  df-om 4736  df-xp 4774  df-rel 4775  df-cnv 4776  df-co 4777  df-dm 4778  df-rn 4779  df-res 4780  df-ima 4781  df-iota 5298  df-fun 5336  df-fn 5337  df-f 5338  df-f1 5339  df-fo 5340  df-f1o 5341  df-fv 5342  df-isom 5343  df-ov 5945  df-oprab 5946  df-mpt2 5947  df-of 6162  df-1st 6206  df-2nd 6207  df-riota 6388  df-recs 6472  df-rdg 6507  df-1o 6563  df-2o 6564  df-oadd 6567  df-omul 6568  df-er 6744  df-map 6859  df-pm 6860  df-ixp 6903  df-en 6949  df-dom 6950  df-sdom 6951  df-fin 6952  df-fi 7252  df-sup 7281  df-oi 7312  df-card 7659  df-acn 7662  df-cda 7881  df-pnf 8956  df-mnf 8957  df-xr 8958  df-ltxr 8959  df-le 8960  df-sub 9126  df-neg 9127  df-div 9511  df-nn 9834  df-2 9891  df-3 9892  df-4 9893  df-5 9894  df-6 9895  df-7 9896  df-8 9897  df-9 9898  df-10 9899  df-n0 10055  df-z 10114  df-dec 10214  df-uz 10320  df-q 10406  df-rp 10444  df-xneg 10541  df-xadd 10542  df-xmul 10543  df-ioo 10749  df-ioc 10750  df-ico 10751  df-icc 10752  df-fz 10872  df-fzo 10960  df-fl 11014  df-mod 11063  df-seq 11136  df-exp 11195  df-fac 11379  df-bc 11406  df-hash 11428  df-shft 11652  df-cj 11674  df-re 11675  df-im 11676  df-sqr 11810  df-abs 11811  df-limsup 12035  df-clim 12052  df-rlim 12053  df-sum 12250  df-ef 12440  df-sin 12442  df-cos 12443  df-pi 12445  df-dvds 12623  df-gcd 12777  df-numer 12897  df-denom 12898  df-struct 13241  df-ndx 13242  df-slot 13243  df-base 13244  df-sets 13245  df-ress 13246  df-plusg 13312  df-mulr 13313  df-starv 13314  df-sca 13315  df-vsca 13316  df-tset 13318  df-ple 13319  df-ds 13321  df-unif 13322  df-hom 13323  df-cco 13324  df-rest 13420  df-topn 13421  df-topgen 13437  df-pt 13438  df-prds 13441  df-xrs 13496  df-0g 13497  df-gsum 13498  df-qtop 13503  df-imas 13504  df-xps 13506  df-mre 13581  df-mrc 13582  df-acs 13584  df-mnd 14460  df-submnd 14509  df-mulg 14585  df-cntz 14886  df-cmn 15184  df-xmet 16469  df-met 16470  df-bl 16471  df-mopn 16472  df-fbas 16473  df-fg 16474  df-cnfld 16477  df-top 16736  df-bases 16738  df-topon 16739  df-topsp 16740  df-cld 16856  df-ntr 16857  df-cls 16858  df-nei 16935  df-lp 16968  df-perf 16969  df-cn 17057  df-cnp 17058  df-haus 17143  df-tx 17357  df-hmeo 17546  df-fil 17637  df-fm 17729  df-flim 17730  df-flf 17731  df-xms 17981  df-ms 17982  df-tms 17983  df-cncf 18479  df-limc 19314  df-dv 19315  df-log 20015  df-squarenn 26249  df-pell1qr 26250  df-pell14qr 26251  df-pell1234qr 26252  df-pellfund 26253  df-rmx 26310  df-rmy 26311
  Copyright terms: Public domain W3C validator