Metamath Proof Explorer


Theorem dcubic1

Description: Forward direction of dcubic : the claimed formula produces solutions to the cubic equation. (Contributed by Mario Carneiro, 25-Apr-2015)

Ref Expression
Hypotheses dcubic.c ( 𝜑𝑃 ∈ ℂ )
dcubic.d ( 𝜑𝑄 ∈ ℂ )
dcubic.x ( 𝜑𝑋 ∈ ℂ )
dcubic.t ( 𝜑𝑇 ∈ ℂ )
dcubic.3 ( 𝜑 → ( 𝑇 ↑ 3 ) = ( 𝐺𝑁 ) )
dcubic.g ( 𝜑𝐺 ∈ ℂ )
dcubic.2 ( 𝜑 → ( 𝐺 ↑ 2 ) = ( ( 𝑁 ↑ 2 ) + ( 𝑀 ↑ 3 ) ) )
dcubic.m ( 𝜑𝑀 = ( 𝑃 / 3 ) )
dcubic.n ( 𝜑𝑁 = ( 𝑄 / 2 ) )
dcubic.0 ( 𝜑𝑇 ≠ 0 )
dcubic1.x ( 𝜑𝑋 = ( 𝑇 − ( 𝑀 / 𝑇 ) ) )
Assertion dcubic1 ( 𝜑 → ( ( 𝑋 ↑ 3 ) + ( ( 𝑃 · 𝑋 ) + 𝑄 ) ) = 0 )

Proof

Step Hyp Ref Expression
1 dcubic.c ( 𝜑𝑃 ∈ ℂ )
2 dcubic.d ( 𝜑𝑄 ∈ ℂ )
3 dcubic.x ( 𝜑𝑋 ∈ ℂ )
4 dcubic.t ( 𝜑𝑇 ∈ ℂ )
5 dcubic.3 ( 𝜑 → ( 𝑇 ↑ 3 ) = ( 𝐺𝑁 ) )
6 dcubic.g ( 𝜑𝐺 ∈ ℂ )
7 dcubic.2 ( 𝜑 → ( 𝐺 ↑ 2 ) = ( ( 𝑁 ↑ 2 ) + ( 𝑀 ↑ 3 ) ) )
8 dcubic.m ( 𝜑𝑀 = ( 𝑃 / 3 ) )
9 dcubic.n ( 𝜑𝑁 = ( 𝑄 / 2 ) )
10 dcubic.0 ( 𝜑𝑇 ≠ 0 )
11 dcubic1.x ( 𝜑𝑋 = ( 𝑇 − ( 𝑀 / 𝑇 ) ) )
12 5 oveq1d ( 𝜑 → ( ( 𝑇 ↑ 3 ) ↑ 2 ) = ( ( 𝐺𝑁 ) ↑ 2 ) )
13 2 halfcld ( 𝜑 → ( 𝑄 / 2 ) ∈ ℂ )
14 9 13 eqeltrd ( 𝜑𝑁 ∈ ℂ )
15 binom2sub ( ( 𝐺 ∈ ℂ ∧ 𝑁 ∈ ℂ ) → ( ( 𝐺𝑁 ) ↑ 2 ) = ( ( ( 𝐺 ↑ 2 ) − ( 2 · ( 𝐺 · 𝑁 ) ) ) + ( 𝑁 ↑ 2 ) ) )
16 6 14 15 syl2anc ( 𝜑 → ( ( 𝐺𝑁 ) ↑ 2 ) = ( ( ( 𝐺 ↑ 2 ) − ( 2 · ( 𝐺 · 𝑁 ) ) ) + ( 𝑁 ↑ 2 ) ) )
17 2cnd ( 𝜑 → 2 ∈ ℂ )
18 17 6 14 mul12d ( 𝜑 → ( 2 · ( 𝐺 · 𝑁 ) ) = ( 𝐺 · ( 2 · 𝑁 ) ) )
19 9 oveq2d ( 𝜑 → ( 2 · 𝑁 ) = ( 2 · ( 𝑄 / 2 ) ) )
20 2ne0 2 ≠ 0
21 20 a1i ( 𝜑 → 2 ≠ 0 )
22 2 17 21 divcan2d ( 𝜑 → ( 2 · ( 𝑄 / 2 ) ) = 𝑄 )
23 19 22 eqtrd ( 𝜑 → ( 2 · 𝑁 ) = 𝑄 )
24 23 oveq2d ( 𝜑 → ( 𝐺 · ( 2 · 𝑁 ) ) = ( 𝐺 · 𝑄 ) )
25 6 2 mulcomd ( 𝜑 → ( 𝐺 · 𝑄 ) = ( 𝑄 · 𝐺 ) )
26 18 24 25 3eqtrd ( 𝜑 → ( 2 · ( 𝐺 · 𝑁 ) ) = ( 𝑄 · 𝐺 ) )
27 7 26 oveq12d ( 𝜑 → ( ( 𝐺 ↑ 2 ) − ( 2 · ( 𝐺 · 𝑁 ) ) ) = ( ( ( 𝑁 ↑ 2 ) + ( 𝑀 ↑ 3 ) ) − ( 𝑄 · 𝐺 ) ) )
28 27 oveq1d ( 𝜑 → ( ( ( 𝐺 ↑ 2 ) − ( 2 · ( 𝐺 · 𝑁 ) ) ) + ( 𝑁 ↑ 2 ) ) = ( ( ( ( 𝑁 ↑ 2 ) + ( 𝑀 ↑ 3 ) ) − ( 𝑄 · 𝐺 ) ) + ( 𝑁 ↑ 2 ) ) )
29 12 16 28 3eqtrd ( 𝜑 → ( ( 𝑇 ↑ 3 ) ↑ 2 ) = ( ( ( ( 𝑁 ↑ 2 ) + ( 𝑀 ↑ 3 ) ) − ( 𝑄 · 𝐺 ) ) + ( 𝑁 ↑ 2 ) ) )
30 14 sqcld ( 𝜑 → ( 𝑁 ↑ 2 ) ∈ ℂ )
31 3cn 3 ∈ ℂ
32 31 a1i ( 𝜑 → 3 ∈ ℂ )
33 3ne0 3 ≠ 0
34 33 a1i ( 𝜑 → 3 ≠ 0 )
35 1 32 34 divcld ( 𝜑 → ( 𝑃 / 3 ) ∈ ℂ )
36 8 35 eqeltrd ( 𝜑𝑀 ∈ ℂ )
37 3nn0 3 ∈ ℕ0
38 expcl ( ( 𝑀 ∈ ℂ ∧ 3 ∈ ℕ0 ) → ( 𝑀 ↑ 3 ) ∈ ℂ )
39 36 37 38 sylancl ( 𝜑 → ( 𝑀 ↑ 3 ) ∈ ℂ )
40 30 39 addcld ( 𝜑 → ( ( 𝑁 ↑ 2 ) + ( 𝑀 ↑ 3 ) ) ∈ ℂ )
41 2 6 mulcld ( 𝜑 → ( 𝑄 · 𝐺 ) ∈ ℂ )
42 40 30 41 addsubd ( 𝜑 → ( ( ( ( 𝑁 ↑ 2 ) + ( 𝑀 ↑ 3 ) ) + ( 𝑁 ↑ 2 ) ) − ( 𝑄 · 𝐺 ) ) = ( ( ( ( 𝑁 ↑ 2 ) + ( 𝑀 ↑ 3 ) ) − ( 𝑄 · 𝐺 ) ) + ( 𝑁 ↑ 2 ) ) )
43 30 39 30 add32d ( 𝜑 → ( ( ( 𝑁 ↑ 2 ) + ( 𝑀 ↑ 3 ) ) + ( 𝑁 ↑ 2 ) ) = ( ( ( 𝑁 ↑ 2 ) + ( 𝑁 ↑ 2 ) ) + ( 𝑀 ↑ 3 ) ) )
44 30 2timesd ( 𝜑 → ( 2 · ( 𝑁 ↑ 2 ) ) = ( ( 𝑁 ↑ 2 ) + ( 𝑁 ↑ 2 ) ) )
45 44 oveq1d ( 𝜑 → ( ( 2 · ( 𝑁 ↑ 2 ) ) + ( 𝑀 ↑ 3 ) ) = ( ( ( 𝑁 ↑ 2 ) + ( 𝑁 ↑ 2 ) ) + ( 𝑀 ↑ 3 ) ) )
46 43 45 eqtr4d ( 𝜑 → ( ( ( 𝑁 ↑ 2 ) + ( 𝑀 ↑ 3 ) ) + ( 𝑁 ↑ 2 ) ) = ( ( 2 · ( 𝑁 ↑ 2 ) ) + ( 𝑀 ↑ 3 ) ) )
47 46 oveq1d ( 𝜑 → ( ( ( ( 𝑁 ↑ 2 ) + ( 𝑀 ↑ 3 ) ) + ( 𝑁 ↑ 2 ) ) − ( 𝑄 · 𝐺 ) ) = ( ( ( 2 · ( 𝑁 ↑ 2 ) ) + ( 𝑀 ↑ 3 ) ) − ( 𝑄 · 𝐺 ) ) )
48 29 42 47 3eqtr2d ( 𝜑 → ( ( 𝑇 ↑ 3 ) ↑ 2 ) = ( ( ( 2 · ( 𝑁 ↑ 2 ) ) + ( 𝑀 ↑ 3 ) ) − ( 𝑄 · 𝐺 ) ) )
49 2 6 14 subdid ( 𝜑 → ( 𝑄 · ( 𝐺𝑁 ) ) = ( ( 𝑄 · 𝐺 ) − ( 𝑄 · 𝑁 ) ) )
50 5 oveq2d ( 𝜑 → ( 𝑄 · ( 𝑇 ↑ 3 ) ) = ( 𝑄 · ( 𝐺𝑁 ) ) )
51 14 sqvald ( 𝜑 → ( 𝑁 ↑ 2 ) = ( 𝑁 · 𝑁 ) )
52 51 oveq2d ( 𝜑 → ( 2 · ( 𝑁 ↑ 2 ) ) = ( 2 · ( 𝑁 · 𝑁 ) ) )
53 17 14 14 mulassd ( 𝜑 → ( ( 2 · 𝑁 ) · 𝑁 ) = ( 2 · ( 𝑁 · 𝑁 ) ) )
54 23 oveq1d ( 𝜑 → ( ( 2 · 𝑁 ) · 𝑁 ) = ( 𝑄 · 𝑁 ) )
55 52 53 54 3eqtr2d ( 𝜑 → ( 2 · ( 𝑁 ↑ 2 ) ) = ( 𝑄 · 𝑁 ) )
56 55 oveq2d ( 𝜑 → ( ( 𝑄 · 𝐺 ) − ( 2 · ( 𝑁 ↑ 2 ) ) ) = ( ( 𝑄 · 𝐺 ) − ( 𝑄 · 𝑁 ) ) )
57 49 50 56 3eqtr4d ( 𝜑 → ( 𝑄 · ( 𝑇 ↑ 3 ) ) = ( ( 𝑄 · 𝐺 ) − ( 2 · ( 𝑁 ↑ 2 ) ) ) )
58 57 oveq1d ( 𝜑 → ( ( 𝑄 · ( 𝑇 ↑ 3 ) ) − ( 𝑀 ↑ 3 ) ) = ( ( ( 𝑄 · 𝐺 ) − ( 2 · ( 𝑁 ↑ 2 ) ) ) − ( 𝑀 ↑ 3 ) ) )
59 2cn 2 ∈ ℂ
60 mulcl ( ( 2 ∈ ℂ ∧ ( 𝑁 ↑ 2 ) ∈ ℂ ) → ( 2 · ( 𝑁 ↑ 2 ) ) ∈ ℂ )
61 59 30 60 sylancr ( 𝜑 → ( 2 · ( 𝑁 ↑ 2 ) ) ∈ ℂ )
62 41 61 39 subsub4d ( 𝜑 → ( ( ( 𝑄 · 𝐺 ) − ( 2 · ( 𝑁 ↑ 2 ) ) ) − ( 𝑀 ↑ 3 ) ) = ( ( 𝑄 · 𝐺 ) − ( ( 2 · ( 𝑁 ↑ 2 ) ) + ( 𝑀 ↑ 3 ) ) ) )
63 58 62 eqtrd ( 𝜑 → ( ( 𝑄 · ( 𝑇 ↑ 3 ) ) − ( 𝑀 ↑ 3 ) ) = ( ( 𝑄 · 𝐺 ) − ( ( 2 · ( 𝑁 ↑ 2 ) ) + ( 𝑀 ↑ 3 ) ) ) )
64 48 63 oveq12d ( 𝜑 → ( ( ( 𝑇 ↑ 3 ) ↑ 2 ) + ( ( 𝑄 · ( 𝑇 ↑ 3 ) ) − ( 𝑀 ↑ 3 ) ) ) = ( ( ( ( 2 · ( 𝑁 ↑ 2 ) ) + ( 𝑀 ↑ 3 ) ) − ( 𝑄 · 𝐺 ) ) + ( ( 𝑄 · 𝐺 ) − ( ( 2 · ( 𝑁 ↑ 2 ) ) + ( 𝑀 ↑ 3 ) ) ) ) )
65 61 39 addcld ( 𝜑 → ( ( 2 · ( 𝑁 ↑ 2 ) ) + ( 𝑀 ↑ 3 ) ) ∈ ℂ )
66 npncan2 ( ( ( ( 2 · ( 𝑁 ↑ 2 ) ) + ( 𝑀 ↑ 3 ) ) ∈ ℂ ∧ ( 𝑄 · 𝐺 ) ∈ ℂ ) → ( ( ( ( 2 · ( 𝑁 ↑ 2 ) ) + ( 𝑀 ↑ 3 ) ) − ( 𝑄 · 𝐺 ) ) + ( ( 𝑄 · 𝐺 ) − ( ( 2 · ( 𝑁 ↑ 2 ) ) + ( 𝑀 ↑ 3 ) ) ) ) = 0 )
67 65 41 66 syl2anc ( 𝜑 → ( ( ( ( 2 · ( 𝑁 ↑ 2 ) ) + ( 𝑀 ↑ 3 ) ) − ( 𝑄 · 𝐺 ) ) + ( ( 𝑄 · 𝐺 ) − ( ( 2 · ( 𝑁 ↑ 2 ) ) + ( 𝑀 ↑ 3 ) ) ) ) = 0 )
68 64 67 eqtrd ( 𝜑 → ( ( ( 𝑇 ↑ 3 ) ↑ 2 ) + ( ( 𝑄 · ( 𝑇 ↑ 3 ) ) − ( 𝑀 ↑ 3 ) ) ) = 0 )
69 1 2 3 4 5 6 7 8 9 10 4 10 11 dcubic1lem ( 𝜑 → ( ( ( 𝑋 ↑ 3 ) + ( ( 𝑃 · 𝑋 ) + 𝑄 ) ) = 0 ↔ ( ( ( 𝑇 ↑ 3 ) ↑ 2 ) + ( ( 𝑄 · ( 𝑇 ↑ 3 ) ) − ( 𝑀 ↑ 3 ) ) ) = 0 ) )
70 68 69 mpbird ( 𝜑 → ( ( 𝑋 ↑ 3 ) + ( ( 𝑃 · 𝑋 ) + 𝑄 ) ) = 0 )