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

Theorem phtpcer 23526
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 23524 . 2 Rel ( ≃ph𝐽)
2 isphtpc 23525 . . . 4 (𝑥( ≃ph𝐽)𝑦 ↔ (𝑥 ∈ (II Cn 𝐽) ∧ 𝑦 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑦) ≠ ∅))
32simp2bi 1138 . . 3 (𝑥( ≃ph𝐽)𝑦𝑦 ∈ (II Cn 𝐽))
42simp1bi 1137 . . 3 (𝑥( ≃ph𝐽)𝑦𝑥 ∈ (II Cn 𝐽))
52simp3bi 1139 . . . . 5 (𝑥( ≃ph𝐽)𝑦 → (𝑥(PHtpy‘𝐽)𝑦) ≠ ∅)
6 n0 4307 . . . . 5 ((𝑥(PHtpy‘𝐽)𝑦) ≠ ∅ ↔ ∃𝑓 𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦))
75, 6sylib 219 . . . 4 (𝑥( ≃ph𝐽)𝑦 → ∃𝑓 𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦))
84adantr 481 . . . . . 6 ((𝑥( ≃ph𝐽)𝑦𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦)) → 𝑥 ∈ (II Cn 𝐽))
93adantr 481 . . . . . 6 ((𝑥( ≃ph𝐽)𝑦𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦)) → 𝑦 ∈ (II Cn 𝐽))
10 eqid 2818 . . . . . 6 (𝑢 ∈ (0[,]1), 𝑣 ∈ (0[,]1) ↦ (𝑢𝑓(1 − 𝑣))) = (𝑢 ∈ (0[,]1), 𝑣 ∈ (0[,]1) ↦ (𝑢𝑓(1 − 𝑣)))
11 simpr 485 . . . . . 6 ((𝑥( ≃ph𝐽)𝑦𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦)) → 𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦))
128, 9, 10, 11phtpycom 23519 . . . . 5 ((𝑥( ≃ph𝐽)𝑦𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦)) → (𝑢 ∈ (0[,]1), 𝑣 ∈ (0[,]1) ↦ (𝑢𝑓(1 − 𝑣))) ∈ (𝑦(PHtpy‘𝐽)𝑥))
1312ne0d 4298 . . . 4 ((𝑥( ≃ph𝐽)𝑦𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦)) → (𝑦(PHtpy‘𝐽)𝑥) ≠ ∅)
147, 13exlimddv 1927 . . 3 (𝑥( ≃ph𝐽)𝑦 → (𝑦(PHtpy‘𝐽)𝑥) ≠ ∅)
15 isphtpc 23525 . . 3 (𝑦( ≃ph𝐽)𝑥 ↔ (𝑦 ∈ (II Cn 𝐽) ∧ 𝑥 ∈ (II Cn 𝐽) ∧ (𝑦(PHtpy‘𝐽)𝑥) ≠ ∅))
163, 4, 14, 15syl3anbrc 1335 . 2 (𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑥)
174adantr 481 . . 3 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → 𝑥 ∈ (II Cn 𝐽))
18 simpr 485 . . . . 5 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → 𝑦( ≃ph𝐽)𝑧)
19 isphtpc 23525 . . . . 5 (𝑦( ≃ph𝐽)𝑧 ↔ (𝑦 ∈ (II Cn 𝐽) ∧ 𝑧 ∈ (II Cn 𝐽) ∧ (𝑦(PHtpy‘𝐽)𝑧) ≠ ∅))
2018, 19sylib 219 . . . 4 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → (𝑦 ∈ (II Cn 𝐽) ∧ 𝑧 ∈ (II Cn 𝐽) ∧ (𝑦(PHtpy‘𝐽)𝑧) ≠ ∅))
2120simp2d 1135 . . 3 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → 𝑧 ∈ (II Cn 𝐽))
225adantr 481 . . . . . 6 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → (𝑥(PHtpy‘𝐽)𝑦) ≠ ∅)
2322, 6sylib 219 . . . . 5 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → ∃𝑓 𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦))
2420simp3d 1136 . . . . . 6 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → (𝑦(PHtpy‘𝐽)𝑧) ≠ ∅)
25 n0 4307 . . . . . 6 ((𝑦(PHtpy‘𝐽)𝑧) ≠ ∅ ↔ ∃𝑔 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))
2624, 25sylib 219 . . . . 5 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → ∃𝑔 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))
27 exdistrv 1947 . . . . 5 (∃𝑓𝑔(𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧)) ↔ (∃𝑓 𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ ∃𝑔 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧)))
2823, 26, 27sylanbrc 583 . . . 4 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → ∃𝑓𝑔(𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧)))
29 eqid 2818 . . . . . . . 8 (𝑢 ∈ (0[,]1), 𝑣 ∈ (0[,]1) ↦ if(𝑣 ≤ (1 / 2), (𝑢𝑓(2 · 𝑣)), (𝑢𝑔((2 · 𝑣) − 1)))) = (𝑢 ∈ (0[,]1), 𝑣 ∈ (0[,]1) ↦ if(𝑣 ≤ (1 / 2), (𝑢𝑓(2 · 𝑣)), (𝑢𝑔((2 · 𝑣) − 1))))
3017adantr 481 . . . . . . . 8 (((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) ∧ (𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))) → 𝑥 ∈ (II Cn 𝐽))
3120simp1d 1134 . . . . . . . . 9 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → 𝑦 ∈ (II Cn 𝐽))
3231adantr 481 . . . . . . . 8 (((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) ∧ (𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))) → 𝑦 ∈ (II Cn 𝐽))
3321adantr 481 . . . . . . . 8 (((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) ∧ (𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))) → 𝑧 ∈ (II Cn 𝐽))
34 simprl 767 . . . . . . . 8 (((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) ∧ (𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))) → 𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦))
35 simprr 769 . . . . . . . 8 (((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) ∧ (𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))) → 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))
3629, 30, 32, 33, 34, 35phtpycc 23522 . . . . . . 7 (((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) ∧ (𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))) → (𝑢 ∈ (0[,]1), 𝑣 ∈ (0[,]1) ↦ if(𝑣 ≤ (1 / 2), (𝑢𝑓(2 · 𝑣)), (𝑢𝑔((2 · 𝑣) − 1)))) ∈ (𝑥(PHtpy‘𝐽)𝑧))
3736ne0d 4298 . . . . . 6 (((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) ∧ (𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))) → (𝑥(PHtpy‘𝐽)𝑧) ≠ ∅)
3837ex 413 . . . . 5 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → ((𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧)) → (𝑥(PHtpy‘𝐽)𝑧) ≠ ∅))
3938exlimdvv 1926 . . . 4 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → (∃𝑓𝑔(𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧)) → (𝑥(PHtpy‘𝐽)𝑧) ≠ ∅))
4028, 39mpd 15 . . 3 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → (𝑥(PHtpy‘𝐽)𝑧) ≠ ∅)
41 isphtpc 23525 . . 3 (𝑥( ≃ph𝐽)𝑧 ↔ (𝑥 ∈ (II Cn 𝐽) ∧ 𝑧 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑧) ≠ ∅))
4217, 21, 40, 41syl3anbrc 1335 . 2 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → 𝑥( ≃ph𝐽)𝑧)
43 eqid 2818 . . . . . . . 8 (𝑦 ∈ (0[,]1), 𝑧 ∈ (0[,]1) ↦ (𝑥𝑦)) = (𝑦 ∈ (0[,]1), 𝑧 ∈ (0[,]1) ↦ (𝑥𝑦))
44 id 22 . . . . . . . 8 (𝑥 ∈ (II Cn 𝐽) → 𝑥 ∈ (II Cn 𝐽))
4543, 44phtpyid 23520 . . . . . . 7 (𝑥 ∈ (II Cn 𝐽) → (𝑦 ∈ (0[,]1), 𝑧 ∈ (0[,]1) ↦ (𝑥𝑦)) ∈ (𝑥(PHtpy‘𝐽)𝑥))
4645ne0d 4298 . . . . . 6 (𝑥 ∈ (II Cn 𝐽) → (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅)
4746ancli 549 . . . . 5 (𝑥 ∈ (II Cn 𝐽) → (𝑥 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅))
4847pm4.71ri 561 . . . 4 (𝑥 ∈ (II Cn 𝐽) ↔ ((𝑥 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅) ∧ 𝑥 ∈ (II Cn 𝐽)))
49 df-3an 1081 . . . 4 ((𝑥 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅ ∧ 𝑥 ∈ (II Cn 𝐽)) ↔ ((𝑥 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅) ∧ 𝑥 ∈ (II Cn 𝐽)))
50 3ancomb 1091 . . . 4 ((𝑥 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅ ∧ 𝑥 ∈ (II Cn 𝐽)) ↔ (𝑥 ∈ (II Cn 𝐽) ∧ 𝑥 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅))
5148, 49, 503bitr2i 300 . . 3 (𝑥 ∈ (II Cn 𝐽) ↔ (𝑥 ∈ (II Cn 𝐽) ∧ 𝑥 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅))
52 isphtpc 23525 . . 3 (𝑥( ≃ph𝐽)𝑥 ↔ (𝑥 ∈ (II Cn 𝐽) ∧ 𝑥 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅))
5351, 52bitr4i 279 . 2 (𝑥 ∈ (II Cn 𝐽) ↔ 𝑥( ≃ph𝐽)𝑥)
541, 16, 42, 53iseri 8305 1 ( ≃ph𝐽) Er (II Cn 𝐽)
Colors of variables: wff setvar class
Syntax hints:  wa 396  w3a 1079  wex 1771  wcel 2105  wne 3013  c0 4288  ifcif 4463   class class class wbr 5057  cfv 6348  (class class class)co 7145  cmpo 7147   Er wer 8275  0cc0 10525  1c1 10526   · cmul 10530  cle 10664  cmin 10858   / cdiv 11285  2c2 11680  [,]cicc 12729   Cn ccn 21760  IIcii 23410  PHtpycphtpy 23499  phcphtpc 23500
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1787  ax-4 1801  ax-5 1902  ax-6 1961  ax-7 2006  ax-8 2107  ax-9 2115  ax-10 2136  ax-11 2151  ax-12 2167  ax-ext 2790  ax-rep 5181  ax-sep 5194  ax-nul 5201  ax-pow 5257  ax-pr 5320  ax-un 7450  ax-cnex 10581  ax-resscn 10582  ax-1cn 10583  ax-icn 10584  ax-addcl 10585  ax-addrcl 10586  ax-mulcl 10587  ax-mulrcl 10588  ax-mulcom 10589  ax-addass 10590  ax-mulass 10591  ax-distr 10592  ax-i2m1 10593  ax-1ne0 10594  ax-1rid 10595  ax-rnegex 10596  ax-rrecex 10597  ax-cnre 10598  ax-pre-lttri 10599  ax-pre-lttrn 10600  ax-pre-ltadd 10601  ax-pre-mulgt0 10602  ax-pre-sup 10603  ax-mulf 10605
This theorem depends on definitions:  df-bi 208  df-an 397  df-or 842  df-3or 1080  df-3an 1081  df-tru 1531  df-ex 1772  df-nf 1776  df-sb 2061  df-mo 2615  df-eu 2647  df-clab 2797  df-cleq 2811  df-clel 2890  df-nfc 2960  df-ne 3014  df-nel 3121  df-ral 3140  df-rex 3141  df-reu 3142  df-rmo 3143  df-rab 3144  df-v 3494  df-sbc 3770  df-csb 3881  df-dif 3936  df-un 3938  df-in 3940  df-ss 3949  df-pss 3951  df-nul 4289  df-if 4464  df-pw 4537  df-sn 4558  df-pr 4560  df-tp 4562  df-op 4564  df-uni 4831  df-int 4868  df-iun 4912  df-iin 4913  df-br 5058  df-opab 5120  df-mpt 5138  df-tr 5164  df-id 5453  df-eprel 5458  df-po 5467  df-so 5468  df-fr 5507  df-se 5508  df-we 5509  df-xp 5554  df-rel 5555  df-cnv 5556  df-co 5557  df-dm 5558  df-rn 5559  df-res 5560  df-ima 5561  df-pred 6141  df-ord 6187  df-on 6188  df-lim 6189  df-suc 6190  df-iota 6307  df-fun 6350  df-fn 6351  df-f 6352  df-f1 6353  df-fo 6354  df-f1o 6355  df-fv 6356  df-isom 6357  df-riota 7103  df-ov 7148  df-oprab 7149  df-mpo 7150  df-of 7398  df-om 7570  df-1st 7678  df-2nd 7679  df-supp 7820  df-wrecs 7936  df-recs 7997  df-rdg 8035  df-1o 8091  df-2o 8092  df-oadd 8095  df-er 8278  df-map 8397  df-ixp 8450  df-en 8498  df-dom 8499  df-sdom 8500  df-fin 8501  df-fsupp 8822  df-fi 8863  df-sup 8894  df-inf 8895  df-oi 8962  df-card 9356  df-pnf 10665  df-mnf 10666  df-xr 10667  df-ltxr 10668  df-le 10669  df-sub 10860  df-neg 10861  df-div 11286  df-nn 11627  df-2 11688  df-3 11689  df-4 11690  df-5 11691  df-6 11692  df-7 11693  df-8 11694  df-9 11695  df-n0 11886  df-z 11970  df-dec 12087  df-uz 12232  df-q 12337  df-rp 12378  df-xneg 12495  df-xadd 12496  df-xmul 12497  df-ioo 12730  df-icc 12733  df-fz 12881  df-fzo 13022  df-seq 13358  df-exp 13418  df-hash 13679  df-cj 14446  df-re 14447  df-im 14448  df-sqrt 14582  df-abs 14583  df-struct 16473  df-ndx 16474  df-slot 16475  df-base 16477  df-sets 16478  df-ress 16479  df-plusg 16566  df-mulr 16567  df-starv 16568  df-sca 16569  df-vsca 16570  df-ip 16571  df-tset 16572  df-ple 16573  df-ds 16575  df-unif 16576  df-hom 16577  df-cco 16578  df-rest 16684  df-topn 16685  df-0g 16703  df-gsum 16704  df-topgen 16705  df-pt 16706  df-prds 16709  df-xrs 16763  df-qtop 16768  df-imas 16769  df-xps 16771  df-mre 16845  df-mrc 16846  df-acs 16848  df-mgm 17840  df-sgrp 17889  df-mnd 17900  df-submnd 17945  df-mulg 18163  df-cntz 18385  df-cmn 18837  df-psmet 20465  df-xmet 20466  df-met 20467  df-bl 20468  df-mopn 20469  df-cnfld 20474  df-top 21430  df-topon 21447  df-topsp 21469  df-bases 21482  df-cld 21555  df-cn 21763  df-cnp 21764  df-tx 22098  df-hmeo 22291  df-xms 22857  df-ms 22858  df-tms 22859  df-ii 23412  df-htpy 23501  df-phtpy 23502  df-phtpc 23523
This theorem is referenced by:  pcophtb  23560  pi1buni  23571  pi1addf  23578  pi1addval  23579  pi1grplem  23580  pi1inv  23583  pi1xfrf  23584  pi1xfr  23586  pi1xfrcnvlem  23587  pi1cof  23590  sconnpi1  32383
  Copyright terms: Public domain W3C validator