Metamath Proof Explorer


Theorem elfm2

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

Ref Expression
Hypothesis elfm2.l 𝐿 = ( 𝑌 filGen 𝐵 )
Assertion elfm2 ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) → ( 𝐴 ∈ ( ( 𝑋 FilMap 𝐹 ) ‘ 𝐵 ) ↔ ( 𝐴𝑋 ∧ ∃ 𝑥𝐿 ( 𝐹𝑥 ) ⊆ 𝐴 ) ) )

Proof

Step Hyp Ref Expression
1 elfm2.l 𝐿 = ( 𝑌 filGen 𝐵 )
2 elfm ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) → ( 𝐴 ∈ ( ( 𝑋 FilMap 𝐹 ) ‘ 𝐵 ) ↔ ( 𝐴𝑋 ∧ ∃ 𝑦𝐵 ( 𝐹𝑦 ) ⊆ 𝐴 ) ) )
3 ssfg ( 𝐵 ∈ ( fBas ‘ 𝑌 ) → 𝐵 ⊆ ( 𝑌 filGen 𝐵 ) )
4 3 1 sseqtrrdi ( 𝐵 ∈ ( fBas ‘ 𝑌 ) → 𝐵𝐿 )
5 4 sselda ( ( 𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝑦𝐵 ) → 𝑦𝐿 )
6 5 adantrr ( ( 𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ ( 𝑦𝐵 ∧ ( 𝐹𝑦 ) ⊆ 𝐴 ) ) → 𝑦𝐿 )
7 6 3ad2antl2 ( ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) ∧ ( 𝑦𝐵 ∧ ( 𝐹𝑦 ) ⊆ 𝐴 ) ) → 𝑦𝐿 )
8 simprr ( ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) ∧ ( 𝑦𝐵 ∧ ( 𝐹𝑦 ) ⊆ 𝐴 ) ) → ( 𝐹𝑦 ) ⊆ 𝐴 )
9 imaeq2 ( 𝑥 = 𝑦 → ( 𝐹𝑥 ) = ( 𝐹𝑦 ) )
10 9 sseq1d ( 𝑥 = 𝑦 → ( ( 𝐹𝑥 ) ⊆ 𝐴 ↔ ( 𝐹𝑦 ) ⊆ 𝐴 ) )
11 10 rspcev ( ( 𝑦𝐿 ∧ ( 𝐹𝑦 ) ⊆ 𝐴 ) → ∃ 𝑥𝐿 ( 𝐹𝑥 ) ⊆ 𝐴 )
12 7 8 11 syl2anc ( ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) ∧ ( 𝑦𝐵 ∧ ( 𝐹𝑦 ) ⊆ 𝐴 ) ) → ∃ 𝑥𝐿 ( 𝐹𝑥 ) ⊆ 𝐴 )
13 12 rexlimdvaa ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) → ( ∃ 𝑦𝐵 ( 𝐹𝑦 ) ⊆ 𝐴 → ∃ 𝑥𝐿 ( 𝐹𝑥 ) ⊆ 𝐴 ) )
14 1 eleq2i ( 𝑥𝐿𝑥 ∈ ( 𝑌 filGen 𝐵 ) )
15 elfg ( 𝐵 ∈ ( fBas ‘ 𝑌 ) → ( 𝑥 ∈ ( 𝑌 filGen 𝐵 ) ↔ ( 𝑥𝑌 ∧ ∃ 𝑦𝐵 𝑦𝑥 ) ) )
16 14 15 syl5bb ( 𝐵 ∈ ( fBas ‘ 𝑌 ) → ( 𝑥𝐿 ↔ ( 𝑥𝑌 ∧ ∃ 𝑦𝐵 𝑦𝑥 ) ) )
17 16 3ad2ant2 ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) → ( 𝑥𝐿 ↔ ( 𝑥𝑌 ∧ ∃ 𝑦𝐵 𝑦𝑥 ) ) )
18 imass2 ( 𝑦𝑥 → ( 𝐹𝑦 ) ⊆ ( 𝐹𝑥 ) )
19 sstr2 ( ( 𝐹𝑦 ) ⊆ ( 𝐹𝑥 ) → ( ( 𝐹𝑥 ) ⊆ 𝐴 → ( 𝐹𝑦 ) ⊆ 𝐴 ) )
20 19 com12 ( ( 𝐹𝑥 ) ⊆ 𝐴 → ( ( 𝐹𝑦 ) ⊆ ( 𝐹𝑥 ) → ( 𝐹𝑦 ) ⊆ 𝐴 ) )
21 20 ad2antll ( ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) ∧ ( 𝑥𝑌 ∧ ( 𝐹𝑥 ) ⊆ 𝐴 ) ) → ( ( 𝐹𝑦 ) ⊆ ( 𝐹𝑥 ) → ( 𝐹𝑦 ) ⊆ 𝐴 ) )
22 18 21 syl5 ( ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) ∧ ( 𝑥𝑌 ∧ ( 𝐹𝑥 ) ⊆ 𝐴 ) ) → ( 𝑦𝑥 → ( 𝐹𝑦 ) ⊆ 𝐴 ) )
23 22 reximdv ( ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) ∧ ( 𝑥𝑌 ∧ ( 𝐹𝑥 ) ⊆ 𝐴 ) ) → ( ∃ 𝑦𝐵 𝑦𝑥 → ∃ 𝑦𝐵 ( 𝐹𝑦 ) ⊆ 𝐴 ) )
24 23 expr ( ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) ∧ 𝑥𝑌 ) → ( ( 𝐹𝑥 ) ⊆ 𝐴 → ( ∃ 𝑦𝐵 𝑦𝑥 → ∃ 𝑦𝐵 ( 𝐹𝑦 ) ⊆ 𝐴 ) ) )
25 24 com23 ( ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) ∧ 𝑥𝑌 ) → ( ∃ 𝑦𝐵 𝑦𝑥 → ( ( 𝐹𝑥 ) ⊆ 𝐴 → ∃ 𝑦𝐵 ( 𝐹𝑦 ) ⊆ 𝐴 ) ) )
26 25 expimpd ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) → ( ( 𝑥𝑌 ∧ ∃ 𝑦𝐵 𝑦𝑥 ) → ( ( 𝐹𝑥 ) ⊆ 𝐴 → ∃ 𝑦𝐵 ( 𝐹𝑦 ) ⊆ 𝐴 ) ) )
27 17 26 sylbid ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) → ( 𝑥𝐿 → ( ( 𝐹𝑥 ) ⊆ 𝐴 → ∃ 𝑦𝐵 ( 𝐹𝑦 ) ⊆ 𝐴 ) ) )
28 27 rexlimdv ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) → ( ∃ 𝑥𝐿 ( 𝐹𝑥 ) ⊆ 𝐴 → ∃ 𝑦𝐵 ( 𝐹𝑦 ) ⊆ 𝐴 ) )
29 13 28 impbid ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) → ( ∃ 𝑦𝐵 ( 𝐹𝑦 ) ⊆ 𝐴 ↔ ∃ 𝑥𝐿 ( 𝐹𝑥 ) ⊆ 𝐴 ) )
30 29 anbi2d ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) → ( ( 𝐴𝑋 ∧ ∃ 𝑦𝐵 ( 𝐹𝑦 ) ⊆ 𝐴 ) ↔ ( 𝐴𝑋 ∧ ∃ 𝑥𝐿 ( 𝐹𝑥 ) ⊆ 𝐴 ) ) )
31 2 30 bitrd ( ( 𝑋𝐶𝐵 ∈ ( fBas ‘ 𝑌 ) ∧ 𝐹 : 𝑌𝑋 ) → ( 𝐴 ∈ ( ( 𝑋 FilMap 𝐹 ) ‘ 𝐵 ) ↔ ( 𝐴𝑋 ∧ ∃ 𝑥𝐿 ( 𝐹𝑥 ) ⊆ 𝐴 ) ) )