Metamath Proof Explorer


Theorem coemulhi

Description: The leading coefficient of a product of polynomials. (Contributed by Mario Carneiro, 24-Jul-2014)

Ref Expression
Hypotheses coefv0.1 A=coeffF
coeadd.2 B=coeffG
coemulhi.3 M=degF
coemulhi.4 N=degG
Assertion coemulhi FPolySGPolyScoeffF×fGM+N=AMBN

Proof

Step Hyp Ref Expression
1 coefv0.1 A=coeffF
2 coeadd.2 B=coeffG
3 coemulhi.3 M=degF
4 coemulhi.4 N=degG
5 dgrcl FPolySdegF0
6 3 5 eqeltrid FPolySM0
7 dgrcl GPolySdegG0
8 4 7 eqeltrid GPolySN0
9 nn0addcl M0N0M+N0
10 6 8 9 syl2an FPolySGPolySM+N0
11 1 2 coemul FPolySGPolySM+N0coeffF×fGM+N=k=0M+NAkBM+N-k
12 10 11 mpd3an3 FPolySGPolyScoeffF×fGM+N=k=0M+NAkBM+N-k
13 8 adantl FPolySGPolySN0
14 13 nn0ge0d FPolySGPolyS0N
15 6 adantr FPolySGPolySM0
16 15 nn0red FPolySGPolySM
17 13 nn0red FPolySGPolySN
18 16 17 addge01d FPolySGPolyS0NMM+N
19 14 18 mpbid FPolySGPolySMM+N
20 nn0uz 0=0
21 15 20 eleqtrdi FPolySGPolySM0
22 10 nn0zd FPolySGPolySM+N
23 elfz5 M0M+NM0M+NMM+N
24 21 22 23 syl2anc FPolySGPolySM0M+NMM+N
25 19 24 mpbird FPolySGPolySM0M+N
26 25 snssd FPolySGPolySM0M+N
27 elsni kMk=M
28 27 adantl FPolySGPolySkMk=M
29 fveq2 k=MAk=AM
30 oveq2 k=MM+N-k=M+N-M
31 30 fveq2d k=MBM+N-k=BM+N-M
32 29 31 oveq12d k=MAkBM+N-k=AMBM+N-M
33 28 32 syl FPolySGPolySkMAkBM+N-k=AMBM+N-M
34 16 recnd FPolySGPolySM
35 17 recnd FPolySGPolySN
36 34 35 pncan2d FPolySGPolySM+N-M=N
37 36 fveq2d FPolySGPolySBM+N-M=BN
38 37 oveq2d FPolySGPolySAMBM+N-M=AMBN
39 1 coef3 FPolySA:0
40 39 adantr FPolySGPolySA:0
41 40 15 ffvelcdmd FPolySGPolySAM
42 2 coef3 GPolySB:0
43 42 adantl FPolySGPolySB:0
44 43 13 ffvelcdmd FPolySGPolySBN
45 41 44 mulcld FPolySGPolySAMBN
46 38 45 eqeltrd FPolySGPolySAMBM+N-M
47 46 adantr FPolySGPolySkMAMBM+N-M
48 33 47 eqeltrd FPolySGPolySkMAkBM+N-k
49 simpl FPolySGPolySFPolyS
50 eldifi k0M+NMk0M+N
51 elfznn0 k0M+Nk0
52 50 51 syl k0M+NMk0
53 1 3 dgrub FPolySk0Ak0kM
54 53 3expia FPolySk0Ak0kM
55 49 52 54 syl2an FPolySGPolySk0M+NMAk0kM
56 55 necon1bd FPolySGPolySk0M+NM¬kMAk=0
57 56 imp FPolySGPolySk0M+NM¬kMAk=0
58 57 oveq1d FPolySGPolySk0M+NM¬kMAkBM+N-k=0BM+N-k
59 43 ad2antrr FPolySGPolySk0M+NM¬kMB:0
60 50 ad2antlr FPolySGPolySk0M+NM¬kMk0M+N
61 fznn0sub k0M+NM+N-k0
62 60 61 syl FPolySGPolySk0M+NM¬kMM+N-k0
63 59 62 ffvelcdmd FPolySGPolySk0M+NM¬kMBM+N-k
64 63 mul02d FPolySGPolySk0M+NM¬kM0BM+N-k=0
65 58 64 eqtrd FPolySGPolySk0M+NM¬kMAkBM+N-k=0
66 16 adantr FPolySGPolySk0M+NMM
67 50 adantl FPolySGPolySk0M+NMk0M+N
68 67 51 syl FPolySGPolySk0M+NMk0
69 68 nn0red FPolySGPolySk0M+NMk
70 17 adantr FPolySGPolySk0M+NMN
71 66 69 70 leadd1d FPolySGPolySk0M+NMMkM+Nk+N
72 10 adantr FPolySGPolySk0M+NMM+N0
73 72 nn0red FPolySGPolySk0M+NMM+N
74 73 69 70 lesubadd2d FPolySGPolySk0M+NMM+N-kNM+Nk+N
75 71 74 bitr4d FPolySGPolySk0M+NMMkM+N-kN
76 75 notbid FPolySGPolySk0M+NM¬Mk¬M+N-kN
77 76 biimpa FPolySGPolySk0M+NM¬Mk¬M+N-kN
78 simpr FPolySGPolySGPolyS
79 50 61 syl k0M+NMM+N-k0
80 2 4 dgrub GPolySM+N-k0BM+N-k0M+N-kN
81 80 3expia GPolySM+N-k0BM+N-k0M+N-kN
82 78 79 81 syl2an FPolySGPolySk0M+NMBM+N-k0M+N-kN
83 82 necon1bd FPolySGPolySk0M+NM¬M+N-kNBM+N-k=0
84 83 imp FPolySGPolySk0M+NM¬M+N-kNBM+N-k=0
85 77 84 syldan FPolySGPolySk0M+NM¬MkBM+N-k=0
86 85 oveq2d FPolySGPolySk0M+NM¬MkAkBM+N-k=Ak0
87 40 ad2antrr FPolySGPolySk0M+NM¬MkA:0
88 52 ad2antlr FPolySGPolySk0M+NM¬Mkk0
89 87 88 ffvelcdmd FPolySGPolySk0M+NM¬MkAk
90 89 mul01d FPolySGPolySk0M+NM¬MkAk0=0
91 86 90 eqtrd FPolySGPolySk0M+NM¬MkAkBM+N-k=0
92 eldifsni k0M+NMkM
93 92 adantl FPolySGPolySk0M+NMkM
94 69 66 letri3d FPolySGPolySk0M+NMk=MkMMk
95 94 necon3abid FPolySGPolySk0M+NMkM¬kMMk
96 93 95 mpbid FPolySGPolySk0M+NM¬kMMk
97 ianor ¬kMMk¬kM¬Mk
98 96 97 sylib FPolySGPolySk0M+NM¬kM¬Mk
99 65 91 98 mpjaodan FPolySGPolySk0M+NMAkBM+N-k=0
100 fzfid FPolySGPolyS0M+NFin
101 26 48 99 100 fsumss FPolySGPolySkMAkBM+N-k=k=0M+NAkBM+N-k
102 32 sumsn M0AMBM+N-MkMAkBM+N-k=AMBM+N-M
103 15 46 102 syl2anc FPolySGPolySkMAkBM+N-k=AMBM+N-M
104 103 38 eqtrd FPolySGPolySkMAkBM+N-k=AMBN
105 12 101 104 3eqtr2d FPolySGPolyScoeffF×fGM+N=AMBN