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

Theorem isprm2 11705
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 11702 . . . . 5  |-  -.  1  e.  Prime
2 eleq1 2178 . . . . . 6  |-  ( P  =  1  ->  ( P  e.  Prime  <->  1  e.  Prime ) )
32biimpcd 158 . . . . 5  |-  ( P  e.  Prime  ->  ( P  =  1  ->  1  e.  Prime ) )
41, 3mtoi 636 . . . 4  |-  ( P  e.  Prime  ->  -.  P  =  1 )
54neqned 2290 . . 3  |-  ( P  e.  Prime  ->  P  =/=  1 )
65pm4.71i 386 . 2  |-  ( P  e.  Prime  <->  ( P  e. 
Prime  /\  P  =/=  1
) )
7 isprm 11697 . . . 4  |-  ( P  e.  Prime  <->  ( P  e.  NN  /\  { n  e.  NN  |  n  ||  P }  ~~  2o ) )
8 isprm2lem 11704 . . . . . . 7  |-  ( ( P  e.  NN  /\  P  =/=  1 )  -> 
( { n  e.  NN  |  n  ||  P }  ~~  2o  <->  { n  e.  NN  |  n  ||  P }  =  {
1 ,  P }
) )
9 eqss 3080 . . . . . . . . . . 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 225 . . . . . . . . . 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 11703 . . . . . . . . . . 11  |-  ( P  e.  NN  ->  { 1 ,  P }  C_  { n  e.  NN  |  n  ||  P } )
12 jcab 575 . . . . . . . . . . 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 908 . . . . . . . . . 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 183 . . . . . . . . 9  |-  ( ( P  e.  NN  ->  { n  e.  NN  |  n  ||  P }  =  { 1 ,  P } )  <->  ( P  e.  NN  ->  { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P } ) )
1514pm5.74ri 180 . . . . . . . 8  |-  ( P  e.  NN  ->  ( { n  e.  NN  |  n  ||  P }  =  { 1 ,  P } 
<->  { n  e.  NN  |  n  ||  P }  C_ 
{ 1 ,  P } ) )
1615adantr 272 . . . . . . 7  |-  ( ( P  e.  NN  /\  P  =/=  1 )  -> 
( { n  e.  NN  |  n  ||  P }  =  {
1 ,  P }  <->  { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P }
) )
178, 16bitrd 187 . . . . . 6  |-  ( ( P  e.  NN  /\  P  =/=  1 )  -> 
( { n  e.  NN  |  n  ||  P }  ~~  2o  <->  { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P } ) )
1817expcom 115 . . . . 5  |-  ( P  =/=  1  ->  ( P  e.  NN  ->  ( { n  e.  NN  |  n  ||  P }  ~~  2o  <->  { n  e.  NN  |  n  ||  P }  C_ 
{ 1 ,  P } ) ) )
1918pm5.32d 443 . . . 4  |-  ( P  =/=  1  ->  (
( P  e.  NN  /\ 
{ n  e.  NN  |  n  ||  P }  ~~  2o )  <->  ( P  e.  NN  /\  { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P } ) ) )
207, 19syl5bb 191 . . 3  |-  ( P  =/=  1  ->  ( P  e.  Prime  <->  ( P  e.  NN  /\  { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P } ) ) )
2120pm5.32ri 448 . 2  |-  ( ( P  e.  Prime  /\  P  =/=  1 )  <->  ( ( P  e.  NN  /\  {
n  e.  NN  |  n  ||  P }  C_  { 1 ,  P }
)  /\  P  =/=  1 ) )
22 ancom 264 . . . 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 396 . . . 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 186 . . 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 264 . . . . 5  |-  ( ( P  =/=  1  /\  P  e.  NN )  <-> 
( P  e.  NN  /\  P  =/=  1 ) )
26 eluz2b3 9350 . . . . 5  |-  ( P  e.  ( ZZ>= `  2
)  <->  ( P  e.  NN  /\  P  =/=  1 ) )
2725, 26bitr4i 186 . . . 4  |-  ( ( P  =/=  1  /\  P  e.  NN )  <-> 
P  e.  ( ZZ>= ` 
2 ) )
2827anbi1i 451 . . 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 dfss2 3054 . . . . 5  |-  ( { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P }  <->  A. z ( z  e. 
{ n  e.  NN  |  n  ||  P }  ->  z  e.  { 1 ,  P } ) )
30 breq1 3900 . . . . . . . . . 10  |-  ( n  =  z  ->  (
n  ||  P  <->  z  ||  P ) )
3130elrab 2811 . . . . . . . . 9  |-  ( z  e.  { n  e.  NN  |  n  ||  P }  <->  ( z  e.  NN  /\  z  ||  P ) )
32 vex 2661 . . . . . . . . . 10  |-  z  e. 
_V
3332elpr 3516 . . . . . . . . 9  |-  ( z  e.  { 1 ,  P }  <->  ( z  =  1  \/  z  =  P ) )
3431, 33imbi12i 238 . . . . . . . 8  |-  ( ( z  e.  { n  e.  NN  |  n  ||  P }  ->  z  e. 
{ 1 ,  P } )  <->  ( (
z  e.  NN  /\  z  ||  P )  -> 
( z  =  1  \/  z  =  P ) ) )
35 impexp 261 . . . . . . . 8  |-  ( ( ( z  e.  NN  /\  z  ||  P )  ->  ( z  =  1  \/  z  =  P ) )  <->  ( z  e.  NN  ->  ( z  ||  P  ->  ( z  =  1  \/  z  =  P ) ) ) )
3634, 35bitri 183 . . . . . . 7  |-  ( ( z  e.  { n  e.  NN  |  n  ||  P }  ->  z  e. 
{ 1 ,  P } )  <->  ( z  e.  NN  ->  ( z  ||  P  ->  ( z  =  1  \/  z  =  P ) ) ) )
3736albii 1429 . . . . . 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 2396 . . . . . 6  |-  ( A. z  e.  NN  (
z  ||  P  ->  ( z  =  1  \/  z  =  P ) )  <->  A. z ( z  e.  NN  ->  (
z  ||  P  ->  ( z  =  1  \/  z  =  P ) ) ) )
3937, 38bitr4i 186 . . . . 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 183 . . . 4  |-  ( { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P }  <->  A. z  e.  NN  (
z  ||  P  ->  ( z  =  1  \/  z  =  P ) ) )
4140anbi2i 450 . . 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 205 . 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 205 1  |-  ( P  e.  Prime  <->  ( P  e.  ( ZZ>= `  2 )  /\  A. z  e.  NN  ( z  ||  P  ->  ( z  =  1  \/  z  =  P ) ) ) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    /\ wa 103    <-> wb 104    \/ wo 680   A.wal 1312    = wceq 1314    e. wcel 1463    =/= wne 2283   A.wral 2391   {crab 2395    C_ wss 3039   {cpr 3496   class class class wbr 3897   ` cfv 5091   2oc2o 6273    ~~ cen 6598   1c1 7585   NNcn 8680   2c2 8731   ZZ>=cuz 9278    || cdvds 11400   Primecprime 11695
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 105  ax-ia2 106  ax-ia3 107  ax-in1 586  ax-in2 587  ax-io 681  ax-5 1406  ax-7 1407  ax-gen 1408  ax-ie1 1452  ax-ie2 1453  ax-8 1465  ax-10 1466  ax-11 1467  ax-i12 1468  ax-bndl 1469  ax-4 1470  ax-13 1474  ax-14 1475  ax-17 1489  ax-i9 1493  ax-ial 1497  ax-i5r 1498  ax-ext 2097  ax-coll 4011  ax-sep 4014  ax-nul 4022  ax-pow 4066  ax-pr 4099  ax-un 4323  ax-setind 4420  ax-iinf 4470  ax-cnex 7675  ax-resscn 7676  ax-1cn 7677  ax-1re 7678  ax-icn 7679  ax-addcl 7680  ax-addrcl 7681  ax-mulcl 7682  ax-mulrcl 7683  ax-addcom 7684  ax-mulcom 7685  ax-addass 7686  ax-mulass 7687  ax-distr 7688  ax-i2m1 7689  ax-0lt1 7690  ax-1rid 7691  ax-0id 7692  ax-rnegex 7693  ax-precex 7694  ax-cnre 7695  ax-pre-ltirr 7696  ax-pre-ltwlin 7697  ax-pre-lttrn 7698  ax-pre-apti 7699  ax-pre-ltadd 7700  ax-pre-mulgt0 7701  ax-pre-mulext 7702  ax-arch 7703  ax-caucvg 7704
This theorem depends on definitions:  df-bi 116  df-dc 803  df-3or 946  df-3an 947  df-tru 1317  df-fal 1320  df-nf 1420  df-sb 1719  df-eu 1978  df-mo 1979  df-clab 2102  df-cleq 2108  df-clel 2111  df-nfc 2245  df-ne 2284  df-nel 2379  df-ral 2396  df-rex 2397  df-reu 2398  df-rmo 2399  df-rab 2400  df-v 2660  df-sbc 2881  df-csb 2974  df-dif 3041  df-un 3043  df-in 3045  df-ss 3052  df-nul 3332  df-if 3443  df-pw 3480  df-sn 3501  df-pr 3502  df-op 3504  df-uni 3705  df-int 3740  df-iun 3783  df-br 3898  df-opab 3958  df-mpt 3959  df-tr 3995  df-id 4183  df-po 4186  df-iso 4187  df-iord 4256  df-on 4258  df-ilim 4259  df-suc 4261  df-iom 4473  df-xp 4513  df-rel 4514  df-cnv 4515  df-co 4516  df-dm 4517  df-rn 4518  df-res 4519  df-ima 4520  df-iota 5056  df-fun 5093  df-fn 5094  df-f 5095  df-f1 5096  df-fo 5097  df-f1o 5098  df-fv 5099  df-riota 5696  df-ov 5743  df-oprab 5744  df-mpo 5745  df-1st 6004  df-2nd 6005  df-recs 6168  df-frec 6254  df-1o 6279  df-2o 6280  df-er 6395  df-en 6601  df-pnf 7766  df-mnf 7767  df-xr 7768  df-ltxr 7769  df-le 7770  df-sub 7899  df-neg 7900  df-reap 8300  df-ap 8307  df-div 8396  df-inn 8681  df-2 8739  df-3 8740  df-4 8741  df-n0 8932  df-z 9009  df-uz 9279  df-q 9364  df-rp 9394  df-seqfrec 10170  df-exp 10244  df-cj 10565  df-re 10566  df-im 10567  df-rsqrt 10721  df-abs 10722  df-dvds 11401  df-prm 11696
This theorem is referenced by:  isprm3  11706  isprm4  11707  dvdsprime  11710  coprm  11729  isprm6  11732
  Copyright terms: Public domain W3C validator