Metamath Proof Explorer


Theorem fiun

Description: The union of a chain (with respect to inclusion) of functions is a function. Analogous to f1iun . (Contributed by AV, 6-Oct-2023)

Ref Expression
Hypotheses fiun.1 ( 𝑥 = 𝑦𝐵 = 𝐶 )
fiun.2 𝐵 ∈ V
Assertion fiun ( ∀ 𝑥𝐴 ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) → 𝑥𝐴 𝐵 : 𝑥𝐴 𝐷𝑆 )

Proof

Step Hyp Ref Expression
1 fiun.1 ( 𝑥 = 𝑦𝐵 = 𝐶 )
2 fiun.2 𝐵 ∈ V
3 vex 𝑢 ∈ V
4 eqeq1 ( 𝑧 = 𝑢 → ( 𝑧 = 𝐵𝑢 = 𝐵 ) )
5 4 rexbidv ( 𝑧 = 𝑢 → ( ∃ 𝑥𝐴 𝑧 = 𝐵 ↔ ∃ 𝑥𝐴 𝑢 = 𝐵 ) )
6 3 5 elab ( 𝑢 ∈ { 𝑧 ∣ ∃ 𝑥𝐴 𝑧 = 𝐵 } ↔ ∃ 𝑥𝐴 𝑢 = 𝐵 )
7 r19.29 ( ( ∀ 𝑥𝐴 ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) ∧ ∃ 𝑥𝐴 𝑢 = 𝐵 ) → ∃ 𝑥𝐴 ( ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) ∧ 𝑢 = 𝐵 ) )
8 nfv 𝑥 Fun 𝑢
9 nfre1 𝑥𝑥𝐴 𝑧 = 𝐵
10 9 nfab 𝑥 { 𝑧 ∣ ∃ 𝑥𝐴 𝑧 = 𝐵 }
11 nfv 𝑥 ( 𝑢𝑣𝑣𝑢 )
12 10 11 nfralw 𝑥𝑣 ∈ { 𝑧 ∣ ∃ 𝑥𝐴 𝑧 = 𝐵 } ( 𝑢𝑣𝑣𝑢 )
13 8 12 nfan 𝑥 ( Fun 𝑢 ∧ ∀ 𝑣 ∈ { 𝑧 ∣ ∃ 𝑥𝐴 𝑧 = 𝐵 } ( 𝑢𝑣𝑣𝑢 ) )
14 ffun ( 𝐵 : 𝐷𝑆 → Fun 𝐵 )
15 funeq ( 𝑢 = 𝐵 → ( Fun 𝑢 ↔ Fun 𝐵 ) )
16 bianir ( ( Fun 𝐵 ∧ ( Fun 𝑢 ↔ Fun 𝐵 ) ) → Fun 𝑢 )
17 14 15 16 syl2an ( ( 𝐵 : 𝐷𝑆𝑢 = 𝐵 ) → Fun 𝑢 )
18 17 adantlr ( ( ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) ∧ 𝑢 = 𝐵 ) → Fun 𝑢 )
19 1 fiunlem ( ( ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) ∧ 𝑢 = 𝐵 ) → ∀ 𝑣 ∈ { 𝑧 ∣ ∃ 𝑥𝐴 𝑧 = 𝐵 } ( 𝑢𝑣𝑣𝑢 ) )
20 18 19 jca ( ( ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) ∧ 𝑢 = 𝐵 ) → ( Fun 𝑢 ∧ ∀ 𝑣 ∈ { 𝑧 ∣ ∃ 𝑥𝐴 𝑧 = 𝐵 } ( 𝑢𝑣𝑣𝑢 ) ) )
21 20 a1i ( 𝑥𝐴 → ( ( ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) ∧ 𝑢 = 𝐵 ) → ( Fun 𝑢 ∧ ∀ 𝑣 ∈ { 𝑧 ∣ ∃ 𝑥𝐴 𝑧 = 𝐵 } ( 𝑢𝑣𝑣𝑢 ) ) ) )
22 13 21 rexlimi ( ∃ 𝑥𝐴 ( ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) ∧ 𝑢 = 𝐵 ) → ( Fun 𝑢 ∧ ∀ 𝑣 ∈ { 𝑧 ∣ ∃ 𝑥𝐴 𝑧 = 𝐵 } ( 𝑢𝑣𝑣𝑢 ) ) )
23 7 22 syl ( ( ∀ 𝑥𝐴 ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) ∧ ∃ 𝑥𝐴 𝑢 = 𝐵 ) → ( Fun 𝑢 ∧ ∀ 𝑣 ∈ { 𝑧 ∣ ∃ 𝑥𝐴 𝑧 = 𝐵 } ( 𝑢𝑣𝑣𝑢 ) ) )
24 6 23 sylan2b ( ( ∀ 𝑥𝐴 ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) ∧ 𝑢 ∈ { 𝑧 ∣ ∃ 𝑥𝐴 𝑧 = 𝐵 } ) → ( Fun 𝑢 ∧ ∀ 𝑣 ∈ { 𝑧 ∣ ∃ 𝑥𝐴 𝑧 = 𝐵 } ( 𝑢𝑣𝑣𝑢 ) ) )
25 24 ralrimiva ( ∀ 𝑥𝐴 ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) → ∀ 𝑢 ∈ { 𝑧 ∣ ∃ 𝑥𝐴 𝑧 = 𝐵 } ( Fun 𝑢 ∧ ∀ 𝑣 ∈ { 𝑧 ∣ ∃ 𝑥𝐴 𝑧 = 𝐵 } ( 𝑢𝑣𝑣𝑢 ) ) )
26 fununi ( ∀ 𝑢 ∈ { 𝑧 ∣ ∃ 𝑥𝐴 𝑧 = 𝐵 } ( Fun 𝑢 ∧ ∀ 𝑣 ∈ { 𝑧 ∣ ∃ 𝑥𝐴 𝑧 = 𝐵 } ( 𝑢𝑣𝑣𝑢 ) ) → Fun { 𝑧 ∣ ∃ 𝑥𝐴 𝑧 = 𝐵 } )
27 25 26 syl ( ∀ 𝑥𝐴 ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) → Fun { 𝑧 ∣ ∃ 𝑥𝐴 𝑧 = 𝐵 } )
28 2 dfiun2 𝑥𝐴 𝐵 = { 𝑧 ∣ ∃ 𝑥𝐴 𝑧 = 𝐵 }
29 28 funeqi ( Fun 𝑥𝐴 𝐵 ↔ Fun { 𝑧 ∣ ∃ 𝑥𝐴 𝑧 = 𝐵 } )
30 27 29 sylibr ( ∀ 𝑥𝐴 ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) → Fun 𝑥𝐴 𝐵 )
31 3 eldm2 ( 𝑢 ∈ dom 𝐵 ↔ ∃ 𝑣𝑢 , 𝑣 ⟩ ∈ 𝐵 )
32 fdm ( 𝐵 : 𝐷𝑆 → dom 𝐵 = 𝐷 )
33 32 eleq2d ( 𝐵 : 𝐷𝑆 → ( 𝑢 ∈ dom 𝐵𝑢𝐷 ) )
34 31 33 bitr3id ( 𝐵 : 𝐷𝑆 → ( ∃ 𝑣𝑢 , 𝑣 ⟩ ∈ 𝐵𝑢𝐷 ) )
35 34 adantr ( ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) → ( ∃ 𝑣𝑢 , 𝑣 ⟩ ∈ 𝐵𝑢𝐷 ) )
36 35 ralrexbid ( ∀ 𝑥𝐴 ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) → ( ∃ 𝑥𝐴𝑣𝑢 , 𝑣 ⟩ ∈ 𝐵 ↔ ∃ 𝑥𝐴 𝑢𝐷 ) )
37 eliun ( ⟨ 𝑢 , 𝑣 ⟩ ∈ 𝑥𝐴 𝐵 ↔ ∃ 𝑥𝐴𝑢 , 𝑣 ⟩ ∈ 𝐵 )
38 37 exbii ( ∃ 𝑣𝑢 , 𝑣 ⟩ ∈ 𝑥𝐴 𝐵 ↔ ∃ 𝑣𝑥𝐴𝑢 , 𝑣 ⟩ ∈ 𝐵 )
39 3 eldm2 ( 𝑢 ∈ dom 𝑥𝐴 𝐵 ↔ ∃ 𝑣𝑢 , 𝑣 ⟩ ∈ 𝑥𝐴 𝐵 )
40 rexcom4 ( ∃ 𝑥𝐴𝑣𝑢 , 𝑣 ⟩ ∈ 𝐵 ↔ ∃ 𝑣𝑥𝐴𝑢 , 𝑣 ⟩ ∈ 𝐵 )
41 38 39 40 3bitr4i ( 𝑢 ∈ dom 𝑥𝐴 𝐵 ↔ ∃ 𝑥𝐴𝑣𝑢 , 𝑣 ⟩ ∈ 𝐵 )
42 eliun ( 𝑢 𝑥𝐴 𝐷 ↔ ∃ 𝑥𝐴 𝑢𝐷 )
43 36 41 42 3bitr4g ( ∀ 𝑥𝐴 ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) → ( 𝑢 ∈ dom 𝑥𝐴 𝐵𝑢 𝑥𝐴 𝐷 ) )
44 43 eqrdv ( ∀ 𝑥𝐴 ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) → dom 𝑥𝐴 𝐵 = 𝑥𝐴 𝐷 )
45 df-fn ( 𝑥𝐴 𝐵 Fn 𝑥𝐴 𝐷 ↔ ( Fun 𝑥𝐴 𝐵 ∧ dom 𝑥𝐴 𝐵 = 𝑥𝐴 𝐷 ) )
46 30 44 45 sylanbrc ( ∀ 𝑥𝐴 ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) → 𝑥𝐴 𝐵 Fn 𝑥𝐴 𝐷 )
47 rniun ran 𝑥𝐴 𝐵 = 𝑥𝐴 ran 𝐵
48 frn ( 𝐵 : 𝐷𝑆 → ran 𝐵𝑆 )
49 48 adantr ( ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) → ran 𝐵𝑆 )
50 49 ralimi ( ∀ 𝑥𝐴 ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) → ∀ 𝑥𝐴 ran 𝐵𝑆 )
51 iunss ( 𝑥𝐴 ran 𝐵𝑆 ↔ ∀ 𝑥𝐴 ran 𝐵𝑆 )
52 50 51 sylibr ( ∀ 𝑥𝐴 ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) → 𝑥𝐴 ran 𝐵𝑆 )
53 47 52 eqsstrid ( ∀ 𝑥𝐴 ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) → ran 𝑥𝐴 𝐵𝑆 )
54 df-f ( 𝑥𝐴 𝐵 : 𝑥𝐴 𝐷𝑆 ↔ ( 𝑥𝐴 𝐵 Fn 𝑥𝐴 𝐷 ∧ ran 𝑥𝐴 𝐵𝑆 ) )
55 46 53 54 sylanbrc ( ∀ 𝑥𝐴 ( 𝐵 : 𝐷𝑆 ∧ ∀ 𝑦𝐴 ( 𝐵𝐶𝐶𝐵 ) ) → 𝑥𝐴 𝐵 : 𝑥𝐴 𝐷𝑆 )