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

Theorem phtpcer 24901
Description: Path homotopy is an equivalence relation. Proposition 1.2 of [Hatcher] p. 26. (Contributed by Jeff Madsen, 2-Sep-2009.) (Revised by Mario Carneiro, 6-Jul-2015.) (Proof shortened by AV, 1-May-2021.)
Assertion
Ref Expression
phtpcer ( ≃ph𝐽) Er (II Cn 𝐽)

Proof of Theorem phtpcer
Dummy variables 𝑓 𝑔 𝑢 𝑣 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 phtpcrel 24899 . 2 Rel ( ≃ph𝐽)
2 isphtpc 24900 . . . 4 (𝑥( ≃ph𝐽)𝑦 ↔ (𝑥 ∈ (II Cn 𝐽) ∧ 𝑦 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑦) ≠ ∅))
32simp2bi 1146 . . 3 (𝑥( ≃ph𝐽)𝑦𝑦 ∈ (II Cn 𝐽))
42simp1bi 1145 . . 3 (𝑥( ≃ph𝐽)𝑦𝑥 ∈ (II Cn 𝐽))
52simp3bi 1147 . . . . 5 (𝑥( ≃ph𝐽)𝑦 → (𝑥(PHtpy‘𝐽)𝑦) ≠ ∅)
6 n0 4319 . . . . 5 ((𝑥(PHtpy‘𝐽)𝑦) ≠ ∅ ↔ ∃𝑓 𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦))
75, 6sylib 218 . . . 4 (𝑥( ≃ph𝐽)𝑦 → ∃𝑓 𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦))
84adantr 480 . . . . . 6 ((𝑥( ≃ph𝐽)𝑦𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦)) → 𝑥 ∈ (II Cn 𝐽))
93adantr 480 . . . . . 6 ((𝑥( ≃ph𝐽)𝑦𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦)) → 𝑦 ∈ (II Cn 𝐽))
10 eqid 2730 . . . . . 6 (𝑢 ∈ (0[,]1), 𝑣 ∈ (0[,]1) ↦ (𝑢𝑓(1 − 𝑣))) = (𝑢 ∈ (0[,]1), 𝑣 ∈ (0[,]1) ↦ (𝑢𝑓(1 − 𝑣)))
11 simpr 484 . . . . . 6 ((𝑥( ≃ph𝐽)𝑦𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦)) → 𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦))
128, 9, 10, 11phtpycom 24894 . . . . 5 ((𝑥( ≃ph𝐽)𝑦𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦)) → (𝑢 ∈ (0[,]1), 𝑣 ∈ (0[,]1) ↦ (𝑢𝑓(1 − 𝑣))) ∈ (𝑦(PHtpy‘𝐽)𝑥))
1312ne0d 4308 . . . 4 ((𝑥( ≃ph𝐽)𝑦𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦)) → (𝑦(PHtpy‘𝐽)𝑥) ≠ ∅)
147, 13exlimddv 1935 . . 3 (𝑥( ≃ph𝐽)𝑦 → (𝑦(PHtpy‘𝐽)𝑥) ≠ ∅)
15 isphtpc 24900 . . 3 (𝑦( ≃ph𝐽)𝑥 ↔ (𝑦 ∈ (II Cn 𝐽) ∧ 𝑥 ∈ (II Cn 𝐽) ∧ (𝑦(PHtpy‘𝐽)𝑥) ≠ ∅))
163, 4, 14, 15syl3anbrc 1344 . 2 (𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑥)
174adantr 480 . . 3 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → 𝑥 ∈ (II Cn 𝐽))
18 simpr 484 . . . . 5 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → 𝑦( ≃ph𝐽)𝑧)
19 isphtpc 24900 . . . . 5 (𝑦( ≃ph𝐽)𝑧 ↔ (𝑦 ∈ (II Cn 𝐽) ∧ 𝑧 ∈ (II Cn 𝐽) ∧ (𝑦(PHtpy‘𝐽)𝑧) ≠ ∅))
2018, 19sylib 218 . . . 4 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → (𝑦 ∈ (II Cn 𝐽) ∧ 𝑧 ∈ (II Cn 𝐽) ∧ (𝑦(PHtpy‘𝐽)𝑧) ≠ ∅))
2120simp2d 1143 . . 3 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → 𝑧 ∈ (II Cn 𝐽))
225adantr 480 . . . . . 6 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → (𝑥(PHtpy‘𝐽)𝑦) ≠ ∅)
2322, 6sylib 218 . . . . 5 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → ∃𝑓 𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦))
2420simp3d 1144 . . . . . 6 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → (𝑦(PHtpy‘𝐽)𝑧) ≠ ∅)
25 n0 4319 . . . . . 6 ((𝑦(PHtpy‘𝐽)𝑧) ≠ ∅ ↔ ∃𝑔 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))
2624, 25sylib 218 . . . . 5 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → ∃𝑔 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))
27 exdistrv 1955 . . . . 5 (∃𝑓𝑔(𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧)) ↔ (∃𝑓 𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ ∃𝑔 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧)))
2823, 26, 27sylanbrc 583 . . . 4 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → ∃𝑓𝑔(𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧)))
29 eqid 2730 . . . . . . . 8 (𝑢 ∈ (0[,]1), 𝑣 ∈ (0[,]1) ↦ if(𝑣 ≤ (1 / 2), (𝑢𝑓(2 · 𝑣)), (𝑢𝑔((2 · 𝑣) − 1)))) = (𝑢 ∈ (0[,]1), 𝑣 ∈ (0[,]1) ↦ if(𝑣 ≤ (1 / 2), (𝑢𝑓(2 · 𝑣)), (𝑢𝑔((2 · 𝑣) − 1))))
3017adantr 480 . . . . . . . 8 (((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) ∧ (𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))) → 𝑥 ∈ (II Cn 𝐽))
3120simp1d 1142 . . . . . . . . 9 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → 𝑦 ∈ (II Cn 𝐽))
3231adantr 480 . . . . . . . 8 (((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) ∧ (𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))) → 𝑦 ∈ (II Cn 𝐽))
3321adantr 480 . . . . . . . 8 (((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) ∧ (𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))) → 𝑧 ∈ (II Cn 𝐽))
34 simprl 770 . . . . . . . 8 (((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) ∧ (𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))) → 𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦))
35 simprr 772 . . . . . . . 8 (((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) ∧ (𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))) → 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))
3629, 30, 32, 33, 34, 35phtpycc 24897 . . . . . . 7 (((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) ∧ (𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))) → (𝑢 ∈ (0[,]1), 𝑣 ∈ (0[,]1) ↦ if(𝑣 ≤ (1 / 2), (𝑢𝑓(2 · 𝑣)), (𝑢𝑔((2 · 𝑣) − 1)))) ∈ (𝑥(PHtpy‘𝐽)𝑧))
3736ne0d 4308 . . . . . 6 (((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) ∧ (𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))) → (𝑥(PHtpy‘𝐽)𝑧) ≠ ∅)
3837ex 412 . . . . 5 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → ((𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧)) → (𝑥(PHtpy‘𝐽)𝑧) ≠ ∅))
3938exlimdvv 1934 . . . 4 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → (∃𝑓𝑔(𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧)) → (𝑥(PHtpy‘𝐽)𝑧) ≠ ∅))
4028, 39mpd 15 . . 3 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → (𝑥(PHtpy‘𝐽)𝑧) ≠ ∅)
41 isphtpc 24900 . . 3 (𝑥( ≃ph𝐽)𝑧 ↔ (𝑥 ∈ (II Cn 𝐽) ∧ 𝑧 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑧) ≠ ∅))
4217, 21, 40, 41syl3anbrc 1344 . 2 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → 𝑥( ≃ph𝐽)𝑧)
43 eqid 2730 . . . . . . . 8 (𝑦 ∈ (0[,]1), 𝑧 ∈ (0[,]1) ↦ (𝑥𝑦)) = (𝑦 ∈ (0[,]1), 𝑧 ∈ (0[,]1) ↦ (𝑥𝑦))
44 id 22 . . . . . . . 8 (𝑥 ∈ (II Cn 𝐽) → 𝑥 ∈ (II Cn 𝐽))
4543, 44phtpyid 24895 . . . . . . 7 (𝑥 ∈ (II Cn 𝐽) → (𝑦 ∈ (0[,]1), 𝑧 ∈ (0[,]1) ↦ (𝑥𝑦)) ∈ (𝑥(PHtpy‘𝐽)𝑥))
4645ne0d 4308 . . . . . 6 (𝑥 ∈ (II Cn 𝐽) → (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅)
4746ancli 548 . . . . 5 (𝑥 ∈ (II Cn 𝐽) → (𝑥 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅))
4847pm4.71ri 560 . . . 4 (𝑥 ∈ (II Cn 𝐽) ↔ ((𝑥 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅) ∧ 𝑥 ∈ (II Cn 𝐽)))
49 df-3an 1088 . . . 4 ((𝑥 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅ ∧ 𝑥 ∈ (II Cn 𝐽)) ↔ ((𝑥 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅) ∧ 𝑥 ∈ (II Cn 𝐽)))
50 3ancomb 1098 . . . 4 ((𝑥 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅ ∧ 𝑥 ∈ (II Cn 𝐽)) ↔ (𝑥 ∈ (II Cn 𝐽) ∧ 𝑥 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅))
5148, 49, 503bitr2i 299 . . 3 (𝑥 ∈ (II Cn 𝐽) ↔ (𝑥 ∈ (II Cn 𝐽) ∧ 𝑥 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅))
52 isphtpc 24900 . . 3 (𝑥( ≃ph𝐽)𝑥 ↔ (𝑥 ∈ (II Cn 𝐽) ∧ 𝑥 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅))
5351, 52bitr4i 278 . 2 (𝑥 ∈ (II Cn 𝐽) ↔ 𝑥( ≃ph𝐽)𝑥)
541, 16, 42, 53iseri 8701 1 ( ≃ph𝐽) Er (II Cn 𝐽)
Colors of variables: wff setvar class
Syntax hints:  wa 395  w3a 1086  wex 1779  wcel 2109  wne 2926  c0 4299  ifcif 4491   class class class wbr 5110  cfv 6514  (class class class)co 7390  cmpo 7392   Er wer 8671  0cc0 11075  1c1 11076   · cmul 11080  cle 11216  cmin 11412   / cdiv 11842  2c2 12248  [,]cicc 13316   Cn ccn 23118  IIcii 24775  PHtpycphtpy 24874  phcphtpc 24875
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2702  ax-rep 5237  ax-sep 5254  ax-nul 5264  ax-pow 5323  ax-pr 5390  ax-un 7714  ax-cnex 11131  ax-resscn 11132  ax-1cn 11133  ax-icn 11134  ax-addcl 11135  ax-addrcl 11136  ax-mulcl 11137  ax-mulrcl 11138  ax-mulcom 11139  ax-addass 11140  ax-mulass 11141  ax-distr 11142  ax-i2m1 11143  ax-1ne0 11144  ax-1rid 11145  ax-rnegex 11146  ax-rrecex 11147  ax-cnre 11148  ax-pre-lttri 11149  ax-pre-lttrn 11150  ax-pre-ltadd 11151  ax-pre-mulgt0 11152  ax-pre-sup 11153
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2534  df-eu 2563  df-clab 2709  df-cleq 2722  df-clel 2804  df-nfc 2879  df-ne 2927  df-nel 3031  df-ral 3046  df-rex 3055  df-rmo 3356  df-reu 3357  df-rab 3409  df-v 3452  df-sbc 3757  df-csb 3866  df-dif 3920  df-un 3922  df-in 3924  df-ss 3934  df-pss 3937  df-nul 4300  df-if 4492  df-pw 4568  df-sn 4593  df-pr 4595  df-tp 4597  df-op 4599  df-uni 4875  df-int 4914  df-iun 4960  df-iin 4961  df-br 5111  df-opab 5173  df-mpt 5192  df-tr 5218  df-id 5536  df-eprel 5541  df-po 5549  df-so 5550  df-fr 5594  df-se 5595  df-we 5596  df-xp 5647  df-rel 5648  df-cnv 5649  df-co 5650  df-dm 5651  df-rn 5652  df-res 5653  df-ima 5654  df-pred 6277  df-ord 6338  df-on 6339  df-lim 6340  df-suc 6341  df-iota 6467  df-fun 6516  df-fn 6517  df-f 6518  df-f1 6519  df-fo 6520  df-f1o 6521  df-fv 6522  df-isom 6523  df-riota 7347  df-ov 7393  df-oprab 7394  df-mpo 7395  df-of 7656  df-om 7846  df-1st 7971  df-2nd 7972  df-supp 8143  df-frecs 8263  df-wrecs 8294  df-recs 8343  df-rdg 8381  df-1o 8437  df-2o 8438  df-er 8674  df-map 8804  df-ixp 8874  df-en 8922  df-dom 8923  df-sdom 8924  df-fin 8925  df-fsupp 9320  df-fi 9369  df-sup 9400  df-inf 9401  df-oi 9470  df-card 9899  df-pnf 11217  df-mnf 11218  df-xr 11219  df-ltxr 11220  df-le 11221  df-sub 11414  df-neg 11415  df-div 11843  df-nn 12194  df-2 12256  df-3 12257  df-4 12258  df-5 12259  df-6 12260  df-7 12261  df-8 12262  df-9 12263  df-n0 12450  df-z 12537  df-dec 12657  df-uz 12801  df-q 12915  df-rp 12959  df-xneg 13079  df-xadd 13080  df-xmul 13081  df-ioo 13317  df-icc 13320  df-fz 13476  df-fzo 13623  df-seq 13974  df-exp 14034  df-hash 14303  df-cj 15072  df-re 15073  df-im 15074  df-sqrt 15208  df-abs 15209  df-struct 17124  df-sets 17141  df-slot 17159  df-ndx 17171  df-base 17187  df-ress 17208  df-plusg 17240  df-mulr 17241  df-starv 17242  df-sca 17243  df-vsca 17244  df-ip 17245  df-tset 17246  df-ple 17247  df-ds 17249  df-unif 17250  df-hom 17251  df-cco 17252  df-rest 17392  df-topn 17393  df-0g 17411  df-gsum 17412  df-topgen 17413  df-pt 17414  df-prds 17417  df-xrs 17472  df-qtop 17477  df-imas 17478  df-xps 17480  df-mre 17554  df-mrc 17555  df-acs 17557  df-mgm 18574  df-sgrp 18653  df-mnd 18669  df-submnd 18718  df-mulg 19007  df-cntz 19256  df-cmn 19719  df-psmet 21263  df-xmet 21264  df-met 21265  df-bl 21266  df-mopn 21267  df-cnfld 21272  df-top 22788  df-topon 22805  df-topsp 22827  df-bases 22840  df-cld 22913  df-cn 23121  df-cnp 23122  df-tx 23456  df-hmeo 23649  df-xms 24215  df-ms 24216  df-tms 24217  df-ii 24777  df-htpy 24876  df-phtpy 24877  df-phtpc 24898
This theorem is referenced by:  pcophtb  24936  pi1buni  24947  pi1addf  24954  pi1addval  24955  pi1grplem  24956  pi1inv  24959  pi1xfrf  24960  pi1xfr  24962  pi1xfrcnvlem  24963  pi1cof  24966  sconnpi1  35233
  Copyright terms: Public domain W3C validator