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 26481
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 963 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  A  e.  ( ZZ>= `  2 )
)
2 simpl2 964 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  K  e.  ( ZZ>= `  2 )
)
3 simpl3 965 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  N  e.  NN )
4 simpr 449 . . 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 26479 . 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 9950 . . . . . 6  |-  2  e.  NN0
7 eluznn0 10256 . . . . . 6  |-  ( ( 2  e.  NN0  /\  K  e.  ( ZZ>= ` 
2 ) )  ->  K  e.  NN0 )
86, 7mpan 654 . . . . 5  |-  ( K  e.  ( ZZ>= `  2
)  ->  K  e.  NN0 )
983ad2ant2 982 . . . 4  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  K  e.  NN0 )
109adantr 453 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  K  e.  NN0 )
11 nnnn0 9940 . . . 4  |-  ( N  e.  NN  ->  N  e.  NN0 )
123, 11syl 17 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  N  e.  NN0 )
13 jm2.18 26449 . . 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 1187 . 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 960 . . . . . . 7  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  A  e.  (
ZZ>= `  2 ) )
16 nnz 10013 . . . . . . . 8  |-  ( N  e.  NN  ->  N  e.  ZZ )
17163ad2ant3 983 . . . . . . 7  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  N  e.  ZZ )
18 frmx 26366 . . . . . . . 8  |- Xrm  : (
( ZZ>= `  2 )  X.  ZZ ) --> NN0
1918fovcl 5883 . . . . . . 7  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  N  e.  ZZ )  ->  ( A Xrm 
N )  e.  NN0 )
2015, 17, 19syl2anc 645 . . . . . 6  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( A Xrm  N )  e.  NN0 )
2120nn0zd 10083 . . . . 5  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( A Xrm  N )  e.  ZZ )
22 eluzelz 10206 . . . . . . . 8  |-  ( A  e.  ( ZZ>= `  2
)  ->  A  e.  ZZ )
23 eluzelz 10206 . . . . . . . 8  |-  ( K  e.  ( ZZ>= `  2
)  ->  K  e.  ZZ )
24 zsubcl 10029 . . . . . . . 8  |-  ( ( A  e.  ZZ  /\  K  e.  ZZ )  ->  ( A  -  K
)  e.  ZZ )
2522, 23, 24syl2an 465 . . . . . . 7  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )
)  ->  ( A  -  K )  e.  ZZ )
26253adant3 980 . . . . . 6  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( A  -  K )  e.  ZZ )
27 frmy 26367 . . . . . . . 8  |- Yrm  : (
( ZZ>= `  2 )  X.  ZZ ) --> ZZ
2827fovcl 5883 . . . . . . 7  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  N  e.  ZZ )  ->  ( A Yrm 
N )  e.  ZZ )
2915, 17, 28syl2anc 645 . . . . . 6  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( A Yrm  N )  e.  ZZ )
3026, 29zmulcld 10091 . . . . 5  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( ( A  -  K )  x.  ( A Yrm  N ) )  e.  ZZ )
3121, 30zsubcld 10090 . . . 4  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( ( A Xrm  N )  -  ( ( A  -  K )  x.  ( A Yrm  N ) ) )  e.  ZZ )
3231adantr 453 . . 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 26480 . . 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 983 . . . . 5  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  N  e.  NN0 )
359, 34nn0expcld 11234 . . . 4  |-  ( ( A  e.  ( ZZ>= ` 
2 )  /\  K  e.  ( ZZ>= `  2 )  /\  N  e.  NN )  ->  ( K ^ N )  e.  NN0 )
3635adantr 453 . . 3  |-  ( ( ( A  e.  (
ZZ>= `  2 )  /\  K  e.  ( ZZ>= ` 
2 )  /\  N  e.  NN )  /\  ( K Yrm  ( N  +  1 ) )  <_  A
)  ->  ( K ^ N )  e.  NN0 )
37 divalgmodcl 26448 . . 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 1187 . 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 893 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 6    <-> wb 178    /\ wa 360    /\ w3a 939    = wceq 1619    e. wcel 1621   class class class wbr 3997   ` cfv 4673  (class class class)co 5792   1c1 8706    + caddc 8708    x. cmul 8710    < clt 8835    <_ cle 8836    - cmin 9005   NNcn 9714   2c2 9763   NN0cn0 9933   ZZcz 9992   ZZ>=cuz 10198    mod cmo 10940   ^cexp 11071    || cdivides 12494   Xrm crmx 26353   Yrm crmy 26354
This theorem is referenced by:  expdiophlem1  26482
This theorem was proved from axioms:  ax-1 7  ax-2 8  ax-3 9  ax-mp 10  ax-5 1533  ax-6 1534  ax-7 1535  ax-gen 1536  ax-8 1623  ax-11 1624  ax-13 1625  ax-14 1626  ax-17 1628  ax-12o 1664  ax-10 1678  ax-9 1684  ax-4 1692  ax-16 1927  ax-ext 2239  ax-rep 4105  ax-sep 4115  ax-nul 4123  ax-pow 4160  ax-pr 4186  ax-un 4484  ax-inf2 7310  ax-cnex 8761  ax-resscn 8762  ax-1cn 8763  ax-icn 8764  ax-addcl 8765  ax-addrcl 8766  ax-mulcl 8767  ax-mulrcl 8768  ax-mulcom 8769  ax-addass 8770  ax-mulass 8771  ax-distr 8772  ax-i2m1 8773  ax-1ne0 8774  ax-1rid 8775  ax-rnegex 8776  ax-rrecex 8777  ax-cnre 8778  ax-pre-lttri 8779  ax-pre-lttrn 8780  ax-pre-ltadd 8781  ax-pre-mulgt0 8782  ax-pre-sup 8783  ax-addf 8784  ax-mulf 8785
This theorem depends on definitions:  df-bi 179  df-or 361  df-an 362  df-3or 940  df-3an 941  df-tru 1315  df-ex 1538  df-nf 1540  df-sb 1884  df-eu 2122  df-mo 2123  df-clab 2245  df-cleq 2251  df-clel 2254  df-nfc 2383  df-ne 2423  df-nel 2424  df-ral 2523  df-rex 2524  df-reu 2525  df-rmo 2526  df-rab 2527  df-v 2765  df-sbc 2967  df-csb 3057  df-dif 3130  df-un 3132  df-in 3134  df-ss 3141  df-pss 3143  df-nul 3431  df-if 3540  df-pw 3601  df-sn 3620  df-pr 3621  df-tp 3622  df-op 3623  df-uni 3802  df-int 3837  df-iun 3881  df-iin 3882  df-br 3998  df-opab 4052  df-mpt 4053  df-tr 4088  df-eprel 4277  df-id 4281  df-po 4286  df-so 4287  df-fr 4324  df-se 4325  df-we 4326  df-ord 4367  df-on 4368  df-lim 4369  df-suc 4370  df-om 4629  df-xp 4675  df-rel 4676  df-cnv 4677  df-co 4678  df-dm 4679  df-rn 4680  df-res 4681  df-ima 4682  df-fun 4683  df-fn 4684  df-f 4685  df-f1 4686  df-fo 4687  df-f1o 4688  df-fv 4689  df-isom 4690  df-ov 5795  df-oprab 5796  df-mpt2 5797  df-of 6012  df-1st 6056  df-2nd 6057  df-iota 6225  df-riota 6272  df-recs 6356  df-rdg 6391  df-1o 6447  df-2o 6448  df-oadd 6451  df-omul 6452  df-er 6628  df-map 6742  df-pm 6743  df-ixp 6786  df-en 6832  df-dom 6833  df-sdom 6834  df-fin 6835  df-fi 7133  df-sup 7162  df-oi 7193  df-card 7540  df-acn 7543  df-cda 7762  df-pnf 8837  df-mnf 8838  df-xr 8839  df-ltxr 8840  df-le 8841  df-sub 9007  df-neg 9008  df-div 9392  df-n 9715  df-2 9772  df-3 9773  df-4 9774  df-5 9775  df-6 9776  df-7 9777  df-8 9778  df-9 9779  df-10 9780  df-n0 9934  df-z 9993  df-dec 10093  df-uz 10199  df-q 10285  df-rp 10323  df-xneg 10420  df-xadd 10421  df-xmul 10422  df-ioo 10627  df-ioc 10628  df-ico 10629  df-icc 10630  df-fz 10750  df-fzo 10838  df-fl 10892  df-mod 10941  df-seq 11014  df-exp 11072  df-fac 11256  df-bc 11283  df-hash 11305  df-shft 11528  df-cj 11550  df-re 11551  df-im 11552  df-sqr 11686  df-abs 11687  df-limsup 11911  df-clim 11928  df-rlim 11929  df-sum 12125  df-ef 12312  df-sin 12314  df-cos 12315  df-pi 12317  df-divides 12495  df-gcd 12649  df-numer 12769  df-denom 12770  df-struct 13113  df-ndx 13114  df-slot 13115  df-base 13116  df-sets 13117  df-ress 13118  df-plusg 13184  df-mulr 13185  df-starv 13186  df-sca 13187  df-vsca 13188  df-tset 13190  df-ple 13191  df-ds 13193  df-hom 13195  df-cco 13196  df-rest 13290  df-topn 13291  df-topgen 13307  df-pt 13308  df-prds 13311  df-xrs 13366  df-0g 13367  df-gsum 13368  df-qtop 13373  df-imas 13374  df-xps 13376  df-mre 13451  df-mrc 13452  df-acs 13454  df-mnd 14330  df-submnd 14379  df-mulg 14455  df-cntz 14756  df-cmn 15054  df-xmet 16336  df-met 16337  df-bl 16338  df-mopn 16339  df-cnfld 16341  df-top 16599  df-bases 16601  df-topon 16602  df-topsp 16603  df-cld 16719  df-ntr 16720  df-cls 16721  df-nei 16798  df-lp 16831  df-perf 16832  df-cn 16920  df-cnp 16921  df-haus 17006  df-tx 17220  df-hmeo 17409  df-fbas 17483  df-fg 17484  df-fil 17504  df-fm 17596  df-flim 17597  df-flf 17598  df-xms 17848  df-ms 17849  df-tms 17850  df-cncf 18345  df-limc 19179  df-dv 19180  df-log 19877  df-squarenn 26294  df-pell1qr 26295  df-pell14qr 26296  df-pell1234qr 26297  df-pellfund 26298  df-rmx 26355  df-rmy 26356
  Copyright terms: Public domain W3C validator