Metamath Proof Explorer


Theorem ac6sfi

Description: A version of ac6s for finite sets. (Contributed by Jeff Hankins, 26-Jun-2009) (Proof shortened by Mario Carneiro, 29-Jan-2014)

Ref Expression
Hypothesis ac6sfi.1 y=fxφψ
Assertion ac6sfi AFinxAyBφff:ABxAψ

Proof

Step Hyp Ref Expression
1 ac6sfi.1 y=fxφψ
2 raleq u=xuyBφxyBφ
3 feq2 u=f:uBf:B
4 raleq u=xuψxψ
5 3 4 anbi12d u=f:uBxuψf:Bxψ
6 5 exbidv u=ff:uBxuψff:Bxψ
7 2 6 imbi12d u=xuyBφff:uBxuψxyBφff:Bxψ
8 raleq u=wxuyBφxwyBφ
9 feq2 u=wf:uBf:wB
10 raleq u=wxuψxwψ
11 9 10 anbi12d u=wf:uBxuψf:wBxwψ
12 11 exbidv u=wff:uBxuψff:wBxwψ
13 8 12 imbi12d u=wxuyBφff:uBxuψxwyBφff:wBxwψ
14 raleq u=wzxuyBφxwzyBφ
15 feq2 u=wzf:uBf:wzB
16 raleq u=wzxuψxwzψ
17 15 16 anbi12d u=wzf:uBxuψf:wzBxwzψ
18 17 exbidv u=wzff:uBxuψff:wzBxwzψ
19 feq1 f=gf:wzBg:wzB
20 fvex fxV
21 20 1 sbcie [˙fx/y]˙φψ
22 fveq1 f=gfx=gx
23 22 sbceq1d f=g[˙fx/y]˙φ[˙gx/y]˙φ
24 21 23 bitr3id f=gψ[˙gx/y]˙φ
25 24 ralbidv f=gxwzψxwz[˙gx/y]˙φ
26 19 25 anbi12d f=gf:wzBxwzψg:wzBxwz[˙gx/y]˙φ
27 26 cbvexvw ff:wzBxwzψgg:wzBxwz[˙gx/y]˙φ
28 18 27 bitrdi u=wzff:uBxuψgg:wzBxwz[˙gx/y]˙φ
29 14 28 imbi12d u=wzxuyBφff:uBxuψxwzyBφgg:wzBxwz[˙gx/y]˙φ
30 raleq u=AxuyBφxAyBφ
31 feq2 u=Af:uBf:AB
32 raleq u=AxuψxAψ
33 31 32 anbi12d u=Af:uBxuψf:ABxAψ
34 33 exbidv u=Aff:uBxuψff:ABxAψ
35 30 34 imbi12d u=AxuyBφff:uBxuψxAyBφff:ABxAψ
36 f0 :B
37 0ex V
38 ral0 xψ
39 38 biantru f:Bf:Bxψ
40 feq1 f=f:B:B
41 39 40 bitr3id f=f:Bxψ:B
42 37 41 spcev :Bff:Bxψ
43 36 42 mp1i xyBφff:Bxψ
44 ssun1 wwz
45 ssralv wwzxwzyBφxwyBφ
46 44 45 ax-mp xwzyBφxwyBφ
47 46 imim1i xwyBφff:wBxwψxwzyBφff:wBxwψ
48 ssun2 zwz
49 ssralv zwzxwzyBφxzyBφ
50 48 49 ax-mp xwzyBφxzyBφ
51 ralsnsg zVxzyBφ[˙z/x]˙yBφ
52 51 elv xzyBφ[˙z/x]˙yBφ
53 sbcrex [˙z/x]˙yBφyB[˙z/x]˙φ
54 52 53 bitri xzyBφyB[˙z/x]˙φ
55 50 54 sylib xwzyBφyB[˙z/x]˙φ
56 nfv y¬zw
57 nfv yff:wBxwψ
58 nfv yg:wzB
59 nfcv _ywz
60 nfsbc1v y[˙gx/y]˙φ
61 59 60 nfralw yxwz[˙gx/y]˙φ
62 58 61 nfan yg:wzBxwz[˙gx/y]˙φ
63 62 nfex ygg:wzBxwz[˙gx/y]˙φ
64 57 63 nfim yff:wBxwψgg:wzBxwz[˙gx/y]˙φ
65 simprl ¬zwyB[˙z/x]˙φf:wBxwψf:wB
66 vex zV
67 vex yV
68 66 67 f1osn zy:z1-1 ontoy
69 f1of zy:z1-1 ontoyzy:zy
70 68 69 mp1i ¬zwyB[˙z/x]˙φf:wBxwψzy:zy
71 simpl2 ¬zwyB[˙z/x]˙φf:wBxwψyB
72 71 snssd ¬zwyB[˙z/x]˙φf:wBxwψyB
73 70 72 fssd ¬zwyB[˙z/x]˙φf:wBxwψzy:zB
74 simpl1 ¬zwyB[˙z/x]˙φf:wBxwψ¬zw
75 disjsn wz=¬zw
76 74 75 sylibr ¬zwyB[˙z/x]˙φf:wBxwψwz=
77 65 73 76 fun2d ¬zwyB[˙z/x]˙φf:wBxwψfzy:wzB
78 simprr ¬zwyB[˙z/x]˙φf:wBxwψxwψ
79 eleq1a xwz=xzw
80 79 necon3bd xw¬zwzx
81 80 impcom ¬zwxwzx
82 fvunsn zxfzyx=fx
83 dfsbcq fzyx=fx[˙fzyx/y]˙φ[˙fx/y]˙φ
84 83 21 bitr2di fzyx=fxψ[˙fzyx/y]˙φ
85 81 82 84 3syl ¬zwxwψ[˙fzyx/y]˙φ
86 85 ralbidva ¬zwxwψxw[˙fzyx/y]˙φ
87 74 86 syl ¬zwyB[˙z/x]˙φf:wBxwψxwψxw[˙fzyx/y]˙φ
88 78 87 mpbid ¬zwyB[˙z/x]˙φf:wBxwψxw[˙fzyx/y]˙φ
89 simpl3 ¬zwyB[˙z/x]˙φf:wBxwψ[˙z/x]˙φ
90 ffun fzy:wzBFunfzy
91 ssun2 zyfzy
92 vsnid zz
93 67 dmsnop domzy=z
94 92 93 eleqtrri zdomzy
95 funssfv Funfzyzyfzyzdomzyfzyz=zyz
96 91 94 95 mp3an23 Funfzyfzyz=zyz
97 77 90 96 3syl ¬zwyB[˙z/x]˙φf:wBxwψfzyz=zyz
98 66 67 fvsn zyz=y
99 97 98 eqtr2di ¬zwyB[˙z/x]˙φf:wBxwψy=fzyz
100 ralsnsg zVxzφ[˙z/x]˙φ
101 100 elv xzφ[˙z/x]˙φ
102 elsni xzx=z
103 102 fveq2d xzfzyx=fzyz
104 103 eqeq2d xzy=fzyxy=fzyz
105 104 biimparc y=fzyzxzy=fzyx
106 sbceq1a y=fzyxφ[˙fzyx/y]˙φ
107 105 106 syl y=fzyzxzφ[˙fzyx/y]˙φ
108 107 ralbidva y=fzyzxzφxz[˙fzyx/y]˙φ
109 101 108 bitr3id y=fzyz[˙z/x]˙φxz[˙fzyx/y]˙φ
110 99 109 syl ¬zwyB[˙z/x]˙φf:wBxwψ[˙z/x]˙φxz[˙fzyx/y]˙φ
111 89 110 mpbid ¬zwyB[˙z/x]˙φf:wBxwψxz[˙fzyx/y]˙φ
112 ralun xw[˙fzyx/y]˙φxz[˙fzyx/y]˙φxwz[˙fzyx/y]˙φ
113 88 111 112 syl2anc ¬zwyB[˙z/x]˙φf:wBxwψxwz[˙fzyx/y]˙φ
114 vex fV
115 snex zyV
116 114 115 unex fzyV
117 feq1 g=fzyg:wzBfzy:wzB
118 fveq1 g=fzygx=fzyx
119 118 sbceq1d g=fzy[˙gx/y]˙φ[˙fzyx/y]˙φ
120 119 ralbidv g=fzyxwz[˙gx/y]˙φxwz[˙fzyx/y]˙φ
121 117 120 anbi12d g=fzyg:wzBxwz[˙gx/y]˙φfzy:wzBxwz[˙fzyx/y]˙φ
122 116 121 spcev fzy:wzBxwz[˙fzyx/y]˙φgg:wzBxwz[˙gx/y]˙φ
123 77 113 122 syl2anc ¬zwyB[˙z/x]˙φf:wBxwψgg:wzBxwz[˙gx/y]˙φ
124 123 ex ¬zwyB[˙z/x]˙φf:wBxwψgg:wzBxwz[˙gx/y]˙φ
125 124 exlimdv ¬zwyB[˙z/x]˙φff:wBxwψgg:wzBxwz[˙gx/y]˙φ
126 125 3exp ¬zwyB[˙z/x]˙φff:wBxwψgg:wzBxwz[˙gx/y]˙φ
127 56 64 126 rexlimd ¬zwyB[˙z/x]˙φff:wBxwψgg:wzBxwz[˙gx/y]˙φ
128 55 127 syl5 ¬zwxwzyBφff:wBxwψgg:wzBxwz[˙gx/y]˙φ
129 128 a2d ¬zwxwzyBφff:wBxwψxwzyBφgg:wzBxwz[˙gx/y]˙φ
130 47 129 syl5 ¬zwxwyBφff:wBxwψxwzyBφgg:wzBxwz[˙gx/y]˙φ
131 130 adantl wFin¬zwxwyBφff:wBxwψxwzyBφgg:wzBxwz[˙gx/y]˙φ
132 7 13 29 35 43 131 findcard2s AFinxAyBφff:ABxAψ
133 132 imp AFinxAyBφff:ABxAψ