MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  elfm3 Structured version   Visualization version   GIF version

Theorem elfm3 24324
Description: An alternate formulation of elementhood in a mapping filter that requires 𝐹 to be onto. (Contributed by Jeff Hankins, 1-Oct-2009.) (Revised by Stefan O'Rear, 6-Aug-2015.)
Hypothesis
Ref Expression
elfm2.l 𝐿 = (𝑌filGen𝐵)
Assertion
Ref Expression
elfm3 ((𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) → (𝐴 ∈ ((𝑋 FilMap 𝐹)‘𝐵) ↔ ∃𝑥 ∈ 𝐿 𝐴 = (𝐹 “ 𝑥)))
Distinct variable groups:   𝑥,𝐵   𝑥,𝐹   𝑥,𝑋   𝑥,𝐴   𝑥,𝐿   𝑥,𝑌

Proof of Theorem elfm3
Dummy variables 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 foima 6831 . . . 4 (𝐹:𝑌⟶onto𝑋 → (𝐹 “ 𝑌) = 𝑋)
21adantl 487 . . 3 ((𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) → (𝐹 “ 𝑌) = 𝑋)
3 fofun 6827 . . . 4 (𝐹:𝑌⟶onto𝑋 → Fun 𝐹)
4 elfvdm 6950 . . . 4 (𝐵 ∈ (fBas‘𝑌) → 𝑌 ∈ dom fBas)
5 funimaexg 6656 . . . 4 ((Fun 𝐹 ∧ 𝑌 ∈ dom fBas) → (𝐹 “ 𝑌) ∈ V)
63, 4, 5syl2anr 609 . . 3 ((𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) → (𝐹 “ 𝑌) ∈ V)
72, 6eqeltrrd 2865 . 2 ((𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) → 𝑋 ∈ V)
8 fof 6826 . . . . 5 (𝐹:𝑌⟶onto𝑋 → 𝐹:𝑌⟶𝑋)
9 elfm2.l . . . . . 6 𝐿 = (𝑌filGen𝐵)
109elfm2 24322 . . . . 5 ((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶𝑋) → (𝐴 ∈ ((𝑋 FilMap 𝐹)‘𝐵) ↔ (𝐴 ⊆ 𝑋 ∧ ∃𝑦 ∈ 𝐿 (𝐹 “ 𝑦) ⊆ 𝐴)))
118, 10syl3an3 1183 . . . 4 ((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) → (𝐴 ∈ ((𝑋 FilMap 𝐹)‘𝐵) ↔ (𝐴 ⊆ 𝑋 ∧ ∃𝑦 ∈ 𝐿 (𝐹 “ 𝑦) ⊆ 𝐴)))
12 fgcl 24252 . . . . . . . . . . . 12 (𝐵 ∈ (fBas‘𝑌) → (𝑌filGen𝐵) ∈ (Fil‘𝑌))
139, 12eqeltrid 2868 . . . . . . . . . . 11 (𝐵 ∈ (fBas‘𝑌) → 𝐿 ∈ (Fil‘𝑌))
14133ad2ant2 1152 . . . . . . . . . 10 ((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) → 𝐿 ∈ (Fil‘𝑌))
1514ad2antrr 739 . . . . . . . . 9 ((((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ 𝐴 ⊆ 𝑋) ∧ (𝑦 ∈ 𝐿 ∧ (𝐹 “ 𝑦) ⊆ 𝐴)) → 𝐿 ∈ (Fil‘𝑌))
16 simprl 783 . . . . . . . . 9 ((((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ 𝐴 ⊆ 𝑋) ∧ (𝑦 ∈ 𝐿 ∧ (𝐹 “ 𝑦) ⊆ 𝐴)) → 𝑦 ∈ 𝐿)
17 cnvimass 6217 . . . . . . . . . . . 12 (◡𝐹 “ 𝐴) ⊆ dom 𝐹
18 fofn 6828 . . . . . . . . . . . . 13 (𝐹:𝑌⟶onto𝑋 → 𝐹 Fn 𝑌)
1918fndmd 6674 . . . . . . . . . . . 12 (𝐹:𝑌⟶onto𝑋 → dom 𝐹 = 𝑌)
2017, 19sseqtrid 3955 . . . . . . . . . . 11 (𝐹:𝑌⟶onto𝑋 → (◡𝐹 “ 𝐴) ⊆ 𝑌)
21203ad2ant3 1153 . . . . . . . . . 10 ((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) → (◡𝐹 “ 𝐴) ⊆ 𝑌)
2221ad2antrr 739 . . . . . . . . 9 ((((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ 𝐴 ⊆ 𝑋) ∧ (𝑦 ∈ 𝐿 ∧ (𝐹 “ 𝑦) ⊆ 𝐴)) → (◡𝐹 “ 𝐴) ⊆ 𝑌)
2333ad2ant3 1153 . . . . . . . . . . . . 13 ((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) → Fun 𝐹)
2423ad2antrr 739 . . . . . . . . . . . 12 ((((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ 𝐴 ⊆ 𝑋) ∧ 𝑦 ∈ 𝐿) → Fun 𝐹)
259eleq2i 2856 . . . . . . . . . . . . . . 15 (𝑦 ∈ 𝐿 ↔ 𝑦 ∈ (𝑌filGen𝐵))
26 elfg 24245 . . . . . . . . . . . . . . . . 17 (𝐵 ∈ (fBas‘𝑌) → (𝑦 ∈ (𝑌filGen𝐵) ↔ (𝑦 ⊆ 𝑌 ∧ ∃𝑧 ∈ 𝐵 𝑧 ⊆ 𝑦)))
27263ad2ant2 1152 . . . . . . . . . . . . . . . 16 ((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) → (𝑦 ∈ (𝑌filGen𝐵) ↔ (𝑦 ⊆ 𝑌 ∧ ∃𝑧 ∈ 𝐵 𝑧 ⊆ 𝑦)))
2827adantr 486 . . . . . . . . . . . . . . 15 (((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ 𝐴 ⊆ 𝑋) → (𝑦 ∈ (𝑌filGen𝐵) ↔ (𝑦 ⊆ 𝑌 ∧ ∃𝑧 ∈ 𝐵 𝑧 ⊆ 𝑦)))
2925, 28bitrid 286 . . . . . . . . . . . . . 14 (((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ 𝐴 ⊆ 𝑋) → (𝑦 ∈ 𝐿 ↔ (𝑦 ⊆ 𝑌 ∧ ∃𝑧 ∈ 𝐵 𝑧 ⊆ 𝑦)))
3029simprbda 504 . . . . . . . . . . . . 13 ((((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ 𝐴 ⊆ 𝑋) ∧ 𝑦 ∈ 𝐿) → 𝑦 ⊆ 𝑌)
31 sseq2 3939 . . . . . . . . . . . . . . . . 17 (dom 𝐹 = 𝑌 → (𝑦 ⊆ dom 𝐹 ↔ 𝑦 ⊆ 𝑌))
3231biimpar 483 . . . . . . . . . . . . . . . 16 ((dom 𝐹 = 𝑌 ∧ 𝑦 ⊆ 𝑌) → 𝑦 ⊆ dom 𝐹)
3319, 32sylan 592 . . . . . . . . . . . . . . 15 ((𝐹:𝑌⟶onto𝑋 ∧ 𝑦 ⊆ 𝑌) → 𝑦 ⊆ dom 𝐹)
34333ad2antl3 1206 . . . . . . . . . . . . . 14 (((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ 𝑦 ⊆ 𝑌) → 𝑦 ⊆ dom 𝐹)
3534adantlr 728 . . . . . . . . . . . . 13 ((((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ 𝐴 ⊆ 𝑋) ∧ 𝑦 ⊆ 𝑌) → 𝑦 ⊆ dom 𝐹)
3630, 35syldan 603 . . . . . . . . . . . 12 ((((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ 𝐴 ⊆ 𝑋) ∧ 𝑦 ∈ 𝐿) → 𝑦 ⊆ dom 𝐹)
37 funimass3 7084 . . . . . . . . . . . 12 ((Fun 𝐹 ∧ 𝑦 ⊆ dom 𝐹) → ((𝐹 “ 𝑦) ⊆ 𝐴 ↔ 𝑦 ⊆ (◡𝐹 “ 𝐴)))
3824, 36, 37syl2anc 596 . . . . . . . . . . 11 ((((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ 𝐴 ⊆ 𝑋) ∧ 𝑦 ∈ 𝐿) → ((𝐹 “ 𝑦) ⊆ 𝐴 ↔ 𝑦 ⊆ (◡𝐹 “ 𝐴)))
3938biimpd 232 . . . . . . . . . 10 ((((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ 𝐴 ⊆ 𝑋) ∧ 𝑦 ∈ 𝐿) → ((𝐹 “ 𝑦) ⊆ 𝐴 → 𝑦 ⊆ (◡𝐹 “ 𝐴)))
4039impr 460 . . . . . . . . 9 ((((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ 𝐴 ⊆ 𝑋) ∧ (𝑦 ∈ 𝐿 ∧ (𝐹 “ 𝑦) ⊆ 𝐴)) → 𝑦 ⊆ (◡𝐹 “ 𝐴))
41 filss 24227 . . . . . . . . 9 ((𝐿 ∈ (Fil‘𝑌) ∧ (𝑦 ∈ 𝐿 ∧ (◡𝐹 “ 𝐴) ⊆ 𝑌 ∧ 𝑦 ⊆ (◡𝐹 “ 𝐴))) → (◡𝐹 “ 𝐴) ∈ 𝐿)
4215, 16, 22, 40, 41syl13anc 1400 . . . . . . . 8 ((((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ 𝐴 ⊆ 𝑋) ∧ (𝑦 ∈ 𝐿 ∧ (𝐹 “ 𝑦) ⊆ 𝐴)) → (◡𝐹 “ 𝐴) ∈ 𝐿)
43 foimacnv 6872 . . . . . . . . . . 11 ((𝐹:𝑌⟶onto𝑋 ∧ 𝐴 ⊆ 𝑋) → (𝐹 “ (◡𝐹 “ 𝐴)) = 𝐴)
4443eqcomd 2769 . . . . . . . . . 10 ((𝐹:𝑌⟶onto𝑋 ∧ 𝐴 ⊆ 𝑋) → 𝐴 = (𝐹 “ (◡𝐹 “ 𝐴)))
45443ad2antl3 1206 . . . . . . . . 9 (((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ 𝐴 ⊆ 𝑋) → 𝐴 = (𝐹 “ (◡𝐹 “ 𝐴)))
4645adantr 486 . . . . . . . 8 ((((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ 𝐴 ⊆ 𝑋) ∧ (𝑦 ∈ 𝐿 ∧ (𝐹 “ 𝑦) ⊆ 𝐴)) → 𝐴 = (𝐹 “ (◡𝐹 “ 𝐴)))
47 imaeq2 6066 . . . . . . . . 9 (𝑥 = (◡𝐹 “ 𝐴) → (𝐹 “ 𝑥) = (𝐹 “ (◡𝐹 “ 𝐴)))
4847rspceeqv 3602 . . . . . . . 8 (((◡𝐹 “ 𝐴) ∈ 𝐿 ∧ 𝐴 = (𝐹 “ (◡𝐹 “ 𝐴))) → ∃𝑥 ∈ 𝐿 𝐴 = (𝐹 “ 𝑥))
4942, 46, 48syl2anc 596 . . . . . . 7 ((((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ 𝐴 ⊆ 𝑋) ∧ (𝑦 ∈ 𝐿 ∧ (𝐹 “ 𝑦) ⊆ 𝐴)) → ∃𝑥 ∈ 𝐿 𝐴 = (𝐹 “ 𝑥))
5049rexlimdvaa 3168 . . . . . 6 (((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ 𝐴 ⊆ 𝑋) → (∃𝑦 ∈ 𝐿 (𝐹 “ 𝑦) ⊆ 𝐴 → ∃𝑥 ∈ 𝐿 𝐴 = (𝐹 “ 𝑥)))
5150expimpd 459 . . . . 5 ((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) → ((𝐴 ⊆ 𝑋 ∧ ∃𝑦 ∈ 𝐿 (𝐹 “ 𝑦) ⊆ 𝐴) → ∃𝑥 ∈ 𝐿 𝐴 = (𝐹 “ 𝑥)))
52 simprr 785 . . . . . . . 8 (((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ (𝑥 ∈ 𝐿 ∧ 𝐴 = (𝐹 “ 𝑥))) → 𝐴 = (𝐹 “ 𝑥))
53 imassrn 6216 . . . . . . . . 9 (𝐹 “ 𝑥) ⊆ ran 𝐹
54 forn 6829 . . . . . . . . . . 11 (𝐹:𝑌⟶onto𝑋 → ran 𝐹 = 𝑋)
55543ad2ant3 1153 . . . . . . . . . 10 ((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) → ran 𝐹 = 𝑋)
5655adantr 486 . . . . . . . . 9 (((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ (𝑥 ∈ 𝐿 ∧ 𝐴 = (𝐹 “ 𝑥))) → ran 𝐹 = 𝑋)
5753, 56sseqtrid 3955 . . . . . . . 8 (((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ (𝑥 ∈ 𝐿 ∧ 𝐴 = (𝐹 “ 𝑥))) → (𝐹 “ 𝑥) ⊆ 𝑋)
5852, 57eqsstrd 3947 . . . . . . 7 (((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ (𝑥 ∈ 𝐿 ∧ 𝐴 = (𝐹 “ 𝑥))) → 𝐴 ⊆ 𝑋)
59 eqimss2 3972 . . . . . . . . 9 (𝐴 = (𝐹 “ 𝑥) → (𝐹 “ 𝑥) ⊆ 𝐴)
60 imaeq2 6066 . . . . . . . . . . 11 (𝑦 = 𝑥 → (𝐹 “ 𝑦) = (𝐹 “ 𝑥))
6160sseq1d 3944 . . . . . . . . . 10 (𝑦 = 𝑥 → ((𝐹 “ 𝑦) ⊆ 𝐴 ↔ (𝐹 “ 𝑥) ⊆ 𝐴))
6261rspcev 3580 . . . . . . . . 9 ((𝑥 ∈ 𝐿 ∧ (𝐹 “ 𝑥) ⊆ 𝐴) → ∃𝑦 ∈ 𝐿 (𝐹 “ 𝑦) ⊆ 𝐴)
6359, 62sylan2 605 . . . . . . . 8 ((𝑥 ∈ 𝐿 ∧ 𝐴 = (𝐹 “ 𝑥)) → ∃𝑦 ∈ 𝐿 (𝐹 “ 𝑦) ⊆ 𝐴)
6463adantl 487 . . . . . . 7 (((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ (𝑥 ∈ 𝐿 ∧ 𝐴 = (𝐹 “ 𝑥))) → ∃𝑦 ∈ 𝐿 (𝐹 “ 𝑦) ⊆ 𝐴)
6558, 64jca 521 . . . . . 6 (((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) ∧ (𝑥 ∈ 𝐿 ∧ 𝐴 = (𝐹 “ 𝑥))) → (𝐴 ⊆ 𝑋 ∧ ∃𝑦 ∈ 𝐿 (𝐹 “ 𝑦) ⊆ 𝐴))
6665rexlimdvaa 3168 . . . . 5 ((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) → (∃𝑥 ∈ 𝐿 𝐴 = (𝐹 “ 𝑥) → (𝐴 ⊆ 𝑋 ∧ ∃𝑦 ∈ 𝐿 (𝐹 “ 𝑦) ⊆ 𝐴)))
6751, 66impbid 215 . . . 4 ((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) → ((𝐴 ⊆ 𝑋 ∧ ∃𝑦 ∈ 𝐿 (𝐹 “ 𝑦) ⊆ 𝐴) ↔ ∃𝑥 ∈ 𝐿 𝐴 = (𝐹 “ 𝑥)))
6811, 67bitrd 282 . . 3 ((𝑋 ∈ V ∧ 𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) → (𝐴 ∈ ((𝑋 FilMap 𝐹)‘𝐵) ↔ ∃𝑥 ∈ 𝐿 𝐴 = (𝐹 “ 𝑥)))
69683coml 1145 . 2 ((𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋 ∧ 𝑋 ∈ V) → (𝐴 ∈ ((𝑋 FilMap 𝐹)‘𝐵) ↔ ∃𝑥 ∈ 𝐿 𝐴 = (𝐹 “ 𝑥)))
707, 69mpd3an3 1492 1 ((𝐵 ∈ (fBas‘𝑌) ∧ 𝐹:𝑌⟶onto𝑋) → (𝐴 ∈ ((𝑋 FilMap 𝐹)‘𝐵) ↔ ∃𝑥 ∈ 𝐿 𝐴 = (𝐹 “ 𝑥)))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ↔ wb 209   ∧ wa 401   ∧ w3a 1103   = wceq 1570   ∈ wcel 2147  ∃wrex 3090  Vcvv 3454   ⊆ wss 3900  ◡ccnv 5657  dom cdm 5658  ran crn 5659   “ cima 5661  Fun wfun 6560  ⟶wf 6562  ⟶ontowfo 6564  ‘cfv 6566  (class class class)co 7451  fBascfbas 21717  filGencfg 21718  Filcfil 24219   FilMap cfm 24307
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-rep 5238  ax-sep 5255  ax-nul 5266  ax-pow 5334  ax-pr 5398
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-nel 3066  df-ral 3081  df-rex 3091  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-op 4841  df-uni 4873  df-iun 4958  df-br 5109  df-opab 5174  df-mpt 5193  df-id 5553  df-xp 5664  df-rel 5665  df-cnv 5666  df-co 5667  df-dm 5668  df-rn 5669  df-res 5670  df-ima 5671  df-iota 6520  df-fun 6568  df-fn 6569  df-f 6570  df-f1 6571  df-fo 6572  df-f1o 6573  df-fv 6574  df-ov 7454  df-oprab 7455  df-mpo 7456  df-fbas 21726  df-fg 21727  df-fil 24220  df-fm 24312
This theorem is used by:  fmid  24334
  Copyright terms: Public domain W3C validator