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

Theorem isprm2 10706
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 10703 . . . . 5  |-  -.  1  e.  Prime
2 eleq1 2145 . . . . . 6  |-  ( P  =  1  ->  ( P  e.  Prime  <->  1  e.  Prime ) )
32biimpcd 157 . . . . 5  |-  ( P  e.  Prime  ->  ( P  =  1  ->  1  e.  Prime ) )
41, 3mtoi 623 . . . 4  |-  ( P  e.  Prime  ->  -.  P  =  1 )
54neqned 2256 . . 3  |-  ( P  e.  Prime  ->  P  =/=  1 )
65pm4.71i 383 . 2  |-  ( P  e.  Prime  <->  ( P  e. 
Prime  /\  P  =/=  1
) )
7 isprm 10698 . . . 4  |-  ( P  e.  Prime  <->  ( P  e.  NN  /\  { n  e.  NN  |  n  ||  P }  ~~  2o ) )
8 isprm2lem 10705 . . . . . . 7  |-  ( ( P  e.  NN  /\  P  =/=  1 )  -> 
( { n  e.  NN  |  n  ||  P }  ~~  2o  <->  { n  e.  NN  |  n  ||  P }  =  {
1 ,  P }
) )
9 eqss 3023 . . . . . . . . . . 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 224 . . . . . . . . . 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 10704 . . . . . . . . . . 11  |-  ( P  e.  NN  ->  { 1 ,  P }  C_  { n  e.  NN  |  n  ||  P } )
12 jcab 568 . . . . . . . . . . 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 883 . . . . . . . . . 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 182 . . . . . . . . 9  |-  ( ( P  e.  NN  ->  { n  e.  NN  |  n  ||  P }  =  { 1 ,  P } )  <->  ( P  e.  NN  ->  { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P } ) )
1514pm5.74ri 179 . . . . . . . 8  |-  ( P  e.  NN  ->  ( { n  e.  NN  |  n  ||  P }  =  { 1 ,  P } 
<->  { n  e.  NN  |  n  ||  P }  C_ 
{ 1 ,  P } ) )
1615adantr 270 . . . . . . 7  |-  ( ( P  e.  NN  /\  P  =/=  1 )  -> 
( { n  e.  NN  |  n  ||  P }  =  {
1 ,  P }  <->  { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P }
) )
178, 16bitrd 186 . . . . . 6  |-  ( ( P  e.  NN  /\  P  =/=  1 )  -> 
( { n  e.  NN  |  n  ||  P }  ~~  2o  <->  { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P } ) )
1817expcom 114 . . . . 5  |-  ( P  =/=  1  ->  ( P  e.  NN  ->  ( { n  e.  NN  |  n  ||  P }  ~~  2o  <->  { n  e.  NN  |  n  ||  P }  C_ 
{ 1 ,  P } ) ) )
1918pm5.32d 438 . . . 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 190 . . 3  |-  ( P  =/=  1  ->  ( P  e.  Prime  <->  ( P  e.  NN  /\  { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P } ) ) )
2120pm5.32ri 443 . 2  |-  ( ( P  e.  Prime  /\  P  =/=  1 )  <->  ( ( P  e.  NN  /\  {
n  e.  NN  |  n  ||  P }  C_  { 1 ,  P }
)  /\  P  =/=  1 ) )
22 ancom 262 . . . 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 393 . . . 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 185 . . 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 262 . . . . 5  |-  ( ( P  =/=  1  /\  P  e.  NN )  <-> 
( P  e.  NN  /\  P  =/=  1 ) )
26 eluz2b3 8824 . . . . 5  |-  ( P  e.  ( ZZ>= `  2
)  <->  ( P  e.  NN  /\  P  =/=  1 ) )
2725, 26bitr4i 185 . . . 4  |-  ( ( P  =/=  1  /\  P  e.  NN )  <-> 
P  e.  ( ZZ>= ` 
2 ) )
2827anbi1i 446 . . 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 2997 . . . . 5  |-  ( { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P }  <->  A. z ( z  e. 
{ n  e.  NN  |  n  ||  P }  ->  z  e.  { 1 ,  P } ) )
30 breq1 3808 . . . . . . . . . 10  |-  ( n  =  z  ->  (
n  ||  P  <->  z  ||  P ) )
3130elrab 2757 . . . . . . . . 9  |-  ( z  e.  { n  e.  NN  |  n  ||  P }  <->  ( z  e.  NN  /\  z  ||  P ) )
32 vex 2613 . . . . . . . . . 10  |-  z  e. 
_V
3332elpr 3437 . . . . . . . . 9  |-  ( z  e.  { 1 ,  P }  <->  ( z  =  1  \/  z  =  P ) )
3431, 33imbi12i 237 . . . . . . . 8  |-  ( ( z  e.  { n  e.  NN  |  n  ||  P }  ->  z  e. 
{ 1 ,  P } )  <->  ( (
z  e.  NN  /\  z  ||  P )  -> 
( z  =  1  \/  z  =  P ) ) )
35 impexp 259 . . . . . . . 8  |-  ( ( ( z  e.  NN  /\  z  ||  P )  ->  ( z  =  1  \/  z  =  P ) )  <->  ( z  e.  NN  ->  ( z  ||  P  ->  ( z  =  1  \/  z  =  P ) ) ) )
3634, 35bitri 182 . . . . . . 7  |-  ( ( z  e.  { n  e.  NN  |  n  ||  P }  ->  z  e. 
{ 1 ,  P } )  <->  ( z  e.  NN  ->  ( z  ||  P  ->  ( z  =  1  \/  z  =  P ) ) ) )
3736albii 1400 . . . . . 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 2358 . . . . . 6  |-  ( A. z  e.  NN  (
z  ||  P  ->  ( z  =  1  \/  z  =  P ) )  <->  A. z ( z  e.  NN  ->  (
z  ||  P  ->  ( z  =  1  \/  z  =  P ) ) ) )
3937, 38bitr4i 185 . . . . 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 182 . . . 4  |-  ( { n  e.  NN  |  n  ||  P }  C_  { 1 ,  P }  <->  A. z  e.  NN  (
z  ||  P  ->  ( z  =  1  \/  z  =  P ) ) )
4140anbi2i 445 . . 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 204 . 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 204 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 102    <-> wb 103    \/ wo 662   A.wal 1283    = wceq 1285    e. wcel 1434    =/= wne 2249   A.wral 2353   {crab 2357    C_ wss 2982   {cpr 3417   class class class wbr 3805   ` cfv 4952   2oc2o 6079    ~~ cen 6306   1c1 7096   NNcn 8158   2c2 8208   ZZ>=cuz 8752    || cdvds 10403   Primecprime 10696
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-mp 7  ax-ia1 104  ax-ia2 105  ax-ia3 106  ax-in1 577  ax-in2 578  ax-io 663  ax-5 1377  ax-7 1378  ax-gen 1379  ax-ie1 1423  ax-ie2 1424  ax-8 1436  ax-10 1437  ax-11 1438  ax-i12 1439  ax-bndl 1440  ax-4 1441  ax-13 1445  ax-14 1446  ax-17 1460  ax-i9 1464  ax-ial 1468  ax-i5r 1469  ax-ext 2065  ax-coll 3913  ax-sep 3916  ax-nul 3924  ax-pow 3968  ax-pr 3992  ax-un 4216  ax-setind 4308  ax-iinf 4357  ax-cnex 7181  ax-resscn 7182  ax-1cn 7183  ax-1re 7184  ax-icn 7185  ax-addcl 7186  ax-addrcl 7187  ax-mulcl 7188  ax-mulrcl 7189  ax-addcom 7190  ax-mulcom 7191  ax-addass 7192  ax-mulass 7193  ax-distr 7194  ax-i2m1 7195  ax-0lt1 7196  ax-1rid 7197  ax-0id 7198  ax-rnegex 7199  ax-precex 7200  ax-cnre 7201  ax-pre-ltirr 7202  ax-pre-ltwlin 7203  ax-pre-lttrn 7204  ax-pre-apti 7205  ax-pre-ltadd 7206  ax-pre-mulgt0 7207  ax-pre-mulext 7208  ax-arch 7209  ax-caucvg 7210
This theorem depends on definitions:  df-bi 115  df-dc 777  df-3or 921  df-3an 922  df-tru 1288  df-fal 1291  df-nf 1391  df-sb 1688  df-eu 1946  df-mo 1947  df-clab 2070  df-cleq 2076  df-clel 2079  df-nfc 2212  df-ne 2250  df-nel 2345  df-ral 2358  df-rex 2359  df-reu 2360  df-rmo 2361  df-rab 2362  df-v 2612  df-sbc 2825  df-csb 2918  df-dif 2984  df-un 2986  df-in 2988  df-ss 2995  df-nul 3268  df-if 3369  df-pw 3402  df-sn 3422  df-pr 3423  df-op 3425  df-uni 3622  df-int 3657  df-iun 3700  df-br 3806  df-opab 3860  df-mpt 3861  df-tr 3896  df-id 4076  df-po 4079  df-iso 4080  df-iord 4149  df-on 4151  df-ilim 4152  df-suc 4154  df-iom 4360  df-xp 4397  df-rel 4398  df-cnv 4399  df-co 4400  df-dm 4401  df-rn 4402  df-res 4403  df-ima 4404  df-iota 4917  df-fun 4954  df-fn 4955  df-f 4956  df-f1 4957  df-fo 4958  df-f1o 4959  df-fv 4960  df-riota 5519  df-ov 5566  df-oprab 5567  df-mpt2 5568  df-1st 5818  df-2nd 5819  df-recs 5974  df-frec 6060  df-1o 6085  df-2o 6086  df-er 6193  df-en 6309  df-pnf 7269  df-mnf 7270  df-xr 7271  df-ltxr 7272  df-le 7273  df-sub 7400  df-neg 7401  df-reap 7794  df-ap 7801  df-div 7880  df-inn 8159  df-2 8217  df-3 8218  df-4 8219  df-n0 8408  df-z 8485  df-uz 8753  df-q 8838  df-rp 8868  df-iseq 9574  df-iexp 9625  df-cj 9930  df-re 9931  df-im 9932  df-rsqrt 10085  df-abs 10086  df-dvds 10404  df-prm 10697
This theorem is referenced by:  isprm3  10707  isprm4  10708  dvdsprime  10711  coprm  10730  isprm6  10733
  Copyright terms: Public domain W3C validator