Metamath Proof Explorer


Theorem fullfunfv

Description: The function value of the full function of F agrees with F . (Contributed by Scott Fenton, 17-Apr-2014) (Revised by Mario Carneiro, 19-Apr-2014)

Ref Expression
Assertion fullfunfv ( FullFun 𝐹𝐴 ) = ( 𝐹𝐴 )

Proof

Step Hyp Ref Expression
1 fveq2 ( 𝑥 = 𝐴 → ( FullFun 𝐹𝑥 ) = ( FullFun 𝐹𝐴 ) )
2 fveq2 ( 𝑥 = 𝐴 → ( 𝐹𝑥 ) = ( 𝐹𝐴 ) )
3 1 2 eqeq12d ( 𝑥 = 𝐴 → ( ( FullFun 𝐹𝑥 ) = ( 𝐹𝑥 ) ↔ ( FullFun 𝐹𝐴 ) = ( 𝐹𝐴 ) ) )
4 df-fullfun FullFun 𝐹 = ( Funpart 𝐹 ∪ ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) )
5 4 fveq1i ( FullFun 𝐹𝑥 ) = ( ( Funpart 𝐹 ∪ ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) ) ‘ 𝑥 )
6 disjdif ( dom Funpart 𝐹 ∩ ( V ∖ dom Funpart 𝐹 ) ) = ∅
7 funpartfun Fun Funpart 𝐹
8 funfn ( Fun Funpart 𝐹 ↔ Funpart 𝐹 Fn dom Funpart 𝐹 )
9 7 8 mpbi Funpart 𝐹 Fn dom Funpart 𝐹
10 0ex ∅ ∈ V
11 10 fconst ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) : ( V ∖ dom Funpart 𝐹 ) ⟶ { ∅ }
12 ffn ( ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) : ( V ∖ dom Funpart 𝐹 ) ⟶ { ∅ } → ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) Fn ( V ∖ dom Funpart 𝐹 ) )
13 11 12 ax-mp ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) Fn ( V ∖ dom Funpart 𝐹 )
14 fvun1 ( ( Funpart 𝐹 Fn dom Funpart 𝐹 ∧ ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) Fn ( V ∖ dom Funpart 𝐹 ) ∧ ( ( dom Funpart 𝐹 ∩ ( V ∖ dom Funpart 𝐹 ) ) = ∅ ∧ 𝑥 ∈ dom Funpart 𝐹 ) ) → ( ( Funpart 𝐹 ∪ ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) ) ‘ 𝑥 ) = ( Funpart 𝐹𝑥 ) )
15 9 13 14 mp3an12 ( ( ( dom Funpart 𝐹 ∩ ( V ∖ dom Funpart 𝐹 ) ) = ∅ ∧ 𝑥 ∈ dom Funpart 𝐹 ) → ( ( Funpart 𝐹 ∪ ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) ) ‘ 𝑥 ) = ( Funpart 𝐹𝑥 ) )
16 6 15 mpan ( 𝑥 ∈ dom Funpart 𝐹 → ( ( Funpart 𝐹 ∪ ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) ) ‘ 𝑥 ) = ( Funpart 𝐹𝑥 ) )
17 vex 𝑥 ∈ V
18 eldif ( 𝑥 ∈ ( V ∖ dom Funpart 𝐹 ) ↔ ( 𝑥 ∈ V ∧ ¬ 𝑥 ∈ dom Funpart 𝐹 ) )
19 17 18 mpbiran ( 𝑥 ∈ ( V ∖ dom Funpart 𝐹 ) ↔ ¬ 𝑥 ∈ dom Funpart 𝐹 )
20 fvun2 ( ( Funpart 𝐹 Fn dom Funpart 𝐹 ∧ ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) Fn ( V ∖ dom Funpart 𝐹 ) ∧ ( ( dom Funpart 𝐹 ∩ ( V ∖ dom Funpart 𝐹 ) ) = ∅ ∧ 𝑥 ∈ ( V ∖ dom Funpart 𝐹 ) ) ) → ( ( Funpart 𝐹 ∪ ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) ) ‘ 𝑥 ) = ( ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) ‘ 𝑥 ) )
21 9 13 20 mp3an12 ( ( ( dom Funpart 𝐹 ∩ ( V ∖ dom Funpart 𝐹 ) ) = ∅ ∧ 𝑥 ∈ ( V ∖ dom Funpart 𝐹 ) ) → ( ( Funpart 𝐹 ∪ ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) ) ‘ 𝑥 ) = ( ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) ‘ 𝑥 ) )
22 6 21 mpan ( 𝑥 ∈ ( V ∖ dom Funpart 𝐹 ) → ( ( Funpart 𝐹 ∪ ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) ) ‘ 𝑥 ) = ( ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) ‘ 𝑥 ) )
23 10 fvconst2 ( 𝑥 ∈ ( V ∖ dom Funpart 𝐹 ) → ( ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) ‘ 𝑥 ) = ∅ )
24 22 23 eqtrd ( 𝑥 ∈ ( V ∖ dom Funpart 𝐹 ) → ( ( Funpart 𝐹 ∪ ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) ) ‘ 𝑥 ) = ∅ )
25 19 24 sylbir ( ¬ 𝑥 ∈ dom Funpart 𝐹 → ( ( Funpart 𝐹 ∪ ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) ) ‘ 𝑥 ) = ∅ )
26 ndmfv ( ¬ 𝑥 ∈ dom Funpart 𝐹 → ( Funpart 𝐹𝑥 ) = ∅ )
27 25 26 eqtr4d ( ¬ 𝑥 ∈ dom Funpart 𝐹 → ( ( Funpart 𝐹 ∪ ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) ) ‘ 𝑥 ) = ( Funpart 𝐹𝑥 ) )
28 16 27 pm2.61i ( ( Funpart 𝐹 ∪ ( ( V ∖ dom Funpart 𝐹 ) × { ∅ } ) ) ‘ 𝑥 ) = ( Funpart 𝐹𝑥 )
29 funpartfv ( Funpart 𝐹𝑥 ) = ( 𝐹𝑥 )
30 5 28 29 3eqtri ( FullFun 𝐹𝑥 ) = ( 𝐹𝑥 )
31 3 30 vtoclg ( 𝐴 ∈ V → ( FullFun 𝐹𝐴 ) = ( 𝐹𝐴 ) )
32 fvprc ( ¬ 𝐴 ∈ V → ( FullFun 𝐹𝐴 ) = ∅ )
33 fvprc ( ¬ 𝐴 ∈ V → ( 𝐹𝐴 ) = ∅ )
34 32 33 eqtr4d ( ¬ 𝐴 ∈ V → ( FullFun 𝐹𝐴 ) = ( 𝐹𝐴 ) )
35 31 34 pm2.61i ( FullFun 𝐹𝐴 ) = ( 𝐹𝐴 )