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

Theorem iscgrg 28792
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 3475 . . . . 5 (𝐺𝑉𝐺 ∈ V)
3 fveq2 6881 . . . . . . . . . . . 12 (𝑔 = 𝐺 → (Base‘𝑔) = (Base‘𝐺))
4 iscgrg.p . . . . . . . . . . . 12 𝑃 = (Base‘𝐺)
53, 4eqtr4di 2815 . . . . . . . . . . 11 (𝑔 = 𝐺 → (Base‘𝑔) = 𝑃)
65oveq1d 7427 . . . . . . . . . 10 (𝑔 = 𝐺 → ((Base‘𝑔) ↑pm ℝ) = (𝑃pm ℝ))
76eleq2d 2848 . . . . . . . . 9 (𝑔 = 𝐺 → (𝑎 ∈ ((Base‘𝑔) ↑pm ℝ) ↔ 𝑎 ∈ (𝑃pm ℝ)))
86eleq2d 2848 . . . . . . . . 9 (𝑔 = 𝐺 → (𝑏 ∈ ((Base‘𝑔) ↑pm ℝ) ↔ 𝑏 ∈ (𝑃pm ℝ)))
97, 8anbi12d 643 . . . . . . . 8 (𝑔 = 𝐺 → ((𝑎 ∈ ((Base‘𝑔) ↑pm ℝ) ∧ 𝑏 ∈ ((Base‘𝑔) ↑pm ℝ)) ↔ (𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ))))
10 fveq2 6881 . . . . . . . . . . . . 13 (𝑔 = 𝐺 → (dist‘𝑔) = (dist‘𝐺))
11 iscgrg.m . . . . . . . . . . . . 13 = (dist‘𝐺)
1210, 11eqtr4di 2815 . . . . . . . . . . . 12 (𝑔 = 𝐺 → (dist‘𝑔) = )
1312oveqd 7429 . . . . . . . . . . 11 (𝑔 = 𝐺 → ((𝑎𝑖)(dist‘𝑔)(𝑎𝑗)) = ((𝑎𝑖) (𝑎𝑗)))
1412oveqd 7429 . . . . . . . . . . 11 (𝑔 = 𝐺 → ((𝑏𝑖)(dist‘𝑔)(𝑏𝑗)) = ((𝑏𝑖) (𝑏𝑗)))
1513, 14eqeq12d 2778 . . . . . . . . . 10 (𝑔 = 𝐺 → (((𝑎𝑖)(dist‘𝑔)(𝑎𝑗)) = ((𝑏𝑖)(dist‘𝑔)(𝑏𝑗)) ↔ ((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))
16152ralbidv 3228 . . . . . . . . 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 5176 . . . . . 6 (𝑔 = 𝐺 → {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ((Base‘𝑔) ↑pm ℝ) ∧ 𝑏 ∈ ((Base‘𝑔) ↑pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖)(dist‘𝑔)(𝑎𝑗)) = ((𝑏𝑖)(dist‘𝑔)(𝑏𝑗))))} = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))})
20 df-cgrg 28791 . . . . . 6 cgrG = (𝑔 ∈ V ↦ {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ((Base‘𝑔) ↑pm ℝ) ∧ 𝑏 ∈ ((Base‘𝑔) ↑pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖)(dist‘𝑔)(𝑎𝑗)) = ((𝑏𝑖)(dist‘𝑔)(𝑏𝑗))))})
21 df-xp 5666 . . . . . . . 8 ((𝑃pm ℝ) × (𝑃pm ℝ)) = {⟨𝑎, 𝑏⟩ ∣ (𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ))}
22 ovex 7445 . . . . . . . . 9 (𝑃pm ℝ) ∈ V
2322, 22xpex 7750 . . . . . . . 8 ((𝑃pm ℝ) × (𝑃pm ℝ)) ∈ V
2421, 23eqeltrri 2859 . . . . . . 7 {⟨𝑎, 𝑏⟩ ∣ (𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ))} ∈ V
25 simpl 487 . . . . . . . 8 (((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗)))) → (𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)))
2625ssopab2i 5534 . . . . . . 7 {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))} ⊆ {⟨𝑎, 𝑏⟩ ∣ (𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ))}
2724, 26ssexi 5292 . . . . . 6 {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))} ∈ V
2819, 20, 27fvmpt 6989 . . . . 5 (𝐺 ∈ V → (cgrG‘𝐺) = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))})
292, 28syl 18 . . . 4 (𝐺𝑉 → (cgrG‘𝐺) = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))})
301, 29eqtrid 2809 . . 3 (𝐺𝑉 = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))})
3130breqd 5119 . 2 (𝐺𝑉 → (𝐴 𝐵𝐴{⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))}𝐵))
32 dmeq 5892 . . . . . 6 (𝑎 = 𝐴 → dom 𝑎 = dom 𝐴)
3332eqeq1d 2764 . . . . 5 (𝑎 = 𝐴 → (dom 𝑎 = dom 𝑏 ↔ dom 𝐴 = dom 𝑏))
3432adantr 485 . . . . . . 7 ((𝑎 = 𝐴𝑖 ∈ dom 𝑎) → dom 𝑎 = dom 𝐴)
35 simpll 778 . . . . . . . . . 10 (((𝑎 = 𝐴𝑖 ∈ dom 𝑎) ∧ 𝑗 ∈ dom 𝑎) → 𝑎 = 𝐴)
3635fveq1d 6883 . . . . . . . . 9 (((𝑎 = 𝐴𝑖 ∈ dom 𝑎) ∧ 𝑗 ∈ dom 𝑎) → (𝑎𝑖) = (𝐴𝑖))
3735fveq1d 6883 . . . . . . . . 9 (((𝑎 = 𝐴𝑖 ∈ dom 𝑎) ∧ 𝑗 ∈ dom 𝑎) → (𝑎𝑗) = (𝐴𝑗))
3836, 37oveq12d 7430 . . . . . . . 8 (((𝑎 = 𝐴𝑖 ∈ dom 𝑎) ∧ 𝑗 ∈ dom 𝑎) → ((𝑎𝑖) (𝑎𝑗)) = ((𝐴𝑖) (𝐴𝑗)))
3938eqeq1d 2764 . . . . . . 7 (((𝑎 = 𝐴𝑖 ∈ dom 𝑎) ∧ 𝑗 ∈ dom 𝑎) → (((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗)) ↔ ((𝐴𝑖) (𝐴𝑗)) = ((𝑏𝑖) (𝑏𝑗))))
4034, 39raleqbidva 3328 . . . . . 6 ((𝑎 = 𝐴𝑖 ∈ dom 𝑎) → (∀𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗)) ↔ ∀𝑗 ∈ dom 𝐴((𝐴𝑖) (𝐴𝑗)) = ((𝑏𝑖) (𝑏𝑗))))
4132, 40raleqbidva 3328 . . . . 5 (𝑎 = 𝐴 → (∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗)) ↔ ∀𝑖 ∈ dom 𝐴𝑗 ∈ dom 𝐴((𝐴𝑖) (𝐴𝑗)) = ((𝑏𝑖) (𝑏𝑗))))
4233, 41anbi12d 643 . . . 4 (𝑎 = 𝐴 → ((dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))) ↔ (dom 𝐴 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝐴𝑗 ∈ dom 𝐴((𝐴𝑖) (𝐴𝑗)) = ((𝑏𝑖) (𝑏𝑗)))))
43 dmeq 5892 . . . . . 6 (𝑏 = 𝐵 → dom 𝑏 = dom 𝐵)
4443eqeq2d 2773 . . . . 5 (𝑏 = 𝐵 → (dom 𝐴 = dom 𝑏 ↔ dom 𝐴 = dom 𝐵))
45 fveq1 6880 . . . . . . . 8 (𝑏 = 𝐵 → (𝑏𝑖) = (𝐵𝑖))
46 fveq1 6880 . . . . . . . 8 (𝑏 = 𝐵 → (𝑏𝑗) = (𝐵𝑗))
4745, 46oveq12d 7430 . . . . . . 7 (𝑏 = 𝐵 → ((𝑏𝑖) (𝑏𝑗)) = ((𝐵𝑖) (𝐵𝑗)))
4847eqeq2d 2773 . . . . . 6 (𝑏 = 𝐵 → (((𝐴𝑖) (𝐴𝑗)) = ((𝑏𝑖) (𝑏𝑗)) ↔ ((𝐴𝑖) (𝐴𝑗)) = ((𝐵𝑖) (𝐵𝑗))))
49482ralbidv 3228 . . . . 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 2762 . . 3 {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))} = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃pm ℝ) ∧ 𝑏 ∈ (𝑃pm ℝ)) ∧ (dom 𝑎 = dom 𝑏 ∧ ∀𝑖 ∈ dom 𝑎𝑗 ∈ dom 𝑎((𝑎𝑖) (𝑎𝑗)) = ((𝑏𝑖) (𝑏𝑗))))}
5351, 52brab2a 5753 . 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
This proof depends on syntax axioms:  wi 4  wb 209  wa 400   = wceq 1569  wcel 2142  wral 3078  Vcvv 3454   class class class wbr 5108  {copab 5172   × cxp 5658  dom cdm 5660  cfv 6536  (class class class)co 7412  pm cpm 8823  cr 11105  Basecbs 17275  distcds 17325  cgrGccgrg 28790
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1824  ax-4 1838  ax-5 1939  ax-6 1996  ax-7 2037  ax-8 2144  ax-9 2152  ax-10 2175  ax-11 2191  ax-12 2212  ax-ext 2734  ax-sep 5256  ax-nul 5268  ax-pow 5335  ax-pr 5403  ax-un 7734
This proof depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3an 1104  df-tru 1572  df-fal 1582  df-ex 1809  df-nf 1813  df-sb 2096  df-mo 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ne 2958  df-ral 3079  df-rex 3089  df-rab 3416  df-v 3456  df-dif 3907  df-un 3909  df-in 3911  df-ss 3921  df-nul 4286  df-if 4487  df-pw 4563  df-sn 4589  df-pr 4591  df-op 4595  df-uni 4872  df-br 5109  df-opab 5173  df-mpt 5192  df-id 5555  df-xp 5666  df-rel 5667  df-cnv 5668  df-co 5669  df-dm 5670  df-iota 6492  df-fun 6538  df-fv 6544  df-ov 7415  df-cgrg 28791
This theorem is used by:  iscgrgd  28793  ercgrg  28797
  Copyright terms: Public domain W3C validator