Metamath Proof Explorer


Theorem nfunsn

Description: If the restriction of a class to a singleton is not a function, then its value is the empty set. (An artifact of our function value definition.) (Contributed by NM, 8-Aug-2010) (Proof shortened by Andrew Salmon, 22-Oct-2011)

Ref Expression
Assertion nfunsn ( ¬ Fun ( 𝐹 ↾ { 𝐴 } ) → ( 𝐹𝐴 ) = ∅ )

Proof

Step Hyp Ref Expression
1 eumo ( ∃! 𝑦 𝐴 𝐹 𝑦 → ∃* 𝑦 𝐴 𝐹 𝑦 )
2 vex 𝑦 ∈ V
3 2 brresi ( 𝑥 ( 𝐹 ↾ { 𝐴 } ) 𝑦 ↔ ( 𝑥 ∈ { 𝐴 } ∧ 𝑥 𝐹 𝑦 ) )
4 velsn ( 𝑥 ∈ { 𝐴 } ↔ 𝑥 = 𝐴 )
5 breq1 ( 𝑥 = 𝐴 → ( 𝑥 𝐹 𝑦𝐴 𝐹 𝑦 ) )
6 4 5 sylbi ( 𝑥 ∈ { 𝐴 } → ( 𝑥 𝐹 𝑦𝐴 𝐹 𝑦 ) )
7 6 biimpa ( ( 𝑥 ∈ { 𝐴 } ∧ 𝑥 𝐹 𝑦 ) → 𝐴 𝐹 𝑦 )
8 3 7 sylbi ( 𝑥 ( 𝐹 ↾ { 𝐴 } ) 𝑦𝐴 𝐹 𝑦 )
9 8 moimi ( ∃* 𝑦 𝐴 𝐹 𝑦 → ∃* 𝑦 𝑥 ( 𝐹 ↾ { 𝐴 } ) 𝑦 )
10 1 9 syl ( ∃! 𝑦 𝐴 𝐹 𝑦 → ∃* 𝑦 𝑥 ( 𝐹 ↾ { 𝐴 } ) 𝑦 )
11 tz6.12-2 ( ¬ ∃! 𝑦 𝐴 𝐹 𝑦 → ( 𝐹𝐴 ) = ∅ )
12 10 11 nsyl4 ( ¬ ( 𝐹𝐴 ) = ∅ → ∃* 𝑦 𝑥 ( 𝐹 ↾ { 𝐴 } ) 𝑦 )
13 12 alrimiv ( ¬ ( 𝐹𝐴 ) = ∅ → ∀ 𝑥 ∃* 𝑦 𝑥 ( 𝐹 ↾ { 𝐴 } ) 𝑦 )
14 relres Rel ( 𝐹 ↾ { 𝐴 } )
15 13 14 jctil ( ¬ ( 𝐹𝐴 ) = ∅ → ( Rel ( 𝐹 ↾ { 𝐴 } ) ∧ ∀ 𝑥 ∃* 𝑦 𝑥 ( 𝐹 ↾ { 𝐴 } ) 𝑦 ) )
16 dffun6 ( Fun ( 𝐹 ↾ { 𝐴 } ) ↔ ( Rel ( 𝐹 ↾ { 𝐴 } ) ∧ ∀ 𝑥 ∃* 𝑦 𝑥 ( 𝐹 ↾ { 𝐴 } ) 𝑦 ) )
17 15 16 sylibr ( ¬ ( 𝐹𝐴 ) = ∅ → Fun ( 𝐹 ↾ { 𝐴 } ) )
18 17 con1i ( ¬ Fun ( 𝐹 ↾ { 𝐴 } ) → ( 𝐹𝐴 ) = ∅ )