Metamath Proof Explorer


Theorem fnchoice

Description: For a finite set, a choice function exists, without using the axiom of choice. (Contributed by Glauco Siliprandi, 20-Apr-2017)

Ref Expression
Assertion fnchoice AFinffFnAxAxfxx

Proof

Step Hyp Ref Expression
1 fneq2 w=fFnwfFn
2 raleq w=xwxfxxxxfxx
3 1 2 anbi12d w=fFnwxwxfxxfFnxxfxx
4 3 exbidv w=ffFnwxwxfxxffFnxxfxx
5 fneq2 w=yfFnwfFny
6 raleq w=yxwxfxxxyxfxx
7 5 6 anbi12d w=yfFnwxwxfxxfFnyxyxfxx
8 7 exbidv w=yffFnwxwxfxxffFnyxyxfxx
9 fneq2 w=yzfFnwfFnyz
10 raleq w=yzxwxfxxxyzxfxx
11 9 10 anbi12d w=yzfFnwxwxfxxfFnyzxyzxfxx
12 11 exbidv w=yzffFnwxwxfxxffFnyzxyzxfxx
13 fneq2 w=AfFnwfFnA
14 raleq w=AxwxfxxxAxfxx
15 13 14 anbi12d w=AfFnwxwxfxxfFnAxAxfxx
16 15 exbidv w=AffFnwxwxfxxffFnAxAxfxx
17 0ex V
18 fneq1 f=fFnFn
19 eqid =
20 fn0 Fn=
21 19 20 mpbir Fn
22 17 18 21 ceqsexv2d ffFn
23 ral0 xxfxx
24 22 23 exan ffFnxxfxx
25 dffn2 fFnyf:yV
26 25 biimpi fFnyf:yV
27 26 ad2antrl yFin¬zyz=fFnyxyxfxxf:yV
28 vex zV
29 28 a1i yFin¬zyz=fFnyxyxfxxzV
30 simpllr yFin¬zyz=fFnyxyxfxx¬zy
31 vex wV
32 31 a1i yFin¬zyz=fFnyxyxfxxwV
33 fsnunf f:yVzV¬zywVfzw:yzV
34 27 29 30 32 33 syl121anc yFin¬zyz=fFnyxyxfxxfzw:yzV
35 dffn2 fzwFnyzfzw:yzV
36 34 35 sylibr yFin¬zyz=fFnyxyxfxxfzwFnyz
37 simplr yFin¬zyz=fFnyxyxfxxz=
38 simprr yFin¬zyz=fFnyxyxfxxxyxfxx
39 nfv xz=¬zy
40 nfra1 xxyxfxx
41 39 40 nfan xz=¬zyxyxfxx
42 simpr z=¬zyxyxfxxxyzxxyxy
43 simpllr z=¬zyxyxfxxxyz¬zy
44 43 adantr z=¬zyxyxfxxxyzx¬zy
45 44 adantr z=¬zyxyxfxxxyzxxy¬zy
46 42 45 jca z=¬zyxyxfxxxyzxxyxy¬zy
47 nelne2 xy¬zyxz
48 47 necomd xy¬zyzx
49 46 48 syl z=¬zyxyxfxxxyzxxyzx
50 fvunsn zxfzwx=fx
51 49 50 syl z=¬zyxyxfxxxyzxxyfzwx=fx
52 simpllr z=¬zyxyxfxxxyzxxyxfxx
53 52 adantr z=¬zyxyxfxxxyzxxyxyxfxx
54 simplr z=¬zyxyxfxxxyzxxyx
55 neeq1 u=xux
56 fveq2 u=xfu=fx
57 56 eleq1d u=xfuufxu
58 eleq2w u=xfxufxx
59 57 58 bitrd u=xfuufxx
60 55 59 imbi12d u=xufuuxfxx
61 60 cbvralvw uyufuuxyxfxx
62 60 rspcv xyuyufuuxfxx
63 61 62 biimtrrid xyxyxfxxxfxx
64 42 53 54 63 syl3c z=¬zyxyxfxxxyzxxyfxx
65 51 64 eqeltrd z=¬zyxyxfxxxyzxxyfzwxx
66 simp-4l z=¬zyxyxfxxxyzxz=
67 66 adantr z=¬zyxyxfxxxyzxxzz=
68 simpr z=¬zyxyxfxxxyzxxzxz
69 simplr z=¬zyxyxfxxxyzxxzx
70 elsni xzx=z
71 70 3ad2ant2 z=xzxx=z
72 simp1 z=xzxz=
73 71 72 eqtrd z=xzxx=
74 simp3 z=xzxx
75 73 74 pm2.21ddne z=xzxfzwxx
76 67 68 69 75 syl3anc z=¬zyxyxfxxxyzxxzfzwxx
77 simplr z=¬zyxyxfxxxyzxxyz
78 elun xyzxyxz
79 77 78 sylib z=¬zyxyxfxxxyzxxyxz
80 65 76 79 mpjaodan z=¬zyxyxfxxxyzxfzwxx
81 80 ex z=¬zyxyxfxxxyzxfzwxx
82 81 ex z=¬zyxyxfxxxyzxfzwxx
83 41 82 ralrimi z=¬zyxyxfxxxyzxfzwxx
84 37 30 38 83 syl21anc yFin¬zyz=fFnyxyxfxxxyzxfzwxx
85 36 84 jca yFin¬zyz=fFnyxyxfxxfzwFnyzxyzxfzwxx
86 85 ex yFin¬zyz=fFnyxyxfxxfzwFnyzxyzxfzwxx
87 86 eximdv yFin¬zyz=ffFnyxyxfxxffzwFnyzxyzxfzwxx
88 vex fV
89 snex zwV
90 88 89 unex fzwV
91 fneq1 g=fzwgFnyzfzwFnyz
92 fveq1 g=fzwgx=fzwx
93 92 eleq1d g=fzwgxxfzwxx
94 93 imbi2d g=fzwxgxxxfzwxx
95 94 ralbidv g=fzwxyzxgxxxyzxfzwxx
96 91 95 anbi12d g=fzwgFnyzxyzxgxxfzwFnyzxyzxfzwxx
97 90 96 spcev fzwFnyzxyzxfzwxxggFnyzxyzxgxx
98 97 eximi ffzwFnyzxyzxfzwxxfggFnyzxyzxgxx
99 87 98 syl6 yFin¬zyz=ffFnyxyxfxxfggFnyzxyzxgxx
100 ax5e fggFnyzxyzxgxxggFnyzxyzxgxx
101 99 100 syl6 yFin¬zyz=ffFnyxyxfxxggFnyzxyzxgxx
102 101 imp yFin¬zyz=ffFnyxyxfxxggFnyzxyzxgxx
103 102 an32s yFin¬zyffFnyxyxfxxz=ggFnyzxyzxgxx
104 fneq1 f=gfFnyzgFnyz
105 fveq1 f=gfx=gx
106 105 eleq1d f=gfxxgxx
107 106 imbi2d f=gxfxxxgxx
108 107 ralbidv f=gxyzxfxxxyzxgxx
109 104 108 anbi12d f=gfFnyzxyzxfxxgFnyzxyzxgxx
110 109 cbvexvw ffFnyzxyzxfxxggFnyzxyzxgxx
111 103 110 sylibr yFin¬zyffFnyxyxfxxz=ffFnyzxyzxfxx
112 simpllr yFin¬zyffFnyxyxfxx¬z=¬zy
113 simpr yFin¬zyffFnyxyxfxx¬z=¬z=
114 neq0 ¬z=wwz
115 113 114 sylib yFin¬zyffFnyxyxfxx¬z=wwz
116 simplr yFin¬zyffFnyxyxfxx¬z=ffFnyxyxfxx
117 115 116 jca yFin¬zyffFnyxyxfxx¬z=wwzffFnyxyxfxx
118 112 117 jca yFin¬zyffFnyxyxfxx¬z=¬zywwzffFnyxyxfxx
119 exdistrv wfwzfFnyxyxfxxwwzffFnyxyxfxx
120 simprrl ¬zywzfFnyxyxfxxfFny
121 120 25 sylib ¬zywzfFnyxyxfxxf:yV
122 28 a1i ¬zywzfFnyxyxfxxzV
123 simpl ¬zywzfFnyxyxfxx¬zy
124 31 a1i ¬zywzfFnyxyxfxxwV
125 121 122 123 124 33 syl121anc ¬zywzfFnyxyxfxxfzw:yzV
126 125 35 sylibr ¬zywzfFnyxyxfxxfzwFnyz
127 nfv x¬zy
128 nfv xwz
129 nfv xfFny
130 129 40 nfan xfFnyxyxfxx
131 128 130 nfan xwzfFnyxyxfxx
132 127 131 nfan x¬zywzfFnyxyxfxx
133 simpr ¬zywzfFnyxyxfxxxyzxxyxy
134 simp-4l ¬zywzfFnyxyxfxxxyzxxy¬zy
135 133 134 jca ¬zywzfFnyxyxfxxxyzxxyxy¬zy
136 48 50 syl xy¬zyfzwx=fx
137 135 136 syl ¬zywzfFnyxyxfxxxyzxxyfzwx=fx
138 simprrr ¬zywzfFnyxyxfxxxyxfxx
139 138 ad5ant12 ¬zywzfFnyxyxfxxxyzxxyxyxfxx
140 simplr ¬zywzfFnyxyxfxxxyzxxyx
141 133 139 140 63 syl3c ¬zywzfFnyxyxfxxxyzxxyfxx
142 137 141 eqeltrd ¬zywzfFnyxyxfxxxyzxxyfzwxx
143 simplrl ¬zywzfFnyxyxfxxxyzwz
144 143 adantr ¬zywzfFnyxyxfxxxyzxwz
145 144 adantr ¬zywzfFnyxyxfxxxyzxxzwz
146 simpr ¬zywzfFnyxyxfxxxyzxxzxz
147 146 70 syl ¬zywzfFnyxyxfxxxyzxxzx=z
148 fveq2 x=zfzwx=fzwz
149 147 148 syl ¬zywzfFnyxyxfxxxyzxxzfzwx=fzwz
150 28 a1i ¬zywzfFnyxyxfxxxyzxxzzV
151 31 a1i ¬zywzfFnyxyxfxxxyzxxzwV
152 simp-4l ¬zywzfFnyxyxfxxxyzxxz¬zy
153 120 ad5ant12 ¬zywzfFnyxyxfxxxyzxxzfFny
154 153 fndmd ¬zywzfFnyxyxfxxxyzxxzdomf=y
155 152 154 neleqtrrd ¬zywzfFnyxyxfxxxyzxxz¬zdomf
156 fsnunfv zVwV¬zdomffzwz=w
157 150 151 155 156 syl3anc ¬zywzfFnyxyxfxxxyzxxzfzwz=w
158 149 157 eqtrd ¬zywzfFnyxyxfxxxyzxxzfzwx=w
159 145 158 147 3eltr4d ¬zywzfFnyxyxfxxxyzxxzfzwxx
160 simplr ¬zywzfFnyxyxfxxxyzxxyz
161 160 78 sylib ¬zywzfFnyxyxfxxxyzxxyxz
162 142 159 161 mpjaodan ¬zywzfFnyxyxfxxxyzxfzwxx
163 162 ex ¬zywzfFnyxyxfxxxyzxfzwxx
164 163 ex ¬zywzfFnyxyxfxxxyzxfzwxx
165 132 164 ralrimi ¬zywzfFnyxyxfxxxyzxfzwxx
166 126 165 jca ¬zywzfFnyxyxfxxfzwFnyzxyzxfzwxx
167 166 97 syl ¬zywzfFnyxyxfxxggFnyzxyzxgxx
168 167 ex ¬zywzfFnyxyxfxxggFnyzxyzxgxx
169 168 2eximdv ¬zywfwzfFnyxyxfxxwfggFnyzxyzxgxx
170 119 169 biimtrrid ¬zywwzffFnyxyxfxxwfggFnyzxyzxgxx
171 170 imp ¬zywwzffFnyxyxfxxwfggFnyzxyzxgxx
172 100 exlimiv wfggFnyzxyzxgxxggFnyzxyzxgxx
173 171 172 syl ¬zywwzffFnyxyxfxxggFnyzxyzxgxx
174 173 110 sylibr ¬zywwzffFnyxyxfxxffFnyzxyzxfxx
175 118 174 syl yFin¬zyffFnyxyxfxx¬z=ffFnyzxyzxfxx
176 111 175 pm2.61dan yFin¬zyffFnyxyxfxxffFnyzxyzxfxx
177 176 ex yFin¬zyffFnyxyxfxxffFnyzxyzxfxx
178 4 8 12 16 24 177 findcard2s AFinffFnAxAxfxx