ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  bezout Unicode version

Theorem bezout 12447
Description: Bézout's identity: For any integers  A and  B, there are integers  x ,  y such that  ( A  gcd  B )  =  A  x.  x  +  B  x.  y. This is Metamath 100 proof #60.

The proof is constructive, in the sense that it applies the Extended Euclidian Algorithm to constuct a number which can be shown to be  ( A  gcd  B ) and which satisfies the rest of the theorem. In the presence of excluded middle, it is common to prove Bézout's identity by taking the smallest number which satisfies the Bézout condition, and showing it is the greatest common divisor. But we do not have the ability to show that number exists other than by providing a way to determine it. (Contributed by Mario Carneiro, 22-Feb-2014.)

Assertion
Ref Expression
bezout  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  E. x  e.  ZZ  E. y  e.  ZZ  ( A  gcd  B )  =  ( ( A  x.  x )  +  ( B  x.  y ) ) )
Distinct variable groups:    x, A, y   
x, B, y

Proof of Theorem bezout
Dummy variables  d  w  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 bezoutlembi 12441 . 2  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  E. d  e.  NN0  ( A. z  e.  ZZ  ( z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x
)  +  ( B  x.  y ) ) ) )
2 simprrr 540 . . 3  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  ( d  e. 
NN0  /\  ( A. z  e.  ZZ  (
z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x )  +  ( B  x.  y
) ) ) ) )  ->  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x
)  +  ( B  x.  y ) ) )
3 nfv 1552 . . . . 5  |-  F/ x
( A  e.  ZZ  /\  B  e.  ZZ )
4 nfv 1552 . . . . . 6  |-  F/ x  d  e.  NN0
5 nfv 1552 . . . . . . 7  |-  F/ x A. z  e.  ZZ  ( z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) )
6 nfre1 2551 . . . . . . 7  |-  F/ x E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x )  +  ( B  x.  y
) )
75, 6nfan 1589 . . . . . 6  |-  F/ x
( A. z  e.  ZZ  ( z  ||  d 
<->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x
)  +  ( B  x.  y ) ) )
84, 7nfan 1589 . . . . 5  |-  F/ x
( d  e.  NN0  /\  ( A. z  e.  ZZ  ( z  ||  d 
<->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x
)  +  ( B  x.  y ) ) ) )
93, 8nfan 1589 . . . 4  |-  F/ x
( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  (
d  e.  NN0  /\  ( A. z  e.  ZZ  ( z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x
)  +  ( B  x.  y ) ) ) ) )
10 nfv 1552 . . . . . 6  |-  F/ y ( A  e.  ZZ  /\  B  e.  ZZ )
11 nfv 1552 . . . . . . 7  |-  F/ y  d  e.  NN0
12 nfv 1552 . . . . . . . 8  |-  F/ y A. z  e.  ZZ  ( z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) )
13 nfcv 2350 . . . . . . . . 9  |-  F/_ y ZZ
14 nfre1 2551 . . . . . . . . 9  |-  F/ y E. y  e.  ZZ  d  =  ( ( A  x.  x )  +  ( B  x.  y ) )
1513, 14nfrexya 2549 . . . . . . . 8  |-  F/ y E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x )  +  ( B  x.  y
) )
1612, 15nfan 1589 . . . . . . 7  |-  F/ y ( A. z  e.  ZZ  ( z  ||  d 
<->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x
)  +  ( B  x.  y ) ) )
1711, 16nfan 1589 . . . . . 6  |-  F/ y ( d  e.  NN0  /\  ( A. z  e.  ZZ  ( z  ||  d 
<->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x
)  +  ( B  x.  y ) ) ) )
1810, 17nfan 1589 . . . . 5  |-  F/ y ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  (
d  e.  NN0  /\  ( A. z  e.  ZZ  ( z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x
)  +  ( B  x.  y ) ) ) ) )
19 dfgcd3 12446 . . . . . . . 8  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( A  gcd  B
)  =  ( iota_ w  e.  NN0  A. z  e.  ZZ  ( z  ||  w 
<->  ( z  ||  A  /\  z  ||  B ) ) ) )
2019adantr 276 . . . . . . 7  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  ( d  e. 
NN0  /\  ( A. z  e.  ZZ  (
z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x )  +  ( B  x.  y
) ) ) ) )  ->  ( A  gcd  B )  =  (
iota_ w  e.  NN0  A. z  e.  ZZ  (
z  ||  w  <->  ( z  ||  A  /\  z  ||  B ) ) ) )
21 simprrl 539 . . . . . . . 8  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  ( d  e. 
NN0  /\  ( A. z  e.  ZZ  (
z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x )  +  ( B  x.  y
) ) ) ) )  ->  A. z  e.  ZZ  ( z  ||  d 
<->  ( z  ||  A  /\  z  ||  B ) ) )
22 simprl 529 . . . . . . . . 9  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  ( d  e. 
NN0  /\  ( A. z  e.  ZZ  (
z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x )  +  ( B  x.  y
) ) ) ) )  ->  d  e.  NN0 )
23 simpll 527 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  ( d  e. 
NN0  /\  ( A. z  e.  ZZ  (
z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x )  +  ( B  x.  y
) ) ) ) )  ->  A  e.  ZZ )
24 simplr 528 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  ( d  e. 
NN0  /\  ( A. z  e.  ZZ  (
z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x )  +  ( B  x.  y
) ) ) ) )  ->  B  e.  ZZ )
2523, 24, 22, 21bezoutlemeu 12443 . . . . . . . . 9  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  ( d  e. 
NN0  /\  ( A. z  e.  ZZ  (
z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x )  +  ( B  x.  y
) ) ) ) )  ->  E! w  e.  NN0  A. z  e.  ZZ  ( z  ||  w 
<->  ( z  ||  A  /\  z  ||  B ) ) )
26 breq2 4063 . . . . . . . . . . . 12  |-  ( w  =  d  ->  (
z  ||  w  <->  z  ||  d ) )
2726bibi1d 233 . . . . . . . . . . 11  |-  ( w  =  d  ->  (
( z  ||  w  <->  ( z  ||  A  /\  z  ||  B ) )  <-> 
( z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) ) ) )
2827ralbidv 2508 . . . . . . . . . 10  |-  ( w  =  d  ->  ( A. z  e.  ZZ  ( z  ||  w  <->  ( z  ||  A  /\  z  ||  B ) )  <->  A. z  e.  ZZ  ( z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) ) ) )
2928riota2 5945 . . . . . . . . 9  |-  ( ( d  e.  NN0  /\  E! w  e.  NN0  A. z  e.  ZZ  (
z  ||  w  <->  ( z  ||  A  /\  z  ||  B ) ) )  ->  ( A. z  e.  ZZ  ( z  ||  d 
<->  ( z  ||  A  /\  z  ||  B ) )  <->  ( iota_ w  e. 
NN0  A. z  e.  ZZ  ( z  ||  w  <->  ( z  ||  A  /\  z  ||  B ) ) )  =  d ) )
3022, 25, 29syl2anc 411 . . . . . . . 8  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  ( d  e. 
NN0  /\  ( A. z  e.  ZZ  (
z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x )  +  ( B  x.  y
) ) ) ) )  ->  ( A. z  e.  ZZ  (
z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) )  <->  ( iota_ w  e.  NN0  A. z  e.  ZZ  ( z  ||  w 
<->  ( z  ||  A  /\  z  ||  B ) ) )  =  d ) )
3121, 30mpbid 147 . . . . . . 7  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  ( d  e. 
NN0  /\  ( A. z  e.  ZZ  (
z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x )  +  ( B  x.  y
) ) ) ) )  ->  ( iota_ w  e.  NN0  A. z  e.  ZZ  ( z  ||  w 
<->  ( z  ||  A  /\  z  ||  B ) ) )  =  d )
3220, 31eqtrd 2240 . . . . . 6  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  ( d  e. 
NN0  /\  ( A. z  e.  ZZ  (
z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x )  +  ( B  x.  y
) ) ) ) )  ->  ( A  gcd  B )  =  d )
3332eqeq1d 2216 . . . . 5  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  ( d  e. 
NN0  /\  ( A. z  e.  ZZ  (
z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x )  +  ( B  x.  y
) ) ) ) )  ->  ( ( A  gcd  B )  =  ( ( A  x.  x )  +  ( B  x.  y ) )  <->  d  =  ( ( A  x.  x
)  +  ( B  x.  y ) ) ) )
3418, 33rexbid 2507 . . . 4  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  ( d  e. 
NN0  /\  ( A. z  e.  ZZ  (
z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x )  +  ( B  x.  y
) ) ) ) )  ->  ( E. y  e.  ZZ  ( A  gcd  B )  =  ( ( A  x.  x )  +  ( B  x.  y ) )  <->  E. y  e.  ZZ  d  =  ( ( A  x.  x )  +  ( B  x.  y ) ) ) )
359, 34rexbid 2507 . . 3  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  ( d  e. 
NN0  /\  ( A. z  e.  ZZ  (
z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x )  +  ( B  x.  y
) ) ) ) )  ->  ( E. x  e.  ZZ  E. y  e.  ZZ  ( A  gcd  B )  =  ( ( A  x.  x )  +  ( B  x.  y ) )  <->  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x
)  +  ( B  x.  y ) ) ) )
362, 35mpbird 167 . 2  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  ( d  e. 
NN0  /\  ( A. z  e.  ZZ  (
z  ||  d  <->  ( z  ||  A  /\  z  ||  B ) )  /\  E. x  e.  ZZ  E. y  e.  ZZ  d  =  ( ( A  x.  x )  +  ( B  x.  y
) ) ) ) )  ->  E. x  e.  ZZ  E. y  e.  ZZ  ( A  gcd  B )  =  ( ( A  x.  x )  +  ( B  x.  y ) ) )
371, 36rexlimddv 2630 1  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  E. x  e.  ZZ  E. y  e.  ZZ  ( A  gcd  B )  =  ( ( A  x.  x )  +  ( B  x.  y ) ) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    /\ wa 104    <-> wb 105    = wceq 1373    e. wcel 2178   A.wral 2486   E.wrex 2487   E!wreu 2488   class class class wbr 4059   iota_crio 5921  (class class class)co 5967    + caddc 7963    x. cmul 7965   NN0cn0 9330   ZZcz 9407    || cdvds 12213    gcd cgcd 12389
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 615  ax-in2 616  ax-io 711  ax-5 1471  ax-7 1472  ax-gen 1473  ax-ie1 1517  ax-ie2 1518  ax-8 1528  ax-10 1529  ax-11 1530  ax-i12 1531  ax-bndl 1533  ax-4 1534  ax-17 1550  ax-i9 1554  ax-ial 1558  ax-i5r 1559  ax-13 2180  ax-14 2181  ax-ext 2189  ax-coll 4175  ax-sep 4178  ax-nul 4186  ax-pow 4234  ax-pr 4269  ax-un 4498  ax-setind 4603  ax-iinf 4654  ax-cnex 8051  ax-resscn 8052  ax-1cn 8053  ax-1re 8054  ax-icn 8055  ax-addcl 8056  ax-addrcl 8057  ax-mulcl 8058  ax-mulrcl 8059  ax-addcom 8060  ax-mulcom 8061  ax-addass 8062  ax-mulass 8063  ax-distr 8064  ax-i2m1 8065  ax-0lt1 8066  ax-1rid 8067  ax-0id 8068  ax-rnegex 8069  ax-precex 8070  ax-cnre 8071  ax-pre-ltirr 8072  ax-pre-ltwlin 8073  ax-pre-lttrn 8074  ax-pre-apti 8075  ax-pre-ltadd 8076  ax-pre-mulgt0 8077  ax-pre-mulext 8078  ax-arch 8079  ax-caucvg 8080
This theorem depends on definitions:  df-bi 117  df-dc 837  df-3or 982  df-3an 983  df-tru 1376  df-fal 1379  df-nf 1485  df-sb 1787  df-eu 2058  df-mo 2059  df-clab 2194  df-cleq 2200  df-clel 2203  df-nfc 2339  df-ne 2379  df-nel 2474  df-ral 2491  df-rex 2492  df-reu 2493  df-rmo 2494  df-rab 2495  df-v 2778  df-sbc 3006  df-csb 3102  df-dif 3176  df-un 3178  df-in 3180  df-ss 3187  df-nul 3469  df-if 3580  df-pw 3628  df-sn 3649  df-pr 3650  df-op 3652  df-uni 3865  df-int 3900  df-iun 3943  df-br 4060  df-opab 4122  df-mpt 4123  df-tr 4159  df-id 4358  df-po 4361  df-iso 4362  df-iord 4431  df-on 4433  df-ilim 4434  df-suc 4436  df-iom 4657  df-xp 4699  df-rel 4700  df-cnv 4701  df-co 4702  df-dm 4703  df-rn 4704  df-res 4705  df-ima 4706  df-iota 5251  df-fun 5292  df-fn 5293  df-f 5294  df-f1 5295  df-fo 5296  df-f1o 5297  df-fv 5298  df-riota 5922  df-ov 5970  df-oprab 5971  df-mpo 5972  df-1st 6249  df-2nd 6250  df-recs 6414  df-frec 6500  df-sup 7112  df-pnf 8144  df-mnf 8145  df-xr 8146  df-ltxr 8147  df-le 8148  df-sub 8280  df-neg 8281  df-reap 8683  df-ap 8690  df-div 8781  df-inn 9072  df-2 9130  df-3 9131  df-4 9132  df-n0 9331  df-z 9408  df-uz 9684  df-q 9776  df-rp 9811  df-fz 10166  df-fzo 10300  df-fl 10450  df-mod 10505  df-seqfrec 10630  df-exp 10721  df-cj 11268  df-re 11269  df-im 11270  df-rsqrt 11424  df-abs 11425  df-dvds 12214  df-gcd 12390
This theorem is referenced by:  dvdsgcd  12448  dvdsmulgcd  12461  lcmgcdlem  12514  divgcdcoprm0  12538  znunit  14536
  Copyright terms: Public domain W3C validator