Metamath Proof Explorer < Previous   Next > Nearby theorems Mirrors  >  Home  >  MPE Home  >  Th. List  >  reperflem Structured version   Visualization version   GIF version

Theorem reperflem 22711
 Description: A subset of the real numbers that is closed under addition with real numbers is perfect. (Contributed by Mario Carneiro, 26-Dec-2016.)
Hypotheses
Ref Expression
recld2.1 𝐽 = (TopOpen‘ℂfld)
reperflem.2 ((𝑢𝑆𝑣 ∈ ℝ) → (𝑢 + 𝑣) ∈ 𝑆)
reperflem.3 𝑆 ⊆ ℂ
Assertion
Ref Expression
reperflem (𝐽t 𝑆) ∈ Perf
Distinct variable groups:   𝑢,𝐽   𝑣,𝑢,𝑆
Allowed substitution hint:   𝐽(𝑣)

Proof of Theorem reperflem
Dummy variables 𝑛 𝑟 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 cnxmet 22666 . . . . . . 7 (abs ∘ − ) ∈ (∞Met‘ℂ)
2 reperflem.3 . . . . . . . 8 𝑆 ⊆ ℂ
32sseli 3673 . . . . . . 7 (𝑢𝑆𝑢 ∈ ℂ)
4 recld2.1 . . . . . . . . 9 𝐽 = (TopOpen‘ℂfld)
54cnfldtopn 22675 . . . . . . . 8 𝐽 = (MetOpen‘(abs ∘ − ))
65neibl 22396 . . . . . . 7 (((abs ∘ − ) ∈ (∞Met‘ℂ) ∧ 𝑢 ∈ ℂ) → (𝑛 ∈ ((nei‘𝐽)‘{𝑢}) ↔ (𝑛 ⊆ ℂ ∧ ∃𝑟 ∈ ℝ+ (𝑢(ball‘(abs ∘ − ))𝑟) ⊆ 𝑛)))
71, 3, 6sylancr 698 . . . . . 6 (𝑢𝑆 → (𝑛 ∈ ((nei‘𝐽)‘{𝑢}) ↔ (𝑛 ⊆ ℂ ∧ ∃𝑟 ∈ ℝ+ (𝑢(ball‘(abs ∘ − ))𝑟) ⊆ 𝑛)))
8 reperflem.2 . . . . . . . . . . . . . . . . 17 ((𝑢𝑆𝑣 ∈ ℝ) → (𝑢 + 𝑣) ∈ 𝑆)
98ralrimiva 3036 . . . . . . . . . . . . . . . 16 (𝑢𝑆 → ∀𝑣 ∈ ℝ (𝑢 + 𝑣) ∈ 𝑆)
10 rpre 11921 . . . . . . . . . . . . . . . . 17 (𝑟 ∈ ℝ+𝑟 ∈ ℝ)
1110rehalfcld 11360 . . . . . . . . . . . . . . . 16 (𝑟 ∈ ℝ+ → (𝑟 / 2) ∈ ℝ)
12 oveq2 6741 . . . . . . . . . . . . . . . . . 18 (𝑣 = (𝑟 / 2) → (𝑢 + 𝑣) = (𝑢 + (𝑟 / 2)))
1312eleq1d 2756 . . . . . . . . . . . . . . . . 17 (𝑣 = (𝑟 / 2) → ((𝑢 + 𝑣) ∈ 𝑆 ↔ (𝑢 + (𝑟 / 2)) ∈ 𝑆))
1413rspccva 3380 . . . . . . . . . . . . . . . 16 ((∀𝑣 ∈ ℝ (𝑢 + 𝑣) ∈ 𝑆 ∧ (𝑟 / 2) ∈ ℝ) → (𝑢 + (𝑟 / 2)) ∈ 𝑆)
159, 11, 14syl2an 495 . . . . . . . . . . . . . . 15 ((𝑢𝑆𝑟 ∈ ℝ+) → (𝑢 + (𝑟 / 2)) ∈ 𝑆)
162, 15sseldi 3675 . . . . . . . . . . . . . 14 ((𝑢𝑆𝑟 ∈ ℝ+) → (𝑢 + (𝑟 / 2)) ∈ ℂ)
173adantr 472 . . . . . . . . . . . . . 14 ((𝑢𝑆𝑟 ∈ ℝ+) → 𝑢 ∈ ℂ)
18 eqid 2692 . . . . . . . . . . . . . . 15 (abs ∘ − ) = (abs ∘ − )
1918cnmetdval 22664 . . . . . . . . . . . . . 14 (((𝑢 + (𝑟 / 2)) ∈ ℂ ∧ 𝑢 ∈ ℂ) → ((𝑢 + (𝑟 / 2))(abs ∘ − )𝑢) = (abs‘((𝑢 + (𝑟 / 2)) − 𝑢)))
2016, 17, 19syl2anc 696 . . . . . . . . . . . . 13 ((𝑢𝑆𝑟 ∈ ℝ+) → ((𝑢 + (𝑟 / 2))(abs ∘ − )𝑢) = (abs‘((𝑢 + (𝑟 / 2)) − 𝑢)))
21 simpr 479 . . . . . . . . . . . . . . . . 17 ((𝑢𝑆𝑟 ∈ ℝ+) → 𝑟 ∈ ℝ+)
2221rphalfcld 11966 . . . . . . . . . . . . . . . 16 ((𝑢𝑆𝑟 ∈ ℝ+) → (𝑟 / 2) ∈ ℝ+)
2322rpcnd 11956 . . . . . . . . . . . . . . 15 ((𝑢𝑆𝑟 ∈ ℝ+) → (𝑟 / 2) ∈ ℂ)
2417, 23pncan2d 10475 . . . . . . . . . . . . . 14 ((𝑢𝑆𝑟 ∈ ℝ+) → ((𝑢 + (𝑟 / 2)) − 𝑢) = (𝑟 / 2))
2524fveq2d 6276 . . . . . . . . . . . . 13 ((𝑢𝑆𝑟 ∈ ℝ+) → (abs‘((𝑢 + (𝑟 / 2)) − 𝑢)) = (abs‘(𝑟 / 2)))
2622rpred 11954 . . . . . . . . . . . . . 14 ((𝑢𝑆𝑟 ∈ ℝ+) → (𝑟 / 2) ∈ ℝ)
2722rpge0d 11958 . . . . . . . . . . . . . 14 ((𝑢𝑆𝑟 ∈ ℝ+) → 0 ≤ (𝑟 / 2))
2826, 27absidd 14249 . . . . . . . . . . . . 13 ((𝑢𝑆𝑟 ∈ ℝ+) → (abs‘(𝑟 / 2)) = (𝑟 / 2))
2920, 25, 283eqtrd 2730 . . . . . . . . . . . 12 ((𝑢𝑆𝑟 ∈ ℝ+) → ((𝑢 + (𝑟 / 2))(abs ∘ − )𝑢) = (𝑟 / 2))
30 rphalflt 11942 . . . . . . . . . . . . 13 (𝑟 ∈ ℝ+ → (𝑟 / 2) < 𝑟)
3130adantl 473 . . . . . . . . . . . 12 ((𝑢𝑆𝑟 ∈ ℝ+) → (𝑟 / 2) < 𝑟)
3229, 31eqbrtrd 4750 . . . . . . . . . . 11 ((𝑢𝑆𝑟 ∈ ℝ+) → ((𝑢 + (𝑟 / 2))(abs ∘ − )𝑢) < 𝑟)
331a1i 11 . . . . . . . . . . . 12 ((𝑢𝑆𝑟 ∈ ℝ+) → (abs ∘ − ) ∈ (∞Met‘ℂ))
34 rpxr 11922 . . . . . . . . . . . . 13 (𝑟 ∈ ℝ+𝑟 ∈ ℝ*)
3534adantl 473 . . . . . . . . . . . 12 ((𝑢𝑆𝑟 ∈ ℝ+) → 𝑟 ∈ ℝ*)
36 elbl3 22287 . . . . . . . . . . . 12 ((((abs ∘ − ) ∈ (∞Met‘ℂ) ∧ 𝑟 ∈ ℝ*) ∧ (𝑢 ∈ ℂ ∧ (𝑢 + (𝑟 / 2)) ∈ ℂ)) → ((𝑢 + (𝑟 / 2)) ∈ (𝑢(ball‘(abs ∘ − ))𝑟) ↔ ((𝑢 + (𝑟 / 2))(abs ∘ − )𝑢) < 𝑟))
3733, 35, 17, 16, 36syl22anc 1408 . . . . . . . . . . 11 ((𝑢𝑆𝑟 ∈ ℝ+) → ((𝑢 + (𝑟 / 2)) ∈ (𝑢(ball‘(abs ∘ − ))𝑟) ↔ ((𝑢 + (𝑟 / 2))(abs ∘ − )𝑢) < 𝑟))
3832, 37mpbird 247 . . . . . . . . . 10 ((𝑢𝑆𝑟 ∈ ℝ+) → (𝑢 + (𝑟 / 2)) ∈ (𝑢(ball‘(abs ∘ − ))𝑟))
3922rpne0d 11959 . . . . . . . . . . . . 13 ((𝑢𝑆𝑟 ∈ ℝ+) → (𝑟 / 2) ≠ 0)
4024, 39eqnetrd 2931 . . . . . . . . . . . 12 ((𝑢𝑆𝑟 ∈ ℝ+) → ((𝑢 + (𝑟 / 2)) − 𝑢) ≠ 0)
4116, 17, 40subne0ad 10484 . . . . . . . . . . 11 ((𝑢𝑆𝑟 ∈ ℝ+) → (𝑢 + (𝑟 / 2)) ≠ 𝑢)
42 eldifsn 4393 . . . . . . . . . . 11 ((𝑢 + (𝑟 / 2)) ∈ (𝑆 ∖ {𝑢}) ↔ ((𝑢 + (𝑟 / 2)) ∈ 𝑆 ∧ (𝑢 + (𝑟 / 2)) ≠ 𝑢))
4315, 41, 42sylanbrc 701 . . . . . . . . . 10 ((𝑢𝑆𝑟 ∈ ℝ+) → (𝑢 + (𝑟 / 2)) ∈ (𝑆 ∖ {𝑢}))
44 inelcm 4108 . . . . . . . . . 10 (((𝑢 + (𝑟 / 2)) ∈ (𝑢(ball‘(abs ∘ − ))𝑟) ∧ (𝑢 + (𝑟 / 2)) ∈ (𝑆 ∖ {𝑢})) → ((𝑢(ball‘(abs ∘ − ))𝑟) ∩ (𝑆 ∖ {𝑢})) ≠ ∅)
4538, 43, 44syl2anc 696 . . . . . . . . 9 ((𝑢𝑆𝑟 ∈ ℝ+) → ((𝑢(ball‘(abs ∘ − ))𝑟) ∩ (𝑆 ∖ {𝑢})) ≠ ∅)
46 ssrin 3914 . . . . . . . . . 10 ((𝑢(ball‘(abs ∘ − ))𝑟) ⊆ 𝑛 → ((𝑢(ball‘(abs ∘ − ))𝑟) ∩ (𝑆 ∖ {𝑢})) ⊆ (𝑛 ∩ (𝑆 ∖ {𝑢})))
47 ssn0 4052 . . . . . . . . . . 11 ((((𝑢(ball‘(abs ∘ − ))𝑟) ∩ (𝑆 ∖ {𝑢})) ⊆ (𝑛 ∩ (𝑆 ∖ {𝑢})) ∧ ((𝑢(ball‘(abs ∘ − ))𝑟) ∩ (𝑆 ∖ {𝑢})) ≠ ∅) → (𝑛 ∩ (𝑆 ∖ {𝑢})) ≠ ∅)
4847ex 449 . . . . . . . . . 10 (((𝑢(ball‘(abs ∘ − ))𝑟) ∩ (𝑆 ∖ {𝑢})) ⊆ (𝑛 ∩ (𝑆 ∖ {𝑢})) → (((𝑢(ball‘(abs ∘ − ))𝑟) ∩ (𝑆 ∖ {𝑢})) ≠ ∅ → (𝑛 ∩ (𝑆 ∖ {𝑢})) ≠ ∅))
4946, 48syl 17 . . . . . . . . 9 ((𝑢(ball‘(abs ∘ − ))𝑟) ⊆ 𝑛 → (((𝑢(ball‘(abs ∘ − ))𝑟) ∩ (𝑆 ∖ {𝑢})) ≠ ∅ → (𝑛 ∩ (𝑆 ∖ {𝑢})) ≠ ∅))
5045, 49syl5com 31 . . . . . . . 8 ((𝑢𝑆𝑟 ∈ ℝ+) → ((𝑢(ball‘(abs ∘ − ))𝑟) ⊆ 𝑛 → (𝑛 ∩ (𝑆 ∖ {𝑢})) ≠ ∅))
5150rexlimdva 3101 . . . . . . 7 (𝑢𝑆 → (∃𝑟 ∈ ℝ+ (𝑢(ball‘(abs ∘ − ))𝑟) ⊆ 𝑛 → (𝑛 ∩ (𝑆 ∖ {𝑢})) ≠ ∅))
5251adantld 484 . . . . . 6 (𝑢𝑆 → ((𝑛 ⊆ ℂ ∧ ∃𝑟 ∈ ℝ+ (𝑢(ball‘(abs ∘ − ))𝑟) ⊆ 𝑛) → (𝑛 ∩ (𝑆 ∖ {𝑢})) ≠ ∅))
537, 52sylbid 230 . . . . 5 (𝑢𝑆 → (𝑛 ∈ ((nei‘𝐽)‘{𝑢}) → (𝑛 ∩ (𝑆 ∖ {𝑢})) ≠ ∅))
5453ralrimiv 3035 . . . 4 (𝑢𝑆 → ∀𝑛 ∈ ((nei‘𝐽)‘{𝑢})(𝑛 ∩ (𝑆 ∖ {𝑢})) ≠ ∅)
554cnfldtop 22677 . . . . . 6 𝐽 ∈ Top
564cnfldtopon 22676 . . . . . . . 8 𝐽 ∈ (TopOn‘ℂ)
5756toponunii 20812 . . . . . . 7 ℂ = 𝐽
5857islp2 21040 . . . . . 6 ((𝐽 ∈ Top ∧ 𝑆 ⊆ ℂ ∧ 𝑢 ∈ ℂ) → (𝑢 ∈ ((limPt‘𝐽)‘𝑆) ↔ ∀𝑛 ∈ ((nei‘𝐽)‘{𝑢})(𝑛 ∩ (𝑆 ∖ {𝑢})) ≠ ∅))
5955, 2, 58mp3an12 1495 . . . . 5 (𝑢 ∈ ℂ → (𝑢 ∈ ((limPt‘𝐽)‘𝑆) ↔ ∀𝑛 ∈ ((nei‘𝐽)‘{𝑢})(𝑛 ∩ (𝑆 ∖ {𝑢})) ≠ ∅))
603, 59syl 17 . . . 4 (𝑢𝑆 → (𝑢 ∈ ((limPt‘𝐽)‘𝑆) ↔ ∀𝑛 ∈ ((nei‘𝐽)‘{𝑢})(𝑛 ∩ (𝑆 ∖ {𝑢})) ≠ ∅))
6154, 60mpbird 247 . . 3 (𝑢𝑆𝑢 ∈ ((limPt‘𝐽)‘𝑆))
6261ssriv 3681 . 2 𝑆 ⊆ ((limPt‘𝐽)‘𝑆)
63 eqid 2692 . . . 4 (𝐽t 𝑆) = (𝐽t 𝑆)
6457, 63restperf 21079 . . 3 ((𝐽 ∈ Top ∧ 𝑆 ⊆ ℂ) → ((𝐽t 𝑆) ∈ Perf ↔ 𝑆 ⊆ ((limPt‘𝐽)‘𝑆)))
6555, 2, 64mp2an 710 . 2 ((𝐽t 𝑆) ∈ Perf ↔ 𝑆 ⊆ ((limPt‘𝐽)‘𝑆))
6662, 65mpbir 221 1 (𝐽t 𝑆) ∈ Perf
 Colors of variables: wff setvar class Syntax hints:   → wi 4   ↔ wb 196   ∧ wa 383   = wceq 1564   ∈ wcel 2071   ≠ wne 2864  ∀wral 2982  ∃wrex 2983   ∖ cdif 3645   ∩ cin 3647   ⊆ wss 3648  ∅c0 3991  {csn 4253   class class class wbr 4728   ∘ ccom 5190  ‘cfv 5969  (class class class)co 6733  ℂcc 10015  ℝcr 10016  0cc0 10017   + caddc 10020  ℝ*cxr 10154   < clt 10155   − cmin 10347   / cdiv 10765  2c2 11151  ℝ+crp 11914  abscabs 14062   ↾t crest 16172  TopOpenctopn 16173  ∞Metcxmt 19822  ballcbl 19824  ℂfldccnfld 19837  Topctop 20789  neicnei 20992  limPtclp 21029  Perfcperf 21030 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1803  ax-4 1818  ax-5 1920  ax-6 1986  ax-7 2022  ax-8 2073  ax-9 2080  ax-10 2100  ax-11 2115  ax-12 2128  ax-13 2323  ax-ext 2672  ax-rep 4847  ax-sep 4857  ax-nul 4865  ax-pow 4916  ax-pr 4979  ax-un 7034  ax-cnex 10073  ax-resscn 10074  ax-1cn 10075  ax-icn 10076  ax-addcl 10077  ax-addrcl 10078  ax-mulcl 10079  ax-mulrcl 10080  ax-mulcom 10081  ax-addass 10082  ax-mulass 10083  ax-distr 10084  ax-i2m1 10085  ax-1ne0 10086  ax-1rid 10087  ax-rnegex 10088  ax-rrecex 10089  ax-cnre 10090  ax-pre-lttri 10091  ax-pre-lttrn 10092  ax-pre-ltadd 10093  ax-pre-mulgt0 10094  ax-pre-sup 10095 This theorem depends on definitions:  df-bi 197  df-or 384  df-an 385  df-3or 1073  df-3an 1074  df-tru 1567  df-ex 1786  df-nf 1791  df-sb 1979  df-eu 2543  df-mo 2544  df-clab 2679  df-cleq 2685  df-clel 2688  df-nfc 2823  df-ne 2865  df-nel 2968  df-ral 2987  df-rex 2988  df-reu 2989  df-rmo 2990  df-rab 2991  df-v 3274  df-sbc 3510  df-csb 3608  df-dif 3651  df-un 3653  df-in 3655  df-ss 3662  df-pss 3664  df-nul 3992  df-if 4163  df-pw 4236  df-sn 4254  df-pr 4256  df-tp 4258  df-op 4260  df-uni 4513  df-int 4552  df-iun 4598  df-iin 4599  df-br 4729  df-opab 4789  df-mpt 4806  df-tr 4829  df-id 5096  df-eprel 5101  df-po 5107  df-so 5108  df-fr 5145  df-we 5147  df-xp 5192  df-rel 5193  df-cnv 5194  df-co 5195  df-dm 5196  df-rn 5197  df-res 5198  df-ima 5199  df-pred 5761  df-ord 5807  df-on 5808  df-lim 5809  df-suc 5810  df-iota 5932  df-fun 5971  df-fn 5972  df-f 5973  df-f1 5974  df-fo 5975  df-f1o 5976  df-fv 5977  df-riota 6694  df-ov 6736  df-oprab 6737  df-mpt2 6738  df-om 7151  df-1st 7253  df-2nd 7254  df-wrecs 7495  df-recs 7556  df-rdg 7594  df-1o 7648  df-oadd 7652  df-er 7830  df-map 7944  df-en 8041  df-dom 8042  df-sdom 8043  df-fin 8044  df-fi 8401  df-sup 8432  df-inf 8433  df-pnf 10157  df-mnf 10158  df-xr 10159  df-ltxr 10160  df-le 10161  df-sub 10349  df-neg 10350  df-div 10766  df-nn 11102  df-2 11160  df-3 11161  df-4 11162  df-5 11163  df-6 11164  df-7 11165  df-8 11166  df-9 11167  df-n0 11374  df-z 11459  df-dec 11575  df-uz 11769  df-q 11871  df-rp 11915  df-xneg 12028  df-xadd 12029  df-xmul 12030  df-fz 12409  df-seq 12885  df-exp 12944  df-cj 13927  df-re 13928  df-im 13929  df-sqrt 14063  df-abs 14064  df-struct 15950  df-ndx 15951  df-slot 15952  df-base 15954  df-plusg 16045  df-mulr 16046  df-starv 16047  df-tset 16051  df-ple 16052  df-ds 16055  df-unif 16056  df-rest 16174  df-topn 16175  df-topgen 16195  df-psmet 19829  df-xmet 19830  df-met 19831  df-bl 19832  df-mopn 19833  df-cnfld 19838  df-top 20790  df-topon 20807  df-topsp 20828  df-bases 20841  df-cld 20914  df-ntr 20915  df-cls 20916  df-nei 20993  df-lp 21031  df-perf 21032  df-xms 22215  df-ms 22216 This theorem is referenced by:  reperf  22712  cnperf  22713
 Copyright terms: Public domain W3C validator