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

Theorem isprm2 12920
Description: The predicate "is a prime number". A prime number is an integer greater than or equal to 2 whose only positive divisors are 1 and itself. Definition in [ApostolNT] p. 16. (Contributed by Paul Chapman, 26-Oct-2012.)
Assertion
Ref Expression
isprm2  |-  ( P  e.  Prime  <->  ( P  e.  ( ZZ>= `  2 )  /\  A. z  e.  NN  ( z  ||  P  ->  ( z  =  1  \/  z  =  P ) ) ) )
Distinct variable group:    z, P

Proof of Theorem isprm2
Dummy variable  n is distinct from all other variables.
StepHypRef Expression
1 1nprm 12917 . . . . 5  |-  -.  1  e.  Prime
2 eleq1 2301 . . . . . 6  |-  ( P  =  1  ->  ( P  e.  Prime  <->  1  e.  Prime ) )
32biimpcd 159 . . . . 5  |-  ( P  e.  Prime  ->  ( P  =  1  ->  1  e.  Prime ) )
41, 3mtoi 674 . . . 4  |-  ( P  e.  Prime  ->  -.  P  =  1 )
54neqned 2427 . . 3  |-  ( P  e.  Prime  ->  P  =/=  1 )
65pm4.71i 395 . 2  |-  ( P  e.  Prime  <->  ( P  e. 
Prime  /\  P  =/=  1
) )
7 isprm 12912 . . . 4  |-  ( P  e.  Prime  <->  ( P  e.  NN  /\  { n  e.  NN  |  n  ||  P }  ~~  2o ) )
8 isprm2lem 12919 . . . . . . 7  |-  ( ( P  e.  NN  /\  P  =/=  1 )  -> 
( { n  e.  NN  |  n  ||  P }  ~~  2o  <->  { n  e.  NN  |  n  ||  P }  =  {
1 ,  P }
) )
9 eqss 3263 . . . . . . . . . . 11  |-  ( { n  e.  NN  |  n  ||  P }  =  { 1 ,  P } 
<->  ( { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P }  /\  { 1 ,  P }  C_ 
{ n  e.  NN  |  n  ||  P }
) )
109imbi2i 226 . . . . . . . . . 10  |-  ( ( P  e.  NN  ->  { n  e.  NN  |  n  ||  P }  =  { 1 ,  P } )  <->  ( P  e.  NN  ->  ( {
n  e.  NN  |  n  ||  P }  C_  { 1 ,  P }  /\  { 1 ,  P }  C_  { n  e.  NN  |  n  ||  P } ) ) )
11 1idssfct 12918 . . . . . . . . . . 11  |-  ( P  e.  NN  ->  { 1 ,  P }  C_  { n  e.  NN  |  n  ||  P } )
12 jcab 611 . . . . . . . . . . 11  |-  ( ( P  e.  NN  ->  ( { n  e.  NN  |  n  ||  P }  C_ 
{ 1 ,  P }  /\  { 1 ,  P }  C_  { n  e.  NN  |  n  ||  P } ) )  <->  ( ( P  e.  NN  ->  { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P }
)  /\  ( P  e.  NN  ->  { 1 ,  P }  C_  { n  e.  NN  |  n  ||  P } ) ) )
1311, 12mpbiran2 954 . . . . . . . . . 10  |-  ( ( P  e.  NN  ->  ( { n  e.  NN  |  n  ||  P }  C_ 
{ 1 ,  P }  /\  { 1 ,  P }  C_  { n  e.  NN  |  n  ||  P } ) )  <->  ( P  e.  NN  ->  { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P } ) )
1410, 13bitri 184 . . . . . . . . 9  |-  ( ( P  e.  NN  ->  { n  e.  NN  |  n  ||  P }  =  { 1 ,  P } )  <->  ( P  e.  NN  ->  { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P } ) )
1514pm5.74ri 181 . . . . . . . 8  |-  ( P  e.  NN  ->  ( { n  e.  NN  |  n  ||  P }  =  { 1 ,  P } 
<->  { n  e.  NN  |  n  ||  P }  C_ 
{ 1 ,  P } ) )
1615adantr 276 . . . . . . 7  |-  ( ( P  e.  NN  /\  P  =/=  1 )  -> 
( { n  e.  NN  |  n  ||  P }  =  {
1 ,  P }  <->  { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P }
) )
178, 16bitrd 188 . . . . . 6  |-  ( ( P  e.  NN  /\  P  =/=  1 )  -> 
( { n  e.  NN  |  n  ||  P }  ~~  2o  <->  { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P } ) )
1817expcom 116 . . . . 5  |-  ( P  =/=  1  ->  ( P  e.  NN  ->  ( { n  e.  NN  |  n  ||  P }  ~~  2o  <->  { n  e.  NN  |  n  ||  P }  C_ 
{ 1 ,  P } ) ) )
1918pm5.32d 454 . . . 4  |-  ( P  =/=  1  ->  (
( P  e.  NN  /\ 
{ n  e.  NN  |  n  ||  P }  ~~  2o )  <->  ( P  e.  NN  /\  { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P } ) ) )
207, 19bitrid 192 . . 3  |-  ( P  =/=  1  ->  ( P  e.  Prime  <->  ( P  e.  NN  /\  { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P } ) ) )
2120pm5.32ri 459 . 2  |-  ( ( P  e.  Prime  /\  P  =/=  1 )  <->  ( ( P  e.  NN  /\  {
n  e.  NN  |  n  ||  P }  C_  { 1 ,  P }
)  /\  P  =/=  1 ) )
22 ancom 266 . . . 4  |-  ( ( ( P  e.  NN  /\ 
{ n  e.  NN  |  n  ||  P }  C_ 
{ 1 ,  P } )  /\  P  =/=  1 )  <->  ( P  =/=  1  /\  ( P  e.  NN  /\  {
n  e.  NN  |  n  ||  P }  C_  { 1 ,  P }
) ) )
23 anass 405 . . . 4  |-  ( ( ( P  =/=  1  /\  P  e.  NN )  /\  { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P } )  <-> 
( P  =/=  1  /\  ( P  e.  NN  /\ 
{ n  e.  NN  |  n  ||  P }  C_ 
{ 1 ,  P } ) ) )
2422, 23bitr4i 187 . . 3  |-  ( ( ( P  e.  NN  /\ 
{ n  e.  NN  |  n  ||  P }  C_ 
{ 1 ,  P } )  /\  P  =/=  1 )  <->  ( ( P  =/=  1  /\  P  e.  NN )  /\  {
n  e.  NN  |  n  ||  P }  C_  { 1 ,  P }
) )
25 ancom 266 . . . . 5  |-  ( ( P  =/=  1  /\  P  e.  NN )  <-> 
( P  e.  NN  /\  P  =/=  1 ) )
26 eluz2b3 10020 . . . . 5  |-  ( P  e.  ( ZZ>= `  2
)  <->  ( P  e.  NN  /\  P  =/=  1 ) )
2725, 26bitr4i 187 . . . 4  |-  ( ( P  =/=  1  /\  P  e.  NN )  <-> 
P  e.  ( ZZ>= ` 
2 ) )
2827anbi1i 462 . . 3  |-  ( ( ( P  =/=  1  /\  P  e.  NN )  /\  { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P } )  <-> 
( P  e.  (
ZZ>= `  2 )  /\  { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P }
) )
29 ssalel 3235 . . . . 5  |-  ( { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P }  <->  A. z ( z  e. 
{ n  e.  NN  |  n  ||  P }  ->  z  e.  { 1 ,  P } ) )
30 breq1 4134 . . . . . . . . . 10  |-  ( n  =  z  ->  (
n  ||  P  <->  z  ||  P ) )
3130elrab 2982 . . . . . . . . 9  |-  ( z  e.  { n  e.  NN  |  n  ||  P }  <->  ( z  e.  NN  /\  z  ||  P ) )
32 vex 2824 . . . . . . . . . 10  |-  z  e. 
_V
3332elpr 3730 . . . . . . . . 9  |-  ( z  e.  { 1 ,  P }  <->  ( z  =  1  \/  z  =  P ) )
3431, 33imbi12i 239 . . . . . . . 8  |-  ( ( z  e.  { n  e.  NN  |  n  ||  P }  ->  z  e. 
{ 1 ,  P } )  <->  ( (
z  e.  NN  /\  z  ||  P )  -> 
( z  =  1  \/  z  =  P ) ) )
35 impexp 263 . . . . . . . 8  |-  ( ( ( z  e.  NN  /\  z  ||  P )  ->  ( z  =  1  \/  z  =  P ) )  <->  ( z  e.  NN  ->  ( z  ||  P  ->  ( z  =  1  \/  z  =  P ) ) ) )
3634, 35bitri 184 . . . . . . 7  |-  ( ( z  e.  { n  e.  NN  |  n  ||  P }  ->  z  e. 
{ 1 ,  P } )  <->  ( z  e.  NN  ->  ( z  ||  P  ->  ( z  =  1  \/  z  =  P ) ) ) )
3736albii 1523 . . . . . 6  |-  ( A. z ( z  e. 
{ n  e.  NN  |  n  ||  P }  ->  z  e.  { 1 ,  P } )  <->  A. z ( z  e.  NN  ->  ( z  ||  P  ->  ( z  =  1  \/  z  =  P ) ) ) )
38 df-ral 2533 . . . . . 6  |-  ( A. z  e.  NN  (
z  ||  P  ->  ( z  =  1  \/  z  =  P ) )  <->  A. z ( z  e.  NN  ->  (
z  ||  P  ->  ( z  =  1  \/  z  =  P ) ) ) )
3937, 38bitr4i 187 . . . . 5  |-  ( A. z ( z  e. 
{ n  e.  NN  |  n  ||  P }  ->  z  e.  { 1 ,  P } )  <->  A. z  e.  NN  ( z  ||  P  ->  ( z  =  1  \/  z  =  P ) ) )
4029, 39bitri 184 . . . 4  |-  ( { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P }  <->  A. z  e.  NN  (
z  ||  P  ->  ( z  =  1  \/  z  =  P ) ) )
4140anbi2i 461 . . 3  |-  ( ( P  e.  ( ZZ>= ` 
2 )  /\  {
n  e.  NN  |  n  ||  P }  C_  { 1 ,  P }
)  <->  ( P  e.  ( ZZ>= `  2 )  /\  A. z  e.  NN  ( z  ||  P  ->  ( z  =  1  \/  z  =  P ) ) ) )
4224, 28, 413bitri 206 . 2  |-  ( ( ( P  e.  NN  /\ 
{ n  e.  NN  |  n  ||  P }  C_ 
{ 1 ,  P } )  /\  P  =/=  1 )  <->  ( P  e.  ( ZZ>= `  2 )  /\  A. z  e.  NN  ( z  ||  P  ->  ( z  =  1  \/  z  =  P ) ) ) )
436, 21, 423bitri 206 1  |-  ( P  e.  Prime  <->  ( P  e.  ( ZZ>= `  2 )  /\  A. z  e.  NN  ( z  ||  P  ->  ( z  =  1  \/  z  =  P ) ) ) )
Colors of variables:    wff set class
This proof depends on syntax axioms:    -> wi 4    /\ wa 104    <-> wb 105    \/ wo 720   A.wal 1400    = wceq 1402    e. wcel 2209    =/= wne 2420   A.wral 2528   {crab 2532    C_ wss 3220   {cpr 3710   class class class wbr 4131   ` cfv 5380   2oc2o 6685    ~~ cen 7024   1c1 8186   NNcn 9313   2c2 9364   ZZ>=cuz 9937    || cdvds 12579   Primecprime 12910
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 623  ax-in2 624  ax-io 721  ax-5 1500  ax-7 1501  ax-gen 1502  ax-ie1 1546  ax-ie2 1547  ax-8 1557  ax-10 1558  ax-11 1559  ax-i12 1560  ax-bndl 1562  ax-4 1563  ax-17 1579  ax-i9 1583  ax-ial 1587  ax-i5r 1588  ax-14 2212  ax-ext 2220  ax-coll 4248  ax-sep 4251  ax-nul 4261  ax-pow 4313  ax-pr 4348  ax-un 4580  ax-setind 4686  ax-iinf 4737  ax-cnex 8276  ax-resscn 8277  ax-1cn 8278  ax-1re 8279  ax-icn 8280  ax-addcl 8281  ax-addrcl 8282  ax-mulcl 8283  ax-mulrcl 8284  ax-addcom 8285  ax-mulcom 8286  ax-addass 8287  ax-mulass 8288  ax-distr 8289  ax-i2m1 8290  ax-0lt1 8291  ax-1rid 8292  ax-0id 8293  ax-rnegex 8294  ax-precex 8295  ax-cnre 8296  ax-pre-ltirr 8297  ax-pre-ltwlin 8298  ax-pre-lttrn 8299  ax-pre-apti 8300  ax-pre-ltadd 8301  ax-pre-mulgt0 8302  ax-pre-mulext 8303  ax-arch 8304  ax-caucvg 8305
This proof depends on definitions:  df-bi 117  df-dc 847  df-3or 1010  df-3an 1011  df-tru 1405  df-fal 1408  df-nf 1514  df-sb 1816  df-eu 2089  df-mo 2090  df-clab 2225  df-cleq 2231  df-clel 2234  df-nfc 2381  df-ne 2421  df-nel 2516  df-ral 2533  df-rex 2534  df-reu 2535  df-rmo 2536  df-rab 2537  df-v 2823  df-sbc 3052  df-csb 3148  df-dif 3222  df-un 3224  df-in 3226  df-ss 3233  df-nul 3521  df-if 3639  df-pw 3690  df-sn 3715  df-pr 3716  df-op 3718  df-uni 3936  df-int 3971  df-iun 4014  df-br 4132  df-opab 4194  df-mpt 4195  df-tr 4232  df-id 4440  df-po 4443  df-iso 4444  df-iord 4513  df-on 4515  df-ilim 4516  df-suc 4518  df-iom 4740  df-xp 4782  df-rel 4783  df-cnv 4784  df-co 4785  df-dm 4786  df-rn 4787  df-res 4788  df-ima 4789  df-iota 5340  df-fun 5382  df-fn 5383  df-f 5384  df-f1 5385  df-fo 5386  df-f1o 5387  df-fv 5388  df-riota 6041  df-ov 6091  df-oprab 6092  df-mpo 6093  df-1st 6378  df-2nd 6379  df-recs 6580  df-frec 6666  df-1o 6691  df-2o 6692  df-er 6811  df-en 7027  df-pnf 8368  df-mnf 8369  df-xr 8370  df-ltxr 8371  df-le 8372  df-sub 8506  df-neg 8507  df-reap 8911  df-ap 8918  df-div 9011  df-inn 9314  df-2 9372  df-3 9373  df-4 9374  df-n0 9575  df-z 9656  df-uz 9938  df-q 10036  df-rp 10072  df-seqfrec 10906  df-exp 10997  df-cj 11629  df-re 11630  df-im 11631  df-rsqrt 11786  df-abs 11787  df-dvds 12580  df-prm 12911
This theorem is used by:  isprm3  12921  isprm4  12922  dvdsprime  12925  coprm  12948  isprm6  12951  infpn2  13405  znidomb  15102  perfectlem2  16300
  Copyright terms: Public domain W3C validator