MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  dvlog Structured version   Visualization version   GIF version

Theorem dvlog 24611
Description: The derivative of the complex logarithm function. (Contributed by Mario Carneiro, 25-Feb-2015.)
Hypothesis
Ref Expression
logcn.d 𝐷 = (ℂ ∖ (-∞(,]0))
Assertion
Ref Expression
dvlog (ℂ D (log ↾ 𝐷)) = (𝑥𝐷 ↦ (1 / 𝑥))
Distinct variable group:   𝑥,𝐷

Proof of Theorem dvlog
StepHypRef Expression
1 eqid 2771 . . . 4 (TopOpen‘ℂfld) = (TopOpen‘ℂfld)
21cnfldtopon 22799 . . . . 5 (TopOpen‘ℂfld) ∈ (TopOn‘ℂ)
32toponrestid 20939 . . . 4 (TopOpen‘ℂfld) = ((TopOpen‘ℂfld) ↾t ℂ)
4 cnelprrecn 10229 . . . . 5 ℂ ∈ {ℝ, ℂ}
54a1i 11 . . . 4 (⊤ → ℂ ∈ {ℝ, ℂ})
6 logcn.d . . . . . 6 𝐷 = (ℂ ∖ (-∞(,]0))
76logdmopn 24609 . . . . 5 𝐷 ∈ (TopOpen‘ℂfld)
87a1i 11 . . . 4 (⊤ → 𝐷 ∈ (TopOpen‘ℂfld))
9 logf1o 24525 . . . . . . . . 9 log:(ℂ ∖ {0})–1-1-onto→ran log
10 f1of1 6275 . . . . . . . . 9 (log:(ℂ ∖ {0})–1-1-onto→ran log → log:(ℂ ∖ {0})–1-1→ran log)
119, 10ax-mp 5 . . . . . . . 8 log:(ℂ ∖ {0})–1-1→ran log
126logdmss 24602 . . . . . . . 8 𝐷 ⊆ (ℂ ∖ {0})
13 f1ores 6290 . . . . . . . 8 ((log:(ℂ ∖ {0})–1-1→ran log ∧ 𝐷 ⊆ (ℂ ∖ {0})) → (log ↾ 𝐷):𝐷1-1-onto→(log “ 𝐷))
1411, 12, 13mp2an 672 . . . . . . 7 (log ↾ 𝐷):𝐷1-1-onto→(log “ 𝐷)
15 f1ocnv 6288 . . . . . . 7 ((log ↾ 𝐷):𝐷1-1-onto→(log “ 𝐷) → (log ↾ 𝐷):(log “ 𝐷)–1-1-onto𝐷)
1614, 15ax-mp 5 . . . . . 6 (log ↾ 𝐷):(log “ 𝐷)–1-1-onto𝐷
17 df-log 24517 . . . . . . . . . . 11 log = (exp ↾ (ℑ “ (-π(,]π)))
1817reseq1i 5528 . . . . . . . . . 10 (log ↾ 𝐷) = ((exp ↾ (ℑ “ (-π(,]π))) ↾ 𝐷)
1918cnveqi 5433 . . . . . . . . 9 (log ↾ 𝐷) = ((exp ↾ (ℑ “ (-π(,]π))) ↾ 𝐷)
20 eff 15011 . . . . . . . . . . 11 exp:ℂ⟶ℂ
21 cnvimass 5624 . . . . . . . . . . . 12 (ℑ “ (-π(,]π)) ⊆ dom ℑ
22 imf 14054 . . . . . . . . . . . . 13 ℑ:ℂ⟶ℝ
2322fdmi 6190 . . . . . . . . . . . 12 dom ℑ = ℂ
2421, 23sseqtri 3786 . . . . . . . . . . 11 (ℑ “ (-π(,]π)) ⊆ ℂ
25 fssres 6208 . . . . . . . . . . 11 ((exp:ℂ⟶ℂ ∧ (ℑ “ (-π(,]π)) ⊆ ℂ) → (exp ↾ (ℑ “ (-π(,]π))):(ℑ “ (-π(,]π))⟶ℂ)
2620, 24, 25mp2an 672 . . . . . . . . . 10 (exp ↾ (ℑ “ (-π(,]π))):(ℑ “ (-π(,]π))⟶ℂ
27 ffun 6186 . . . . . . . . . 10 ((exp ↾ (ℑ “ (-π(,]π))):(ℑ “ (-π(,]π))⟶ℂ → Fun (exp ↾ (ℑ “ (-π(,]π))))
28 funcnvres2 6107 . . . . . . . . . 10 (Fun (exp ↾ (ℑ “ (-π(,]π))) → ((exp ↾ (ℑ “ (-π(,]π))) ↾ 𝐷) = ((exp ↾ (ℑ “ (-π(,]π))) ↾ ((exp ↾ (ℑ “ (-π(,]π))) “ 𝐷)))
2926, 27, 28mp2b 10 . . . . . . . . 9 ((exp ↾ (ℑ “ (-π(,]π))) ↾ 𝐷) = ((exp ↾ (ℑ “ (-π(,]π))) ↾ ((exp ↾ (ℑ “ (-π(,]π))) “ 𝐷))
30 cnvimass 5624 . . . . . . . . . . 11 ((exp ↾ (ℑ “ (-π(,]π))) “ 𝐷) ⊆ dom (exp ↾ (ℑ “ (-π(,]π)))
3126fdmi 6190 . . . . . . . . . . 11 dom (exp ↾ (ℑ “ (-π(,]π))) = (ℑ “ (-π(,]π))
3230, 31sseqtri 3786 . . . . . . . . . 10 ((exp ↾ (ℑ “ (-π(,]π))) “ 𝐷) ⊆ (ℑ “ (-π(,]π))
33 resabs1 5566 . . . . . . . . . 10 (((exp ↾ (ℑ “ (-π(,]π))) “ 𝐷) ⊆ (ℑ “ (-π(,]π)) → ((exp ↾ (ℑ “ (-π(,]π))) ↾ ((exp ↾ (ℑ “ (-π(,]π))) “ 𝐷)) = (exp ↾ ((exp ↾ (ℑ “ (-π(,]π))) “ 𝐷)))
3432, 33ax-mp 5 . . . . . . . . 9 ((exp ↾ (ℑ “ (-π(,]π))) ↾ ((exp ↾ (ℑ “ (-π(,]π))) “ 𝐷)) = (exp ↾ ((exp ↾ (ℑ “ (-π(,]π))) “ 𝐷))
3519, 29, 343eqtri 2797 . . . . . . . 8 (log ↾ 𝐷) = (exp ↾ ((exp ↾ (ℑ “ (-π(,]π))) “ 𝐷))
3617imaeq1i 5602 . . . . . . . . 9 (log “ 𝐷) = ((exp ↾ (ℑ “ (-π(,]π))) “ 𝐷)
3736reseq2i 5529 . . . . . . . 8 (exp ↾ (log “ 𝐷)) = (exp ↾ ((exp ↾ (ℑ “ (-π(,]π))) “ 𝐷))
3835, 37eqtr4i 2796 . . . . . . 7 (log ↾ 𝐷) = (exp ↾ (log “ 𝐷))
39 f1oeq1 6266 . . . . . . 7 ((log ↾ 𝐷) = (exp ↾ (log “ 𝐷)) → ((log ↾ 𝐷):(log “ 𝐷)–1-1-onto𝐷 ↔ (exp ↾ (log “ 𝐷)):(log “ 𝐷)–1-1-onto𝐷))
4038, 39ax-mp 5 . . . . . 6 ((log ↾ 𝐷):(log “ 𝐷)–1-1-onto𝐷 ↔ (exp ↾ (log “ 𝐷)):(log “ 𝐷)–1-1-onto𝐷)
4116, 40mpbi 220 . . . . 5 (exp ↾ (log “ 𝐷)):(log “ 𝐷)–1-1-onto𝐷
4241a1i 11 . . . 4 (⊤ → (exp ↾ (log “ 𝐷)):(log “ 𝐷)–1-1-onto𝐷)
4338cnveqi 5433 . . . . . 6 (log ↾ 𝐷) = (exp ↾ (log “ 𝐷))
44 relres 5565 . . . . . . 7 Rel (log ↾ 𝐷)
45 dfrel2 5722 . . . . . . 7 (Rel (log ↾ 𝐷) ↔ (log ↾ 𝐷) = (log ↾ 𝐷))
4644, 45mpbi 220 . . . . . 6 (log ↾ 𝐷) = (log ↾ 𝐷)
4743, 46eqtr3i 2795 . . . . 5 (exp ↾ (log “ 𝐷)) = (log ↾ 𝐷)
48 f1of 6276 . . . . . . 7 ((log ↾ 𝐷):𝐷1-1-onto→(log “ 𝐷) → (log ↾ 𝐷):𝐷⟶(log “ 𝐷))
4914, 48mp1i 13 . . . . . 6 (⊤ → (log ↾ 𝐷):𝐷⟶(log “ 𝐷))
50 imassrn 5616 . . . . . . . 8 (log “ 𝐷) ⊆ ran log
51 logrncn 24523 . . . . . . . . 9 (𝑥 ∈ ran log → 𝑥 ∈ ℂ)
5251ssriv 3756 . . . . . . . 8 ran log ⊆ ℂ
5350, 52sstri 3761 . . . . . . 7 (log “ 𝐷) ⊆ ℂ
546logcn 24607 . . . . . . 7 (log ↾ 𝐷) ∈ (𝐷cn→ℂ)
55 cncffvrn 22914 . . . . . . 7 (((log “ 𝐷) ⊆ ℂ ∧ (log ↾ 𝐷) ∈ (𝐷cn→ℂ)) → ((log ↾ 𝐷) ∈ (𝐷cn→(log “ 𝐷)) ↔ (log ↾ 𝐷):𝐷⟶(log “ 𝐷)))
5653, 54, 55mp2an 672 . . . . . 6 ((log ↾ 𝐷) ∈ (𝐷cn→(log “ 𝐷)) ↔ (log ↾ 𝐷):𝐷⟶(log “ 𝐷))
5749, 56sylibr 224 . . . . 5 (⊤ → (log ↾ 𝐷) ∈ (𝐷cn→(log “ 𝐷)))
5847, 57syl5eqel 2854 . . . 4 (⊤ → (exp ↾ (log “ 𝐷)) ∈ (𝐷cn→(log “ 𝐷)))
59 ssid 3773 . . . . . . . . 9 ℂ ⊆ ℂ
601, 3dvres 23888 . . . . . . . . 9 (((ℂ ⊆ ℂ ∧ exp:ℂ⟶ℂ) ∧ (ℂ ⊆ ℂ ∧ (log “ 𝐷) ⊆ ℂ)) → (ℂ D (exp ↾ (log “ 𝐷))) = ((ℂ D exp) ↾ ((int‘(TopOpen‘ℂfld))‘(log “ 𝐷))))
6159, 20, 59, 53, 60mp4an 673 . . . . . . . 8 (ℂ D (exp ↾ (log “ 𝐷))) = ((ℂ D exp) ↾ ((int‘(TopOpen‘ℂfld))‘(log “ 𝐷)))
62 dvef 23956 . . . . . . . . 9 (ℂ D exp) = exp
631cnfldtop 22800 . . . . . . . . . 10 (TopOpen‘ℂfld) ∈ Top
646dvloglem 24608 . . . . . . . . . 10 (log “ 𝐷) ∈ (TopOpen‘ℂfld)
65 isopn3i 21100 . . . . . . . . . 10 (((TopOpen‘ℂfld) ∈ Top ∧ (log “ 𝐷) ∈ (TopOpen‘ℂfld)) → ((int‘(TopOpen‘ℂfld))‘(log “ 𝐷)) = (log “ 𝐷))
6663, 64, 65mp2an 672 . . . . . . . . 9 ((int‘(TopOpen‘ℂfld))‘(log “ 𝐷)) = (log “ 𝐷)
6762, 66reseq12i 5530 . . . . . . . 8 ((ℂ D exp) ↾ ((int‘(TopOpen‘ℂfld))‘(log “ 𝐷))) = (exp ↾ (log “ 𝐷))
6861, 67eqtri 2793 . . . . . . 7 (ℂ D (exp ↾ (log “ 𝐷))) = (exp ↾ (log “ 𝐷))
6968dmeqi 5461 . . . . . 6 dom (ℂ D (exp ↾ (log “ 𝐷))) = dom (exp ↾ (log “ 𝐷))
70 dmres 5558 . . . . . 6 dom (exp ↾ (log “ 𝐷)) = ((log “ 𝐷) ∩ dom exp)
7120fdmi 6190 . . . . . . . 8 dom exp = ℂ
7253, 71sseqtr4i 3787 . . . . . . 7 (log “ 𝐷) ⊆ dom exp
73 df-ss 3737 . . . . . . 7 ((log “ 𝐷) ⊆ dom exp ↔ ((log “ 𝐷) ∩ dom exp) = (log “ 𝐷))
7472, 73mpbi 220 . . . . . 6 ((log “ 𝐷) ∩ dom exp) = (log “ 𝐷)
7569, 70, 743eqtri 2797 . . . . 5 dom (ℂ D (exp ↾ (log “ 𝐷))) = (log “ 𝐷)
7675a1i 11 . . . 4 (⊤ → dom (ℂ D (exp ↾ (log “ 𝐷))) = (log “ 𝐷))
77 neirr 2952 . . . . . 6 ¬ 0 ≠ 0
78 resss 5561 . . . . . . . . . . . . 13 ((ℂ D exp) ↾ ((int‘(TopOpen‘ℂfld))‘(log “ 𝐷))) ⊆ (ℂ D exp)
7961, 78eqsstri 3784 . . . . . . . . . . . 12 (ℂ D (exp ↾ (log “ 𝐷))) ⊆ (ℂ D exp)
8079, 62sseqtri 3786 . . . . . . . . . . 11 (ℂ D (exp ↾ (log “ 𝐷))) ⊆ exp
81 rnss 5490 . . . . . . . . . . 11 ((ℂ D (exp ↾ (log “ 𝐷))) ⊆ exp → ran (ℂ D (exp ↾ (log “ 𝐷))) ⊆ ran exp)
8280, 81ax-mp 5 . . . . . . . . . 10 ran (ℂ D (exp ↾ (log “ 𝐷))) ⊆ ran exp
83 eff2 15028 . . . . . . . . . . 11 exp:ℂ⟶(ℂ ∖ {0})
84 frn 6191 . . . . . . . . . . 11 (exp:ℂ⟶(ℂ ∖ {0}) → ran exp ⊆ (ℂ ∖ {0}))
8583, 84ax-mp 5 . . . . . . . . . 10 ran exp ⊆ (ℂ ∖ {0})
8682, 85sstri 3761 . . . . . . . . 9 ran (ℂ D (exp ↾ (log “ 𝐷))) ⊆ (ℂ ∖ {0})
8786sseli 3748 . . . . . . . 8 (0 ∈ ran (ℂ D (exp ↾ (log “ 𝐷))) → 0 ∈ (ℂ ∖ {0}))
88 eldifsn 4453 . . . . . . . 8 (0 ∈ (ℂ ∖ {0}) ↔ (0 ∈ ℂ ∧ 0 ≠ 0))
8987, 88sylib 208 . . . . . . 7 (0 ∈ ran (ℂ D (exp ↾ (log “ 𝐷))) → (0 ∈ ℂ ∧ 0 ≠ 0))
9089simprd 483 . . . . . 6 (0 ∈ ran (ℂ D (exp ↾ (log “ 𝐷))) → 0 ≠ 0)
9177, 90mto 188 . . . . 5 ¬ 0 ∈ ran (ℂ D (exp ↾ (log “ 𝐷)))
9291a1i 11 . . . 4 (⊤ → ¬ 0 ∈ ran (ℂ D (exp ↾ (log “ 𝐷))))
931, 3, 5, 8, 42, 58, 76, 92dvcnv 23953 . . 3 (⊤ → (ℂ D (exp ↾ (log “ 𝐷))) = (𝑥𝐷 ↦ (1 / ((ℂ D (exp ↾ (log “ 𝐷)))‘((exp ↾ (log “ 𝐷))‘𝑥)))))
9493trud 1641 . 2 (ℂ D (exp ↾ (log “ 𝐷))) = (𝑥𝐷 ↦ (1 / ((ℂ D (exp ↾ (log “ 𝐷)))‘((exp ↾ (log “ 𝐷))‘𝑥))))
9547oveq2i 6802 . 2 (ℂ D (exp ↾ (log “ 𝐷))) = (ℂ D (log ↾ 𝐷))
9668fveq1i 6331 . . . . 5 ((ℂ D (exp ↾ (log “ 𝐷)))‘((exp ↾ (log “ 𝐷))‘𝑥)) = ((exp ↾ (log “ 𝐷))‘((exp ↾ (log “ 𝐷))‘𝑥))
97 f1ocnvfv2 6674 . . . . . 6 (((exp ↾ (log “ 𝐷)):(log “ 𝐷)–1-1-onto𝐷𝑥𝐷) → ((exp ↾ (log “ 𝐷))‘((exp ↾ (log “ 𝐷))‘𝑥)) = 𝑥)
9841, 97mpan 670 . . . . 5 (𝑥𝐷 → ((exp ↾ (log “ 𝐷))‘((exp ↾ (log “ 𝐷))‘𝑥)) = 𝑥)
9996, 98syl5eq 2817 . . . 4 (𝑥𝐷 → ((ℂ D (exp ↾ (log “ 𝐷)))‘((exp ↾ (log “ 𝐷))‘𝑥)) = 𝑥)
10099oveq2d 6807 . . 3 (𝑥𝐷 → (1 / ((ℂ D (exp ↾ (log “ 𝐷)))‘((exp ↾ (log “ 𝐷))‘𝑥))) = (1 / 𝑥))
101100mpteq2ia 4874 . 2 (𝑥𝐷 ↦ (1 / ((ℂ D (exp ↾ (log “ 𝐷)))‘((exp ↾ (log “ 𝐷))‘𝑥)))) = (𝑥𝐷 ↦ (1 / 𝑥))
10294, 95, 1013eqtr3i 2801 1 (ℂ D (log ↾ 𝐷)) = (𝑥𝐷 ↦ (1 / 𝑥))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wb 196  wa 382   = wceq 1631  wtru 1632  wcel 2145  wne 2943  cdif 3720  cin 3722  wss 3723  {csn 4316  {cpr 4318  cmpt 4863  ccnv 5248  dom cdm 5249  ran crn 5250  cres 5251  cima 5252  Rel wrel 5254  Fun wfun 6023  wf 6025  1-1wf1 6026  1-1-ontowf1o 6028  cfv 6029  (class class class)co 6791  cc 10134  cr 10135  0cc0 10136  1c1 10137  -∞cmnf 10272  -cneg 10467   / cdiv 10884  (,]cioc 12374  cim 14039  expce 14991  πcpi 14996  TopOpenctopn 16283  fldccnfld 19954  Topctop 20911  intcnt 21035  cnccncf 22892   D cdv 23840  logclog 24515
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1870  ax-4 1885  ax-5 1991  ax-6 2057  ax-7 2093  ax-8 2147  ax-9 2154  ax-10 2174  ax-11 2190  ax-12 2203  ax-13 2408  ax-ext 2751  ax-rep 4904  ax-sep 4915  ax-nul 4923  ax-pow 4974  ax-pr 5034  ax-un 7094  ax-inf2 8700  ax-cnex 10192  ax-resscn 10193  ax-1cn 10194  ax-icn 10195  ax-addcl 10196  ax-addrcl 10197  ax-mulcl 10198  ax-mulrcl 10199  ax-mulcom 10200  ax-addass 10201  ax-mulass 10202  ax-distr 10203  ax-i2m1 10204  ax-1ne0 10205  ax-1rid 10206  ax-rnegex 10207  ax-rrecex 10208  ax-cnre 10209  ax-pre-lttri 10210  ax-pre-lttrn 10211  ax-pre-ltadd 10212  ax-pre-mulgt0 10213  ax-pre-sup 10214  ax-addf 10215  ax-mulf 10216
This theorem depends on definitions:  df-bi 197  df-an 383  df-or 837  df-3or 1072  df-3an 1073  df-tru 1634  df-fal 1637  df-ex 1853  df-nf 1858  df-sb 2050  df-eu 2622  df-mo 2623  df-clab 2758  df-cleq 2764  df-clel 2767  df-nfc 2902  df-ne 2944  df-nel 3047  df-ral 3066  df-rex 3067  df-reu 3068  df-rmo 3069  df-rab 3070  df-v 3353  df-sbc 3588  df-csb 3683  df-dif 3726  df-un 3728  df-in 3730  df-ss 3737  df-pss 3739  df-nul 4064  df-if 4226  df-pw 4299  df-sn 4317  df-pr 4319  df-tp 4321  df-op 4323  df-uni 4575  df-int 4612  df-iun 4656  df-iin 4657  df-br 4787  df-opab 4847  df-mpt 4864  df-tr 4887  df-id 5157  df-eprel 5162  df-po 5170  df-so 5171  df-fr 5208  df-se 5209  df-we 5210  df-xp 5255  df-rel 5256  df-cnv 5257  df-co 5258  df-dm 5259  df-rn 5260  df-res 5261  df-ima 5262  df-pred 5821  df-ord 5867  df-on 5868  df-lim 5869  df-suc 5870  df-iota 5992  df-fun 6031  df-fn 6032  df-f 6033  df-f1 6034  df-fo 6035  df-f1o 6036  df-fv 6037  df-isom 6038  df-riota 6752  df-ov 6794  df-oprab 6795  df-mpt2 6796  df-of 7042  df-om 7211  df-1st 7313  df-2nd 7314  df-supp 7445  df-wrecs 7557  df-recs 7619  df-rdg 7657  df-1o 7711  df-2o 7712  df-oadd 7715  df-er 7894  df-map 8009  df-pm 8010  df-ixp 8061  df-en 8108  df-dom 8109  df-sdom 8110  df-fin 8111  df-fsupp 8430  df-fi 8471  df-sup 8502  df-inf 8503  df-oi 8569  df-card 8963  df-cda 9190  df-pnf 10276  df-mnf 10277  df-xr 10278  df-ltxr 10279  df-le 10280  df-sub 10468  df-neg 10469  df-div 10885  df-nn 11221  df-2 11279  df-3 11280  df-4 11281  df-5 11282  df-6 11283  df-7 11284  df-8 11285  df-9 11286  df-n0 11493  df-z 11578  df-dec 11694  df-uz 11887  df-q 11990  df-rp 12029  df-xneg 12144  df-xadd 12145  df-xmul 12146  df-ioo 12377  df-ioc 12378  df-ico 12379  df-icc 12380  df-fz 12527  df-fzo 12667  df-fl 12794  df-mod 12870  df-seq 13002  df-exp 13061  df-fac 13258  df-bc 13287  df-hash 13315  df-shft 14008  df-cj 14040  df-re 14041  df-im 14042  df-sqrt 14176  df-abs 14177  df-limsup 14403  df-clim 14420  df-rlim 14421  df-sum 14618  df-ef 14997  df-sin 14999  df-cos 15000  df-tan 15001  df-pi 15002  df-struct 16059  df-ndx 16060  df-slot 16061  df-base 16063  df-sets 16064  df-ress 16065  df-plusg 16155  df-mulr 16156  df-starv 16157  df-sca 16158  df-vsca 16159  df-ip 16160  df-tset 16161  df-ple 16162  df-ds 16165  df-unif 16166  df-hom 16167  df-cco 16168  df-rest 16284  df-topn 16285  df-0g 16303  df-gsum 16304  df-topgen 16305  df-pt 16306  df-prds 16309  df-xrs 16363  df-qtop 16368  df-imas 16369  df-xps 16371  df-mre 16447  df-mrc 16448  df-acs 16450  df-mgm 17443  df-sgrp 17485  df-mnd 17496  df-submnd 17537  df-mulg 17742  df-cntz 17950  df-cmn 18395  df-psmet 19946  df-xmet 19947  df-met 19948  df-bl 19949  df-mopn 19950  df-fbas 19951  df-fg 19952  df-cnfld 19955  df-top 20912  df-topon 20929  df-topsp 20951  df-bases 20964  df-cld 21037  df-ntr 21038  df-cls 21039  df-nei 21116  df-lp 21154  df-perf 21155  df-cn 21245  df-cnp 21246  df-haus 21333  df-cmp 21404  df-tx 21579  df-hmeo 21772  df-fil 21863  df-fm 21955  df-flim 21956  df-flf 21957  df-xms 22338  df-ms 22339  df-tms 22340  df-cncf 22894  df-limc 23843  df-dv 23844  df-log 24517
This theorem is referenced by:  dvlog2  24613  dvcncxp1  24698  dvatan  24876  lgamgulmlem2  24970  dvasin  33821
  Copyright terms: Public domain W3C validator