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

Theorem isismt 28834
Description: Property of being an isometry. Compare with isismty 38485. (Contributed by Thierry Arnoux, 13-Dec-2019.)
Hypotheses
Ref Expression
isismt.b 𝐵 = (Base‘𝐺)
isismt.p 𝑃 = (Base‘𝐻)
isismt.d 𝐷 = (dist‘𝐺)
isismt.m = (dist‘𝐻)
Assertion
Ref Expression
isismt ((𝐺𝑉𝐻𝑊) → (𝐹 ∈ (𝐺Ismt𝐻) ↔ (𝐹:𝐵1-1-onto𝑃 ∧ ∀𝑎𝐵𝑏𝐵 ((𝐹𝑎) (𝐹𝑏)) = (𝑎𝐷𝑏))))
Distinct variable groups:   𝐵,𝑎,𝑏   𝐹,𝑎,𝑏   𝐺,𝑎,𝑏   𝐻,𝑎,𝑏
Allowed substitution hints:   𝐷(𝑎, 𝑏)   𝑃(𝑎, 𝑏)   (𝑎, 𝑏)   𝑉(𝑎, 𝑏)   𝑊(𝑎, 𝑏)

Proof of Theorem isismt
Dummy variables 𝑓 𝑔 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 elex 3478 . . . 4 (𝐺𝑉𝐺 ∈ V)
2 elex 3478 . . . 4 (𝐻𝑊𝐻 ∈ V)
3 fveq2 6885 . . . . . . . . 9 (𝑔 = 𝐺 → (Base‘𝑔) = (Base‘𝐺))
4 isismt.b . . . . . . . . 9 𝐵 = (Base‘𝐺)
53, 4eqtr4di 2818 . . . . . . . 8 (𝑔 = 𝐺 → (Base‘𝑔) = 𝐵)
65f1oeq2d 6820 . . . . . . 7 (𝑔 = 𝐺 → (𝑓:(Base‘𝑔)–1-1-onto→(Base‘) ↔ 𝑓:𝐵1-1-onto→(Base‘)))
7 fveq2 6885 . . . . . . . . . . . 12 (𝑔 = 𝐺 → (dist‘𝑔) = (dist‘𝐺))
8 isismt.d . . . . . . . . . . . 12 𝐷 = (dist‘𝐺)
97, 8eqtr4di 2818 . . . . . . . . . . 11 (𝑔 = 𝐺 → (dist‘𝑔) = 𝐷)
109oveqd 7433 . . . . . . . . . 10 (𝑔 = 𝐺 → (𝑎(dist‘𝑔)𝑏) = (𝑎𝐷𝑏))
1110eqeq2d 2776 . . . . . . . . 9 (𝑔 = 𝐺 → (((𝑓𝑎)(dist‘)(𝑓𝑏)) = (𝑎(dist‘𝑔)𝑏) ↔ ((𝑓𝑎)(dist‘)(𝑓𝑏)) = (𝑎𝐷𝑏)))
125, 11raleqbidv 3340 . . . . . . . 8 (𝑔 = 𝐺 → (∀𝑏 ∈ (Base‘𝑔)((𝑓𝑎)(dist‘)(𝑓𝑏)) = (𝑎(dist‘𝑔)𝑏) ↔ ∀𝑏𝐵 ((𝑓𝑎)(dist‘)(𝑓𝑏)) = (𝑎𝐷𝑏)))
135, 12raleqbidv 3340 . . . . . . 7 (𝑔 = 𝐺 → (∀𝑎 ∈ (Base‘𝑔)∀𝑏 ∈ (Base‘𝑔)((𝑓𝑎)(dist‘)(𝑓𝑏)) = (𝑎(dist‘𝑔)𝑏) ↔ ∀𝑎𝐵𝑏𝐵 ((𝑓𝑎)(dist‘)(𝑓𝑏)) = (𝑎𝐷𝑏)))
146, 13anbi12d 644 . . . . . 6 (𝑔 = 𝐺 → ((𝑓:(Base‘𝑔)–1-1-onto→(Base‘) ∧ ∀𝑎 ∈ (Base‘𝑔)∀𝑏 ∈ (Base‘𝑔)((𝑓𝑎)(dist‘)(𝑓𝑏)) = (𝑎(dist‘𝑔)𝑏)) ↔ (𝑓:𝐵1-1-onto→(Base‘) ∧ ∀𝑎𝐵𝑏𝐵 ((𝑓𝑎)(dist‘)(𝑓𝑏)) = (𝑎𝐷𝑏))))
1514abbidv 2831 . . . . 5 (𝑔 = 𝐺 → {𝑓 ∣ (𝑓:(Base‘𝑔)–1-1-onto→(Base‘) ∧ ∀𝑎 ∈ (Base‘𝑔)∀𝑏 ∈ (Base‘𝑔)((𝑓𝑎)(dist‘)(𝑓𝑏)) = (𝑎(dist‘𝑔)𝑏))} = {𝑓 ∣ (𝑓:𝐵1-1-onto→(Base‘) ∧ ∀𝑎𝐵𝑏𝐵 ((𝑓𝑎)(dist‘)(𝑓𝑏)) = (𝑎𝐷𝑏))})
16 fveq2 6885 . . . . . . . . 9 ( = 𝐻 → (Base‘) = (Base‘𝐻))
17 isismt.p . . . . . . . . 9 𝑃 = (Base‘𝐻)
1816, 17eqtr4di 2818 . . . . . . . 8 ( = 𝐻 → (Base‘) = 𝑃)
1918f1oeq3d 6821 . . . . . . 7 ( = 𝐻 → (𝑓:𝐵1-1-onto→(Base‘) ↔ 𝑓:𝐵1-1-onto𝑃))
20 fveq2 6885 . . . . . . . . . . 11 ( = 𝐻 → (dist‘) = (dist‘𝐻))
21 isismt.m . . . . . . . . . . 11 = (dist‘𝐻)
2220, 21eqtr4di 2818 . . . . . . . . . 10 ( = 𝐻 → (dist‘) = )
2322oveqd 7433 . . . . . . . . 9 ( = 𝐻 → ((𝑓𝑎)(dist‘)(𝑓𝑏)) = ((𝑓𝑎) (𝑓𝑏)))
2423eqeq1d 2767 . . . . . . . 8 ( = 𝐻 → (((𝑓𝑎)(dist‘)(𝑓𝑏)) = (𝑎𝐷𝑏) ↔ ((𝑓𝑎) (𝑓𝑏)) = (𝑎𝐷𝑏)))
25242ralbidv 3231 . . . . . . 7 ( = 𝐻 → (∀𝑎𝐵𝑏𝐵 ((𝑓𝑎)(dist‘)(𝑓𝑏)) = (𝑎𝐷𝑏) ↔ ∀𝑎𝐵𝑏𝐵 ((𝑓𝑎) (𝑓𝑏)) = (𝑎𝐷𝑏)))
2619, 25anbi12d 644 . . . . . 6 ( = 𝐻 → ((𝑓:𝐵1-1-onto→(Base‘) ∧ ∀𝑎𝐵𝑏𝐵 ((𝑓𝑎)(dist‘)(𝑓𝑏)) = (𝑎𝐷𝑏)) ↔ (𝑓:𝐵1-1-onto𝑃 ∧ ∀𝑎𝐵𝑏𝐵 ((𝑓𝑎) (𝑓𝑏)) = (𝑎𝐷𝑏))))
2726abbidv 2831 . . . . 5 ( = 𝐻 → {𝑓 ∣ (𝑓:𝐵1-1-onto→(Base‘) ∧ ∀𝑎𝐵𝑏𝐵 ((𝑓𝑎)(dist‘)(𝑓𝑏)) = (𝑎𝐷𝑏))} = {𝑓 ∣ (𝑓:𝐵1-1-onto𝑃 ∧ ∀𝑎𝐵𝑏𝐵 ((𝑓𝑎) (𝑓𝑏)) = (𝑎𝐷𝑏))})
28 df-ismt 28833 . . . . 5 Ismt = (𝑔 ∈ V, ∈ V ↦ {𝑓 ∣ (𝑓:(Base‘𝑔)–1-1-onto→(Base‘) ∧ ∀𝑎 ∈ (Base‘𝑔)∀𝑏 ∈ (Base‘𝑔)((𝑓𝑎)(dist‘)(𝑓𝑏)) = (𝑎(dist‘𝑔)𝑏))})
29 ovex 7449 . . . . . 6 (𝑃m 𝐵) ∈ V
30 f1of 6824 . . . . . . . . 9 (𝑓:𝐵1-1-onto𝑃𝑓:𝐵𝑃)
3117fvexi 6899 . . . . . . . . . 10 𝑃 ∈ V
324fvexi 6899 . . . . . . . . . 10 𝐵 ∈ V
3331, 32elmap 8871 . . . . . . . . 9 (𝑓 ∈ (𝑃m 𝐵) ↔ 𝑓:𝐵𝑃)
3430, 33sylibr 237 . . . . . . . 8 (𝑓:𝐵1-1-onto𝑃𝑓 ∈ (𝑃m 𝐵))
3534adantr 486 . . . . . . 7 ((𝑓:𝐵1-1-onto𝑃 ∧ ∀𝑎𝐵𝑏𝐵 ((𝑓𝑎) (𝑓𝑏)) = (𝑎𝐷𝑏)) → 𝑓 ∈ (𝑃m 𝐵))
3635abssi 4023 . . . . . 6 {𝑓 ∣ (𝑓:𝐵1-1-onto𝑃 ∧ ∀𝑎𝐵𝑏𝐵 ((𝑓𝑎) (𝑓𝑏)) = (𝑎𝐷𝑏))} ⊆ (𝑃m 𝐵)
3729, 36ssexi 5295 . . . . 5 {𝑓 ∣ (𝑓:𝐵1-1-onto𝑃 ∧ ∀𝑎𝐵𝑏𝐵 ((𝑓𝑎) (𝑓𝑏)) = (𝑎𝐷𝑏))} ∈ V
3815, 27, 28, 37ovmpo 7576 . . . 4 ((𝐺 ∈ V ∧ 𝐻 ∈ V) → (𝐺Ismt𝐻) = {𝑓 ∣ (𝑓:𝐵1-1-onto𝑃 ∧ ∀𝑎𝐵𝑏𝐵 ((𝑓𝑎) (𝑓𝑏)) = (𝑎𝐷𝑏))})
391, 2, 38syl2an 608 . . 3 ((𝐺𝑉𝐻𝑊) → (𝐺Ismt𝐻) = {𝑓 ∣ (𝑓:𝐵1-1-onto𝑃 ∧ ∀𝑎𝐵𝑏𝐵 ((𝑓𝑎) (𝑓𝑏)) = (𝑎𝐷𝑏))})
4039eleq2d 2851 . 2 ((𝐺𝑉𝐻𝑊) → (𝐹 ∈ (𝐺Ismt𝐻) ↔ 𝐹 ∈ {𝑓 ∣ (𝑓:𝐵1-1-onto𝑃 ∧ ∀𝑎𝐵𝑏𝐵 ((𝑓𝑎) (𝑓𝑏)) = (𝑎𝐷𝑏))}))
41 f1of 6824 . . . . 5 (𝐹:𝐵1-1-onto𝑃𝐹:𝐵𝑃)
42 fex 7228 . . . . 5 ((𝐹:𝐵𝑃𝐵 ∈ V) → 𝐹 ∈ V)
4341, 32, 42sylancl 598 . . . 4 (𝐹:𝐵1-1-onto𝑃𝐹 ∈ V)
4443adantr 486 . . 3 ((𝐹:𝐵1-1-onto𝑃 ∧ ∀𝑎𝐵𝑏𝐵 ((𝐹𝑎) (𝐹𝑏)) = (𝑎𝐷𝑏)) → 𝐹 ∈ V)
45 f1oeq1 6812 . . . 4 (𝑓 = 𝐹 → (𝑓:𝐵1-1-onto𝑃𝐹:𝐵1-1-onto𝑃))
46 fveq1 6884 . . . . . . 7 (𝑓 = 𝐹 → (𝑓𝑎) = (𝐹𝑎))
47 fveq1 6884 . . . . . . 7 (𝑓 = 𝐹 → (𝑓𝑏) = (𝐹𝑏))
4846, 47oveq12d 7434 . . . . . 6 (𝑓 = 𝐹 → ((𝑓𝑎) (𝑓𝑏)) = ((𝐹𝑎) (𝐹𝑏)))
4948eqeq1d 2767 . . . . 5 (𝑓 = 𝐹 → (((𝑓𝑎) (𝑓𝑏)) = (𝑎𝐷𝑏) ↔ ((𝐹𝑎) (𝐹𝑏)) = (𝑎𝐷𝑏)))
50492ralbidv 3231 . . . 4 (𝑓 = 𝐹 → (∀𝑎𝐵𝑏𝐵 ((𝑓𝑎) (𝑓𝑏)) = (𝑎𝐷𝑏) ↔ ∀𝑎𝐵𝑏𝐵 ((𝐹𝑎) (𝐹𝑏)) = (𝑎𝐷𝑏)))
5145, 50anbi12d 644 . . 3 (𝑓 = 𝐹 → ((𝑓:𝐵1-1-onto𝑃 ∧ ∀𝑎𝐵𝑏𝐵 ((𝑓𝑎) (𝑓𝑏)) = (𝑎𝐷𝑏)) ↔ (𝐹:𝐵1-1-onto𝑃 ∧ ∀𝑎𝐵𝑏𝐵 ((𝐹𝑎) (𝐹𝑏)) = (𝑎𝐷𝑏))))
5244, 51elab3 3647 . 2 (𝐹 ∈ {𝑓 ∣ (𝑓:𝐵1-1-onto𝑃 ∧ ∀𝑎𝐵𝑏𝐵 ((𝑓𝑎) (𝑓𝑏)) = (𝑎𝐷𝑏))} ↔ (𝐹:𝐵1-1-onto𝑃 ∧ ∀𝑎𝐵𝑏𝐵 ((𝐹𝑎) (𝐹𝑏)) = (𝑎𝐷𝑏)))
5340, 52bitrdi 290 1 ((𝐺𝑉𝐻𝑊) → (𝐹 ∈ (𝐺Ismt𝐻) ↔ (𝐹:𝐵1-1-onto𝑃 ∧ ∀𝑎𝐵𝑏𝐵 ((𝐹𝑎) (𝐹𝑏)) = (𝑎𝐷𝑏))))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 401   = wceq 1570  wcel 2146  {cab 2743  wral 3081  Vcvv 3457  wf 6536  1-1-ontowf1o 6539  cfv 6540  (class class class)co 7416  m cmap 8826  Basecbs 17287  distcds 17337  Ismtcismt 28832
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2737  ax-rep 5240  ax-sep 5259  ax-nul 5271  ax-pow 5338  ax-pr 5406  ax-un 7738
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2569  df-eu 2599  df-clab 2744  df-cleq 2757  df-clel 2840  df-nfc 2914  df-ne 2961  df-ral 3082  df-rex 3092  df-reu 3372  df-rab 3419  df-v 3459  df-sbc 3747  df-csb 3855  df-dif 3909  df-un 3911  df-in 3913  df-ss 3923  df-nul 4287  df-if 4490  df-pw 4566  df-sn 4592  df-pr 4594  df-op 4598  df-uni 4875  df-iun 4960  df-br 5112  df-opab 5176  df-mpt 5195  df-id 5558  df-xp 5669  df-rel 5670  df-cnv 5671  df-co 5672  df-dm 5673  df-rn 5674  df-res 5675  df-ima 5676  df-iota 6496  df-fun 6542  df-fn 6543  df-f 6544  df-f1 6545  df-fo 6546  df-f1o 6547  df-fv 6548  df-ov 7419  df-oprab 7420  df-mpo 7421  df-map 8828  df-ismt 28833
This theorem is used by:  ismot  28835
  Copyright terms: Public domain W3C validator