Metamath Proof Explorer


Theorem hashfun

Description: A finite set is a function iff it is equinumerous to its domain. (Contributed by Mario Carneiro, 26-Sep-2013) (Revised by Mario Carneiro, 12-Mar-2015)

Ref Expression
Assertion hashfun ⊢ F ∈ Fin → Fun ⁡ F ↔ F = dom ⁡ F

Proof

Step Hyp Ref Expression
1 funfn ⊢ Fun ⁡ F ↔ F Fn dom ⁡ F
2 hashfn ⊢ F Fn dom ⁡ F → F = dom ⁡ F
3 1 2 sylbi ⊢ Fun ⁡ F → F = dom ⁡ F
4 dmfi ⊢ F ∈ Fin → dom ⁡ F ∈ Fin
5 hashcl ⊢ dom ⁡ F ∈ Fin → dom ⁡ F ∈ ℕ 0
6 4 5 syl ⊢ F ∈ Fin → dom ⁡ F ∈ ℕ 0
7 6 nn0red ⊢ F ∈ Fin → dom ⁡ F ∈ ℝ
8 7 adantr ⊢ F ∈ Fin ∧ ¬ Rel ⁡ F → dom ⁡ F ∈ ℝ
9 df-rel ⊢ Rel ⁡ F ↔ F ⊆ V × V
10 dfss3 ⊢ F ⊆ V × V ↔ ∀ x ∈ F x ∈ V × V
11 9 10 bitri ⊢ Rel ⁡ F ↔ ∀ x ∈ F x ∈ V × V
12 11 notbii ⊢ ¬ Rel ⁡ F ↔ ¬ ∀ x ∈ F x ∈ V × V
13 rexnal ⊢ ∃ x ∈ F ¬ x ∈ V × V ↔ ¬ ∀ x ∈ F x ∈ V × V
14 12 13 bitr4i ⊢ ¬ Rel ⁡ F ↔ ∃ x ∈ F ¬ x ∈ V × V
15 dmun ⊢ dom ⁡ F ∖ x ∪ x = dom ⁡ F ∖ x ∪ dom ⁡ x
16 15 fveq2i ⊢ dom ⁡ F ∖ x ∪ x = dom ⁡ F ∖ x ∪ dom ⁡ x
17 dmsnn0 ⊢ x ∈ V × V ↔ dom ⁡ x ≠ ∅
18 17 biimpri ⊢ dom ⁡ x ≠ ∅ → x ∈ V × V
19 18 necon1bi ⊢ ¬ x ∈ V × V → dom ⁡ x = ∅
20 19 3ad2ant3 ⊢ F ∈ Fin ∧ x ∈ F ∧ ¬ x ∈ V × V → dom ⁡ x = ∅
21 20 uneq2d ⊢ F ∈ Fin ∧ x ∈ F ∧ ¬ x ∈ V × V → dom ⁡ F ∖ x ∪ dom ⁡ x = dom ⁡ F ∖ x ∪ ∅
22 un0 ⊢ dom ⁡ F ∖ x ∪ ∅ = dom ⁡ F ∖ x
23 21 22 eqtrdi ⊢ F ∈ Fin ∧ x ∈ F ∧ ¬ x ∈ V × V → dom ⁡ F ∖ x ∪ dom ⁡ x = dom ⁡ F ∖ x
24 23 fveq2d ⊢ F ∈ Fin ∧ x ∈ F ∧ ¬ x ∈ V × V → dom ⁡ F ∖ x ∪ dom ⁡ x = dom ⁡ F ∖ x
25 16 24 eqtrid ⊢ F ∈ Fin ∧ x ∈ F ∧ ¬ x ∈ V × V → dom ⁡ F ∖ x ∪ x = dom ⁡ F ∖ x
26 diffi ⊢ F ∈ Fin → F ∖ x ∈ Fin
27 dmfi ⊢ F ∖ x ∈ Fin → dom ⁡ F ∖ x ∈ Fin
28 26 27 syl ⊢ F ∈ Fin → dom ⁡ F ∖ x ∈ Fin
29 hashcl ⊢ dom ⁡ F ∖ x ∈ Fin → dom ⁡ F ∖ x ∈ ℕ 0
30 28 29 syl ⊢ F ∈ Fin → dom ⁡ F ∖ x ∈ ℕ 0
31 30 nn0red ⊢ F ∈ Fin → dom ⁡ F ∖ x ∈ ℝ
32 hashcl ⊢ F ∖ x ∈ Fin → F ∖ x ∈ ℕ 0
33 26 32 syl ⊢ F ∈ Fin → F ∖ x ∈ ℕ 0
34 33 nn0red ⊢ F ∈ Fin → F ∖ x ∈ ℝ
35 peano2re ⊢ F ∖ x ∈ ℝ → F ∖ x + 1 ∈ ℝ
36 34 35 syl ⊢ F ∈ Fin → F ∖ x + 1 ∈ ℝ
37 fidomdm ⊢ F ∖ x ∈ Fin → dom ⁡ F ∖ x ≼ F ∖ x
38 26 37 syl ⊢ F ∈ Fin → dom ⁡ F ∖ x ≼ F ∖ x
39 hashdom ⊢ dom ⁡ F ∖ x ∈ Fin ∧ F ∖ x ∈ Fin → dom ⁡ F ∖ x ≤ F ∖ x ↔ dom ⁡ F ∖ x ≼ F ∖ x
40 28 26 39 syl2anc ⊢ F ∈ Fin → dom ⁡ F ∖ x ≤ F ∖ x ↔ dom ⁡ F ∖ x ≼ F ∖ x
41 38 40 mpbird ⊢ F ∈ Fin → dom ⁡ F ∖ x ≤ F ∖ x
42 34 ltp1d ⊢ F ∈ Fin → F ∖ x < F ∖ x + 1
43 31 34 36 41 42 lelttrd ⊢ F ∈ Fin → dom ⁡ F ∖ x < F ∖ x + 1
44 43 3ad2ant1 ⊢ F ∈ Fin ∧ x ∈ F ∧ ¬ x ∈ V × V → dom ⁡ F ∖ x < F ∖ x + 1
45 25 44 eqbrtrd ⊢ F ∈ Fin ∧ x ∈ F ∧ ¬ x ∈ V × V → dom ⁡ F ∖ x ∪ x < F ∖ x + 1
46 snfi ⊢ x ∈ Fin
47 disjdifr ⊢ F ∖ x ∩ x = ∅
48 hashun ⊢ F ∖ x ∈ Fin ∧ x ∈ Fin ∧ F ∖ x ∩ x = ∅ → F ∖ x ∪ x = F ∖ x + x
49 46 47 48 mp3an23 ⊢ F ∖ x ∈ Fin → F ∖ x ∪ x = F ∖ x + x
50 26 49 syl ⊢ F ∈ Fin → F ∖ x ∪ x = F ∖ x + x
51 hashsng ⊢ x ∈ V → x = 1
52 51 elv ⊢ x = 1
53 52 oveq2i ⊢ F ∖ x + x = F ∖ x + 1
54 50 53 eqtr2di ⊢ F ∈ Fin → F ∖ x + 1 = F ∖ x ∪ x
55 54 3ad2ant1 ⊢ F ∈ Fin ∧ x ∈ F ∧ ¬ x ∈ V × V → F ∖ x + 1 = F ∖ x ∪ x
56 45 55 breqtrd ⊢ F ∈ Fin ∧ x ∈ F ∧ ¬ x ∈ V × V → dom ⁡ F ∖ x ∪ x < F ∖ x ∪ x
57 difsnid ⊢ x ∈ F → F ∖ x ∪ x = F
58 57 dmeqd ⊢ x ∈ F → dom ⁡ F ∖ x ∪ x = dom ⁡ F
59 58 fveq2d ⊢ x ∈ F → dom ⁡ F ∖ x ∪ x = dom ⁡ F
60 59 3ad2ant2 ⊢ F ∈ Fin ∧ x ∈ F ∧ ¬ x ∈ V × V → dom ⁡ F ∖ x ∪ x = dom ⁡ F
61 57 fveq2d ⊢ x ∈ F → F ∖ x ∪ x = F
62 61 3ad2ant2 ⊢ F ∈ Fin ∧ x ∈ F ∧ ¬ x ∈ V × V → F ∖ x ∪ x = F
63 56 60 62 3brtr3d ⊢ F ∈ Fin ∧ x ∈ F ∧ ¬ x ∈ V × V → dom ⁡ F < F
64 63 rexlimdv3a ⊢ F ∈ Fin → ∃ x ∈ F ¬ x ∈ V × V → dom ⁡ F < F
65 14 64 biimtrid ⊢ F ∈ Fin → ¬ Rel ⁡ F → dom ⁡ F < F
66 65 imp ⊢ F ∈ Fin ∧ ¬ Rel ⁡ F → dom ⁡ F < F
67 8 66 gtned ⊢ F ∈ Fin ∧ ¬ Rel ⁡ F → F ≠ dom ⁡ F
68 67 ex ⊢ F ∈ Fin → ¬ Rel ⁡ F → F ≠ dom ⁡ F
69 68 necon4bd ⊢ F ∈ Fin → F = dom ⁡ F → Rel ⁡ F
70 69 imp ⊢ F ∈ Fin ∧ F = dom ⁡ F → Rel ⁡ F
71 2nalexn ⊢ ¬ ∀ x ∀ y ∀ z x y ∈ F ∧ x z ∈ F → y = z ↔ ∃ x ∃ y ¬ ∀ z x y ∈ F ∧ x z ∈ F → y = z
72 df-ne ⊢ y ≠ z ↔ ¬ y = z
73 72 anbi2i ⊢ x y ∈ F ∧ x z ∈ F ∧ y ≠ z ↔ x y ∈ F ∧ x z ∈ F ∧ ¬ y = z
74 annim ⊢ x y ∈ F ∧ x z ∈ F ∧ ¬ y = z ↔ ¬ x y ∈ F ∧ x z ∈ F → y = z
75 73 74 bitri ⊢ x y ∈ F ∧ x z ∈ F ∧ y ≠ z ↔ ¬ x y ∈ F ∧ x z ∈ F → y = z
76 75 exbii ⊢ ∃ z x y ∈ F ∧ x z ∈ F ∧ y ≠ z ↔ ∃ z ¬ x y ∈ F ∧ x z ∈ F → y = z
77 exnal ⊢ ∃ z ¬ x y ∈ F ∧ x z ∈ F → y = z ↔ ¬ ∀ z x y ∈ F ∧ x z ∈ F → y = z
78 76 77 bitr2i ⊢ ¬ ∀ z x y ∈ F ∧ x z ∈ F → y = z ↔ ∃ z x y ∈ F ∧ x z ∈ F ∧ y ≠ z
79 78 2exbii ⊢ ∃ x ∃ y ¬ ∀ z x y ∈ F ∧ x z ∈ F → y = z ↔ ∃ x ∃ y ∃ z x y ∈ F ∧ x z ∈ F ∧ y ≠ z
80 71 79 bitri ⊢ ¬ ∀ x ∀ y ∀ z x y ∈ F ∧ x z ∈ F → y = z ↔ ∃ x ∃ y ∃ z x y ∈ F ∧ x z ∈ F ∧ y ≠ z
81 7 adantr ⊢ F ∈ Fin ∧ x y ∈ F ∧ x z ∈ F ∧ y ≠ z → dom ⁡ F ∈ ℝ
82 2re ⊢ 2 ∈ ℝ
83 diffi ⊢ F ∈ Fin → F ∖ x y x z ∈ Fin
84 dmfi ⊢ F ∖ x y x z ∈ Fin → dom ⁡ F ∖ x y x z ∈ Fin
85 83 84 syl ⊢ F ∈ Fin → dom ⁡ F ∖ x y x z ∈ Fin
86 hashcl ⊢ dom ⁡ F ∖ x y x z ∈ Fin → dom ⁡ F ∖ x y x z ∈ ℕ 0
87 85 86 syl ⊢ F ∈ Fin → dom ⁡ F ∖ x y x z ∈ ℕ 0
88 87 nn0red ⊢ F ∈ Fin → dom ⁡ F ∖ x y x z ∈ ℝ
89 88 adantr ⊢ F ∈ Fin ∧ x y ∈ F ∧ x z ∈ F ∧ y ≠ z → dom ⁡ F ∖ x y x z ∈ ℝ
90 readdcl ⊢ 2 ∈ ℝ ∧ dom ⁡ F ∖ x y x z ∈ ℝ → 2 + dom ⁡ F ∖ x y x z ∈ ℝ
91 82 89 90 sylancr ⊢ F ∈ Fin ∧ x y ∈ F ∧ x z ∈ F ∧ y ≠ z → 2 + dom ⁡ F ∖ x y x z ∈ ℝ
92 hashcl ⊢ F ∈ Fin → F ∈ ℕ 0
93 92 nn0red ⊢ F ∈ Fin → F ∈ ℝ
94 93 adantr ⊢ F ∈ Fin ∧ x y ∈ F ∧ x z ∈ F ∧ y ≠ z → F ∈ ℝ
95 1re ⊢ 1 ∈ ℝ
96 readdcl ⊢ 1 ∈ ℝ ∧ dom ⁡ F ∖ x y x z ∈ ℝ → 1 + dom ⁡ F ∖ x y x z ∈ ℝ
97 95 88 96 sylancr ⊢ F ∈ Fin → 1 + dom ⁡ F ∖ x y x z ∈ ℝ
98 97 adantr ⊢ F ∈ Fin ∧ x y ∈ F ∧ x z ∈ F ∧ y ≠ z → 1 + dom ⁡ F ∖ x y x z ∈ ℝ
99 82 88 90 sylancr ⊢ F ∈ Fin → 2 + dom ⁡ F ∖ x y x z ∈ ℝ
100 99 adantr ⊢ F ∈ Fin ∧ x y ∈ F ∧ x z ∈ F ∧ y ≠ z → 2 + dom ⁡ F ∖ x y x z ∈ ℝ
101 opex ⊢ x y ∈ V
102 opex ⊢ x z ∈ V
103 101 102 prss ⊢ x y ∈ F ∧ x z ∈ F ↔ x y x z ⊆ F
104 undif ⊢ x y x z ⊆ F ↔ x y x z ∪ F ∖ x y x z = F
105 103 104 sylbb ⊢ x y ∈ F ∧ x z ∈ F → x y x z ∪ F ∖ x y x z = F
106 105 dmeqd ⊢ x y ∈ F ∧ x z ∈ F → dom ⁡ x y x z ∪ F ∖ x y x z = dom ⁡ F
107 dmun ⊢ dom ⁡ x y x z ∪ F ∖ x y x z = dom ⁡ x y x z ∪ dom ⁡ F ∖ x y x z
108 106 107 eqtr3di ⊢ x y ∈ F ∧ x z ∈ F → dom ⁡ F = dom ⁡ x y x z ∪ dom ⁡ F ∖ x y x z
109 vex ⊢ y ∈ V
110 vex ⊢ z ∈ V
111 109 110 dmprop ⊢ dom ⁡ x y x z = x x
112 dfsn2 ⊢ x = x x
113 111 112 eqtr4i ⊢ dom ⁡ x y x z = x
114 113 uneq1i ⊢ dom ⁡ x y x z ∪ dom ⁡ F ∖ x y x z = x ∪ dom ⁡ F ∖ x y x z
115 108 114 eqtrdi ⊢ x y ∈ F ∧ x z ∈ F → dom ⁡ F = x ∪ dom ⁡ F ∖ x y x z
116 115 fveq2d ⊢ x y ∈ F ∧ x z ∈ F → dom ⁡ F = x ∪ dom ⁡ F ∖ x y x z
117 116 ad2antrl ⊢ F ∈ Fin ∧ x y ∈ F ∧ x z ∈ F ∧ y ≠ z → dom ⁡ F = x ∪ dom ⁡ F ∖ x y x z
118 hashun2 ⊢ x ∈ Fin ∧ dom ⁡ F ∖ x y x z ∈ Fin → x ∪ dom ⁡ F ∖ x y x z ≤ x + dom ⁡ F ∖ x y x z
119 46 85 118 sylancr ⊢ F ∈ Fin → x ∪ dom ⁡ F ∖ x y x z ≤ x + dom ⁡ F ∖ x y x z
120 52 oveq1i ⊢ x + dom ⁡ F ∖ x y x z = 1 + dom ⁡ F ∖ x y x z
121 119 120 breqtrdi ⊢ F ∈ Fin → x ∪ dom ⁡ F ∖ x y x z ≤ 1 + dom ⁡ F ∖ x y x z
122 121 adantr ⊢ F ∈ Fin ∧ x y ∈ F ∧ x z ∈ F ∧ y ≠ z → x ∪ dom ⁡ F ∖ x y x z ≤ 1 + dom ⁡ F ∖ x y x z
123 117 122 eqbrtrd ⊢ F ∈ Fin ∧ x y ∈ F ∧ x z ∈ F ∧ y ≠ z → dom ⁡ F ≤ 1 + dom ⁡ F ∖ x y x z
124 1lt2 ⊢ 1 < 2
125 ltadd1 ⊢ 1 ∈ ℝ ∧ 2 ∈ ℝ ∧ dom ⁡ F ∖ x y x z ∈ ℝ → 1 < 2 ↔ 1 + dom ⁡ F ∖ x y x z < 2 + dom ⁡ F ∖ x y x z
126 95 82 88 125 mp3an12i ⊢ F ∈ Fin → 1 < 2 ↔ 1 + dom ⁡ F ∖ x y x z < 2 + dom ⁡ F ∖ x y x z
127 124 126 mpbii ⊢ F ∈ Fin → 1 + dom ⁡ F ∖ x y x z < 2 + dom ⁡ F ∖ x y x z
128 127 adantr ⊢ F ∈ Fin ∧ x y ∈ F ∧ x z ∈ F ∧ y ≠ z → 1 + dom ⁡ F ∖ x y x z < 2 + dom ⁡ F ∖ x y x z
129 81 98 100 123 128 lelttrd ⊢ F ∈ Fin ∧ x y ∈ F ∧ x z ∈ F ∧ y ≠ z → dom ⁡ F < 2 + dom ⁡ F ∖ x y x z
130 fidomdm ⊢ F ∖ x y x z ∈ Fin → dom ⁡ F ∖ x y x z ≼ F ∖ x y x z
131 83 130 syl ⊢ F ∈ Fin → dom ⁡ F ∖ x y x z ≼ F ∖ x y x z
132 hashdom ⊢ dom ⁡ F ∖ x y x z ∈ Fin ∧ F ∖ x y x z ∈ Fin → dom ⁡ F ∖ x y x z ≤ F ∖ x y x z ↔ dom ⁡ F ∖ x y x z ≼ F ∖ x y x z
133 85 83 132 syl2anc ⊢ F ∈ Fin → dom ⁡ F ∖ x y x z ≤ F ∖ x y x z ↔ dom ⁡ F ∖ x y x z ≼ F ∖ x y x z
134 131 133 mpbird ⊢ F ∈ Fin → dom ⁡ F ∖ x y x z ≤ F ∖ x y x z
135 hashcl ⊢ F ∖ x y x z ∈ Fin → F ∖ x y x z ∈ ℕ 0
136 83 135 syl ⊢ F ∈ Fin → F ∖ x y x z ∈ ℕ 0
137 136 nn0red ⊢ F ∈ Fin → F ∖ x y x z ∈ ℝ
138 leadd2 ⊢ dom ⁡ F ∖ x y x z ∈ ℝ ∧ F ∖ x y x z ∈ ℝ ∧ 2 ∈ ℝ → dom ⁡ F ∖ x y x z ≤ F ∖ x y x z ↔ 2 + dom ⁡ F ∖ x y x z ≤ 2 + F ∖ x y x z
139 82 138 mp3an3 ⊢ dom ⁡ F ∖ x y x z ∈ ℝ ∧ F ∖ x y x z ∈ ℝ → dom ⁡ F ∖ x y x z ≤ F ∖ x y x z ↔ 2 + dom ⁡ F ∖ x y x z ≤ 2 + F ∖ x y x z
140 88 137 139 syl2anc ⊢ F ∈ Fin → dom ⁡ F ∖ x y x z ≤ F ∖ x y x z ↔ 2 + dom ⁡ F ∖ x y x z ≤ 2 + F ∖ x y x z
141 134 140 mpbid ⊢ F ∈ Fin → 2 + dom ⁡ F ∖ x y x z ≤ 2 + F ∖ x y x z
142 141 adantr ⊢ F ∈ Fin ∧ x y ∈ F ∧ x z ∈ F ∧ y ≠ z → 2 + dom ⁡ F ∖ x y x z ≤ 2 + F ∖ x y x z
143 prfi ⊢ x y x z ∈ Fin
144 disjdif ⊢ x y x z ∩ F ∖ x y x z = ∅
145 hashun ⊢ x y x z ∈ Fin ∧ F ∖ x y x z ∈ Fin ∧ x y x z ∩ F ∖ x y x z = ∅ → x y x z ∪ F ∖ x y x z = x y x z + F ∖ x y x z
146 143 144 145 mp3an13 ⊢ F ∖ x y x z ∈ Fin → x y x z ∪ F ∖ x y x z = x y x z + F ∖ x y x z
147 83 146 syl ⊢ F ∈ Fin → x y x z ∪ F ∖ x y x z = x y x z + F ∖ x y x z
148 147 adantr ⊢ F ∈ Fin ∧ x y ∈ F ∧ x z ∈ F ∧ y ≠ z → x y x z ∪ F ∖ x y x z = x y x z + F ∖ x y x z
149 105 fveq2d ⊢ x y ∈ F ∧ x z ∈ F → x y x z ∪ F ∖ x y x z = F
150 149 ad2antrl ⊢ F ∈ Fin ∧ x y ∈ F ∧ x z ∈ F ∧ y ≠ z → x y x z ∪ F ∖ x y x z = F
151 vex ⊢ x ∈ V
152 151 109 opth ⊢ x y = x z ↔ x = x ∧ y = z
153 152 simprbi ⊢ x y = x z → y = z
154 153 necon3i ⊢ y ≠ z → x y ≠ x z
155 hashprg ⊢ x y ∈ V ∧ x z ∈ V → x y ≠ x z ↔ x y x z = 2
156 101 102 155 mp2an ⊢ x y ≠ x z ↔ x y x z = 2
157 154 156 sylib ⊢ y ≠ z → x y x z = 2
158 157 oveq1d ⊢ y ≠ z → x y x z + F ∖ x y x z = 2 + F ∖ x y x z
159 158 ad2antll ⊢ F ∈ Fin ∧ x y ∈ F ∧ x z ∈ F ∧ y ≠ z → x y x z + F ∖ x y x z = 2 + F ∖ x y x z
160 148 150 159 3eqtr3rd ⊢ F ∈ Fin ∧ x y ∈ F ∧ x z ∈ F ∧ y ≠ z → 2 + F ∖ x y x z = F
161 142 160 breqtrd ⊢ F ∈ Fin ∧ x y ∈ F ∧ x z ∈ F ∧ y ≠ z → 2 + dom ⁡ F ∖ x y x z ≤ F
162 81 91 94 129 161 ltletrd ⊢ F ∈ Fin ∧ x y ∈ F ∧ x z ∈ F ∧ y ≠ z → dom ⁡ F < F
163 81 162 gtned ⊢ F ∈ Fin ∧ x y ∈ F ∧ x z ∈ F ∧ y ≠ z → F ≠ dom ⁡ F
164 163 ex ⊢ F ∈ Fin → x y ∈ F ∧ x z ∈ F ∧ y ≠ z → F ≠ dom ⁡ F
165 164 exlimdv ⊢ F ∈ Fin → ∃ z x y ∈ F ∧ x z ∈ F ∧ y ≠ z → F ≠ dom ⁡ F
166 165 exlimdvv ⊢ F ∈ Fin → ∃ x ∃ y ∃ z x y ∈ F ∧ x z ∈ F ∧ y ≠ z → F ≠ dom ⁡ F
167 80 166 biimtrid ⊢ F ∈ Fin → ¬ ∀ x ∀ y ∀ z x y ∈ F ∧ x z ∈ F → y = z → F ≠ dom ⁡ F
168 167 necon4bd ⊢ F ∈ Fin → F = dom ⁡ F → ∀ x ∀ y ∀ z x y ∈ F ∧ x z ∈ F → y = z
169 168 imp ⊢ F ∈ Fin ∧ F = dom ⁡ F → ∀ x ∀ y ∀ z x y ∈ F ∧ x z ∈ F → y = z
170 dffun4 ⊢ Fun ⁡ F ↔ Rel ⁡ F ∧ ∀ x ∀ y ∀ z x y ∈ F ∧ x z ∈ F → y = z
171 70 169 170 sylanbrc ⊢ F ∈ Fin ∧ F = dom ⁡ F → Fun ⁡ F
172 171 ex ⊢ F ∈ Fin → F = dom ⁡ F → Fun ⁡ F
173 3 172 impbid2 ⊢ F ∈ Fin → Fun ⁡ F ↔ F = dom ⁡ F