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

Theorem sinq12gt0 26017
Description: The sine of a number strictly between 0 and Ο€ is positive. (Contributed by Paul Chapman, 15-Mar-2008.)
Assertion
Ref Expression
sinq12gt0 (𝐴 ∈ (0(,)Ο€) β†’ 0 < (sinβ€˜π΄))

Proof of Theorem sinq12gt0
StepHypRef Expression
1 0xr 11261 . . 3 0 ∈ ℝ*
2 pire 25968 . . . 4 Ο€ ∈ ℝ
32rexri 11272 . . 3 Ο€ ∈ ℝ*
4 elioo2 13365 . . 3 ((0 ∈ ℝ* ∧ Ο€ ∈ ℝ*) β†’ (𝐴 ∈ (0(,)Ο€) ↔ (𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€)))
51, 3, 4mp2an 691 . 2 (𝐴 ∈ (0(,)Ο€) ↔ (𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€))
6 rehalfcl 12438 . . . . . 6 (𝐴 ∈ ℝ β†’ (𝐴 / 2) ∈ ℝ)
763ad2ant1 1134 . . . . 5 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ (𝐴 / 2) ∈ ℝ)
8 halfpos2 12441 . . . . . . 7 (𝐴 ∈ ℝ β†’ (0 < 𝐴 ↔ 0 < (𝐴 / 2)))
98biimpa 478 . . . . . 6 ((𝐴 ∈ ℝ ∧ 0 < 𝐴) β†’ 0 < (𝐴 / 2))
1093adant3 1133 . . . . 5 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ 0 < (𝐴 / 2))
11 2re 12286 . . . . . . . . 9 2 ∈ ℝ
12 2pos 12315 . . . . . . . . 9 0 < 2
1311, 12pm3.2i 472 . . . . . . . 8 (2 ∈ ℝ ∧ 0 < 2)
14 ltdiv1 12078 . . . . . . . 8 ((𝐴 ∈ ℝ ∧ Ο€ ∈ ℝ ∧ (2 ∈ ℝ ∧ 0 < 2)) β†’ (𝐴 < Ο€ ↔ (𝐴 / 2) < (Ο€ / 2)))
152, 13, 14mp3an23 1454 . . . . . . 7 (𝐴 ∈ ℝ β†’ (𝐴 < Ο€ ↔ (𝐴 / 2) < (Ο€ / 2)))
1615adantr 482 . . . . . 6 ((𝐴 ∈ ℝ ∧ 0 < 𝐴) β†’ (𝐴 < Ο€ ↔ (𝐴 / 2) < (Ο€ / 2)))
1716biimp3a 1470 . . . . 5 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ (𝐴 / 2) < (Ο€ / 2))
18 sincosq1lem 26007 . . . . 5 (((𝐴 / 2) ∈ ℝ ∧ 0 < (𝐴 / 2) ∧ (𝐴 / 2) < (Ο€ / 2)) β†’ 0 < (sinβ€˜(𝐴 / 2)))
197, 10, 17, 18syl3anc 1372 . . . 4 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ 0 < (sinβ€˜(𝐴 / 2)))
20 resubcl 11524 . . . . . . . . 9 ((Ο€ ∈ ℝ ∧ 𝐴 ∈ ℝ) β†’ (Ο€ βˆ’ 𝐴) ∈ ℝ)
212, 20mpan 689 . . . . . . . 8 (𝐴 ∈ ℝ β†’ (Ο€ βˆ’ 𝐴) ∈ ℝ)
22 rehalfcl 12438 . . . . . . . 8 ((Ο€ βˆ’ 𝐴) ∈ ℝ β†’ ((Ο€ βˆ’ 𝐴) / 2) ∈ ℝ)
2321, 22syl 17 . . . . . . 7 (𝐴 ∈ ℝ β†’ ((Ο€ βˆ’ 𝐴) / 2) ∈ ℝ)
24233ad2ant1 1134 . . . . . 6 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ ((Ο€ βˆ’ 𝐴) / 2) ∈ ℝ)
25 posdif 11707 . . . . . . . . . 10 ((𝐴 ∈ ℝ ∧ Ο€ ∈ ℝ) β†’ (𝐴 < Ο€ ↔ 0 < (Ο€ βˆ’ 𝐴)))
262, 25mpan2 690 . . . . . . . . 9 (𝐴 ∈ ℝ β†’ (𝐴 < Ο€ ↔ 0 < (Ο€ βˆ’ 𝐴)))
27 halfpos2 12441 . . . . . . . . . 10 ((Ο€ βˆ’ 𝐴) ∈ ℝ β†’ (0 < (Ο€ βˆ’ 𝐴) ↔ 0 < ((Ο€ βˆ’ 𝐴) / 2)))
2821, 27syl 17 . . . . . . . . 9 (𝐴 ∈ ℝ β†’ (0 < (Ο€ βˆ’ 𝐴) ↔ 0 < ((Ο€ βˆ’ 𝐴) / 2)))
2926, 28bitrd 279 . . . . . . . 8 (𝐴 ∈ ℝ β†’ (𝐴 < Ο€ ↔ 0 < ((Ο€ βˆ’ 𝐴) / 2)))
3029adantr 482 . . . . . . 7 ((𝐴 ∈ ℝ ∧ 0 < 𝐴) β†’ (𝐴 < Ο€ ↔ 0 < ((Ο€ βˆ’ 𝐴) / 2)))
3130biimp3a 1470 . . . . . 6 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ 0 < ((Ο€ βˆ’ 𝐴) / 2))
32 ltsubpos 11706 . . . . . . . . . 10 ((𝐴 ∈ ℝ ∧ Ο€ ∈ ℝ) β†’ (0 < 𝐴 ↔ (Ο€ βˆ’ 𝐴) < Ο€))
332, 32mpan2 690 . . . . . . . . 9 (𝐴 ∈ ℝ β†’ (0 < 𝐴 ↔ (Ο€ βˆ’ 𝐴) < Ο€))
34 ltdiv1 12078 . . . . . . . . . . 11 (((Ο€ βˆ’ 𝐴) ∈ ℝ ∧ Ο€ ∈ ℝ ∧ (2 ∈ ℝ ∧ 0 < 2)) β†’ ((Ο€ βˆ’ 𝐴) < Ο€ ↔ ((Ο€ βˆ’ 𝐴) / 2) < (Ο€ / 2)))
352, 13, 34mp3an23 1454 . . . . . . . . . 10 ((Ο€ βˆ’ 𝐴) ∈ ℝ β†’ ((Ο€ βˆ’ 𝐴) < Ο€ ↔ ((Ο€ βˆ’ 𝐴) / 2) < (Ο€ / 2)))
3621, 35syl 17 . . . . . . . . 9 (𝐴 ∈ ℝ β†’ ((Ο€ βˆ’ 𝐴) < Ο€ ↔ ((Ο€ βˆ’ 𝐴) / 2) < (Ο€ / 2)))
3733, 36bitrd 279 . . . . . . . 8 (𝐴 ∈ ℝ β†’ (0 < 𝐴 ↔ ((Ο€ βˆ’ 𝐴) / 2) < (Ο€ / 2)))
3837biimpa 478 . . . . . . 7 ((𝐴 ∈ ℝ ∧ 0 < 𝐴) β†’ ((Ο€ βˆ’ 𝐴) / 2) < (Ο€ / 2))
39383adant3 1133 . . . . . 6 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ ((Ο€ βˆ’ 𝐴) / 2) < (Ο€ / 2))
40 sincosq1lem 26007 . . . . . 6 ((((Ο€ βˆ’ 𝐴) / 2) ∈ ℝ ∧ 0 < ((Ο€ βˆ’ 𝐴) / 2) ∧ ((Ο€ βˆ’ 𝐴) / 2) < (Ο€ / 2)) β†’ 0 < (sinβ€˜((Ο€ βˆ’ 𝐴) / 2)))
4124, 31, 39, 40syl3anc 1372 . . . . 5 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ 0 < (sinβ€˜((Ο€ βˆ’ 𝐴) / 2)))
42 recn 11200 . . . . . . . . 9 (𝐴 ∈ ℝ β†’ 𝐴 ∈ β„‚)
43 picn 25969 . . . . . . . . . 10 Ο€ ∈ β„‚
44 2cnne0 12422 . . . . . . . . . 10 (2 ∈ β„‚ ∧ 2 β‰  0)
45 divsubdir 11908 . . . . . . . . . 10 ((Ο€ ∈ β„‚ ∧ 𝐴 ∈ β„‚ ∧ (2 ∈ β„‚ ∧ 2 β‰  0)) β†’ ((Ο€ βˆ’ 𝐴) / 2) = ((Ο€ / 2) βˆ’ (𝐴 / 2)))
4643, 44, 45mp3an13 1453 . . . . . . . . 9 (𝐴 ∈ β„‚ β†’ ((Ο€ βˆ’ 𝐴) / 2) = ((Ο€ / 2) βˆ’ (𝐴 / 2)))
4742, 46syl 17 . . . . . . . 8 (𝐴 ∈ ℝ β†’ ((Ο€ βˆ’ 𝐴) / 2) = ((Ο€ / 2) βˆ’ (𝐴 / 2)))
4847fveq2d 6896 . . . . . . 7 (𝐴 ∈ ℝ β†’ (sinβ€˜((Ο€ βˆ’ 𝐴) / 2)) = (sinβ€˜((Ο€ / 2) βˆ’ (𝐴 / 2))))
496recnd 11242 . . . . . . . 8 (𝐴 ∈ ℝ β†’ (𝐴 / 2) ∈ β„‚)
50 sinhalfpim 26003 . . . . . . . 8 ((𝐴 / 2) ∈ β„‚ β†’ (sinβ€˜((Ο€ / 2) βˆ’ (𝐴 / 2))) = (cosβ€˜(𝐴 / 2)))
5149, 50syl 17 . . . . . . 7 (𝐴 ∈ ℝ β†’ (sinβ€˜((Ο€ / 2) βˆ’ (𝐴 / 2))) = (cosβ€˜(𝐴 / 2)))
5248, 51eqtrd 2773 . . . . . 6 (𝐴 ∈ ℝ β†’ (sinβ€˜((Ο€ βˆ’ 𝐴) / 2)) = (cosβ€˜(𝐴 / 2)))
53523ad2ant1 1134 . . . . 5 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ (sinβ€˜((Ο€ βˆ’ 𝐴) / 2)) = (cosβ€˜(𝐴 / 2)))
5441, 53breqtrd 5175 . . . 4 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ 0 < (cosβ€˜(𝐴 / 2)))
55 resincl 16083 . . . . . . . 8 ((𝐴 / 2) ∈ ℝ β†’ (sinβ€˜(𝐴 / 2)) ∈ ℝ)
56 recoscl 16084 . . . . . . . 8 ((𝐴 / 2) ∈ ℝ β†’ (cosβ€˜(𝐴 / 2)) ∈ ℝ)
5755, 56jca 513 . . . . . . 7 ((𝐴 / 2) ∈ ℝ β†’ ((sinβ€˜(𝐴 / 2)) ∈ ℝ ∧ (cosβ€˜(𝐴 / 2)) ∈ ℝ))
58 axmulgt0 11288 . . . . . . 7 (((sinβ€˜(𝐴 / 2)) ∈ ℝ ∧ (cosβ€˜(𝐴 / 2)) ∈ ℝ) β†’ ((0 < (sinβ€˜(𝐴 / 2)) ∧ 0 < (cosβ€˜(𝐴 / 2))) β†’ 0 < ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2)))))
596, 57, 583syl 18 . . . . . 6 (𝐴 ∈ ℝ β†’ ((0 < (sinβ€˜(𝐴 / 2)) ∧ 0 < (cosβ€˜(𝐴 / 2))) β†’ 0 < ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2)))))
60 remulcl 11195 . . . . . . . . 9 (((sinβ€˜(𝐴 / 2)) ∈ ℝ ∧ (cosβ€˜(𝐴 / 2)) ∈ ℝ) β†’ ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2))) ∈ ℝ)
616, 57, 603syl 18 . . . . . . . 8 (𝐴 ∈ ℝ β†’ ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2))) ∈ ℝ)
62 axmulgt0 11288 . . . . . . . 8 ((2 ∈ ℝ ∧ ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2))) ∈ ℝ) β†’ ((0 < 2 ∧ 0 < ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2)))) β†’ 0 < (2 Β· ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2))))))
6311, 61, 62sylancr 588 . . . . . . 7 (𝐴 ∈ ℝ β†’ ((0 < 2 ∧ 0 < ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2)))) β†’ 0 < (2 Β· ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2))))))
6412, 63mpani 695 . . . . . 6 (𝐴 ∈ ℝ β†’ (0 < ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2))) β†’ 0 < (2 Β· ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2))))))
6559, 64syld 47 . . . . 5 (𝐴 ∈ ℝ β†’ ((0 < (sinβ€˜(𝐴 / 2)) ∧ 0 < (cosβ€˜(𝐴 / 2))) β†’ 0 < (2 Β· ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2))))))
66653ad2ant1 1134 . . . 4 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ ((0 < (sinβ€˜(𝐴 / 2)) ∧ 0 < (cosβ€˜(𝐴 / 2))) β†’ 0 < (2 Β· ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2))))))
6719, 54, 66mp2and 698 . . 3 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ 0 < (2 Β· ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2)))))
68 2cn 12287 . . . . . . . 8 2 ∈ β„‚
69 2ne0 12316 . . . . . . . 8 2 β‰  0
70 divcan2 11880 . . . . . . . 8 ((𝐴 ∈ β„‚ ∧ 2 ∈ β„‚ ∧ 2 β‰  0) β†’ (2 Β· (𝐴 / 2)) = 𝐴)
7168, 69, 70mp3an23 1454 . . . . . . 7 (𝐴 ∈ β„‚ β†’ (2 Β· (𝐴 / 2)) = 𝐴)
7242, 71syl 17 . . . . . 6 (𝐴 ∈ ℝ β†’ (2 Β· (𝐴 / 2)) = 𝐴)
7372fveq2d 6896 . . . . 5 (𝐴 ∈ ℝ β†’ (sinβ€˜(2 Β· (𝐴 / 2))) = (sinβ€˜π΄))
74 sin2t 16120 . . . . . 6 ((𝐴 / 2) ∈ β„‚ β†’ (sinβ€˜(2 Β· (𝐴 / 2))) = (2 Β· ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2)))))
7549, 74syl 17 . . . . 5 (𝐴 ∈ ℝ β†’ (sinβ€˜(2 Β· (𝐴 / 2))) = (2 Β· ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2)))))
7673, 75eqtr3d 2775 . . . 4 (𝐴 ∈ ℝ β†’ (sinβ€˜π΄) = (2 Β· ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2)))))
77763ad2ant1 1134 . . 3 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ (sinβ€˜π΄) = (2 Β· ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2)))))
7867, 77breqtrrd 5177 . 2 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ 0 < (sinβ€˜π΄))
795, 78sylbi 216 1 (𝐴 ∈ (0(,)Ο€) β†’ 0 < (sinβ€˜π΄))
Colors of variables: wff setvar class
Syntax hints:   β†’ wi 4   ↔ wb 205   ∧ wa 397   ∧ w3a 1088   = wceq 1542   ∈ wcel 2107   β‰  wne 2941   class class class wbr 5149  β€˜cfv 6544  (class class class)co 7409  β„‚cc 11108  β„cr 11109  0cc0 11110   Β· cmul 11115  β„*cxr 11247   < clt 11248   βˆ’ cmin 11444   / cdiv 11871  2c2 12267  (,)cioo 13324  sincsin 16007  cosccos 16008  Ο€cpi 16010
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1798  ax-4 1812  ax-5 1914  ax-6 1972  ax-7 2012  ax-8 2109  ax-9 2117  ax-10 2138  ax-11 2155  ax-12 2172  ax-ext 2704  ax-rep 5286  ax-sep 5300  ax-nul 5307  ax-pow 5364  ax-pr 5428  ax-un 7725  ax-inf2 9636  ax-cnex 11166  ax-resscn 11167  ax-1cn 11168  ax-icn 11169  ax-addcl 11170  ax-addrcl 11171  ax-mulcl 11172  ax-mulrcl 11173  ax-mulcom 11174  ax-addass 11175  ax-mulass 11176  ax-distr 11177  ax-i2m1 11178  ax-1ne0 11179  ax-1rid 11180  ax-rnegex 11181  ax-rrecex 11182  ax-cnre 11183  ax-pre-lttri 11184  ax-pre-lttrn 11185  ax-pre-ltadd 11186  ax-pre-mulgt0 11187  ax-pre-sup 11188  ax-addf 11189  ax-mulf 11190
This theorem depends on definitions:  df-bi 206  df-an 398  df-or 847  df-3or 1089  df-3an 1090  df-tru 1545  df-fal 1555  df-ex 1783  df-nf 1787  df-sb 2069  df-mo 2535  df-eu 2564  df-clab 2711  df-cleq 2725  df-clel 2811  df-nfc 2886  df-ne 2942  df-nel 3048  df-ral 3063  df-rex 3072  df-rmo 3377  df-reu 3378  df-rab 3434  df-v 3477  df-sbc 3779  df-csb 3895  df-dif 3952  df-un 3954  df-in 3956  df-ss 3966  df-pss 3968  df-nul 4324  df-if 4530  df-pw 4605  df-sn 4630  df-pr 4632  df-tp 4634  df-op 4636  df-uni 4910  df-int 4952  df-iun 5000  df-iin 5001  df-br 5150  df-opab 5212  df-mpt 5233  df-tr 5267  df-id 5575  df-eprel 5581  df-po 5589  df-so 5590  df-fr 5632  df-se 5633  df-we 5634  df-xp 5683  df-rel 5684  df-cnv 5685  df-co 5686  df-dm 5687  df-rn 5688  df-res 5689  df-ima 5690  df-pred 6301  df-ord 6368  df-on 6369  df-lim 6370  df-suc 6371  df-iota 6496  df-fun 6546  df-fn 6547  df-f 6548  df-f1 6549  df-fo 6550  df-f1o 6551  df-fv 6552  df-isom 6553  df-riota 7365  df-ov 7412  df-oprab 7413  df-mpo 7414  df-of 7670  df-om 7856  df-1st 7975  df-2nd 7976  df-supp 8147  df-frecs 8266  df-wrecs 8297  df-recs 8371  df-rdg 8410  df-1o 8466  df-2o 8467  df-er 8703  df-map 8822  df-pm 8823  df-ixp 8892  df-en 8940  df-dom 8941  df-sdom 8942  df-fin 8943  df-fsupp 9362  df-fi 9406  df-sup 9437  df-inf 9438  df-oi 9505  df-card 9934  df-pnf 11250  df-mnf 11251  df-xr 11252  df-ltxr 11253  df-le 11254  df-sub 11446  df-neg 11447  df-div 11872  df-nn 12213  df-2 12275  df-3 12276  df-4 12277  df-5 12278  df-6 12279  df-7 12280  df-8 12281  df-9 12282  df-n0 12473  df-z 12559  df-dec 12678  df-uz 12823  df-q 12933  df-rp 12975  df-xneg 13092  df-xadd 13093  df-xmul 13094  df-ioo 13328  df-ioc 13329  df-ico 13330  df-icc 13331  df-fz 13485  df-fzo 13628  df-fl 13757  df-seq 13967  df-exp 14028  df-fac 14234  df-bc 14263  df-hash 14291  df-shft 15014  df-cj 15046  df-re 15047  df-im 15048  df-sqrt 15182  df-abs 15183  df-limsup 15415  df-clim 15432  df-rlim 15433  df-sum 15633  df-ef 16011  df-sin 16013  df-cos 16014  df-pi 16016  df-struct 17080  df-sets 17097  df-slot 17115  df-ndx 17127  df-base 17145  df-ress 17174  df-plusg 17210  df-mulr 17211  df-starv 17212  df-sca 17213  df-vsca 17214  df-ip 17215  df-tset 17216  df-ple 17217  df-ds 17219  df-unif 17220  df-hom 17221  df-cco 17222  df-rest 17368  df-topn 17369  df-0g 17387  df-gsum 17388  df-topgen 17389  df-pt 17390  df-prds 17393  df-xrs 17448  df-qtop 17453  df-imas 17454  df-xps 17456  df-mre 17530  df-mrc 17531  df-acs 17533  df-mgm 18561  df-sgrp 18610  df-mnd 18626  df-submnd 18672  df-mulg 18951  df-cntz 19181  df-cmn 19650  df-psmet 20936  df-xmet 20937  df-met 20938  df-bl 20939  df-mopn 20940  df-fbas 20941  df-fg 20942  df-cnfld 20945  df-top 22396  df-topon 22413  df-topsp 22435  df-bases 22449  df-cld 22523  df-ntr 22524  df-cls 22525  df-nei 22602  df-lp 22640  df-perf 22641  df-cn 22731  df-cnp 22732  df-haus 22819  df-tx 23066  df-hmeo 23259  df-fil 23350  df-fm 23442  df-flim 23443  df-flf 23444  df-xms 23826  df-ms 23827  df-tms 23828  df-cncf 24394  df-limc 25383  df-dv 25384
This theorem is referenced by:  sinq12ge0  26018  sinq34lt0t  26019  cosq14gt0  26020  sineq0  26033  cosordlem  26039  tan2h  36480  sineq0ALT  43698  wallispilem1  44781
  Copyright terms: Public domain W3C validator