let p be bag of ; :: thesis: for X being set st X c= support p holds
ex q, r being bag of st
( support q = (support p) \ X & support r = X & support q misses support r & q | (support q) = p | (support q) & r | (support r) = p | (support r) & q + r = p )
let X be set ; :: thesis: ( X c= support p implies ex q, r being bag of st
( support q = (support p) \ X & support r = X & support q misses support r & q | (support q) = p | (support q) & r | (support r) = p | (support r) & q + r = p ) )
assume A1:
X c= support p
; :: thesis: ex q, r being bag of st
( support q = (support p) \ X & support r = X & support q misses support r & q | (support q) = p | (support q) & r | (support r) = p | (support r) & q + r = p )
defpred S1[ set ] means $1 in X;
deffunc H1( set ) -> Element of NAT = p . $1;
set fq = p +* (X --> 0 );
A2:
dom (X --> 0 ) = X
by FUNCOP_1:19;
then A3: dom (p +* (X --> 0 )) =
(dom p) \/ X
by FUNCT_4:def 1
.=
SetPrimes \/ X
by PARTFUN1:def 4
.=
SetPrimes
by A1, XBOOLE_1:1, XBOOLE_1:12
;
A4:
rng p c= NAT
by VALUED_0:def 6;
A5:
(rng p) \/ (rng (X --> 0 )) c= NAT
by A4, XBOOLE_1:8;
rng (p +* (X --> 0 )) c= (rng p) \/ (rng (X --> 0 ))
by FUNCT_4:18;
then
rng (p +* (X --> 0 )) c= NAT
by A5, XBOOLE_1:1;
then reconsider fq = p +* (X --> 0 ) as Function of SetPrimes ,NAT by A3, FUNCT_2:def 1, RELSET_1:11;
A6:
for x being set st x in X holds
fq . x = 0
set fr = p +* ((SetPrimes \ X) --> 0 );
A8: dom (p +* ((SetPrimes \ X) --> 0 )) =
(dom p) \/ (dom ((SetPrimes \ X) --> 0 ))
by FUNCT_4:def 1
.=
(dom p) \/ (SetPrimes \ X)
by FUNCOP_1:19
.=
SetPrimes \/ (SetPrimes \ X)
by PARTFUN1:def 4
.=
SetPrimes
by XBOOLE_1:12, XBOOLE_1:36
;
A9:
(rng p) \/ (rng ((SetPrimes \ X) --> 0 )) c= NAT
by A4, XBOOLE_1:8;
rng (p +* ((SetPrimes \ X) --> 0 )) c= (rng p) \/ (rng ((SetPrimes \ X) --> 0 ))
by FUNCT_4:18;
then
rng (p +* ((SetPrimes \ X) --> 0 )) c= NAT
by A9, XBOOLE_1:1;
then reconsider fr = p +* ((SetPrimes \ X) --> 0 ) as Function of SetPrimes ,NAT by A8, FUNCT_2:def 1, RELSET_1:11;
A10:
for x being set st x in X holds
fr . x = p . x
A12:
for x being set st not x in X & x in SetPrimes holds
fr . x = 0
A14:
for x being set st x in SetPrimes & x in X holds
fr . x <> 0
A16:
for x being set st not x in SetPrimes holds
( fr . x = 0 & fq . x = 0 )
A17:
for x being set holds
( x in X iff fr . x <> 0 )
then A19:
support fr = X
by POLYNOM1:def 7;
A20:
for x being set holds
( x in (support p) \ X iff fq . x <> 0 )
A23:
support fq = (support p) \ X
by A20, POLYNOM1:def 7;
A24:
(support fq) /\ (support fr) = {}
then A25:
support fq misses support fr
by XBOOLE_0:def 7;
A26:
fq | (support fq) = p | (support fq)
A31:
fr | (support fr) = p | (support fr)
A36:
( support fq is finite & support fr is finite )
by A1, A19, A20, POLYNOM1:def 7;
reconsider q = fq as bag of by A23, POLYNOM1:def 8;
reconsider r = fr as bag of by A36, POLYNOM1:def 8;
(support fr) \/ (support fq) =
(support fr) \/ ((support p) \ (support fr))
by A17, A23, POLYNOM1:def 7
.=
(support fr) \/ (support p)
by XBOOLE_1:39
.=
support p
by A1, A19, XBOOLE_1:12
;
then
q + r = p
by A24, A26, A31, Th2;
hence
ex q, r being bag of st
( support q = (support p) \ X & support r = X & support q misses support r & q | (support q) = p | (support q) & r | (support r) = p | (support r) & q + r = p )
by A19, A23, A25, A26, A31; :: thesis: verum