Metamath Proof Explorer


Theorem funsnfsupp

Description: Finite support for a function extended by a singleton. (Contributed by Stefan O'Rear, 27-Feb-2015) (Revised by AV, 19-Jul-2019)

Ref Expression
Assertion funsnfsupp ( ( ( 𝑋𝑉𝑌𝑊 ) ∧ ( Fun 𝐹𝑋 ∉ dom 𝐹 ) ) → ( ( 𝐹 ∪ { ⟨ 𝑋 , 𝑌 ⟩ } ) finSupp 𝑍𝐹 finSupp 𝑍 ) )

Proof

Step Hyp Ref Expression
1 simpl ( ( ( 𝑋𝑉𝑌𝑊 ) ∧ ( Fun 𝐹𝑋 ∉ dom 𝐹 ) ) → ( 𝑋𝑉𝑌𝑊 ) )
2 1 anim2i ( ( 𝑍 ∈ V ∧ ( ( 𝑋𝑉𝑌𝑊 ) ∧ ( Fun 𝐹𝑋 ∉ dom 𝐹 ) ) ) → ( 𝑍 ∈ V ∧ ( 𝑋𝑉𝑌𝑊 ) ) )
3 2 ancomd ( ( 𝑍 ∈ V ∧ ( ( 𝑋𝑉𝑌𝑊 ) ∧ ( Fun 𝐹𝑋 ∉ dom 𝐹 ) ) ) → ( ( 𝑋𝑉𝑌𝑊 ) ∧ 𝑍 ∈ V ) )
4 df-3an ( ( 𝑋𝑉𝑌𝑊𝑍 ∈ V ) ↔ ( ( 𝑋𝑉𝑌𝑊 ) ∧ 𝑍 ∈ V ) )
5 3 4 sylibr ( ( 𝑍 ∈ V ∧ ( ( 𝑋𝑉𝑌𝑊 ) ∧ ( Fun 𝐹𝑋 ∉ dom 𝐹 ) ) ) → ( 𝑋𝑉𝑌𝑊𝑍 ∈ V ) )
6 snopfsupp ( ( 𝑋𝑉𝑌𝑊𝑍 ∈ V ) → { ⟨ 𝑋 , 𝑌 ⟩ } finSupp 𝑍 )
7 5 6 syl ( ( 𝑍 ∈ V ∧ ( ( 𝑋𝑉𝑌𝑊 ) ∧ ( Fun 𝐹𝑋 ∉ dom 𝐹 ) ) ) → { ⟨ 𝑋 , 𝑌 ⟩ } finSupp 𝑍 )
8 funsng ( ( 𝑋𝑉𝑌𝑊 ) → Fun { ⟨ 𝑋 , 𝑌 ⟩ } )
9 simpl ( ( Fun 𝐹𝑋 ∉ dom 𝐹 ) → Fun 𝐹 )
10 8 9 anim12ci ( ( ( 𝑋𝑉𝑌𝑊 ) ∧ ( Fun 𝐹𝑋 ∉ dom 𝐹 ) ) → ( Fun 𝐹 ∧ Fun { ⟨ 𝑋 , 𝑌 ⟩ } ) )
11 dmsnopg ( 𝑌𝑊 → dom { ⟨ 𝑋 , 𝑌 ⟩ } = { 𝑋 } )
12 11 adantl ( ( 𝑋𝑉𝑌𝑊 ) → dom { ⟨ 𝑋 , 𝑌 ⟩ } = { 𝑋 } )
13 12 ineq2d ( ( 𝑋𝑉𝑌𝑊 ) → ( dom 𝐹 ∩ dom { ⟨ 𝑋 , 𝑌 ⟩ } ) = ( dom 𝐹 ∩ { 𝑋 } ) )
14 df-nel ( 𝑋 ∉ dom 𝐹 ↔ ¬ 𝑋 ∈ dom 𝐹 )
15 disjsn ( ( dom 𝐹 ∩ { 𝑋 } ) = ∅ ↔ ¬ 𝑋 ∈ dom 𝐹 )
16 14 15 sylbb2 ( 𝑋 ∉ dom 𝐹 → ( dom 𝐹 ∩ { 𝑋 } ) = ∅ )
17 16 adantl ( ( Fun 𝐹𝑋 ∉ dom 𝐹 ) → ( dom 𝐹 ∩ { 𝑋 } ) = ∅ )
18 13 17 sylan9eq ( ( ( 𝑋𝑉𝑌𝑊 ) ∧ ( Fun 𝐹𝑋 ∉ dom 𝐹 ) ) → ( dom 𝐹 ∩ dom { ⟨ 𝑋 , 𝑌 ⟩ } ) = ∅ )
19 10 18 jca ( ( ( 𝑋𝑉𝑌𝑊 ) ∧ ( Fun 𝐹𝑋 ∉ dom 𝐹 ) ) → ( ( Fun 𝐹 ∧ Fun { ⟨ 𝑋 , 𝑌 ⟩ } ) ∧ ( dom 𝐹 ∩ dom { ⟨ 𝑋 , 𝑌 ⟩ } ) = ∅ ) )
20 19 adantl ( ( 𝑍 ∈ V ∧ ( ( 𝑋𝑉𝑌𝑊 ) ∧ ( Fun 𝐹𝑋 ∉ dom 𝐹 ) ) ) → ( ( Fun 𝐹 ∧ Fun { ⟨ 𝑋 , 𝑌 ⟩ } ) ∧ ( dom 𝐹 ∩ dom { ⟨ 𝑋 , 𝑌 ⟩ } ) = ∅ ) )
21 funun ( ( ( Fun 𝐹 ∧ Fun { ⟨ 𝑋 , 𝑌 ⟩ } ) ∧ ( dom 𝐹 ∩ dom { ⟨ 𝑋 , 𝑌 ⟩ } ) = ∅ ) → Fun ( 𝐹 ∪ { ⟨ 𝑋 , 𝑌 ⟩ } ) )
22 20 21 syl ( ( 𝑍 ∈ V ∧ ( ( 𝑋𝑉𝑌𝑊 ) ∧ ( Fun 𝐹𝑋 ∉ dom 𝐹 ) ) ) → Fun ( 𝐹 ∪ { ⟨ 𝑋 , 𝑌 ⟩ } ) )
23 22 fsuppunbi ( ( 𝑍 ∈ V ∧ ( ( 𝑋𝑉𝑌𝑊 ) ∧ ( Fun 𝐹𝑋 ∉ dom 𝐹 ) ) ) → ( ( 𝐹 ∪ { ⟨ 𝑋 , 𝑌 ⟩ } ) finSupp 𝑍 ↔ ( 𝐹 finSupp 𝑍 ∧ { ⟨ 𝑋 , 𝑌 ⟩ } finSupp 𝑍 ) ) )
24 7 23 mpbiran2d ( ( 𝑍 ∈ V ∧ ( ( 𝑋𝑉𝑌𝑊 ) ∧ ( Fun 𝐹𝑋 ∉ dom 𝐹 ) ) ) → ( ( 𝐹 ∪ { ⟨ 𝑋 , 𝑌 ⟩ } ) finSupp 𝑍𝐹 finSupp 𝑍 ) )
25 24 ex ( 𝑍 ∈ V → ( ( ( 𝑋𝑉𝑌𝑊 ) ∧ ( Fun 𝐹𝑋 ∉ dom 𝐹 ) ) → ( ( 𝐹 ∪ { ⟨ 𝑋 , 𝑌 ⟩ } ) finSupp 𝑍𝐹 finSupp 𝑍 ) ) )
26 relfsupp Rel finSupp
27 26 brrelex2i ( ( 𝐹 ∪ { ⟨ 𝑋 , 𝑌 ⟩ } ) finSupp 𝑍𝑍 ∈ V )
28 26 brrelex2i ( 𝐹 finSupp 𝑍𝑍 ∈ V )
29 27 28 pm5.21ni ( ¬ 𝑍 ∈ V → ( ( 𝐹 ∪ { ⟨ 𝑋 , 𝑌 ⟩ } ) finSupp 𝑍𝐹 finSupp 𝑍 ) )
30 29 a1d ( ¬ 𝑍 ∈ V → ( ( ( 𝑋𝑉𝑌𝑊 ) ∧ ( Fun 𝐹𝑋 ∉ dom 𝐹 ) ) → ( ( 𝐹 ∪ { ⟨ 𝑋 , 𝑌 ⟩ } ) finSupp 𝑍𝐹 finSupp 𝑍 ) ) )
31 25 30 pm2.61i ( ( ( 𝑋𝑉𝑌𝑊 ) ∧ ( Fun 𝐹𝑋 ∉ dom 𝐹 ) ) → ( ( 𝐹 ∪ { ⟨ 𝑋 , 𝑌 ⟩ } ) finSupp 𝑍𝐹 finSupp 𝑍 ) )