Metamath Proof Explorer


Theorem indexfi

Description: If for every element of a finite indexing set A there exists a corresponding element of another set B , then there exists a finite subset of B consisting only of those elements which are indexed by A . Proven without the Axiom of Choice, unlike indexdom . (Contributed by Jeff Madsen, 2-Sep-2009) (Proof shortened by Mario Carneiro, 12-Sep-2015)

Ref Expression
Assertion indexfi AFinBMxAyBφcFincBxAycφycxAφ

Proof

Step Hyp Ref Expression
1 nfv zφ
2 nfsbc1v y[˙z/y]˙φ
3 sbceq1a y=zφ[˙z/y]˙φ
4 1 2 3 cbvrexw yBφzB[˙z/y]˙φ
5 4 ralbii xAyBφxAzB[˙z/y]˙φ
6 dfsbcq z=fx[˙z/y]˙φ[˙fx/y]˙φ
7 6 ac6sfi AFinxAzB[˙z/y]˙φff:ABxA[˙fx/y]˙φ
8 5 7 sylan2b AFinxAyBφff:ABxA[˙fx/y]˙φ
9 simpll AFinxAyBφf:ABxA[˙fx/y]˙φAFin
10 ffn f:ABfFnA
11 10 ad2antrl AFinxAyBφf:ABxA[˙fx/y]˙φfFnA
12 dffn4 fFnAf:Aontoranf
13 11 12 sylib AFinxAyBφf:ABxA[˙fx/y]˙φf:Aontoranf
14 fofi AFinf:AontoranfranfFin
15 9 13 14 syl2anc AFinxAyBφf:ABxA[˙fx/y]˙φranfFin
16 frn f:ABranfB
17 16 ad2antrl AFinxAyBφf:ABxA[˙fx/y]˙φranfB
18 fnfvelrn fFnAxAfxranf
19 10 18 sylan f:ABxAfxranf
20 rspesbca fxranf[˙fx/y]˙φyranfφ
21 20 ex fxranf[˙fx/y]˙φyranfφ
22 19 21 syl f:ABxA[˙fx/y]˙φyranfφ
23 22 ralimdva f:ABxA[˙fx/y]˙φxAyranfφ
24 23 imp f:ABxA[˙fx/y]˙φxAyranfφ
25 24 adantl AFinxAyBφf:ABxA[˙fx/y]˙φxAyranfφ
26 simpr AFinxAyBφf:ABxA[˙fx/y]˙φwAwA
27 simprr AFinxAyBφf:ABxA[˙fx/y]˙φxA[˙fx/y]˙φ
28 nfv w[˙fx/y]˙φ
29 nfsbc1v x[˙w/x]˙[˙fw/y]˙φ
30 fveq2 x=wfx=fw
31 30 sbceq1d x=w[˙fx/y]˙φ[˙fw/y]˙φ
32 sbceq1a x=w[˙fw/y]˙φ[˙w/x]˙[˙fw/y]˙φ
33 31 32 bitrd x=w[˙fx/y]˙φ[˙w/x]˙[˙fw/y]˙φ
34 28 29 33 cbvralw xA[˙fx/y]˙φwA[˙w/x]˙[˙fw/y]˙φ
35 27 34 sylib AFinxAyBφf:ABxA[˙fx/y]˙φwA[˙w/x]˙[˙fw/y]˙φ
36 35 r19.21bi AFinxAyBφf:ABxA[˙fx/y]˙φwA[˙w/x]˙[˙fw/y]˙φ
37 rspesbca wA[˙w/x]˙[˙fw/y]˙φxA[˙fw/y]˙φ
38 26 36 37 syl2anc AFinxAyBφf:ABxA[˙fx/y]˙φwAxA[˙fw/y]˙φ
39 38 ralrimiva AFinxAyBφf:ABxA[˙fx/y]˙φwAxA[˙fw/y]˙φ
40 dfsbcq z=fw[˙z/y]˙φ[˙fw/y]˙φ
41 40 rexbidv z=fwxA[˙z/y]˙φxA[˙fw/y]˙φ
42 41 ralrn fFnAzranfxA[˙z/y]˙φwAxA[˙fw/y]˙φ
43 11 42 syl AFinxAyBφf:ABxA[˙fx/y]˙φzranfxA[˙z/y]˙φwAxA[˙fw/y]˙φ
44 39 43 mpbird AFinxAyBφf:ABxA[˙fx/y]˙φzranfxA[˙z/y]˙φ
45 nfv zxAφ
46 nfcv _yA
47 46 2 nfrexw yxA[˙z/y]˙φ
48 3 rexbidv y=zxAφxA[˙z/y]˙φ
49 45 47 48 cbvralw yranfxAφzranfxA[˙z/y]˙φ
50 44 49 sylibr AFinxAyBφf:ABxA[˙fx/y]˙φyranfxAφ
51 sseq1 c=ranfcBranfB
52 rexeq c=ranfycφyranfφ
53 52 ralbidv c=ranfxAycφxAyranfφ
54 raleq c=ranfycxAφyranfxAφ
55 51 53 54 3anbi123d c=ranfcBxAycφycxAφranfBxAyranfφyranfxAφ
56 55 rspcev ranfFinranfBxAyranfφyranfxAφcFincBxAycφycxAφ
57 15 17 25 50 56 syl13anc AFinxAyBφf:ABxA[˙fx/y]˙φcFincBxAycφycxAφ
58 8 57 exlimddv AFinxAyBφcFincBxAycφycxAφ
59 58 3adant2 AFinBMxAyBφcFincBxAycφycxAφ