Metamath Proof Explorer


Theorem dvmptdiv

Description: Function-builder for derivative, quotient rule. (Contributed by Glauco Siliprandi, 11-Dec-2019)

Ref Expression
Hypotheses dvmptdiv.s ( 𝜑𝑆 ∈ { ℝ , ℂ } )
dvmptdiv.a ( ( 𝜑𝑥𝑋 ) → 𝐴 ∈ ℂ )
dvmptdiv.b ( ( 𝜑𝑥𝑋 ) → 𝐵𝑉 )
dvmptdiv.da ( 𝜑 → ( 𝑆 D ( 𝑥𝑋𝐴 ) ) = ( 𝑥𝑋𝐵 ) )
dvmptdiv.c ( ( 𝜑𝑥𝑋 ) → 𝐶 ∈ ( ℂ ∖ { 0 } ) )
dvmptdiv.d ( ( 𝜑𝑥𝑋 ) → 𝐷 ∈ ℂ )
dvmptdiv.dc ( 𝜑 → ( 𝑆 D ( 𝑥𝑋𝐶 ) ) = ( 𝑥𝑋𝐷 ) )
Assertion dvmptdiv ( 𝜑 → ( 𝑆 D ( 𝑥𝑋 ↦ ( 𝐴 / 𝐶 ) ) ) = ( 𝑥𝑋 ↦ ( ( ( 𝐵 · 𝐶 ) − ( 𝐷 · 𝐴 ) ) / ( 𝐶 ↑ 2 ) ) ) )

Proof

Step Hyp Ref Expression
1 dvmptdiv.s ( 𝜑𝑆 ∈ { ℝ , ℂ } )
2 dvmptdiv.a ( ( 𝜑𝑥𝑋 ) → 𝐴 ∈ ℂ )
3 dvmptdiv.b ( ( 𝜑𝑥𝑋 ) → 𝐵𝑉 )
4 dvmptdiv.da ( 𝜑 → ( 𝑆 D ( 𝑥𝑋𝐴 ) ) = ( 𝑥𝑋𝐵 ) )
5 dvmptdiv.c ( ( 𝜑𝑥𝑋 ) → 𝐶 ∈ ( ℂ ∖ { 0 } ) )
6 dvmptdiv.d ( ( 𝜑𝑥𝑋 ) → 𝐷 ∈ ℂ )
7 dvmptdiv.dc ( 𝜑 → ( 𝑆 D ( 𝑥𝑋𝐶 ) ) = ( 𝑥𝑋𝐷 ) )
8 5 eldifad ( ( 𝜑𝑥𝑋 ) → 𝐶 ∈ ℂ )
9 eldifsn ( 𝐶 ∈ ( ℂ ∖ { 0 } ) ↔ ( 𝐶 ∈ ℂ ∧ 𝐶 ≠ 0 ) )
10 5 9 sylib ( ( 𝜑𝑥𝑋 ) → ( 𝐶 ∈ ℂ ∧ 𝐶 ≠ 0 ) )
11 10 simprd ( ( 𝜑𝑥𝑋 ) → 𝐶 ≠ 0 )
12 2 8 11 divrecd ( ( 𝜑𝑥𝑋 ) → ( 𝐴 / 𝐶 ) = ( 𝐴 · ( 1 / 𝐶 ) ) )
13 12 mpteq2dva ( 𝜑 → ( 𝑥𝑋 ↦ ( 𝐴 / 𝐶 ) ) = ( 𝑥𝑋 ↦ ( 𝐴 · ( 1 / 𝐶 ) ) ) )
14 13 oveq2d ( 𝜑 → ( 𝑆 D ( 𝑥𝑋 ↦ ( 𝐴 / 𝐶 ) ) ) = ( 𝑆 D ( 𝑥𝑋 ↦ ( 𝐴 · ( 1 / 𝐶 ) ) ) ) )
15 8 11 reccld ( ( 𝜑𝑥𝑋 ) → ( 1 / 𝐶 ) ∈ ℂ )
16 1cnd ( ( 𝜑𝑥𝑋 ) → 1 ∈ ℂ )
17 16 6 mulcld ( ( 𝜑𝑥𝑋 ) → ( 1 · 𝐷 ) ∈ ℂ )
18 8 sqcld ( ( 𝜑𝑥𝑋 ) → ( 𝐶 ↑ 2 ) ∈ ℂ )
19 11 neneqd ( ( 𝜑𝑥𝑋 ) → ¬ 𝐶 = 0 )
20 sqeq0 ( 𝐶 ∈ ℂ → ( ( 𝐶 ↑ 2 ) = 0 ↔ 𝐶 = 0 ) )
21 8 20 syl ( ( 𝜑𝑥𝑋 ) → ( ( 𝐶 ↑ 2 ) = 0 ↔ 𝐶 = 0 ) )
22 19 21 mtbird ( ( 𝜑𝑥𝑋 ) → ¬ ( 𝐶 ↑ 2 ) = 0 )
23 22 neqned ( ( 𝜑𝑥𝑋 ) → ( 𝐶 ↑ 2 ) ≠ 0 )
24 17 18 23 divcld ( ( 𝜑𝑥𝑋 ) → ( ( 1 · 𝐷 ) / ( 𝐶 ↑ 2 ) ) ∈ ℂ )
25 24 negcld ( ( 𝜑𝑥𝑋 ) → - ( ( 1 · 𝐷 ) / ( 𝐶 ↑ 2 ) ) ∈ ℂ )
26 1cnd ( 𝜑 → 1 ∈ ℂ )
27 1 26 5 6 7 dvrecg ( 𝜑 → ( 𝑆 D ( 𝑥𝑋 ↦ ( 1 / 𝐶 ) ) ) = ( 𝑥𝑋 ↦ - ( ( 1 · 𝐷 ) / ( 𝐶 ↑ 2 ) ) ) )
28 1 2 3 4 15 25 27 dvmptmul ( 𝜑 → ( 𝑆 D ( 𝑥𝑋 ↦ ( 𝐴 · ( 1 / 𝐶 ) ) ) ) = ( 𝑥𝑋 ↦ ( ( 𝐵 · ( 1 / 𝐶 ) ) + ( - ( ( 1 · 𝐷 ) / ( 𝐶 ↑ 2 ) ) · 𝐴 ) ) ) )
29 1 2 3 4 dvmptcl ( ( 𝜑𝑥𝑋 ) → 𝐵 ∈ ℂ )
30 29 8 mulcld ( ( 𝜑𝑥𝑋 ) → ( 𝐵 · 𝐶 ) ∈ ℂ )
31 30 18 23 divcld ( ( 𝜑𝑥𝑋 ) → ( ( 𝐵 · 𝐶 ) / ( 𝐶 ↑ 2 ) ) ∈ ℂ )
32 6 2 mulcld ( ( 𝜑𝑥𝑋 ) → ( 𝐷 · 𝐴 ) ∈ ℂ )
33 32 18 23 divcld ( ( 𝜑𝑥𝑋 ) → ( ( 𝐷 · 𝐴 ) / ( 𝐶 ↑ 2 ) ) ∈ ℂ )
34 31 33 negsubd ( ( 𝜑𝑥𝑋 ) → ( ( ( 𝐵 · 𝐶 ) / ( 𝐶 ↑ 2 ) ) + - ( ( 𝐷 · 𝐴 ) / ( 𝐶 ↑ 2 ) ) ) = ( ( ( 𝐵 · 𝐶 ) / ( 𝐶 ↑ 2 ) ) − ( ( 𝐷 · 𝐴 ) / ( 𝐶 ↑ 2 ) ) ) )
35 29 16 8 11 div12d ( ( 𝜑𝑥𝑋 ) → ( 𝐵 · ( 1 / 𝐶 ) ) = ( 1 · ( 𝐵 / 𝐶 ) ) )
36 29 8 11 divcld ( ( 𝜑𝑥𝑋 ) → ( 𝐵 / 𝐶 ) ∈ ℂ )
37 36 mulid2d ( ( 𝜑𝑥𝑋 ) → ( 1 · ( 𝐵 / 𝐶 ) ) = ( 𝐵 / 𝐶 ) )
38 8 sqvald ( ( 𝜑𝑥𝑋 ) → ( 𝐶 ↑ 2 ) = ( 𝐶 · 𝐶 ) )
39 38 oveq2d ( ( 𝜑𝑥𝑋 ) → ( ( 𝐵 · 𝐶 ) / ( 𝐶 ↑ 2 ) ) = ( ( 𝐵 · 𝐶 ) / ( 𝐶 · 𝐶 ) ) )
40 29 8 8 11 11 divcan5rd ( ( 𝜑𝑥𝑋 ) → ( ( 𝐵 · 𝐶 ) / ( 𝐶 · 𝐶 ) ) = ( 𝐵 / 𝐶 ) )
41 39 40 eqtr2d ( ( 𝜑𝑥𝑋 ) → ( 𝐵 / 𝐶 ) = ( ( 𝐵 · 𝐶 ) / ( 𝐶 ↑ 2 ) ) )
42 35 37 41 3eqtrd ( ( 𝜑𝑥𝑋 ) → ( 𝐵 · ( 1 / 𝐶 ) ) = ( ( 𝐵 · 𝐶 ) / ( 𝐶 ↑ 2 ) ) )
43 6 mulid2d ( ( 𝜑𝑥𝑋 ) → ( 1 · 𝐷 ) = 𝐷 )
44 43 oveq1d ( ( 𝜑𝑥𝑋 ) → ( ( 1 · 𝐷 ) / ( 𝐶 ↑ 2 ) ) = ( 𝐷 / ( 𝐶 ↑ 2 ) ) )
45 44 negeqd ( ( 𝜑𝑥𝑋 ) → - ( ( 1 · 𝐷 ) / ( 𝐶 ↑ 2 ) ) = - ( 𝐷 / ( 𝐶 ↑ 2 ) ) )
46 45 oveq1d ( ( 𝜑𝑥𝑋 ) → ( - ( ( 1 · 𝐷 ) / ( 𝐶 ↑ 2 ) ) · 𝐴 ) = ( - ( 𝐷 / ( 𝐶 ↑ 2 ) ) · 𝐴 ) )
47 6 18 23 divcld ( ( 𝜑𝑥𝑋 ) → ( 𝐷 / ( 𝐶 ↑ 2 ) ) ∈ ℂ )
48 47 2 mulneg1d ( ( 𝜑𝑥𝑋 ) → ( - ( 𝐷 / ( 𝐶 ↑ 2 ) ) · 𝐴 ) = - ( ( 𝐷 / ( 𝐶 ↑ 2 ) ) · 𝐴 ) )
49 6 2 18 23 div23d ( ( 𝜑𝑥𝑋 ) → ( ( 𝐷 · 𝐴 ) / ( 𝐶 ↑ 2 ) ) = ( ( 𝐷 / ( 𝐶 ↑ 2 ) ) · 𝐴 ) )
50 49 eqcomd ( ( 𝜑𝑥𝑋 ) → ( ( 𝐷 / ( 𝐶 ↑ 2 ) ) · 𝐴 ) = ( ( 𝐷 · 𝐴 ) / ( 𝐶 ↑ 2 ) ) )
51 50 negeqd ( ( 𝜑𝑥𝑋 ) → - ( ( 𝐷 / ( 𝐶 ↑ 2 ) ) · 𝐴 ) = - ( ( 𝐷 · 𝐴 ) / ( 𝐶 ↑ 2 ) ) )
52 46 48 51 3eqtrd ( ( 𝜑𝑥𝑋 ) → ( - ( ( 1 · 𝐷 ) / ( 𝐶 ↑ 2 ) ) · 𝐴 ) = - ( ( 𝐷 · 𝐴 ) / ( 𝐶 ↑ 2 ) ) )
53 42 52 oveq12d ( ( 𝜑𝑥𝑋 ) → ( ( 𝐵 · ( 1 / 𝐶 ) ) + ( - ( ( 1 · 𝐷 ) / ( 𝐶 ↑ 2 ) ) · 𝐴 ) ) = ( ( ( 𝐵 · 𝐶 ) / ( 𝐶 ↑ 2 ) ) + - ( ( 𝐷 · 𝐴 ) / ( 𝐶 ↑ 2 ) ) ) )
54 30 32 18 23 divsubdird ( ( 𝜑𝑥𝑋 ) → ( ( ( 𝐵 · 𝐶 ) − ( 𝐷 · 𝐴 ) ) / ( 𝐶 ↑ 2 ) ) = ( ( ( 𝐵 · 𝐶 ) / ( 𝐶 ↑ 2 ) ) − ( ( 𝐷 · 𝐴 ) / ( 𝐶 ↑ 2 ) ) ) )
55 34 53 54 3eqtr4d ( ( 𝜑𝑥𝑋 ) → ( ( 𝐵 · ( 1 / 𝐶 ) ) + ( - ( ( 1 · 𝐷 ) / ( 𝐶 ↑ 2 ) ) · 𝐴 ) ) = ( ( ( 𝐵 · 𝐶 ) − ( 𝐷 · 𝐴 ) ) / ( 𝐶 ↑ 2 ) ) )
56 55 mpteq2dva ( 𝜑 → ( 𝑥𝑋 ↦ ( ( 𝐵 · ( 1 / 𝐶 ) ) + ( - ( ( 1 · 𝐷 ) / ( 𝐶 ↑ 2 ) ) · 𝐴 ) ) ) = ( 𝑥𝑋 ↦ ( ( ( 𝐵 · 𝐶 ) − ( 𝐷 · 𝐴 ) ) / ( 𝐶 ↑ 2 ) ) ) )
57 14 28 56 3eqtrd ( 𝜑 → ( 𝑆 D ( 𝑥𝑋 ↦ ( 𝐴 / 𝐶 ) ) ) = ( 𝑥𝑋 ↦ ( ( ( 𝐵 · 𝐶 ) − ( 𝐷 · 𝐴 ) ) / ( 𝐶 ↑ 2 ) ) ) )