Metamath Proof Explorer


Theorem elfm

Description: An element of a mapping filter. (Contributed by Jeff Hankins, 8-Sep-2009) (Revised by Stefan O'Rear, 6-Aug-2015)

Ref Expression
Assertion elfm ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) → ( 𝐴 ∈ ( ( 𝑋 FilMap 𝐹 ) ‘ 𝐵 ) ↔ ( 𝐴𝑋 ∧ ∃ 𝑥𝐵 ( 𝐹𝑥 ) ⊆ 𝐴 ) ) )

Proof

Step Hyp Ref Expression
1 fmval ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) → ( ( 𝑋 FilMap 𝐹 ) ‘ 𝐵 ) = ( 𝑋 filGen ran ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) ) )
2 1 eleq2d ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) → ( 𝐴 ∈ ( ( 𝑋 FilMap 𝐹 ) ‘ 𝐵 ) ↔ 𝐴 ∈ ( 𝑋 filGen ran ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) ) ) )
3 eqid ran ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) = ran ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) )
4 3 fbasrn ( ( 𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋𝑋𝐶 ) → ran ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) ∈ ( fBas ‘ 𝑋 ) )
5 4 3comr ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) → ran ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) ∈ ( fBas ‘ 𝑋 ) )
6 elfg ( ran ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) ∈ ( fBas ‘ 𝑋 ) → ( 𝐴 ∈ ( 𝑋 filGen ran ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) ) ↔ ( 𝐴𝑋 ∧ ∃ 𝑦 ∈ ran ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) 𝑦𝐴 ) ) )
7 5 6 syl ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) → ( 𝐴 ∈ ( 𝑋 filGen ran ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) ) ↔ ( 𝐴𝑋 ∧ ∃ 𝑦 ∈ ran ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) 𝑦𝐴 ) ) )
8 simpr ( ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) ∧ 𝑥𝐵 ) → 𝑥𝐵 )
9 eqid ( 𝐹𝑥 ) = ( 𝐹𝑥 )
10 imaeq2 ( 𝑡 = 𝑥 → ( 𝐹𝑡 ) = ( 𝐹𝑥 ) )
11 10 rspceeqv ( ( 𝑥𝐵 ∧ ( 𝐹𝑥 ) = ( 𝐹𝑥 ) ) → ∃ 𝑡𝐵 ( 𝐹𝑥 ) = ( 𝐹𝑡 ) )
12 8 9 11 sylancl ( ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) ∧ 𝑥𝐵 ) → ∃ 𝑡𝐵 ( 𝐹𝑥 ) = ( 𝐹𝑡 ) )
13 simpl1 ( ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) ∧ 𝑥𝐵 ) → 𝑋𝐶 )
14 imassrn ( 𝐹𝑥 ) ⊆ ran 𝐹
15 frn ( 𝐹 : 𝑌𝑋 → ran 𝐹𝑋 )
16 15 3ad2ant3 ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) → ran 𝐹𝑋 )
17 16 adantr ( ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) ∧ 𝑥𝐵 ) → ran 𝐹𝑋 )
18 14 17 sstrid ( ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) ∧ 𝑥𝐵 ) → ( 𝐹𝑥 ) ⊆ 𝑋 )
19 13 18 ssexd ( ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) ∧ 𝑥𝐵 ) → ( 𝐹𝑥 ) ∈ V )
20 eqid ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) = ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) )
21 20 elrnmpt ( ( 𝐹𝑥 ) ∈ V → ( ( 𝐹𝑥 ) ∈ ran ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) ↔ ∃ 𝑡𝐵 ( 𝐹𝑥 ) = ( 𝐹𝑡 ) ) )
22 19 21 syl ( ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) ∧ 𝑥𝐵 ) → ( ( 𝐹𝑥 ) ∈ ran ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) ↔ ∃ 𝑡𝐵 ( 𝐹𝑥 ) = ( 𝐹𝑡 ) ) )
23 12 22 mpbird ( ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) ∧ 𝑥𝐵 ) → ( 𝐹𝑥 ) ∈ ran ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) )
24 10 cbvmptv ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) = ( 𝑥𝐵 ↦ ( 𝐹𝑥 ) )
25 24 elrnmpt ( 𝑦 ∈ ran ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) → ( 𝑦 ∈ ran ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) ↔ ∃ 𝑥𝐵 𝑦 = ( 𝐹𝑥 ) ) )
26 25 ibi ( 𝑦 ∈ ran ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) → ∃ 𝑥𝐵 𝑦 = ( 𝐹𝑥 ) )
27 26 adantl ( ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) ∧ 𝑦 ∈ ran ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) ) → ∃ 𝑥𝐵 𝑦 = ( 𝐹𝑥 ) )
28 simpr ( ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) ∧ 𝑦 = ( 𝐹𝑥 ) ) → 𝑦 = ( 𝐹𝑥 ) )
29 28 sseq1d ( ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) ∧ 𝑦 = ( 𝐹𝑥 ) ) → ( 𝑦𝐴 ↔ ( 𝐹𝑥 ) ⊆ 𝐴 ) )
30 23 27 29 rexxfrd ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) → ( ∃ 𝑦 ∈ ran ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) 𝑦𝐴 ↔ ∃ 𝑥𝐵 ( 𝐹𝑥 ) ⊆ 𝐴 ) )
31 30 anbi2d ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) → ( ( 𝐴𝑋 ∧ ∃ 𝑦 ∈ ran ( 𝑡𝐵 ↦ ( 𝐹𝑡 ) ) 𝑦𝐴 ) ↔ ( 𝐴𝑋 ∧ ∃ 𝑥𝐵 ( 𝐹𝑥 ) ⊆ 𝐴 ) ) )
32 2 7 31 3bitrd ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) → ( 𝐴 ∈ ( ( 𝑋 FilMap 𝐹 ) ‘ 𝐵 ) ↔ ( 𝐴𝑋 ∧ ∃ 𝑥𝐵 ( 𝐹𝑥 ) ⊆ 𝐴 ) ) )