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

Theorem iscgrg 28746
Description: The congruence property for sequences of points. (Contributed by Thierry Arnoux, 3-Apr-2019.)
Hypotheses
Ref Expression
iscgrg.p 𝑃 = (Base‘𝐺)
iscgrg.m = (dist‘𝐺)
iscgrg.e = (cgrG‘𝐺)
Assertion
Ref Expression
iscgrg (𝐺𝑉 → (𝐴 𝐵 ↔ ((𝐴 ∈ (𝑃pm ℝ) ∧ 𝐵 ∈ (𝑃pm ℝ)) ∧ (dom 𝐴 = dom 𝐵 ∧ ∀𝑖 ∈ dom 𝐴𝑗 ∈ dom 𝐴((𝐴𝑖) (𝐴𝑗)) = ((𝐵𝑖) (𝐵𝑗))))))
Distinct variable groups:   𝑖,𝑗,𝐺   𝐴,𝑖,𝑗   𝐵,𝑖,𝑗
Allowed substitution hints:   𝑃(𝑖,𝑗)   (𝑖,𝑗)   (𝑖,𝑗)   𝑉(𝑖,𝑗)

Proof of Theorem iscgrg
Dummy variables 𝑎 𝑏 𝑔 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 iscgrg.e . . . 4 = (cgrG‘𝐺)
2 elex 3484 . . . . 5 (𝐺𝑉𝐺 ∈ V)
3 fveq2 6882 . . . . . . . . . . . 12 (𝑔 = 𝐺 → (Base‘𝑔) = (Base‘𝐺))
4 iscgrg.p . . . . . . . . . . . 12 𝑃 = (Base‘𝐺)
53, 4eqtr4di 2822 . . . . . . . . . . 11 (𝑔 = 𝐺 → (Base‘𝑔) = 𝑃)
65oveq1d 7426 . . . . . . . . . 10 (𝑔 = 𝐺 → ((Base‘𝑔) ↑pm ℝ) = (𝑃pm ℝ))
76eleq2d 2855 . . . . . . . . 9 (𝑔 = 𝐺 → (𝑎 ∈ ((Base‘𝑔) ↑pm ℝ) ↔ 𝑎 ∈ (𝑃pm ℝ)))
86eleq2d 2855 . . . . . . . . 9 (𝑔 = 𝐺 → (𝑏 ∈ ((Base‘𝑔) ↑pm ℝ) ↔ 𝑏 ∈ (𝑃pm ℝ)))
97, 8anbi12d 643 . . . . . . . 8 (𝑔 = 𝐺 → ((𝑎 ∈ ((Base‘𝑔) ↑pm ℝ) ∧ 𝑏 ∈ ((Base‘𝑔) ↑pm ℝ)) ↔ (𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ))))
10 fveq2 6882 . . . . . . . . . . . . 13 (𝑔 = 𝐺 → (dist‘𝑔) = (dist‘𝐺))
11 iscgrg.m . . . . . . . . . . . . 13 = (dist‘𝐺)
1210, 11eqtr4di 2822 . . . . . . . . . . . 12 (𝑔 = 𝐺 → (dist‘𝑔) = )
1312oveqd 7428 . . . . . . . . . . 11 (𝑔 = 𝐺 → ((𝑎𝑖)(dist‘𝑔)(𝑎𝑗)) = ((𝑎𝑖) (𝑎𝑗)))
1412oveqd 7428 . . . . . . . . . . 11 (𝑔 = 𝐺 → ((𝑏𝑖)(dist‘𝑔)(𝑏𝑗)) = ((𝑏𝑖) (𝑏𝑗)))
1513, 14eqeq12d 2785 . . . . . . . . . 10 (𝑔 = 𝐺 → (((𝑎𝑖)(dist‘𝑔)(𝑎𝑗)) = ((𝑏𝑖)(dist‘𝑔)(𝑏𝑗)) ↔ ((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))
16152ralbidv 3235 . . . . . . . . 9 (𝑔 = 𝐺 → (∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖)(dist‘𝑔)(𝑎𝑗)) = ((𝑏𝑖)(dist‘𝑔)(𝑏𝑗)) ↔ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))
1716anbi2d 641 . . . . . . . 8 (𝑔 = 𝐺 → ((dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖)(dist‘𝑔)(𝑎𝑗)) = ((𝑏𝑖)(dist‘𝑔)(𝑏𝑗))) ↔ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗)))))
189, 17anbi12d 643 . . . . . . 7 (𝑔 = 𝐺 → (((𝑎 ∈ ((Base‘𝑔) ↑pm ℝ) ∧ 𝑏 ∈ ((Base‘𝑔) ↑pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖)(dist‘𝑔)(𝑎𝑗)) = ((𝑏𝑖)(dist‘𝑔)(𝑏𝑗)))) ↔ ((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))))
1918opabbidv 5181 . . . . . 6 (𝑔 = 𝐺 → {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ((Base‘𝑔) ↑pm ℝ) ∧ 𝑏 ∈ ((Base‘𝑔) ↑pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖)(dist‘𝑔)(𝑎𝑗)) = ((𝑏𝑖)(dist‘𝑔)(𝑏𝑗))))} = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))})
20 df-cgrg 28745 . . . . . 6 cgrG = (𝑔 ∈ V ↦ {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ((Base‘𝑔) ↑pm ℝ) ∧ 𝑏 ∈ ((Base‘𝑔) ↑pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖)(dist‘𝑔)(𝑎𝑗)) = ((𝑏𝑖)(dist‘𝑔)(𝑏𝑗))))})
21 df-xp 5668 . . . . . . . 8 ((𝑃pm ℝ) × (𝑃pm ℝ)) = {⟨𝑎, 𝑏⟩ ∣ (𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ))}
22 ovex 7444 . . . . . . . . 9 (𝑃pm ℝ) ∈ V
2322, 22xpex 7751 . . . . . . . 8 ((𝑃pm ℝ) × (𝑃pm ℝ)) ∈ V
2421, 23eqeltrri 2866 . . . . . . 7 {⟨𝑎, 𝑏⟩ ∣ (𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ))} ∈ V
25 simpl 487 . . . . . . . 8 (((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗)))) → (𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)))
2625ssopab2i 5536 . . . . . . 7 {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))} ⊆ {⟨𝑎, 𝑏⟩ ∣ (𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ))}
2724, 26ssexi 5293 . . . . . 6 {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))} ∈ V
2819, 20, 27fvmpt 6990 . . . . 5 (𝐺 ∈ V → (cgrG‘𝐺) = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))})
292, 28syl 18 . . . 4 (𝐺𝑉 → (cgrG‘𝐺) = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))})
301, 29eqtrid 2816 . . 3 (𝐺𝑉 = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))})
3130breqd 5124 . 2 (𝐺𝑉 → (𝐴 𝐵𝐴{⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))}𝐵))
32 dmeq 5894 . . . . . 6 (𝑎 = 𝐴 → dom 𝑎 = dom 𝐴)
3332eqeq1d 2771 . . . . 5 (𝑎 = 𝐴 → (dom 𝑎 = dom 𝑏 ↔ dom 𝐴 = dom 𝑏))
3432adantr 485 . . . . . . 7 ((𝑎 = 𝐴𝑖 ∈ dom 𝑎) → dom 𝑎 = dom 𝐴)
35 simpll 778 . . . . . . . . . 10 (((𝑎 = 𝐴𝑖 ∈ dom 𝑎) ∧ 𝑗 ∈ dom 𝑎) → 𝑎 = 𝐴)
3635fveq1d 6884 . . . . . . . . 9 (((𝑎 = 𝐴𝑖 ∈ dom 𝑎) ∧ 𝑗 ∈ dom 𝑎) → (𝑎𝑖) = (𝐴𝑖))
3735fveq1d 6884 . . . . . . . . 9 (((𝑎 = 𝐴𝑖 ∈ dom 𝑎) ∧ 𝑗 ∈ dom 𝑎) → (𝑎𝑗) = (𝐴𝑗))
3836, 37oveq12d 7429 . . . . . . . 8 (((𝑎 = 𝐴𝑖 ∈ dom 𝑎) ∧ 𝑗 ∈ dom 𝑎) → ((𝑎𝑖) (𝑎𝑗)) = ((𝐴𝑖) (𝐴𝑗)))
3938eqeq1d 2771 . . . . . . 7 (((𝑎 = 𝐴𝑖 ∈ dom 𝑎) ∧ 𝑗 ∈ dom 𝑎) → (((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗)) ↔ ((𝐴𝑖) (𝐴𝑗)) = ((𝑏𝑖) (𝑏𝑗))))
4034, 39raleqbidva 3335 . . . . . 6 ((𝑎 = 𝐴𝑖 ∈ dom 𝑎) → (∀𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗)) ↔ ∀𝑗 ∈ dom 𝐴((𝐴𝑖) (𝐴𝑗)) = ((𝑏𝑖) (𝑏𝑗))))
4132, 40raleqbidva 3335 . . . . 5 (𝑎 = 𝐴 → (∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗)) ↔ ∀𝑖 ∈ dom 𝐴𝑗 ∈ dom 𝐴((𝐴𝑖) (𝐴𝑗)) = ((𝑏𝑖) (𝑏𝑗))))
4233, 41anbi12d 643 . . . 4 (𝑎 = 𝐴 → ((dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))) ↔ (dom 𝐴 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝐴𝑗 ∈ dom 𝐴((𝐴𝑖) (𝐴𝑗)) = ((𝑏𝑖) (𝑏𝑗)))))
43 dmeq 5894 . . . . . 6 (𝑏 = 𝐵 → dom 𝑏 = dom 𝐵)
4443eqeq2d 2780 . . . . 5 (𝑏 = 𝐵 → (dom 𝐴 = dom 𝑏 ↔ dom 𝐴 = dom 𝐵))
45 fveq1 6881 . . . . . . . 8 (𝑏 = 𝐵 → (𝑏𝑖) = (𝐵𝑖))
46 fveq1 6881 . . . . . . . 8 (𝑏 = 𝐵 → (𝑏𝑗) = (𝐵𝑗))
4745, 46oveq12d 7429 . . . . . . 7 (𝑏 = 𝐵 → ((𝑏𝑖) (𝑏𝑗)) = ((𝐵𝑖) (𝐵𝑗)))
4847eqeq2d 2780 . . . . . 6 (𝑏 = 𝐵 → (((𝐴𝑖) (𝐴𝑗)) = ((𝑏𝑖) (𝑏𝑗)) ↔ ((𝐴𝑖) (𝐴𝑗)) = ((𝐵𝑖) (𝐵𝑗))))
49482ralbidv 3235 . . . . 5 (𝑏 = 𝐵 → (∀𝑖 ∈ dom 𝐴𝑗 ∈ dom 𝐴((𝐴𝑖) (𝐴𝑗)) = ((𝑏𝑖) (𝑏𝑗)) ↔ ∀𝑖 ∈ dom 𝐴𝑗 ∈ dom 𝐴((𝐴𝑖) (𝐴𝑗)) = ((𝐵𝑖) (𝐵𝑗))))
5044, 49anbi12d 643 . . . 4 (𝑏 = 𝐵 → ((dom 𝐴 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝐴𝑗 ∈ dom 𝐴((𝐴𝑖) (𝐴𝑗)) = ((𝑏𝑖) (𝑏𝑗))) ↔ (dom 𝐴 = dom 𝐵 ∧ ∀𝑖 ∈ dom 𝐴𝑗 ∈ dom 𝐴((𝐴𝑖) (𝐴𝑗)) = ((𝐵𝑖) (𝐵𝑗)))))
5142, 50sylan9bb 518 . . 3 ((𝑎 = 𝐴𝑏 = 𝐵) → ((dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))) ↔ (dom 𝐴 = dom 𝐵 ∧ ∀𝑖 ∈ dom 𝐴𝑗 ∈ dom 𝐴((𝐴𝑖) (𝐴𝑗)) = ((𝐵𝑖) (𝐵𝑗)))))
52 eqid 2769 . . 3 {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))} = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))}
5351, 52brab2a 5755 . 2 (𝐴{⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))}𝐵 ↔ ((𝐴 ∈ (𝑃pm ℝ) ∧ 𝐵 ∈ (𝑃pm ℝ)) ∧ (dom 𝐴 = dom 𝐵 ∧ ∀𝑖 ∈ dom 𝐴𝑗 ∈ dom 𝐴((𝐴𝑖) (𝐴𝑗)) = ((𝐵𝑖) (𝐵𝑗)))))
5431, 53bitrdi 290 1 (𝐺𝑉 → (𝐴 𝐵 ↔ ((𝐴 ∈ (𝑃pm ℝ) ∧ 𝐵 ∈ (𝑃pm ℝ)) ∧ (dom 𝐴 = dom 𝐵 ∧ ∀𝑖 ∈ dom 𝐴𝑗 ∈ dom 𝐴((𝐴𝑖) (𝐴𝑗)) = ((𝐵𝑖) (𝐵𝑗))))))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 400   = wceq 1567  wcel 2149  wral 3085  Vcvv 3463   class class class wbr 5113  {copab 5177   × cxp 5660  dom cdm 5662  cfv 6537  (class class class)co 7411  pm cpm 8824  cr 11098  Basecbs 17268  distcds 17318  cgrGccgrg 28744
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1822  ax-4 1836  ax-5 1937  ax-6 1994  ax-7 2035  ax-8 2151  ax-9 2159  ax-10 2182  ax-11 2198  ax-12 2219  ax-ext 2741  ax-sep 5261  ax-nul 5271  ax-pow 5337  ax-pr 5405  ax-un 7733
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3an 1103  df-tru 1570  df-fal 1580  df-ex 1807  df-nf 1811  df-sb 2098  df-mo 2573  df-eu 2603  df-clab 2748  df-cleq 2761  df-clel 2844  df-nfc 2918  df-ne 2965  df-ral 3086  df-rex 3096  df-rab 3424  df-v 3465  df-dif 3916  df-un 3918  df-in 3920  df-ss 3930  df-nul 4295  df-if 4493  df-pw 4569  df-sn 4595  df-pr 4597  df-op 4601  df-uni 4877  df-br 5114  df-opab 5178  df-mpt 5197  df-id 5557  df-xp 5668  df-rel 5669  df-cnv 5670  df-co 5671  df-dm 5672  df-iota 6493  df-fun 6539  df-fv 6545  df-ov 7414  df-cgrg 28745
This theorem is referenced by:  iscgrgd  28747  ercgrg  28751
  Copyright terms: Public domain W3C validator