Metamath Proof Explorer


Theorem fcnvgreu

Description: If the converse of a relation A is a function, exactly one point of its graph has a given second element (that is, function value). (Contributed by Thierry Arnoux, 1-Apr-2018)

Ref Expression
Assertion fcnvgreu ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ Y ∈ ran ⁡ A → ∃! p ∈ A Y = 2 nd ⁡ p

Proof

Step Hyp Ref Expression
1 df-rn ⊢ ran ⁡ A = dom ⁡ A -1
2 1 eleq2i ⊢ Y ∈ ran ⁡ A ↔ Y ∈ dom ⁡ A -1
3 fgreu ⊢ Fun ⁡ A -1 ∧ Y ∈ dom ⁡ A -1 → ∃! q ∈ A -1 Y = 1 st ⁡ q
4 3 adantll ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ Y ∈ dom ⁡ A -1 → ∃! q ∈ A -1 Y = 1 st ⁡ q
5 2 4 sylan2b ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ Y ∈ ran ⁡ A → ∃! q ∈ A -1 Y = 1 st ⁡ q
6 cnvcnvss ⊢ A -1 -1 ⊆ A
7 cnvssrndm ⊢ A -1 ⊆ ran ⁡ A × dom ⁡ A
8 7 sseli ⊢ q ∈ A -1 → q ∈ ran ⁡ A × dom ⁡ A
9 dfdm4 ⊢ dom ⁡ A = ran ⁡ A -1
10 1 9 xpeq12i ⊢ ran ⁡ A × dom ⁡ A = dom ⁡ A -1 × ran ⁡ A -1
11 8 10 eleqtrdi ⊢ q ∈ A -1 → q ∈ dom ⁡ A -1 × ran ⁡ A -1
12 2nd1st ⊢ q ∈ dom ⁡ A -1 × ran ⁡ A -1 → ⋃ q -1 = 2 nd ⁡ q 1 st ⁡ q
13 11 12 syl ⊢ q ∈ A -1 → ⋃ q -1 = 2 nd ⁡ q 1 st ⁡ q
14 13 eqcomd ⊢ q ∈ A -1 → 2 nd ⁡ q 1 st ⁡ q = ⋃ q -1
15 relcnv ⊢ Rel ⁡ A -1
16 cnvf1olem ⊢ Rel ⁡ A -1 ∧ q ∈ A -1 ∧ 2 nd ⁡ q 1 st ⁡ q = ⋃ q -1 → 2 nd ⁡ q 1 st ⁡ q ∈ A -1 -1 ∧ q = ⋃ 2 nd ⁡ q 1 st ⁡ q -1
17 16 simpld ⊢ Rel ⁡ A -1 ∧ q ∈ A -1 ∧ 2 nd ⁡ q 1 st ⁡ q = ⋃ q -1 → 2 nd ⁡ q 1 st ⁡ q ∈ A -1 -1
18 15 17 mpan ⊢ q ∈ A -1 ∧ 2 nd ⁡ q 1 st ⁡ q = ⋃ q -1 → 2 nd ⁡ q 1 st ⁡ q ∈ A -1 -1
19 14 18 mpdan ⊢ q ∈ A -1 → 2 nd ⁡ q 1 st ⁡ q ∈ A -1 -1
20 6 19 sselid ⊢ q ∈ A -1 → 2 nd ⁡ q 1 st ⁡ q ∈ A
21 20 adantl ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ q ∈ A -1 → 2 nd ⁡ q 1 st ⁡ q ∈ A
22 simpll ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A → Rel ⁡ A
23 simpr ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A → p ∈ A
24 relssdmrn ⊢ Rel ⁡ A → A ⊆ dom ⁡ A × ran ⁡ A
25 24 adantr ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 → A ⊆ dom ⁡ A × ran ⁡ A
26 25 sselda ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A → p ∈ dom ⁡ A × ran ⁡ A
27 2nd1st ⊢ p ∈ dom ⁡ A × ran ⁡ A → ⋃ p -1 = 2 nd ⁡ p 1 st ⁡ p
28 26 27 syl ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A → ⋃ p -1 = 2 nd ⁡ p 1 st ⁡ p
29 28 eqcomd ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A → 2 nd ⁡ p 1 st ⁡ p = ⋃ p -1
30 cnvf1olem ⊢ Rel ⁡ A ∧ p ∈ A ∧ 2 nd ⁡ p 1 st ⁡ p = ⋃ p -1 → 2 nd ⁡ p 1 st ⁡ p ∈ A -1 ∧ p = ⋃ 2 nd ⁡ p 1 st ⁡ p -1
31 30 simpld ⊢ Rel ⁡ A ∧ p ∈ A ∧ 2 nd ⁡ p 1 st ⁡ p = ⋃ p -1 → 2 nd ⁡ p 1 st ⁡ p ∈ A -1
32 22 23 29 31 syl12anc ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A → 2 nd ⁡ p 1 st ⁡ p ∈ A -1
33 15 a1i ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A ∧ q ∈ A -1 ∧ p = 2 nd ⁡ q 1 st ⁡ q → Rel ⁡ A -1
34 simplr ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A ∧ q ∈ A -1 ∧ p = 2 nd ⁡ q 1 st ⁡ q → q ∈ A -1
35 14 ad2antlr ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A ∧ q ∈ A -1 ∧ p = 2 nd ⁡ q 1 st ⁡ q → 2 nd ⁡ q 1 st ⁡ q = ⋃ q -1
36 16 simprd ⊢ Rel ⁡ A -1 ∧ q ∈ A -1 ∧ 2 nd ⁡ q 1 st ⁡ q = ⋃ q -1 → q = ⋃ 2 nd ⁡ q 1 st ⁡ q -1
37 33 34 35 36 syl12anc ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A ∧ q ∈ A -1 ∧ p = 2 nd ⁡ q 1 st ⁡ q → q = ⋃ 2 nd ⁡ q 1 st ⁡ q -1
38 simpr ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A ∧ q ∈ A -1 ∧ p = 2 nd ⁡ q 1 st ⁡ q → p = 2 nd ⁡ q 1 st ⁡ q
39 38 sneqd ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A ∧ q ∈ A -1 ∧ p = 2 nd ⁡ q 1 st ⁡ q → p = 2 nd ⁡ q 1 st ⁡ q
40 39 cnveqd ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A ∧ q ∈ A -1 ∧ p = 2 nd ⁡ q 1 st ⁡ q → p -1 = 2 nd ⁡ q 1 st ⁡ q -1
41 40 unieqd ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A ∧ q ∈ A -1 ∧ p = 2 nd ⁡ q 1 st ⁡ q → ⋃ p -1 = ⋃ 2 nd ⁡ q 1 st ⁡ q -1
42 28 ad2antrr ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A ∧ q ∈ A -1 ∧ p = 2 nd ⁡ q 1 st ⁡ q → ⋃ p -1 = 2 nd ⁡ p 1 st ⁡ p
43 37 41 42 3eqtr2d ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A ∧ q ∈ A -1 ∧ p = 2 nd ⁡ q 1 st ⁡ q → q = 2 nd ⁡ p 1 st ⁡ p
44 30 simprd ⊢ Rel ⁡ A ∧ p ∈ A ∧ 2 nd ⁡ p 1 st ⁡ p = ⋃ p -1 → p = ⋃ 2 nd ⁡ p 1 st ⁡ p -1
45 22 23 29 44 syl12anc ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A → p = ⋃ 2 nd ⁡ p 1 st ⁡ p -1
46 45 ad2antrr ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A ∧ q ∈ A -1 ∧ q = 2 nd ⁡ p 1 st ⁡ p → p = ⋃ 2 nd ⁡ p 1 st ⁡ p -1
47 simpr ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A ∧ q ∈ A -1 ∧ q = 2 nd ⁡ p 1 st ⁡ p → q = 2 nd ⁡ p 1 st ⁡ p
48 47 sneqd ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A ∧ q ∈ A -1 ∧ q = 2 nd ⁡ p 1 st ⁡ p → q = 2 nd ⁡ p 1 st ⁡ p
49 48 cnveqd ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A ∧ q ∈ A -1 ∧ q = 2 nd ⁡ p 1 st ⁡ p → q -1 = 2 nd ⁡ p 1 st ⁡ p -1
50 49 unieqd ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A ∧ q ∈ A -1 ∧ q = 2 nd ⁡ p 1 st ⁡ p → ⋃ q -1 = ⋃ 2 nd ⁡ p 1 st ⁡ p -1
51 13 ad2antlr ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A ∧ q ∈ A -1 ∧ q = 2 nd ⁡ p 1 st ⁡ p → ⋃ q -1 = 2 nd ⁡ q 1 st ⁡ q
52 46 50 51 3eqtr2d ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A ∧ q ∈ A -1 ∧ q = 2 nd ⁡ p 1 st ⁡ p → p = 2 nd ⁡ q 1 st ⁡ q
53 43 52 impbida ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A ∧ q ∈ A -1 → p = 2 nd ⁡ q 1 st ⁡ q ↔ q = 2 nd ⁡ p 1 st ⁡ p
54 53 ralrimiva ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A → ∀ q ∈ A -1 p = 2 nd ⁡ q 1 st ⁡ q ↔ q = 2 nd ⁡ p 1 st ⁡ p
55 eqeq2 ⊢ r = 2 nd ⁡ p 1 st ⁡ p → q = r ↔ q = 2 nd ⁡ p 1 st ⁡ p
56 55 bibi2d ⊢ r = 2 nd ⁡ p 1 st ⁡ p → p = 2 nd ⁡ q 1 st ⁡ q ↔ q = r ↔ p = 2 nd ⁡ q 1 st ⁡ q ↔ q = 2 nd ⁡ p 1 st ⁡ p
57 56 ralbidv ⊢ r = 2 nd ⁡ p 1 st ⁡ p → ∀ q ∈ A -1 p = 2 nd ⁡ q 1 st ⁡ q ↔ q = r ↔ ∀ q ∈ A -1 p = 2 nd ⁡ q 1 st ⁡ q ↔ q = 2 nd ⁡ p 1 st ⁡ p
58 57 rspcev ⊢ 2 nd ⁡ p 1 st ⁡ p ∈ A -1 ∧ ∀ q ∈ A -1 p = 2 nd ⁡ q 1 st ⁡ q ↔ q = 2 nd ⁡ p 1 st ⁡ p → ∃ r ∈ A -1 ∀ q ∈ A -1 p = 2 nd ⁡ q 1 st ⁡ q ↔ q = r
59 32 54 58 syl2anc ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A → ∃ r ∈ A -1 ∀ q ∈ A -1 p = 2 nd ⁡ q 1 st ⁡ q ↔ q = r
60 reu6 ⊢ ∃! q ∈ A -1 p = 2 nd ⁡ q 1 st ⁡ q ↔ ∃ r ∈ A -1 ∀ q ∈ A -1 p = 2 nd ⁡ q 1 st ⁡ q ↔ q = r
61 59 60 sylibr ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p ∈ A → ∃! q ∈ A -1 p = 2 nd ⁡ q 1 st ⁡ q
62 fvex ⊢ 2 nd ⁡ q ∈ V
63 fvex ⊢ 1 st ⁡ q ∈ V
64 62 63 op2ndd ⊢ p = 2 nd ⁡ q 1 st ⁡ q → 2 nd ⁡ p = 1 st ⁡ q
65 64 eqeq2d ⊢ p = 2 nd ⁡ q 1 st ⁡ q → Y = 2 nd ⁡ p ↔ Y = 1 st ⁡ q
66 65 adantl ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ p = 2 nd ⁡ q 1 st ⁡ q → Y = 2 nd ⁡ p ↔ Y = 1 st ⁡ q
67 21 61 66 reuxfr1d ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 → ∃! p ∈ A Y = 2 nd ⁡ p ↔ ∃! q ∈ A -1 Y = 1 st ⁡ q
68 67 adantr ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ Y ∈ ran ⁡ A → ∃! p ∈ A Y = 2 nd ⁡ p ↔ ∃! q ∈ A -1 Y = 1 st ⁡ q
69 5 68 mpbird ⊢ Rel ⁡ A ∧ Fun ⁡ A -1 ∧ Y ∈ ran ⁡ A → ∃! p ∈ A Y = 2 nd ⁡ p