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

Theorem exfzdc 10175
Description: Decidability of the existence of an integer defined by a decidable proposition. (Contributed by Jim Kingdon, 28-Jan-2022.)
Hypotheses
Ref Expression
exfzdc.1  |-  ( ph  ->  M  e.  ZZ )
exfzdc.2  |-  ( ph  ->  N  e.  ZZ )
exfzdc.3  |-  ( (
ph  /\  n  e.  ( M ... N ) )  -> DECID  ps )
Assertion
Ref Expression
exfzdc  |-  ( ph  -> DECID  E. n  e.  ( M ... N ) ps )
Distinct variable groups:    n, M    n, N    ph, n
Allowed substitution hint:    ps( n)

Proof of Theorem exfzdc
Dummy variables  w  y are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 exfzdc.1 . . . . 5  |-  ( ph  ->  M  e.  ZZ )
2 exfzdc.2 . . . . 5  |-  ( ph  ->  N  e.  ZZ )
3 eluz 9479 . . . . 5  |-  ( ( M  e.  ZZ  /\  N  e.  ZZ )  ->  ( N  e.  (
ZZ>= `  M )  <->  M  <_  N ) )
41, 2, 3syl2anc 409 . . . 4  |-  ( ph  ->  ( N  e.  (
ZZ>= `  M )  <->  M  <_  N ) )
54biimpar 295 . . 3  |-  ( (
ph  /\  M  <_  N )  ->  N  e.  ( ZZ>= `  M )
)
6 simpl 108 . . 3  |-  ( (
ph  /\  M  <_  N )  ->  ph )
7 eluzfz2 9967 . . . 4  |-  ( N  e.  ( ZZ>= `  M
)  ->  N  e.  ( M ... N ) )
8 oveq2 5850 . . . . . . . 8  |-  ( w  =  M  ->  ( M ... w )  =  ( M ... M
) )
98rexeqdv 2668 . . . . . . 7  |-  ( w  =  M  ->  ( E. n  e.  ( M ... w ) ps  <->  E. n  e.  ( M ... M ) ps ) )
109dcbid 828 . . . . . 6  |-  ( w  =  M  ->  (DECID  E. n  e.  ( M ... w ) ps  <-> DECID  E. n  e.  ( M ... M ) ps ) )
1110imbi2d 229 . . . . 5  |-  ( w  =  M  ->  (
( ph  -> DECID  E. n  e.  ( M ... w ) ps )  <->  ( ph  -> DECID  E. n  e.  ( M ... M ) ps ) ) )
12 oveq2 5850 . . . . . . . 8  |-  ( w  =  y  ->  ( M ... w )  =  ( M ... y
) )
1312rexeqdv 2668 . . . . . . 7  |-  ( w  =  y  ->  ( E. n  e.  ( M ... w ) ps  <->  E. n  e.  ( M ... y ) ps ) )
1413dcbid 828 . . . . . 6  |-  ( w  =  y  ->  (DECID  E. n  e.  ( M ... w ) ps  <-> DECID  E. n  e.  ( M ... y ) ps ) )
1514imbi2d 229 . . . . 5  |-  ( w  =  y  ->  (
( ph  -> DECID  E. n  e.  ( M ... w ) ps )  <->  ( ph  -> DECID  E. n  e.  ( M ... y ) ps ) ) )
16 oveq2 5850 . . . . . . . 8  |-  ( w  =  ( y  +  1 )  ->  ( M ... w )  =  ( M ... (
y  +  1 ) ) )
1716rexeqdv 2668 . . . . . . 7  |-  ( w  =  ( y  +  1 )  ->  ( E. n  e.  ( M ... w ) ps  <->  E. n  e.  ( M ... ( y  +  1 ) ) ps ) )
1817dcbid 828 . . . . . 6  |-  ( w  =  ( y  +  1 )  ->  (DECID  E. n  e.  ( M ... w ) ps  <-> DECID  E. n  e.  ( M ... ( y  +  1 ) ) ps ) )
1918imbi2d 229 . . . . 5  |-  ( w  =  ( y  +  1 )  ->  (
( ph  -> DECID  E. n  e.  ( M ... w ) ps )  <->  ( ph  -> DECID  E. n  e.  ( M ... ( y  +  1 ) ) ps ) ) )
20 oveq2 5850 . . . . . . . 8  |-  ( w  =  N  ->  ( M ... w )  =  ( M ... N
) )
2120rexeqdv 2668 . . . . . . 7  |-  ( w  =  N  ->  ( E. n  e.  ( M ... w ) ps  <->  E. n  e.  ( M ... N ) ps ) )
2221dcbid 828 . . . . . 6  |-  ( w  =  N  ->  (DECID  E. n  e.  ( M ... w ) ps  <-> DECID  E. n  e.  ( M ... N ) ps ) )
2322imbi2d 229 . . . . 5  |-  ( w  =  N  ->  (
( ph  -> DECID  E. n  e.  ( M ... w ) ps )  <->  ( ph  -> DECID  E. n  e.  ( M ... N ) ps ) ) )
24 eluzfz1 9966 . . . . . . . . 9  |-  ( N  e.  ( ZZ>= `  M
)  ->  M  e.  ( M ... N ) )
2524adantl 275 . . . . . . . 8  |-  ( (
ph  /\  N  e.  ( ZZ>= `  M )
)  ->  M  e.  ( M ... N ) )
26 exfzdc.3 . . . . . . . . . 10  |-  ( (
ph  /\  n  e.  ( M ... N ) )  -> DECID  ps )
2726ralrimiva 2539 . . . . . . . . 9  |-  ( ph  ->  A. n  e.  ( M ... N )DECID  ps )
2827adantr 274 . . . . . . . 8  |-  ( (
ph  /\  N  e.  ( ZZ>= `  M )
)  ->  A. n  e.  ( M ... N
)DECID 
ps )
29 nfsbc1v 2969 . . . . . . . . . 10  |-  F/ n [. M  /  n ]. ps
3029nfdc 1647 . . . . . . . . 9  |-  F/ nDECID  [. M  /  n ]. ps
31 sbceq1a 2960 . . . . . . . . . 10  |-  ( n  =  M  ->  ( ps 
<-> 
[. M  /  n ]. ps ) )
3231dcbid 828 . . . . . . . . 9  |-  ( n  =  M  ->  (DECID  ps  <-> DECID  [. M  /  n ]. ps )
)
3330, 32rspc 2824 . . . . . . . 8  |-  ( M  e.  ( M ... N )  ->  ( A. n  e.  ( M ... N )DECID  ps  -> DECID  [. M  /  n ]. ps )
)
3425, 28, 33sylc 62 . . . . . . 7  |-  ( (
ph  /\  N  e.  ( ZZ>= `  M )
)  -> DECID  [. M  /  n ]. ps )
351adantr 274 . . . . . . . . . . 11  |-  ( (
ph  /\  N  e.  ( ZZ>= `  M )
)  ->  M  e.  ZZ )
36 fzsn 10001 . . . . . . . . . . 11  |-  ( M  e.  ZZ  ->  ( M ... M )  =  { M } )
3735, 36syl 14 . . . . . . . . . 10  |-  ( (
ph  /\  N  e.  ( ZZ>= `  M )
)  ->  ( M ... M )  =  { M } )
3837rexeqdv 2668 . . . . . . . . 9  |-  ( (
ph  /\  N  e.  ( ZZ>= `  M )
)  ->  ( E. n  e.  ( M ... M ) ps  <->  E. n  e.  { M } ps ) )
39 rexsns 3615 . . . . . . . . 9  |-  ( E. n  e.  { M } ps  <->  [. M  /  n ]. ps )
4038, 39bitrdi 195 . . . . . . . 8  |-  ( (
ph  /\  N  e.  ( ZZ>= `  M )
)  ->  ( E. n  e.  ( M ... M ) ps  <->  [. M  /  n ]. ps ) )
4140dcbid 828 . . . . . . 7  |-  ( (
ph  /\  N  e.  ( ZZ>= `  M )
)  ->  (DECID  E. n  e.  ( M ... M
) ps  <-> DECID  [. M  /  n ]. ps ) )
4234, 41mpbird 166 . . . . . 6  |-  ( (
ph  /\  N  e.  ( ZZ>= `  M )
)  -> DECID  E. n  e.  ( M ... M ) ps )
4342expcom 115 . . . . 5  |-  ( N  e.  ( ZZ>= `  M
)  ->  ( ph  -> DECID  E. n  e.  ( M ... M ) ps ) )
44 simpr 109 . . . . . . . . . 10  |-  ( ( ( y  e.  ( M..^ N )  /\  ph )  /\ DECID  E. n  e.  ( M ... y ) ps )  -> DECID  E. n  e.  ( M ... y ) ps )
45 fzofzp1 10162 . . . . . . . . . . . . 13  |-  ( y  e.  ( M..^ N
)  ->  ( y  +  1 )  e.  ( M ... N
) )
4645ad2antrr 480 . . . . . . . . . . . 12  |-  ( ( ( y  e.  ( M..^ N )  /\  ph )  /\ DECID  E. n  e.  ( M ... y ) ps )  ->  (
y  +  1 )  e.  ( M ... N ) )
4727ad2antlr 481 . . . . . . . . . . . 12  |-  ( ( ( y  e.  ( M..^ N )  /\  ph )  /\ DECID  E. n  e.  ( M ... y ) ps )  ->  A. n  e.  ( M ... N
)DECID 
ps )
48 nfsbc1v 2969 . . . . . . . . . . . . . 14  |-  F/ n [. ( y  +  1 )  /  n ]. ps
4948nfdc 1647 . . . . . . . . . . . . 13  |-  F/ nDECID  [. (
y  +  1 )  /  n ]. ps
50 sbceq1a 2960 . . . . . . . . . . . . . 14  |-  ( n  =  ( y  +  1 )  ->  ( ps 
<-> 
[. ( y  +  1 )  /  n ]. ps ) )
5150dcbid 828 . . . . . . . . . . . . 13  |-  ( n  =  ( y  +  1 )  ->  (DECID  ps  <-> DECID  [. (
y  +  1 )  /  n ]. ps ) )
5249, 51rspc 2824 . . . . . . . . . . . 12  |-  ( ( y  +  1 )  e.  ( M ... N )  ->  ( A. n  e.  ( M ... N )DECID  ps  -> DECID  [. (
y  +  1 )  /  n ]. ps ) )
5346, 47, 52sylc 62 . . . . . . . . . . 11  |-  ( ( ( y  e.  ( M..^ N )  /\  ph )  /\ DECID  E. n  e.  ( M ... y ) ps )  -> DECID  [. ( y  +  1 )  /  n ]. ps )
54 rexsns 3615 . . . . . . . . . . . 12  |-  ( E. n  e.  { ( y  +  1 ) } ps  <->  [. ( y  +  1 )  /  n ]. ps )
5554dcbii 830 . . . . . . . . . . 11  |-  (DECID  E. n  e.  { ( y  +  1 ) } ps  <-> DECID  [. (
y  +  1 )  /  n ]. ps )
5653, 55sylibr 133 . . . . . . . . . 10  |-  ( ( ( y  e.  ( M..^ N )  /\  ph )  /\ DECID  E. n  e.  ( M ... y ) ps )  -> DECID  E. n  e.  {
( y  +  1 ) } ps )
57 dcor 925 . . . . . . . . . 10  |-  (DECID  E. n  e.  ( M ... y
) ps  ->  (DECID  E. n  e.  { (
y  +  1 ) } ps  -> DECID  ( E. n  e.  ( M ... y
) ps  \/  E. n  e.  { (
y  +  1 ) } ps ) ) )
5844, 56, 57sylc 62 . . . . . . . . 9  |-  ( ( ( y  e.  ( M..^ N )  /\  ph )  /\ DECID  E. n  e.  ( M ... y ) ps )  -> DECID  ( E. n  e.  ( M ... y
) ps  \/  E. n  e.  { (
y  +  1 ) } ps ) )
59 rexun 3302 . . . . . . . . . 10  |-  ( E. n  e.  ( ( M ... y )  u.  { ( y  +  1 ) } ) ps  <->  ( E. n  e.  ( M ... y ) ps  \/  E. n  e.  { ( y  +  1 ) } ps ) )
6059dcbii 830 . . . . . . . . 9  |-  (DECID  E. n  e.  ( ( M ... y )  u.  {
( y  +  1 ) } ) ps  <-> DECID  ( E. n  e.  ( M ... y ) ps  \/  E. n  e. 
{ ( y  +  1 ) } ps ) )
6158, 60sylibr 133 . . . . . . . 8  |-  ( ( ( y  e.  ( M..^ N )  /\  ph )  /\ DECID  E. n  e.  ( M ... y ) ps )  -> DECID  E. n  e.  ( ( M ... y
)  u.  { ( y  +  1 ) } ) ps )
62 elfzouz 10086 . . . . . . . . . . . 12  |-  ( y  e.  ( M..^ N
)  ->  y  e.  ( ZZ>= `  M )
)
6362ad2antrr 480 . . . . . . . . . . 11  |-  ( ( ( y  e.  ( M..^ N )  /\  ph )  /\ DECID  E. n  e.  ( M ... y ) ps )  ->  y  e.  ( ZZ>= `  M )
)
64 fzsuc 10004 . . . . . . . . . . 11  |-  ( y  e.  ( ZZ>= `  M
)  ->  ( M ... ( y  +  1 ) )  =  ( ( M ... y
)  u.  { ( y  +  1 ) } ) )
6563, 64syl 14 . . . . . . . . . 10  |-  ( ( ( y  e.  ( M..^ N )  /\  ph )  /\ DECID  E. n  e.  ( M ... y ) ps )  ->  ( M ... ( y  +  1 ) )  =  ( ( M ... y )  u.  {
( y  +  1 ) } ) )
6665rexeqdv 2668 . . . . . . . . 9  |-  ( ( ( y  e.  ( M..^ N )  /\  ph )  /\ DECID  E. n  e.  ( M ... y ) ps )  ->  ( E. n  e.  ( M ... ( y  +  1 ) ) ps  <->  E. n  e.  ( ( M ... y )  u.  { ( y  +  1 ) } ) ps ) )
6766dcbid 828 . . . . . . . 8  |-  ( ( ( y  e.  ( M..^ N )  /\  ph )  /\ DECID  E. n  e.  ( M ... y ) ps )  ->  (DECID  E. n  e.  ( M ... ( y  +  1 ) ) ps  <-> DECID  E. n  e.  ( ( M ... y
)  u.  { ( y  +  1 ) } ) ps )
)
6861, 67mpbird 166 . . . . . . 7  |-  ( ( ( y  e.  ( M..^ N )  /\  ph )  /\ DECID  E. n  e.  ( M ... y ) ps )  -> DECID  E. n  e.  ( M ... ( y  +  1 ) ) ps )
6968exp31 362 . . . . . 6  |-  ( y  e.  ( M..^ N
)  ->  ( ph  ->  (DECID 
E. n  e.  ( M ... y ) ps  -> DECID  E. n  e.  ( M ... ( y  +  1 ) ) ps ) ) )
7069a2d 26 . . . . 5  |-  ( y  e.  ( M..^ N
)  ->  ( ( ph  -> DECID  E. n  e.  ( M ... y ) ps )  ->  ( ph  -> DECID  E. n  e.  ( M ... ( y  +  1 ) ) ps ) ) )
7111, 15, 19, 23, 43, 70fzind2 10174 . . . 4  |-  ( N  e.  ( M ... N )  ->  ( ph  -> DECID  E. n  e.  ( M ... N ) ps ) )
727, 71syl 14 . . 3  |-  ( N  e.  ( ZZ>= `  M
)  ->  ( ph  -> DECID  E. n  e.  ( M ... N ) ps ) )
735, 6, 72sylc 62 . 2  |-  ( (
ph  /\  M  <_  N )  -> DECID  E. n  e.  ( M ... N ) ps )
74 rex0 3426 . . . . 5  |-  -.  E. n  e.  (/)  ps
75 zltnle 9237 . . . . . . . . 9  |-  ( ( N  e.  ZZ  /\  M  e.  ZZ )  ->  ( N  <  M  <->  -.  M  <_  N )
)
762, 1, 75syl2anc 409 . . . . . . . 8  |-  ( ph  ->  ( N  <  M  <->  -.  M  <_  N )
)
7776biimpar 295 . . . . . . 7  |-  ( (
ph  /\  -.  M  <_  N )  ->  N  <  M )
78 fzn 9977 . . . . . . . . 9  |-  ( ( M  e.  ZZ  /\  N  e.  ZZ )  ->  ( N  <  M  <->  ( M ... N )  =  (/) ) )
791, 2, 78syl2anc 409 . . . . . . . 8  |-  ( ph  ->  ( N  <  M  <->  ( M ... N )  =  (/) ) )
8079adantr 274 . . . . . . 7  |-  ( (
ph  /\  -.  M  <_  N )  ->  ( N  <  M  <->  ( M ... N )  =  (/) ) )
8177, 80mpbid 146 . . . . . 6  |-  ( (
ph  /\  -.  M  <_  N )  ->  ( M ... N )  =  (/) )
8281rexeqdv 2668 . . . . 5  |-  ( (
ph  /\  -.  M  <_  N )  ->  ( E. n  e.  ( M ... N ) ps  <->  E. n  e.  (/)  ps )
)
8374, 82mtbiri 665 . . . 4  |-  ( (
ph  /\  -.  M  <_  N )  ->  -.  E. n  e.  ( M ... N ) ps )
8483olcd 724 . . 3  |-  ( (
ph  /\  -.  M  <_  N )  ->  ( E. n  e.  ( M ... N ) ps  \/  -.  E. n  e.  ( M ... N
) ps ) )
85 df-dc 825 . . 3  |-  (DECID  E. n  e.  ( M ... N
) ps  <->  ( E. n  e.  ( M ... N ) ps  \/  -.  E. n  e.  ( M ... N ) ps ) )
8684, 85sylibr 133 . 2  |-  ( (
ph  /\  -.  M  <_  N )  -> DECID  E. n  e.  ( M ... N ) ps )
87 zdcle 9267 . . . 4  |-  ( ( M  e.  ZZ  /\  N  e.  ZZ )  -> DECID  M  <_  N )
88 exmiddc 826 . . . 4  |-  (DECID  M  <_  N  ->  ( M  <_  N  \/  -.  M  <_  N ) )
8987, 88syl 14 . . 3  |-  ( ( M  e.  ZZ  /\  N  e.  ZZ )  ->  ( M  <_  N  \/  -.  M  <_  N
) )
901, 2, 89syl2anc 409 . 2  |-  ( ph  ->  ( M  <_  N  \/  -.  M  <_  N
) )
9173, 86, 90mpjaodan 788 1  |-  ( ph  -> DECID  E. n  e.  ( M ... N ) ps )
Colors of variables: wff set class
Syntax hints:   -. wn 3    -> wi 4    /\ wa 103    <-> wb 104    \/ wo 698  DECID wdc 824    = wceq 1343    e. wcel 2136   A.wral 2444   E.wrex 2445   [.wsbc 2951    u. cun 3114   (/)c0 3409   {csn 3576   class class class wbr 3982   ` cfv 5188  (class class class)co 5842   1c1 7754    + caddc 7756    < clt 7933    <_ cle 7934   ZZcz 9191   ZZ>=cuz 9466   ...cfz 9944  ..^cfzo 10077
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 604  ax-in2 605  ax-io 699  ax-5 1435  ax-7 1436  ax-gen 1437  ax-ie1 1481  ax-ie2 1482  ax-8 1492  ax-10 1493  ax-11 1494  ax-i12 1495  ax-bndl 1497  ax-4 1498  ax-17 1514  ax-i9 1518  ax-ial 1522  ax-i5r 1523  ax-13 2138  ax-14 2139  ax-ext 2147  ax-sep 4100  ax-pow 4153  ax-pr 4187  ax-un 4411  ax-setind 4514  ax-cnex 7844  ax-resscn 7845  ax-1cn 7846  ax-1re 7847  ax-icn 7848  ax-addcl 7849  ax-addrcl 7850  ax-mulcl 7851  ax-addcom 7853  ax-addass 7855  ax-distr 7857  ax-i2m1 7858  ax-0lt1 7859  ax-0id 7861  ax-rnegex 7862  ax-cnre 7864  ax-pre-ltirr 7865  ax-pre-ltwlin 7866  ax-pre-lttrn 7867  ax-pre-apti 7868  ax-pre-ltadd 7869
This theorem depends on definitions:  df-bi 116  df-dc 825  df-3or 969  df-3an 970  df-tru 1346  df-fal 1349  df-nf 1449  df-sb 1751  df-eu 2017  df-mo 2018  df-clab 2152  df-cleq 2158  df-clel 2161  df-nfc 2297  df-ne 2337  df-nel 2432  df-ral 2449  df-rex 2450  df-reu 2451  df-rab 2453  df-v 2728  df-sbc 2952  df-csb 3046  df-dif 3118  df-un 3120  df-in 3122  df-ss 3129  df-nul 3410  df-pw 3561  df-sn 3582  df-pr 3583  df-op 3585  df-uni 3790  df-int 3825  df-iun 3868  df-br 3983  df-opab 4044  df-mpt 4045  df-id 4271  df-xp 4610  df-rel 4611  df-cnv 4612  df-co 4613  df-dm 4614  df-rn 4615  df-res 4616  df-ima 4617  df-iota 5153  df-fun 5190  df-fn 5191  df-f 5192  df-fv 5196  df-riota 5798  df-ov 5845  df-oprab 5846  df-mpo 5847  df-1st 6108  df-2nd 6109  df-pnf 7935  df-mnf 7936  df-xr 7937  df-ltxr 7938  df-le 7939  df-sub 8071  df-neg 8072  df-inn 8858  df-n0 9115  df-z 9192  df-uz 9467  df-fz 9945  df-fzo 10078
This theorem is referenced by:  prmind2  12052
  Copyright terms: Public domain W3C validator