Metamath Proof Explorer


Theorem fsetprcnexALT

Description: First version of proof for fsetprcnex , which was much more complicated. (Contributed by AV, 14-Sep-2024) (Proof modification is discouraged.) (New usage is discouraged.)

Ref Expression
Assertion fsetprcnexALT ( ( ( 𝐴𝑉𝐴 ≠ ∅ ) ∧ 𝐵 ∉ V ) → { 𝑓𝑓 : 𝐴𝐵 } ∉ V )

Proof

Step Hyp Ref Expression
1 abanssl { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } ⊆ { 𝑓𝑓 : 𝐴𝐵 }
2 n0 ( 𝐴 ≠ ∅ ↔ ∃ 𝑦 𝑦𝐴 )
3 vex 𝑦 ∈ V
4 3 a1i ( ( 𝑦𝐴𝐴𝑉 ) → 𝑦 ∈ V )
5 fsetsnprcnex ( ( 𝑦 ∈ V ∧ 𝐵 ∉ V ) → { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } ∉ V )
6 4 5 sylan ( ( ( 𝑦𝐴𝐴𝑉 ) ∧ 𝐵 ∉ V ) → { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } ∉ V )
7 df-nel ( { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } ∉ V ↔ ¬ { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } ∈ V )
8 6 7 sylib ( ( ( 𝑦𝐴𝐴𝑉 ) ∧ 𝐵 ∉ V ) → ¬ { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } ∈ V )
9 eqid { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } = { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) }
10 eqid { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } = { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 }
11 eqid ( 𝑔 ∈ { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } ↦ ( 𝑎𝐴 ↦ ( 𝑔𝑦 ) ) ) = ( 𝑔 ∈ { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } ↦ ( 𝑎𝐴 ↦ ( 𝑔𝑦 ) ) )
12 9 10 11 cfsetsnfsetf1o ( ( 𝐴𝑉𝑦𝐴 ) → ( 𝑔 ∈ { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } ↦ ( 𝑎𝐴 ↦ ( 𝑔𝑦 ) ) ) : { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } –1-1-onto→ { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } )
13 12 ancoms ( ( 𝑦𝐴𝐴𝑉 ) → ( 𝑔 ∈ { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } ↦ ( 𝑎𝐴 ↦ ( 𝑔𝑦 ) ) ) : { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } –1-1-onto→ { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } )
14 13 adantr ( ( ( 𝑦𝐴𝐴𝑉 ) ∧ 𝐵 ∉ V ) → ( 𝑔 ∈ { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } ↦ ( 𝑎𝐴 ↦ ( 𝑔𝑦 ) ) ) : { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } –1-1-onto→ { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } )
15 f1ovv ( ( 𝑔 ∈ { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } ↦ ( 𝑎𝐴 ↦ ( 𝑔𝑦 ) ) ) : { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } –1-1-onto→ { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } → ( { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } ∈ V ↔ { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } ∈ V ) )
16 15 bicomd ( ( 𝑔 ∈ { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } ↦ ( 𝑎𝐴 ↦ ( 𝑔𝑦 ) ) ) : { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } –1-1-onto→ { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } → ( { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } ∈ V ↔ { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } ∈ V ) )
17 14 16 syl ( ( ( 𝑦𝐴𝐴𝑉 ) ∧ 𝐵 ∉ V ) → ( { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } ∈ V ↔ { 𝑓𝑓 : { 𝑦 } ⟶ 𝐵 } ∈ V ) )
18 8 17 mtbird ( ( ( 𝑦𝐴𝐴𝑉 ) ∧ 𝐵 ∉ V ) → ¬ { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } ∈ V )
19 18 exp31 ( 𝑦𝐴 → ( 𝐴𝑉 → ( 𝐵 ∉ V → ¬ { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } ∈ V ) ) )
20 19 exlimiv ( ∃ 𝑦 𝑦𝐴 → ( 𝐴𝑉 → ( 𝐵 ∉ V → ¬ { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } ∈ V ) ) )
21 2 20 sylbi ( 𝐴 ≠ ∅ → ( 𝐴𝑉 → ( 𝐵 ∉ V → ¬ { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } ∈ V ) ) )
22 21 impcom ( ( 𝐴𝑉𝐴 ≠ ∅ ) → ( 𝐵 ∉ V → ¬ { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } ∈ V ) )
23 22 imp ( ( ( 𝐴𝑉𝐴 ≠ ∅ ) ∧ 𝐵 ∉ V ) → ¬ { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } ∈ V )
24 df-nel ( { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } ∉ V ↔ ¬ { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } ∈ V )
25 23 24 sylibr ( ( ( 𝐴𝑉𝐴 ≠ ∅ ) ∧ 𝐵 ∉ V ) → { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } ∉ V )
26 prcssprc ( ( { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } ⊆ { 𝑓𝑓 : 𝐴𝐵 } ∧ { 𝑓 ∣ ( 𝑓 : 𝐴𝐵 ∧ ∃ 𝑏𝐵𝑧𝐴 ( 𝑓𝑧 ) = 𝑏 ) } ∉ V ) → { 𝑓𝑓 : 𝐴𝐵 } ∉ V )
27 1 25 26 sylancr ( ( ( 𝐴𝑉𝐴 ≠ ∅ ) ∧ 𝐵 ∉ V ) → { 𝑓𝑓 : 𝐴𝐵 } ∉ V )