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

Theorem phtpcer 25046
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 25044 . 2 Rel ( ≃ph𝐽)
2 isphtpc 25045 . . . 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 4376 . . . . 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 2740 . . . . . 6 (𝑢 ∈ (0[,]1), 𝑣 ∈ (0[,]1) ↦ (𝑢𝑓(1 − 𝑣))) = (𝑢 ∈ (0[,]1), 𝑣 ∈ (0[,]1) ↦ (𝑢𝑓(1 − 𝑣)))
11 simpr 484 . . . . . 6 ((𝑥( ≃ph𝐽)𝑦𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦)) → 𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦))
128, 9, 10, 11phtpycom 25039 . . . . 5 ((𝑥( ≃ph𝐽)𝑦𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦)) → (𝑢 ∈ (0[,]1), 𝑣 ∈ (0[,]1) ↦ (𝑢𝑓(1 − 𝑣))) ∈ (𝑦(PHtpy‘𝐽)𝑥))
1312ne0d 4365 . . . 4 ((𝑥( ≃ph𝐽)𝑦𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦)) → (𝑦(PHtpy‘𝐽)𝑥) ≠ ∅)
147, 13exlimddv 1934 . . 3 (𝑥( ≃ph𝐽)𝑦 → (𝑦(PHtpy‘𝐽)𝑥) ≠ ∅)
15 isphtpc 25045 . . 3 (𝑦( ≃ph𝐽)𝑥 ↔ (𝑦 ∈ (II Cn 𝐽) ∧ 𝑥 ∈ (II Cn 𝐽) ∧ (𝑦(PHtpy‘𝐽)𝑥) ≠ ∅))
163, 4, 14, 15syl3anbrc 1343 . 2 (𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑥)
174adantr 480 . . 3 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → 𝑥 ∈ (II Cn 𝐽))
18 simpr 484 . . . . 5 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → 𝑦( ≃ph𝐽)𝑧)
19 isphtpc 25045 . . . . 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 4376 . . . . . 6 ((𝑦(PHtpy‘𝐽)𝑧) ≠ ∅ ↔ ∃𝑔 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))
2624, 25sylib 218 . . . . 5 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → ∃𝑔 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))
27 exdistrv 1955 . . . . 5 (∃𝑓𝑔(𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧)) ↔ (∃𝑓 𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ ∃𝑔 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧)))
2823, 26, 27sylanbrc 582 . . . 4 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → ∃𝑓𝑔(𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧)))
29 eqid 2740 . . . . . . . 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 25042 . . . . . . 7 (((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) ∧ (𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))) → (𝑢 ∈ (0[,]1), 𝑣 ∈ (0[,]1) ↦ if(𝑣 ≤ (1 / 2), (𝑢𝑓(2 · 𝑣)), (𝑢𝑔((2 · 𝑣) − 1)))) ∈ (𝑥(PHtpy‘𝐽)𝑧))
3736ne0d 4365 . . . . . 6 (((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) ∧ (𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧))) → (𝑥(PHtpy‘𝐽)𝑧) ≠ ∅)
3837ex 412 . . . . 5 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → ((𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧)) → (𝑥(PHtpy‘𝐽)𝑧) ≠ ∅))
3938exlimdvv 1933 . . . 4 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → (∃𝑓𝑔(𝑓 ∈ (𝑥(PHtpy‘𝐽)𝑦) ∧ 𝑔 ∈ (𝑦(PHtpy‘𝐽)𝑧)) → (𝑥(PHtpy‘𝐽)𝑧) ≠ ∅))
4028, 39mpd 15 . . 3 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → (𝑥(PHtpy‘𝐽)𝑧) ≠ ∅)
41 isphtpc 25045 . . 3 (𝑥( ≃ph𝐽)𝑧 ↔ (𝑥 ∈ (II Cn 𝐽) ∧ 𝑧 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑧) ≠ ∅))
4217, 21, 40, 41syl3anbrc 1343 . 2 ((𝑥( ≃ph𝐽)𝑦𝑦( ≃ph𝐽)𝑧) → 𝑥( ≃ph𝐽)𝑧)
43 eqid 2740 . . . . . . . 8 (𝑦 ∈ (0[,]1), 𝑧 ∈ (0[,]1) ↦ (𝑥𝑦)) = (𝑦 ∈ (0[,]1), 𝑧 ∈ (0[,]1) ↦ (𝑥𝑦))
44 id 22 . . . . . . . 8 (𝑥 ∈ (II Cn 𝐽) → 𝑥 ∈ (II Cn 𝐽))
4543, 44phtpyid 25040 . . . . . . 7 (𝑥 ∈ (II Cn 𝐽) → (𝑦 ∈ (0[,]1), 𝑧 ∈ (0[,]1) ↦ (𝑥𝑦)) ∈ (𝑥(PHtpy‘𝐽)𝑥))
4645ne0d 4365 . . . . . 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 1089 . . . 4 ((𝑥 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅ ∧ 𝑥 ∈ (II Cn 𝐽)) ↔ ((𝑥 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅) ∧ 𝑥 ∈ (II Cn 𝐽)))
50 3ancomb 1099 . . . 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 25045 . . 3 (𝑥( ≃ph𝐽)𝑥 ↔ (𝑥 ∈ (II Cn 𝐽) ∧ 𝑥 ∈ (II Cn 𝐽) ∧ (𝑥(PHtpy‘𝐽)𝑥) ≠ ∅))
5351, 52bitr4i 278 . 2 (𝑥 ∈ (II Cn 𝐽) ↔ 𝑥( ≃ph𝐽)𝑥)
541, 16, 42, 53iseri 8790 1 ( ≃ph𝐽) Er (II Cn 𝐽)
Colors of variables: wff setvar class
Syntax hints:  wa 395  w3a 1087  wex 1777  wcel 2108  wne 2946  c0 4352  ifcif 4548   class class class wbr 5166  cfv 6573  (class class class)co 7448  cmpo 7450   Er wer 8760  0cc0 11184  1c1 11185   · cmul 11189  cle 11325  cmin 11520   / cdiv 11947  2c2 12348  [,]cicc 13410   Cn ccn 23253  IIcii 24920  PHtpycphtpy 25019  phcphtpc 25020
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1793  ax-4 1807  ax-5 1909  ax-6 1967  ax-7 2007  ax-8 2110  ax-9 2118  ax-10 2141  ax-11 2158  ax-12 2178  ax-ext 2711  ax-rep 5303  ax-sep 5317  ax-nul 5324  ax-pow 5383  ax-pr 5447  ax-un 7770  ax-cnex 11240  ax-resscn 11241  ax-1cn 11242  ax-icn 11243  ax-addcl 11244  ax-addrcl 11245  ax-mulcl 11246  ax-mulrcl 11247  ax-mulcom 11248  ax-addass 11249  ax-mulass 11250  ax-distr 11251  ax-i2m1 11252  ax-1ne0 11253  ax-1rid 11254  ax-rnegex 11255  ax-rrecex 11256  ax-cnre 11257  ax-pre-lttri 11258  ax-pre-lttrn 11259  ax-pre-ltadd 11260  ax-pre-mulgt0 11261  ax-pre-sup 11262
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 847  df-3or 1088  df-3an 1089  df-tru 1540  df-fal 1550  df-ex 1778  df-nf 1782  df-sb 2065  df-mo 2543  df-eu 2572  df-clab 2718  df-cleq 2732  df-clel 2819  df-nfc 2895  df-ne 2947  df-nel 3053  df-ral 3068  df-rex 3077  df-rmo 3388  df-reu 3389  df-rab 3444  df-v 3490  df-sbc 3805  df-csb 3922  df-dif 3979  df-un 3981  df-in 3983  df-ss 3993  df-pss 3996  df-nul 4353  df-if 4549  df-pw 4624  df-sn 4649  df-pr 4651  df-tp 4653  df-op 4655  df-uni 4932  df-int 4971  df-iun 5017  df-iin 5018  df-br 5167  df-opab 5229  df-mpt 5250  df-tr 5284  df-id 5593  df-eprel 5599  df-po 5607  df-so 5608  df-fr 5652  df-se 5653  df-we 5654  df-xp 5706  df-rel 5707  df-cnv 5708  df-co 5709  df-dm 5710  df-rn 5711  df-res 5712  df-ima 5713  df-pred 6332  df-ord 6398  df-on 6399  df-lim 6400  df-suc 6401  df-iota 6525  df-fun 6575  df-fn 6576  df-f 6577  df-f1 6578  df-fo 6579  df-f1o 6580  df-fv 6581  df-isom 6582  df-riota 7404  df-ov 7451  df-oprab 7452  df-mpo 7453  df-of 7714  df-om 7904  df-1st 8030  df-2nd 8031  df-supp 8202  df-frecs 8322  df-wrecs 8353  df-recs 8427  df-rdg 8466  df-1o 8522  df-2o 8523  df-er 8763  df-map 8886  df-ixp 8956  df-en 9004  df-dom 9005  df-sdom 9006  df-fin 9007  df-fsupp 9432  df-fi 9480  df-sup 9511  df-inf 9512  df-oi 9579  df-card 10008  df-pnf 11326  df-mnf 11327  df-xr 11328  df-ltxr 11329  df-le 11330  df-sub 11522  df-neg 11523  df-div 11948  df-nn 12294  df-2 12356  df-3 12357  df-4 12358  df-5 12359  df-6 12360  df-7 12361  df-8 12362  df-9 12363  df-n0 12554  df-z 12640  df-dec 12759  df-uz 12904  df-q 13014  df-rp 13058  df-xneg 13175  df-xadd 13176  df-xmul 13177  df-ioo 13411  df-icc 13414  df-fz 13568  df-fzo 13712  df-seq 14053  df-exp 14113  df-hash 14380  df-cj 15148  df-re 15149  df-im 15150  df-sqrt 15284  df-abs 15285  df-struct 17194  df-sets 17211  df-slot 17229  df-ndx 17241  df-base 17259  df-ress 17288  df-plusg 17324  df-mulr 17325  df-starv 17326  df-sca 17327  df-vsca 17328  df-ip 17329  df-tset 17330  df-ple 17331  df-ds 17333  df-unif 17334  df-hom 17335  df-cco 17336  df-rest 17482  df-topn 17483  df-0g 17501  df-gsum 17502  df-topgen 17503  df-pt 17504  df-prds 17507  df-xrs 17562  df-qtop 17567  df-imas 17568  df-xps 17570  df-mre 17644  df-mrc 17645  df-acs 17647  df-mgm 18678  df-sgrp 18757  df-mnd 18773  df-submnd 18819  df-mulg 19108  df-cntz 19357  df-cmn 19824  df-psmet 21379  df-xmet 21380  df-met 21381  df-bl 21382  df-mopn 21383  df-cnfld 21388  df-top 22921  df-topon 22938  df-topsp 22960  df-bases 22974  df-cld 23048  df-cn 23256  df-cnp 23257  df-tx 23591  df-hmeo 23784  df-xms 24351  df-ms 24352  df-tms 24353  df-ii 24922  df-htpy 25021  df-phtpy 25022  df-phtpc 25043
This theorem is referenced by:  pcophtb  25081  pi1buni  25092  pi1addf  25099  pi1addval  25100  pi1grplem  25101  pi1inv  25104  pi1xfrf  25105  pi1xfr  25107  pi1xfrcnvlem  25108  pi1cof  25111  sconnpi1  35207
  Copyright terms: Public domain W3C validator