Metamath Proof Explorer


Theorem dvcsc

Description: Derivative of the cosecant function. (Contributed by Jon Pennant, 28-Aug-2026)

Ref Expression
Assertion dvcsc ( ℂ D csc ) = ( 𝑥 ∈ dom csc ↦ ( - ( csc ‘ 𝑥 ) · ( cot ‘ 𝑥 ) ) )

Proof

Step Hyp Ref Expression
1 df-csc csc = ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ↦ ( 1 / ( sin ‘ 𝑥 ) ) )
2 1 oveq2i ( ℂ D csc ) = ( ℂ D ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ↦ ( 1 / ( sin ‘ 𝑥 ) ) ) )
3 cnelprrecn ℂ ∈ { ℝ , ℂ }
4 3 a1i ( ⊤ → ℂ ∈ { ℝ , ℂ } )
5 1cnd ( ⊤ → 1 ∈ ℂ )
6 elrabi ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → 𝑥 ∈ ℂ )
7 sincl ( 𝑥 ∈ ℂ → ( sin ‘ 𝑥 ) ∈ ℂ )
8 6 7 syl ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → ( sin ‘ 𝑥 ) ∈ ℂ )
9 fveq2 ( 𝑦 = 𝑥 → ( sin ‘ 𝑦 ) = ( sin ‘ 𝑥 ) )
10 9 neeq1d ( 𝑦 = 𝑥 → ( ( sin ‘ 𝑦 ) ≠ 0 ↔ ( sin ‘ 𝑥 ) ≠ 0 ) )
11 10 elrab ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ↔ ( 𝑥 ∈ ℂ ∧ ( sin ‘ 𝑥 ) ≠ 0 ) )
12 11 simprbi ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → ( sin ‘ 𝑥 ) ≠ 0 )
13 8 12 jca ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → ( ( sin ‘ 𝑥 ) ∈ ℂ ∧ ( sin ‘ 𝑥 ) ≠ 0 ) )
14 eldifsn ( ( sin ‘ 𝑥 ) ∈ ( ℂ ∖ { 0 } ) ↔ ( ( sin ‘ 𝑥 ) ∈ ℂ ∧ ( sin ‘ 𝑥 ) ≠ 0 ) )
15 13 14 sylibr ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → ( sin ‘ 𝑥 ) ∈ ( ℂ ∖ { 0 } ) )
16 15 adantl ( ( ⊤ ∧ 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ) → ( sin ‘ 𝑥 ) ∈ ( ℂ ∖ { 0 } ) )
17 coscl ( 𝑥 ∈ ℂ → ( cos ‘ 𝑥 ) ∈ ℂ )
18 6 17 syl ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → ( cos ‘ 𝑥 ) ∈ ℂ )
19 18 adantl ( ( ⊤ ∧ 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ) → ( cos ‘ 𝑥 ) ∈ ℂ )
20 7 adantl ( ( ⊤ ∧ 𝑥 ∈ ℂ ) → ( sin ‘ 𝑥 ) ∈ ℂ )
21 17 adantl ( ( ⊤ ∧ 𝑥 ∈ ℂ ) → ( cos ‘ 𝑥 ) ∈ ℂ )
22 sinf sin : ℂ ⟶ ℂ
23 22 a1i ( ⊤ → sin : ℂ ⟶ ℂ )
24 23 feqmptd ( ⊤ → sin = ( 𝑥 ∈ ℂ ↦ ( sin ‘ 𝑥 ) ) )
25 24 mptru sin = ( 𝑥 ∈ ℂ ↦ ( sin ‘ 𝑥 ) )
26 25 oveq2i ( ℂ D sin ) = ( ℂ D ( 𝑥 ∈ ℂ ↦ ( sin ‘ 𝑥 ) ) )
27 dvsin ( ℂ D sin ) = cos
28 26 27 eqtr3i ( ℂ D ( 𝑥 ∈ ℂ ↦ ( sin ‘ 𝑥 ) ) ) = cos
29 cosf cos : ℂ ⟶ ℂ
30 29 a1i ( ⊤ → cos : ℂ ⟶ ℂ )
31 30 feqmptd ( ⊤ → cos = ( 𝑥 ∈ ℂ ↦ ( cos ‘ 𝑥 ) ) )
32 31 mptru cos = ( 𝑥 ∈ ℂ ↦ ( cos ‘ 𝑥 ) )
33 28 32 eqtri ( ℂ D ( 𝑥 ∈ ℂ ↦ ( sin ‘ 𝑥 ) ) ) = ( 𝑥 ∈ ℂ ↦ ( cos ‘ 𝑥 ) )
34 33 a1i ( ⊤ → ( ℂ D ( 𝑥 ∈ ℂ ↦ ( sin ‘ 𝑥 ) ) ) = ( 𝑥 ∈ ℂ ↦ ( cos ‘ 𝑥 ) ) )
35 ssrab2 { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ⊆ ℂ
36 35 a1i ( ⊤ → { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ⊆ ℂ )
37 eqid ( TopOpen ‘ ℂfld ) = ( TopOpen ‘ ℂfld )
38 37 cnfldtopon ( TopOpen ‘ ℂfld ) ∈ ( TopOn ‘ ℂ )
39 38 toponrestid ( TopOpen ‘ ℂfld ) = ( ( TopOpen ‘ ℂfld ) ↾t ℂ )
40 sincn sin ∈ ( ℂ –cn→ ℂ )
41 ssid ℂ ⊆ ℂ
42 37 39 39 cncfcn ( ( ℂ ⊆ ℂ ∧ ℂ ⊆ ℂ ) → ( ℂ –cn→ ℂ ) = ( ( TopOpen ‘ ℂfld ) Cn ( TopOpen ‘ ℂfld ) ) )
43 41 41 42 mp2an ( ℂ –cn→ ℂ ) = ( ( TopOpen ‘ ℂfld ) Cn ( TopOpen ‘ ℂfld ) )
44 40 43 eleqtri sin ∈ ( ( TopOpen ‘ ℂfld ) Cn ( TopOpen ‘ ℂfld ) )
45 cnn0opn ( ℂ ∖ { 0 } ) ∈ ( TopOpen ‘ ℂfld )
46 cnima ( ( sin ∈ ( ( TopOpen ‘ ℂfld ) Cn ( TopOpen ‘ ℂfld ) ) ∧ ( ℂ ∖ { 0 } ) ∈ ( TopOpen ‘ ℂfld ) ) → ( sin “ ( ℂ ∖ { 0 } ) ) ∈ ( TopOpen ‘ ℂfld ) )
47 44 45 46 mp2an ( sin “ ( ℂ ∖ { 0 } ) ) ∈ ( TopOpen ‘ ℂfld )
48 sincl ( 𝑦 ∈ ℂ → ( sin ‘ 𝑦 ) ∈ ℂ )
49 eldifsn ( ( sin ‘ 𝑦 ) ∈ ( ℂ ∖ { 0 } ) ↔ ( ( sin ‘ 𝑦 ) ∈ ℂ ∧ ( sin ‘ 𝑦 ) ≠ 0 ) )
50 49 baib ( ( sin ‘ 𝑦 ) ∈ ℂ → ( ( sin ‘ 𝑦 ) ∈ ( ℂ ∖ { 0 } ) ↔ ( sin ‘ 𝑦 ) ≠ 0 ) )
51 48 50 syl ( 𝑦 ∈ ℂ → ( ( sin ‘ 𝑦 ) ∈ ( ℂ ∖ { 0 } ) ↔ ( sin ‘ 𝑦 ) ≠ 0 ) )
52 51 bicomd ( 𝑦 ∈ ℂ → ( ( sin ‘ 𝑦 ) ≠ 0 ↔ ( sin ‘ 𝑦 ) ∈ ( ℂ ∖ { 0 } ) ) )
53 52 rabbiia { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } = { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ∈ ( ℂ ∖ { 0 } ) }
54 23 feqmptd ( ⊤ → sin = ( 𝑦 ∈ ℂ ↦ ( sin ‘ 𝑦 ) ) )
55 54 mptru sin = ( 𝑦 ∈ ℂ ↦ ( sin ‘ 𝑦 ) )
56 55 mptpreima ( sin “ ( ℂ ∖ { 0 } ) ) = { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ∈ ( ℂ ∖ { 0 } ) }
57 53 56 eqtr4i { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } = ( sin “ ( ℂ ∖ { 0 } ) )
58 57 eleq1i ( { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ∈ ( TopOpen ‘ ℂfld ) ↔ ( sin “ ( ℂ ∖ { 0 } ) ) ∈ ( TopOpen ‘ ℂfld ) )
59 47 58 mpbir { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ∈ ( TopOpen ‘ ℂfld )
60 59 a1i ( ⊤ → { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ∈ ( TopOpen ‘ ℂfld ) )
61 4 20 21 34 36 39 37 60 dvmptres ( ⊤ → ( ℂ D ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ↦ ( sin ‘ 𝑥 ) ) ) = ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ↦ ( cos ‘ 𝑥 ) ) )
62 4 5 16 19 61 dvrecg ( ⊤ → ( ℂ D ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ↦ ( 1 / ( sin ‘ 𝑥 ) ) ) ) = ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ↦ - ( ( 1 · ( cos ‘ 𝑥 ) ) / ( ( sin ‘ 𝑥 ) ↑ 2 ) ) ) )
63 62 mptru ( ℂ D ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ↦ ( 1 / ( sin ‘ 𝑥 ) ) ) ) = ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ↦ - ( ( 1 · ( cos ‘ 𝑥 ) ) / ( ( sin ‘ 𝑥 ) ↑ 2 ) ) )
64 18 mullidd ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → ( 1 · ( cos ‘ 𝑥 ) ) = ( cos ‘ 𝑥 ) )
65 sqval ( ( sin ‘ 𝑥 ) ∈ ℂ → ( ( sin ‘ 𝑥 ) ↑ 2 ) = ( ( sin ‘ 𝑥 ) · ( sin ‘ 𝑥 ) ) )
66 8 65 syl ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → ( ( sin ‘ 𝑥 ) ↑ 2 ) = ( ( sin ‘ 𝑥 ) · ( sin ‘ 𝑥 ) ) )
67 64 66 oveq12d ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → ( ( 1 · ( cos ‘ 𝑥 ) ) / ( ( sin ‘ 𝑥 ) ↑ 2 ) ) = ( ( cos ‘ 𝑥 ) / ( ( sin ‘ 𝑥 ) · ( sin ‘ 𝑥 ) ) ) )
68 67 negeqd ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → - ( ( 1 · ( cos ‘ 𝑥 ) ) / ( ( sin ‘ 𝑥 ) ↑ 2 ) ) = - ( ( cos ‘ 𝑥 ) / ( ( sin ‘ 𝑥 ) · ( sin ‘ 𝑥 ) ) ) )
69 ax-1cn 1 ∈ ℂ
70 69 a1i ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → 1 ∈ ℂ )
71 70 8 18 8 12 12 divmuldivd ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → ( ( 1 / ( sin ‘ 𝑥 ) ) · ( ( cos ‘ 𝑥 ) / ( sin ‘ 𝑥 ) ) ) = ( ( 1 · ( cos ‘ 𝑥 ) ) / ( ( sin ‘ 𝑥 ) · ( sin ‘ 𝑥 ) ) ) )
72 64 oveq1d ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → ( ( 1 · ( cos ‘ 𝑥 ) ) / ( ( sin ‘ 𝑥 ) · ( sin ‘ 𝑥 ) ) ) = ( ( cos ‘ 𝑥 ) / ( ( sin ‘ 𝑥 ) · ( sin ‘ 𝑥 ) ) ) )
73 71 72 eqtrd ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → ( ( 1 / ( sin ‘ 𝑥 ) ) · ( ( cos ‘ 𝑥 ) / ( sin ‘ 𝑥 ) ) ) = ( ( cos ‘ 𝑥 ) / ( ( sin ‘ 𝑥 ) · ( sin ‘ 𝑥 ) ) ) )
74 73 eqcomd ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → ( ( cos ‘ 𝑥 ) / ( ( sin ‘ 𝑥 ) · ( sin ‘ 𝑥 ) ) ) = ( ( 1 / ( sin ‘ 𝑥 ) ) · ( ( cos ‘ 𝑥 ) / ( sin ‘ 𝑥 ) ) ) )
75 74 negeqd ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → - ( ( cos ‘ 𝑥 ) / ( ( sin ‘ 𝑥 ) · ( sin ‘ 𝑥 ) ) ) = - ( ( 1 / ( sin ‘ 𝑥 ) ) · ( ( cos ‘ 𝑥 ) / ( sin ‘ 𝑥 ) ) ) )
76 68 75 eqtrd ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → - ( ( 1 · ( cos ‘ 𝑥 ) ) / ( ( sin ‘ 𝑥 ) ↑ 2 ) ) = - ( ( 1 / ( sin ‘ 𝑥 ) ) · ( ( cos ‘ 𝑥 ) / ( sin ‘ 𝑥 ) ) ) )
77 70 8 12 divcld ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → ( 1 / ( sin ‘ 𝑥 ) ) ∈ ℂ )
78 18 8 12 divcld ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → ( ( cos ‘ 𝑥 ) / ( sin ‘ 𝑥 ) ) ∈ ℂ )
79 77 78 mulneg1d ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → ( - ( 1 / ( sin ‘ 𝑥 ) ) · ( ( cos ‘ 𝑥 ) / ( sin ‘ 𝑥 ) ) ) = - ( ( 1 / ( sin ‘ 𝑥 ) ) · ( ( cos ‘ 𝑥 ) / ( sin ‘ 𝑥 ) ) ) )
80 79 eqcomd ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → - ( ( 1 / ( sin ‘ 𝑥 ) ) · ( ( cos ‘ 𝑥 ) / ( sin ‘ 𝑥 ) ) ) = ( - ( 1 / ( sin ‘ 𝑥 ) ) · ( ( cos ‘ 𝑥 ) / ( sin ‘ 𝑥 ) ) ) )
81 76 80 eqtrd ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → - ( ( 1 · ( cos ‘ 𝑥 ) ) / ( ( sin ‘ 𝑥 ) ↑ 2 ) ) = ( - ( 1 / ( sin ‘ 𝑥 ) ) · ( ( cos ‘ 𝑥 ) / ( sin ‘ 𝑥 ) ) ) )
82 cscval ( ( 𝑥 ∈ ℂ ∧ ( sin ‘ 𝑥 ) ≠ 0 ) → ( csc ‘ 𝑥 ) = ( 1 / ( sin ‘ 𝑥 ) ) )
83 11 82 sylbi ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → ( csc ‘ 𝑥 ) = ( 1 / ( sin ‘ 𝑥 ) ) )
84 83 eqcomd ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → ( 1 / ( sin ‘ 𝑥 ) ) = ( csc ‘ 𝑥 ) )
85 84 negeqd ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → - ( 1 / ( sin ‘ 𝑥 ) ) = - ( csc ‘ 𝑥 ) )
86 cotval ( ( 𝑥 ∈ ℂ ∧ ( sin ‘ 𝑥 ) ≠ 0 ) → ( cot ‘ 𝑥 ) = ( ( cos ‘ 𝑥 ) / ( sin ‘ 𝑥 ) ) )
87 11 86 sylbi ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → ( cot ‘ 𝑥 ) = ( ( cos ‘ 𝑥 ) / ( sin ‘ 𝑥 ) ) )
88 87 eqcomd ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → ( ( cos ‘ 𝑥 ) / ( sin ‘ 𝑥 ) ) = ( cot ‘ 𝑥 ) )
89 85 88 oveq12d ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → ( - ( 1 / ( sin ‘ 𝑥 ) ) · ( ( cos ‘ 𝑥 ) / ( sin ‘ 𝑥 ) ) ) = ( - ( csc ‘ 𝑥 ) · ( cot ‘ 𝑥 ) ) )
90 81 89 eqtrd ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } → - ( ( 1 · ( cos ‘ 𝑥 ) ) / ( ( sin ‘ 𝑥 ) ↑ 2 ) ) = ( - ( csc ‘ 𝑥 ) · ( cot ‘ 𝑥 ) ) )
91 90 mpteq2ia ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ↦ - ( ( 1 · ( cos ‘ 𝑥 ) ) / ( ( sin ‘ 𝑥 ) ↑ 2 ) ) ) = ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ↦ ( - ( csc ‘ 𝑥 ) · ( cot ‘ 𝑥 ) ) )
92 1 77 fmpti csc : { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ⟶ ℂ
93 92 fdmi dom csc = { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 }
94 93 eqcomi { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } = dom csc
95 94 mpteq1i ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ↦ ( - ( csc ‘ 𝑥 ) · ( cot ‘ 𝑥 ) ) ) = ( 𝑥 ∈ dom csc ↦ ( - ( csc ‘ 𝑥 ) · ( cot ‘ 𝑥 ) ) )
96 91 95 eqtri ( 𝑥 ∈ { 𝑦 ∈ ℂ ∣ ( sin ‘ 𝑦 ) ≠ 0 } ↦ - ( ( 1 · ( cos ‘ 𝑥 ) ) / ( ( sin ‘ 𝑥 ) ↑ 2 ) ) ) = ( 𝑥 ∈ dom csc ↦ ( - ( csc ‘ 𝑥 ) · ( cot ‘ 𝑥 ) ) )
97 2 63 96 3eqtri ( ℂ D csc ) = ( 𝑥 ∈ dom csc ↦ ( - ( csc ‘ 𝑥 ) · ( cot ‘ 𝑥 ) ) )