Metamath Proof Explorer


Theorem tgjustr

Description: Given any equivalence relation R , one can define a function f such that all elements of an equivalence classe of R have the same image by f . (Contributed by Thierry Arnoux, 25-Jan-2023)

Ref Expression
Assertion tgjustr ⊢ A ∈ V ∧ R Er A → ∃ f f Fn A ∧ ∀ x ∈ A ∀ y ∈ A x R y ↔ f ⁡ x = f ⁡ y

Proof

Step Hyp Ref Expression
1 erex ⊢ R Er A → A ∈ V → R ∈ V
2 1 impcom ⊢ A ∈ V ∧ R Er A → R ∈ V
3 ecexg ⊢ R ∈ V → u R ∈ V
4 2 3 syl ⊢ A ∈ V ∧ R Er A → u R ∈ V
5 4 adantr ⊢ A ∈ V ∧ R Er A ∧ u ∈ A → u R ∈ V
6 5 ralrimiva ⊢ A ∈ V ∧ R Er A → ∀ u ∈ A u R ∈ V
7 eqid ⊢ u ∈ A ⟼ u R = u ∈ A ⟼ u R
8 7 fnmpt ⊢ ∀ u ∈ A u R ∈ V → u ∈ A ⟼ u R Fn A
9 6 8 syl ⊢ A ∈ V ∧ R Er A → u ∈ A ⟼ u R Fn A
10 simpllr ⊢ A ∈ V ∧ R Er A ∧ x ∈ A ∧ y ∈ A → R Er A
11 simpr ⊢ A ∈ V ∧ R Er A ∧ x ∈ A → x ∈ A
12 11 adantr ⊢ A ∈ V ∧ R Er A ∧ x ∈ A ∧ y ∈ A → x ∈ A
13 10 12 erth ⊢ A ∈ V ∧ R Er A ∧ x ∈ A ∧ y ∈ A → x R y ↔ x R = y R
14 eceq1 ⊢ u = x → u R = x R
15 ecelqsw ⊢ R ∈ V ∧ x ∈ A → x R ∈ A / R
16 2 15 sylan ⊢ A ∈ V ∧ R Er A ∧ x ∈ A → x R ∈ A / R
17 7 14 11 16 fvmptd3 ⊢ A ∈ V ∧ R Er A ∧ x ∈ A → u ∈ A ⟼ u R ⁡ x = x R
18 17 adantr ⊢ A ∈ V ∧ R Er A ∧ x ∈ A ∧ y ∈ A → u ∈ A ⟼ u R ⁡ x = x R
19 eceq1 ⊢ u = y → u R = y R
20 simpr ⊢ A ∈ V ∧ R Er A ∧ y ∈ A → y ∈ A
21 ecelqsw ⊢ R ∈ V ∧ y ∈ A → y R ∈ A / R
22 2 21 sylan ⊢ A ∈ V ∧ R Er A ∧ y ∈ A → y R ∈ A / R
23 7 19 20 22 fvmptd3 ⊢ A ∈ V ∧ R Er A ∧ y ∈ A → u ∈ A ⟼ u R ⁡ y = y R
24 23 adantlr ⊢ A ∈ V ∧ R Er A ∧ x ∈ A ∧ y ∈ A → u ∈ A ⟼ u R ⁡ y = y R
25 18 24 eqeq12d ⊢ A ∈ V ∧ R Er A ∧ x ∈ A ∧ y ∈ A → u ∈ A ⟼ u R ⁡ x = u ∈ A ⟼ u R ⁡ y ↔ x R = y R
26 13 25 bitr4d ⊢ A ∈ V ∧ R Er A ∧ x ∈ A ∧ y ∈ A → x R y ↔ u ∈ A ⟼ u R ⁡ x = u ∈ A ⟼ u R ⁡ y
27 26 ralrimiva ⊢ A ∈ V ∧ R Er A ∧ x ∈ A → ∀ y ∈ A x R y ↔ u ∈ A ⟼ u R ⁡ x = u ∈ A ⟼ u R ⁡ y
28 27 ralrimiva ⊢ A ∈ V ∧ R Er A → ∀ x ∈ A ∀ y ∈ A x R y ↔ u ∈ A ⟼ u R ⁡ x = u ∈ A ⟼ u R ⁡ y
29 mptexg ⊢ A ∈ V → u ∈ A ⟼ u R ∈ V
30 29 adantr ⊢ A ∈ V ∧ R Er A → u ∈ A ⟼ u R ∈ V
31 fneq1 ⊢ f = u ∈ A ⟼ u R → f Fn A ↔ u ∈ A ⟼ u R Fn A
32 simpl ⊢ f = u ∈ A ⟼ u R ∧ x ∈ A ∧ y ∈ A → f = u ∈ A ⟼ u R
33 32 fveq1d ⊢ f = u ∈ A ⟼ u R ∧ x ∈ A ∧ y ∈ A → f ⁡ x = u ∈ A ⟼ u R ⁡ x
34 32 fveq1d ⊢ f = u ∈ A ⟼ u R ∧ x ∈ A ∧ y ∈ A → f ⁡ y = u ∈ A ⟼ u R ⁡ y
35 33 34 eqeq12d ⊢ f = u ∈ A ⟼ u R ∧ x ∈ A ∧ y ∈ A → f ⁡ x = f ⁡ y ↔ u ∈ A ⟼ u R ⁡ x = u ∈ A ⟼ u R ⁡ y
36 35 bibi2d ⊢ f = u ∈ A ⟼ u R ∧ x ∈ A ∧ y ∈ A → x R y ↔ f ⁡ x = f ⁡ y ↔ x R y ↔ u ∈ A ⟼ u R ⁡ x = u ∈ A ⟼ u R ⁡ y
37 36 2ralbidva ⊢ f = u ∈ A ⟼ u R → ∀ x ∈ A ∀ y ∈ A x R y ↔ f ⁡ x = f ⁡ y ↔ ∀ x ∈ A ∀ y ∈ A x R y ↔ u ∈ A ⟼ u R ⁡ x = u ∈ A ⟼ u R ⁡ y
38 31 37 anbi12d ⊢ f = u ∈ A ⟼ u R → f Fn A ∧ ∀ x ∈ A ∀ y ∈ A x R y ↔ f ⁡ x = f ⁡ y ↔ u ∈ A ⟼ u R Fn A ∧ ∀ x ∈ A ∀ y ∈ A x R y ↔ u ∈ A ⟼ u R ⁡ x = u ∈ A ⟼ u R ⁡ y
39 38 spcegv ⊢ u ∈ A ⟼ u R ∈ V → u ∈ A ⟼ u R Fn A ∧ ∀ x ∈ A ∀ y ∈ A x R y ↔ u ∈ A ⟼ u R ⁡ x = u ∈ A ⟼ u R ⁡ y → ∃ f f Fn A ∧ ∀ x ∈ A ∀ y ∈ A x R y ↔ f ⁡ x = f ⁡ y
40 30 39 syl ⊢ A ∈ V ∧ R Er A → u ∈ A ⟼ u R Fn A ∧ ∀ x ∈ A ∀ y ∈ A x R y ↔ u ∈ A ⟼ u R ⁡ x = u ∈ A ⟼ u R ⁡ y → ∃ f f Fn A ∧ ∀ x ∈ A ∀ y ∈ A x R y ↔ f ⁡ x = f ⁡ y
41 9 28 40 mp2and ⊢ A ∈ V ∧ R Er A → ∃ f f Fn A ∧ ∀ x ∈ A ∀ y ∈ A x R y ↔ f ⁡ x = f ⁡ y