Metamath Proof Explorer


Theorem fsuppunbi

Description: If the union of two classes/functions is a function, this union is finitely supported iff the two functions are finitely supported. (Contributed by AV, 18-Jun-2019)

Ref Expression
Hypothesis fsuppunbi.u
|- ( ph -> Fun ( F u. G ) )
Assertion fsuppunbi
|- ( ph -> ( ( F u. G ) finSupp Z <-> ( F finSupp Z /\ G finSupp Z ) ) )

Proof

Step Hyp Ref Expression
1 fsuppunbi.u
 |-  ( ph -> Fun ( F u. G ) )
2 relfsupp
 |-  Rel finSupp
3 2 brrelex12i
 |-  ( ( F u. G ) finSupp Z -> ( ( F u. G ) e. _V /\ Z e. _V ) )
4 unexb
 |-  ( ( F e. _V /\ G e. _V ) <-> ( F u. G ) e. _V )
5 simpr
 |-  ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) -> ( ( F u. G ) supp Z ) e. Fin )
6 5 adantr
 |-  ( ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) /\ ( ( F e. _V /\ G e. _V ) /\ Z e. _V ) ) -> ( ( F u. G ) supp Z ) e. Fin )
7 simprlr
 |-  ( ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) /\ ( ( F e. _V /\ G e. _V ) /\ Z e. _V ) ) -> G e. _V )
8 7 suppun
 |-  ( ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) /\ ( ( F e. _V /\ G e. _V ) /\ Z e. _V ) ) -> ( F supp Z ) C_ ( ( F u. G ) supp Z ) )
9 6 8 ssfid
 |-  ( ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) /\ ( ( F e. _V /\ G e. _V ) /\ Z e. _V ) ) -> ( F supp Z ) e. Fin )
10 fununfun
 |-  ( Fun ( F u. G ) -> ( Fun F /\ Fun G ) )
11 10 simpld
 |-  ( Fun ( F u. G ) -> Fun F )
12 11 adantr
 |-  ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) -> Fun F )
13 12 adantr
 |-  ( ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) /\ ( ( F e. _V /\ G e. _V ) /\ Z e. _V ) ) -> Fun F )
14 simprll
 |-  ( ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) /\ ( ( F e. _V /\ G e. _V ) /\ Z e. _V ) ) -> F e. _V )
15 simpr
 |-  ( ( ( F e. _V /\ G e. _V ) /\ Z e. _V ) -> Z e. _V )
16 15 adantl
 |-  ( ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) /\ ( ( F e. _V /\ G e. _V ) /\ Z e. _V ) ) -> Z e. _V )
17 funisfsupp
 |-  ( ( Fun F /\ F e. _V /\ Z e. _V ) -> ( F finSupp Z <-> ( F supp Z ) e. Fin ) )
18 13 14 16 17 syl3anc
 |-  ( ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) /\ ( ( F e. _V /\ G e. _V ) /\ Z e. _V ) ) -> ( F finSupp Z <-> ( F supp Z ) e. Fin ) )
19 9 18 mpbird
 |-  ( ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) /\ ( ( F e. _V /\ G e. _V ) /\ Z e. _V ) ) -> F finSupp Z )
20 uncom
 |-  ( F u. G ) = ( G u. F )
21 20 oveq1i
 |-  ( ( F u. G ) supp Z ) = ( ( G u. F ) supp Z )
22 21 eleq1i
 |-  ( ( ( F u. G ) supp Z ) e. Fin <-> ( ( G u. F ) supp Z ) e. Fin )
23 22 bilani
 |-  ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) -> ( ( G u. F ) supp Z ) e. Fin )
24 23 adantr
 |-  ( ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) /\ ( ( F e. _V /\ G e. _V ) /\ Z e. _V ) ) -> ( ( G u. F ) supp Z ) e. Fin )
25 14 suppun
 |-  ( ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) /\ ( ( F e. _V /\ G e. _V ) /\ Z e. _V ) ) -> ( G supp Z ) C_ ( ( G u. F ) supp Z ) )
26 24 25 ssfid
 |-  ( ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) /\ ( ( F e. _V /\ G e. _V ) /\ Z e. _V ) ) -> ( G supp Z ) e. Fin )
27 10 simprd
 |-  ( Fun ( F u. G ) -> Fun G )
28 27 adantr
 |-  ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) -> Fun G )
29 28 adantr
 |-  ( ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) /\ ( ( F e. _V /\ G e. _V ) /\ Z e. _V ) ) -> Fun G )
30 funisfsupp
 |-  ( ( Fun G /\ G e. _V /\ Z e. _V ) -> ( G finSupp Z <-> ( G supp Z ) e. Fin ) )
31 29 7 16 30 syl3anc
 |-  ( ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) /\ ( ( F e. _V /\ G e. _V ) /\ Z e. _V ) ) -> ( G finSupp Z <-> ( G supp Z ) e. Fin ) )
32 26 31 mpbird
 |-  ( ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) /\ ( ( F e. _V /\ G e. _V ) /\ Z e. _V ) ) -> G finSupp Z )
33 19 32 jca
 |-  ( ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) /\ ( ( F e. _V /\ G e. _V ) /\ Z e. _V ) ) -> ( F finSupp Z /\ G finSupp Z ) )
34 33 a1d
 |-  ( ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) /\ ( ( F e. _V /\ G e. _V ) /\ Z e. _V ) ) -> ( ph -> ( F finSupp Z /\ G finSupp Z ) ) )
35 34 ex
 |-  ( ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) -> ( ( ( F e. _V /\ G e. _V ) /\ Z e. _V ) -> ( ph -> ( F finSupp Z /\ G finSupp Z ) ) ) )
36 fsuppimp
 |-  ( ( F u. G ) finSupp Z -> ( Fun ( F u. G ) /\ ( ( F u. G ) supp Z ) e. Fin ) )
37 35 36 syl11
 |-  ( ( ( F e. _V /\ G e. _V ) /\ Z e. _V ) -> ( ( F u. G ) finSupp Z -> ( ph -> ( F finSupp Z /\ G finSupp Z ) ) ) )
38 4 37 sylanbr
 |-  ( ( ( F u. G ) e. _V /\ Z e. _V ) -> ( ( F u. G ) finSupp Z -> ( ph -> ( F finSupp Z /\ G finSupp Z ) ) ) )
39 3 38 mpcom
 |-  ( ( F u. G ) finSupp Z -> ( ph -> ( F finSupp Z /\ G finSupp Z ) ) )
40 39 com12
 |-  ( ph -> ( ( F u. G ) finSupp Z -> ( F finSupp Z /\ G finSupp Z ) ) )
41 simpl
 |-  ( ( F finSupp Z /\ G finSupp Z ) -> F finSupp Z )
42 simpr
 |-  ( ( F finSupp Z /\ G finSupp Z ) -> G finSupp Z )
43 41 42 fsuppun
 |-  ( ( F finSupp Z /\ G finSupp Z ) -> ( ( F u. G ) supp Z ) e. Fin )
44 43 adantl
 |-  ( ( ph /\ ( F finSupp Z /\ G finSupp Z ) ) -> ( ( F u. G ) supp Z ) e. Fin )
45 1 adantr
 |-  ( ( ph /\ ( F finSupp Z /\ G finSupp Z ) ) -> Fun ( F u. G ) )
46 2 brrelex1i
 |-  ( F finSupp Z -> F e. _V )
47 2 brrelex1i
 |-  ( G finSupp Z -> G e. _V )
48 unexg
 |-  ( ( F e. _V /\ G e. _V ) -> ( F u. G ) e. _V )
49 46 47 48 syl2an
 |-  ( ( F finSupp Z /\ G finSupp Z ) -> ( F u. G ) e. _V )
50 49 adantl
 |-  ( ( ph /\ ( F finSupp Z /\ G finSupp Z ) ) -> ( F u. G ) e. _V )
51 2 brrelex2i
 |-  ( F finSupp Z -> Z e. _V )
52 51 adantr
 |-  ( ( F finSupp Z /\ G finSupp Z ) -> Z e. _V )
53 52 adantl
 |-  ( ( ph /\ ( F finSupp Z /\ G finSupp Z ) ) -> Z e. _V )
54 funisfsupp
 |-  ( ( Fun ( F u. G ) /\ ( F u. G ) e. _V /\ Z e. _V ) -> ( ( F u. G ) finSupp Z <-> ( ( F u. G ) supp Z ) e. Fin ) )
55 45 50 53 54 syl3anc
 |-  ( ( ph /\ ( F finSupp Z /\ G finSupp Z ) ) -> ( ( F u. G ) finSupp Z <-> ( ( F u. G ) supp Z ) e. Fin ) )
56 44 55 mpbird
 |-  ( ( ph /\ ( F finSupp Z /\ G finSupp Z ) ) -> ( F u. G ) finSupp Z )
57 56 ex
 |-  ( ph -> ( ( F finSupp Z /\ G finSupp Z ) -> ( F u. G ) finSupp Z ) )
58 40 57 impbid
 |-  ( ph -> ( ( F u. G ) finSupp Z <-> ( F finSupp Z /\ G finSupp Z ) ) )