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

Theorem isprm2 12524
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 12521 . . . . 5  |-  -.  1  e.  Prime
2 eleq1 2269 . . . . . 6  |-  ( P  =  1  ->  ( P  e.  Prime  <->  1  e.  Prime ) )
32biimpcd 159 . . . . 5  |-  ( P  e.  Prime  ->  ( P  =  1  ->  1  e.  Prime ) )
41, 3mtoi 666 . . . 4  |-  ( P  e.  Prime  ->  -.  P  =  1 )
54neqned 2384 . . 3  |-  ( P  e.  Prime  ->  P  =/=  1 )
65pm4.71i 391 . 2  |-  ( P  e.  Prime  <->  ( P  e. 
Prime  /\  P  =/=  1
) )
7 isprm 12516 . . . 4  |-  ( P  e.  Prime  <->  ( P  e.  NN  /\  { n  e.  NN  |  n  ||  P }  ~~  2o ) )
8 isprm2lem 12523 . . . . . . 7  |-  ( ( P  e.  NN  /\  P  =/=  1 )  -> 
( { n  e.  NN  |  n  ||  P }  ~~  2o  <->  { n  e.  NN  |  n  ||  P }  =  {
1 ,  P }
) )
9 eqss 3212 . . . . . . . . . . 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 12522 . . . . . . . . . . 11  |-  ( P  e.  NN  ->  { 1 ,  P }  C_  { n  e.  NN  |  n  ||  P } )
12 jcab 603 . . . . . . . . . . 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 944 . . . . . . . . . 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 450 . . . 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 455 . 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 401 . . . 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 9755 . . . . 5  |-  ( P  e.  ( ZZ>= `  2
)  <->  ( P  e.  NN  /\  P  =/=  1 ) )
2725, 26bitr4i 187 . . . 4  |-  ( ( P  =/=  1  /\  P  e.  NN )  <-> 
P  e.  ( ZZ>= ` 
2 ) )
2827anbi1i 458 . . 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 3185 . . . . 5  |-  ( { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P }  <->  A. z ( z  e. 
{ n  e.  NN  |  n  ||  P }  ->  z  e.  { 1 ,  P } ) )
30 breq1 4057 . . . . . . . . . 10  |-  ( n  =  z  ->  (
n  ||  P  <->  z  ||  P ) )
3130elrab 2933 . . . . . . . . 9  |-  ( z  e.  { n  e.  NN  |  n  ||  P }  <->  ( z  e.  NN  /\  z  ||  P ) )
32 vex 2776 . . . . . . . . . 10  |-  z  e. 
_V
3332elpr 3659 . . . . . . . . 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 1494 . . . . . 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 2490 . . . . . 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 457 . . 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
Syntax hints:    -> wi 4    /\ wa 104    <-> wb 105    \/ wo 710   A.wal 1371    = wceq 1373    e. wcel 2177    =/= wne 2377   A.wral 2485   {crab 2489    C_ wss 3170   {cpr 3639   class class class wbr 4054   ` cfv 5285   2oc2o 6514    ~~ cen 6843   1c1 7956   NNcn 9066   2c2 9117   ZZ>=cuz 9678    || cdvds 12183   Primecprime 12514
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 2179  ax-14 2180  ax-ext 2188  ax-coll 4170  ax-sep 4173  ax-nul 4181  ax-pow 4229  ax-pr 4264  ax-un 4493  ax-setind 4598  ax-iinf 4649  ax-cnex 8046  ax-resscn 8047  ax-1cn 8048  ax-1re 8049  ax-icn 8050  ax-addcl 8051  ax-addrcl 8052  ax-mulcl 8053  ax-mulrcl 8054  ax-addcom 8055  ax-mulcom 8056  ax-addass 8057  ax-mulass 8058  ax-distr 8059  ax-i2m1 8060  ax-0lt1 8061  ax-1rid 8062  ax-0id 8063  ax-rnegex 8064  ax-precex 8065  ax-cnre 8066  ax-pre-ltirr 8067  ax-pre-ltwlin 8068  ax-pre-lttrn 8069  ax-pre-apti 8070  ax-pre-ltadd 8071  ax-pre-mulgt0 8072  ax-pre-mulext 8073  ax-arch 8074  ax-caucvg 8075
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 2193  df-cleq 2199  df-clel 2202  df-nfc 2338  df-ne 2378  df-nel 2473  df-ral 2490  df-rex 2491  df-reu 2492  df-rmo 2493  df-rab 2494  df-v 2775  df-sbc 3003  df-csb 3098  df-dif 3172  df-un 3174  df-in 3176  df-ss 3183  df-nul 3465  df-if 3576  df-pw 3623  df-sn 3644  df-pr 3645  df-op 3647  df-uni 3860  df-int 3895  df-iun 3938  df-br 4055  df-opab 4117  df-mpt 4118  df-tr 4154  df-id 4353  df-po 4356  df-iso 4357  df-iord 4426  df-on 4428  df-ilim 4429  df-suc 4431  df-iom 4652  df-xp 4694  df-rel 4695  df-cnv 4696  df-co 4697  df-dm 4698  df-rn 4699  df-res 4700  df-ima 4701  df-iota 5246  df-fun 5287  df-fn 5288  df-f 5289  df-f1 5290  df-fo 5291  df-f1o 5292  df-fv 5293  df-riota 5917  df-ov 5965  df-oprab 5966  df-mpo 5967  df-1st 6244  df-2nd 6245  df-recs 6409  df-frec 6495  df-1o 6520  df-2o 6521  df-er 6638  df-en 6846  df-pnf 8139  df-mnf 8140  df-xr 8141  df-ltxr 8142  df-le 8143  df-sub 8275  df-neg 8276  df-reap 8678  df-ap 8685  df-div 8776  df-inn 9067  df-2 9125  df-3 9126  df-4 9127  df-n0 9326  df-z 9403  df-uz 9679  df-q 9771  df-rp 9806  df-seqfrec 10625  df-exp 10716  df-cj 11238  df-re 11239  df-im 11240  df-rsqrt 11394  df-abs 11395  df-dvds 12184  df-prm 12515
This theorem is referenced by:  isprm3  12525  isprm4  12526  dvdsprime  12529  coprm  12551  isprm6  12554  infpn2  12912  znidomb  14505  perfectlem2  15557
  Copyright terms: Public domain W3C validator