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

Theorem sinq12gt0 25916
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 11226 . . 3 0 ∈ ℝ*
2 pire 25867 . . . 4 Ο€ ∈ ℝ
32rexri 11237 . . 3 Ο€ ∈ ℝ*
4 elioo2 13330 . . 3 ((0 ∈ ℝ* ∧ Ο€ ∈ ℝ*) β†’ (𝐴 ∈ (0(,)Ο€) ↔ (𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€)))
51, 3, 4mp2an 690 . 2 (𝐴 ∈ (0(,)Ο€) ↔ (𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€))
6 rehalfcl 12403 . . . . . 6 (𝐴 ∈ ℝ β†’ (𝐴 / 2) ∈ ℝ)
763ad2ant1 1133 . . . . 5 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ (𝐴 / 2) ∈ ℝ)
8 halfpos2 12406 . . . . . . 7 (𝐴 ∈ ℝ β†’ (0 < 𝐴 ↔ 0 < (𝐴 / 2)))
98biimpa 477 . . . . . 6 ((𝐴 ∈ ℝ ∧ 0 < 𝐴) β†’ 0 < (𝐴 / 2))
1093adant3 1132 . . . . 5 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ 0 < (𝐴 / 2))
11 2re 12251 . . . . . . . . 9 2 ∈ ℝ
12 2pos 12280 . . . . . . . . 9 0 < 2
1311, 12pm3.2i 471 . . . . . . . 8 (2 ∈ ℝ ∧ 0 < 2)
14 ltdiv1 12043 . . . . . . . 8 ((𝐴 ∈ ℝ ∧ Ο€ ∈ ℝ ∧ (2 ∈ ℝ ∧ 0 < 2)) β†’ (𝐴 < Ο€ ↔ (𝐴 / 2) < (Ο€ / 2)))
152, 13, 14mp3an23 1453 . . . . . . 7 (𝐴 ∈ ℝ β†’ (𝐴 < Ο€ ↔ (𝐴 / 2) < (Ο€ / 2)))
1615adantr 481 . . . . . 6 ((𝐴 ∈ ℝ ∧ 0 < 𝐴) β†’ (𝐴 < Ο€ ↔ (𝐴 / 2) < (Ο€ / 2)))
1716biimp3a 1469 . . . . 5 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ (𝐴 / 2) < (Ο€ / 2))
18 sincosq1lem 25906 . . . . 5 (((𝐴 / 2) ∈ ℝ ∧ 0 < (𝐴 / 2) ∧ (𝐴 / 2) < (Ο€ / 2)) β†’ 0 < (sinβ€˜(𝐴 / 2)))
197, 10, 17, 18syl3anc 1371 . . . 4 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ 0 < (sinβ€˜(𝐴 / 2)))
20 resubcl 11489 . . . . . . . . 9 ((Ο€ ∈ ℝ ∧ 𝐴 ∈ ℝ) β†’ (Ο€ βˆ’ 𝐴) ∈ ℝ)
212, 20mpan 688 . . . . . . . 8 (𝐴 ∈ ℝ β†’ (Ο€ βˆ’ 𝐴) ∈ ℝ)
22 rehalfcl 12403 . . . . . . . 8 ((Ο€ βˆ’ 𝐴) ∈ ℝ β†’ ((Ο€ βˆ’ 𝐴) / 2) ∈ ℝ)
2321, 22syl 17 . . . . . . 7 (𝐴 ∈ ℝ β†’ ((Ο€ βˆ’ 𝐴) / 2) ∈ ℝ)
24233ad2ant1 1133 . . . . . 6 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ ((Ο€ βˆ’ 𝐴) / 2) ∈ ℝ)
25 posdif 11672 . . . . . . . . . 10 ((𝐴 ∈ ℝ ∧ Ο€ ∈ ℝ) β†’ (𝐴 < Ο€ ↔ 0 < (Ο€ βˆ’ 𝐴)))
262, 25mpan2 689 . . . . . . . . 9 (𝐴 ∈ ℝ β†’ (𝐴 < Ο€ ↔ 0 < (Ο€ βˆ’ 𝐴)))
27 halfpos2 12406 . . . . . . . . . 10 ((Ο€ βˆ’ 𝐴) ∈ ℝ β†’ (0 < (Ο€ βˆ’ 𝐴) ↔ 0 < ((Ο€ βˆ’ 𝐴) / 2)))
2821, 27syl 17 . . . . . . . . 9 (𝐴 ∈ ℝ β†’ (0 < (Ο€ βˆ’ 𝐴) ↔ 0 < ((Ο€ βˆ’ 𝐴) / 2)))
2926, 28bitrd 278 . . . . . . . 8 (𝐴 ∈ ℝ β†’ (𝐴 < Ο€ ↔ 0 < ((Ο€ βˆ’ 𝐴) / 2)))
3029adantr 481 . . . . . . 7 ((𝐴 ∈ ℝ ∧ 0 < 𝐴) β†’ (𝐴 < Ο€ ↔ 0 < ((Ο€ βˆ’ 𝐴) / 2)))
3130biimp3a 1469 . . . . . 6 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ 0 < ((Ο€ βˆ’ 𝐴) / 2))
32 ltsubpos 11671 . . . . . . . . . 10 ((𝐴 ∈ ℝ ∧ Ο€ ∈ ℝ) β†’ (0 < 𝐴 ↔ (Ο€ βˆ’ 𝐴) < Ο€))
332, 32mpan2 689 . . . . . . . . 9 (𝐴 ∈ ℝ β†’ (0 < 𝐴 ↔ (Ο€ βˆ’ 𝐴) < Ο€))
34 ltdiv1 12043 . . . . . . . . . . 11 (((Ο€ βˆ’ 𝐴) ∈ ℝ ∧ Ο€ ∈ ℝ ∧ (2 ∈ ℝ ∧ 0 < 2)) β†’ ((Ο€ βˆ’ 𝐴) < Ο€ ↔ ((Ο€ βˆ’ 𝐴) / 2) < (Ο€ / 2)))
352, 13, 34mp3an23 1453 . . . . . . . . . 10 ((Ο€ βˆ’ 𝐴) ∈ ℝ β†’ ((Ο€ βˆ’ 𝐴) < Ο€ ↔ ((Ο€ βˆ’ 𝐴) / 2) < (Ο€ / 2)))
3621, 35syl 17 . . . . . . . . 9 (𝐴 ∈ ℝ β†’ ((Ο€ βˆ’ 𝐴) < Ο€ ↔ ((Ο€ βˆ’ 𝐴) / 2) < (Ο€ / 2)))
3733, 36bitrd 278 . . . . . . . 8 (𝐴 ∈ ℝ β†’ (0 < 𝐴 ↔ ((Ο€ βˆ’ 𝐴) / 2) < (Ο€ / 2)))
3837biimpa 477 . . . . . . 7 ((𝐴 ∈ ℝ ∧ 0 < 𝐴) β†’ ((Ο€ βˆ’ 𝐴) / 2) < (Ο€ / 2))
39383adant3 1132 . . . . . 6 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ ((Ο€ βˆ’ 𝐴) / 2) < (Ο€ / 2))
40 sincosq1lem 25906 . . . . . 6 ((((Ο€ βˆ’ 𝐴) / 2) ∈ ℝ ∧ 0 < ((Ο€ βˆ’ 𝐴) / 2) ∧ ((Ο€ βˆ’ 𝐴) / 2) < (Ο€ / 2)) β†’ 0 < (sinβ€˜((Ο€ βˆ’ 𝐴) / 2)))
4124, 31, 39, 40syl3anc 1371 . . . . 5 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ 0 < (sinβ€˜((Ο€ βˆ’ 𝐴) / 2)))
42 recn 11165 . . . . . . . . 9 (𝐴 ∈ ℝ β†’ 𝐴 ∈ β„‚)
43 picn 25868 . . . . . . . . . 10 Ο€ ∈ β„‚
44 2cnne0 12387 . . . . . . . . . 10 (2 ∈ β„‚ ∧ 2 β‰  0)
45 divsubdir 11873 . . . . . . . . . 10 ((Ο€ ∈ β„‚ ∧ 𝐴 ∈ β„‚ ∧ (2 ∈ β„‚ ∧ 2 β‰  0)) β†’ ((Ο€ βˆ’ 𝐴) / 2) = ((Ο€ / 2) βˆ’ (𝐴 / 2)))
4643, 44, 45mp3an13 1452 . . . . . . . . 9 (𝐴 ∈ β„‚ β†’ ((Ο€ βˆ’ 𝐴) / 2) = ((Ο€ / 2) βˆ’ (𝐴 / 2)))
4742, 46syl 17 . . . . . . . 8 (𝐴 ∈ ℝ β†’ ((Ο€ βˆ’ 𝐴) / 2) = ((Ο€ / 2) βˆ’ (𝐴 / 2)))
4847fveq2d 6866 . . . . . . 7 (𝐴 ∈ ℝ β†’ (sinβ€˜((Ο€ βˆ’ 𝐴) / 2)) = (sinβ€˜((Ο€ / 2) βˆ’ (𝐴 / 2))))
496recnd 11207 . . . . . . . 8 (𝐴 ∈ ℝ β†’ (𝐴 / 2) ∈ β„‚)
50 sinhalfpim 25902 . . . . . . . 8 ((𝐴 / 2) ∈ β„‚ β†’ (sinβ€˜((Ο€ / 2) βˆ’ (𝐴 / 2))) = (cosβ€˜(𝐴 / 2)))
5149, 50syl 17 . . . . . . 7 (𝐴 ∈ ℝ β†’ (sinβ€˜((Ο€ / 2) βˆ’ (𝐴 / 2))) = (cosβ€˜(𝐴 / 2)))
5248, 51eqtrd 2771 . . . . . 6 (𝐴 ∈ ℝ β†’ (sinβ€˜((Ο€ βˆ’ 𝐴) / 2)) = (cosβ€˜(𝐴 / 2)))
53523ad2ant1 1133 . . . . 5 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ (sinβ€˜((Ο€ βˆ’ 𝐴) / 2)) = (cosβ€˜(𝐴 / 2)))
5441, 53breqtrd 5151 . . . 4 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ 0 < (cosβ€˜(𝐴 / 2)))
55 resincl 16048 . . . . . . . 8 ((𝐴 / 2) ∈ ℝ β†’ (sinβ€˜(𝐴 / 2)) ∈ ℝ)
56 recoscl 16049 . . . . . . . 8 ((𝐴 / 2) ∈ ℝ β†’ (cosβ€˜(𝐴 / 2)) ∈ ℝ)
5755, 56jca 512 . . . . . . 7 ((𝐴 / 2) ∈ ℝ β†’ ((sinβ€˜(𝐴 / 2)) ∈ ℝ ∧ (cosβ€˜(𝐴 / 2)) ∈ ℝ))
58 axmulgt0 11253 . . . . . . 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 11160 . . . . . . . . 9 (((sinβ€˜(𝐴 / 2)) ∈ ℝ ∧ (cosβ€˜(𝐴 / 2)) ∈ ℝ) β†’ ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2))) ∈ ℝ)
616, 57, 603syl 18 . . . . . . . 8 (𝐴 ∈ ℝ β†’ ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2))) ∈ ℝ)
62 axmulgt0 11253 . . . . . . . 8 ((2 ∈ ℝ ∧ ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2))) ∈ ℝ) β†’ ((0 < 2 ∧ 0 < ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2)))) β†’ 0 < (2 Β· ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2))))))
6311, 61, 62sylancr 587 . . . . . . 7 (𝐴 ∈ ℝ β†’ ((0 < 2 ∧ 0 < ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2)))) β†’ 0 < (2 Β· ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2))))))
6412, 63mpani 694 . . . . . 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 1133 . . . 4 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ ((0 < (sinβ€˜(𝐴 / 2)) ∧ 0 < (cosβ€˜(𝐴 / 2))) β†’ 0 < (2 Β· ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2))))))
6719, 54, 66mp2and 697 . . 3 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ 0 < (2 Β· ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2)))))
68 2cn 12252 . . . . . . . 8 2 ∈ β„‚
69 2ne0 12281 . . . . . . . 8 2 β‰  0
70 divcan2 11845 . . . . . . . 8 ((𝐴 ∈ β„‚ ∧ 2 ∈ β„‚ ∧ 2 β‰  0) β†’ (2 Β· (𝐴 / 2)) = 𝐴)
7168, 69, 70mp3an23 1453 . . . . . . 7 (𝐴 ∈ β„‚ β†’ (2 Β· (𝐴 / 2)) = 𝐴)
7242, 71syl 17 . . . . . 6 (𝐴 ∈ ℝ β†’ (2 Β· (𝐴 / 2)) = 𝐴)
7372fveq2d 6866 . . . . 5 (𝐴 ∈ ℝ β†’ (sinβ€˜(2 Β· (𝐴 / 2))) = (sinβ€˜π΄))
74 sin2t 16085 . . . . . 6 ((𝐴 / 2) ∈ β„‚ β†’ (sinβ€˜(2 Β· (𝐴 / 2))) = (2 Β· ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2)))))
7549, 74syl 17 . . . . 5 (𝐴 ∈ ℝ β†’ (sinβ€˜(2 Β· (𝐴 / 2))) = (2 Β· ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2)))))
7673, 75eqtr3d 2773 . . . 4 (𝐴 ∈ ℝ β†’ (sinβ€˜π΄) = (2 Β· ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2)))))
77763ad2ant1 1133 . . 3 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ (sinβ€˜π΄) = (2 Β· ((sinβ€˜(𝐴 / 2)) Β· (cosβ€˜(𝐴 / 2)))))
7867, 77breqtrrd 5153 . 2 ((𝐴 ∈ ℝ ∧ 0 < 𝐴 ∧ 𝐴 < Ο€) β†’ 0 < (sinβ€˜π΄))
795, 78sylbi 216 1 (𝐴 ∈ (0(,)Ο€) β†’ 0 < (sinβ€˜π΄))
Colors of variables: wff setvar class
Syntax hints:   β†’ wi 4   ↔ wb 205   ∧ wa 396   ∧ w3a 1087   = wceq 1541   ∈ wcel 2106   β‰  wne 2939   class class class wbr 5125  β€˜cfv 6516  (class class class)co 7377  β„‚cc 11073  β„cr 11074  0cc0 11075   Β· cmul 11080  β„*cxr 11212   < clt 11213   βˆ’ cmin 11409   / cdiv 11836  2c2 12232  (,)cioo 13289  sincsin 15972  cosccos 15973  Ο€cpi 15975
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1913  ax-6 1971  ax-7 2011  ax-8 2108  ax-9 2116  ax-10 2137  ax-11 2154  ax-12 2171  ax-ext 2702  ax-rep 5262  ax-sep 5276  ax-nul 5283  ax-pow 5340  ax-pr 5404  ax-un 7692  ax-inf2 9601  ax-cnex 11131  ax-resscn 11132  ax-1cn 11133  ax-icn 11134  ax-addcl 11135  ax-addrcl 11136  ax-mulcl 11137  ax-mulrcl 11138  ax-mulcom 11139  ax-addass 11140  ax-mulass 11141  ax-distr 11142  ax-i2m1 11143  ax-1ne0 11144  ax-1rid 11145  ax-rnegex 11146  ax-rrecex 11147  ax-cnre 11148  ax-pre-lttri 11149  ax-pre-lttrn 11150  ax-pre-ltadd 11151  ax-pre-mulgt0 11152  ax-pre-sup 11153  ax-addf 11154  ax-mulf 11155
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 846  df-3or 1088  df-3an 1089  df-tru 1544  df-fal 1554  df-ex 1782  df-nf 1786  df-sb 2068  df-mo 2533  df-eu 2562  df-clab 2709  df-cleq 2723  df-clel 2809  df-nfc 2884  df-ne 2940  df-nel 3046  df-ral 3061  df-rex 3070  df-rmo 3364  df-reu 3365  df-rab 3419  df-v 3461  df-sbc 3758  df-csb 3874  df-dif 3931  df-un 3933  df-in 3935  df-ss 3945  df-pss 3947  df-nul 4303  df-if 4507  df-pw 4582  df-sn 4607  df-pr 4609  df-tp 4611  df-op 4613  df-uni 4886  df-int 4928  df-iun 4976  df-iin 4977  df-br 5126  df-opab 5188  df-mpt 5209  df-tr 5243  df-id 5551  df-eprel 5557  df-po 5565  df-so 5566  df-fr 5608  df-se 5609  df-we 5610  df-xp 5659  df-rel 5660  df-cnv 5661  df-co 5662  df-dm 5663  df-rn 5664  df-res 5665  df-ima 5666  df-pred 6273  df-ord 6340  df-on 6341  df-lim 6342  df-suc 6343  df-iota 6468  df-fun 6518  df-fn 6519  df-f 6520  df-f1 6521  df-fo 6522  df-f1o 6523  df-fv 6524  df-isom 6525  df-riota 7333  df-ov 7380  df-oprab 7381  df-mpo 7382  df-of 7637  df-om 7823  df-1st 7941  df-2nd 7942  df-supp 8113  df-frecs 8232  df-wrecs 8263  df-recs 8337  df-rdg 8376  df-1o 8432  df-2o 8433  df-er 8670  df-map 8789  df-pm 8790  df-ixp 8858  df-en 8906  df-dom 8907  df-sdom 8908  df-fin 8909  df-fsupp 9328  df-fi 9371  df-sup 9402  df-inf 9403  df-oi 9470  df-card 9899  df-pnf 11215  df-mnf 11216  df-xr 11217  df-ltxr 11218  df-le 11219  df-sub 11411  df-neg 11412  df-div 11837  df-nn 12178  df-2 12240  df-3 12241  df-4 12242  df-5 12243  df-6 12244  df-7 12245  df-8 12246  df-9 12247  df-n0 12438  df-z 12524  df-dec 12643  df-uz 12788  df-q 12898  df-rp 12940  df-xneg 13057  df-xadd 13058  df-xmul 13059  df-ioo 13293  df-ioc 13294  df-ico 13295  df-icc 13296  df-fz 13450  df-fzo 13593  df-fl 13722  df-seq 13932  df-exp 13993  df-fac 14199  df-bc 14228  df-hash 14256  df-shft 14979  df-cj 15011  df-re 15012  df-im 15013  df-sqrt 15147  df-abs 15148  df-limsup 15380  df-clim 15397  df-rlim 15398  df-sum 15598  df-ef 15976  df-sin 15978  df-cos 15979  df-pi 15981  df-struct 17045  df-sets 17062  df-slot 17080  df-ndx 17092  df-base 17110  df-ress 17139  df-plusg 17175  df-mulr 17176  df-starv 17177  df-sca 17178  df-vsca 17179  df-ip 17180  df-tset 17181  df-ple 17182  df-ds 17184  df-unif 17185  df-hom 17186  df-cco 17187  df-rest 17333  df-topn 17334  df-0g 17352  df-gsum 17353  df-topgen 17354  df-pt 17355  df-prds 17358  df-xrs 17413  df-qtop 17418  df-imas 17419  df-xps 17421  df-mre 17495  df-mrc 17496  df-acs 17498  df-mgm 18526  df-sgrp 18575  df-mnd 18586  df-submnd 18631  df-mulg 18902  df-cntz 19126  df-cmn 19593  df-psmet 20840  df-xmet 20841  df-met 20842  df-bl 20843  df-mopn 20844  df-fbas 20845  df-fg 20846  df-cnfld 20849  df-top 22295  df-topon 22312  df-topsp 22334  df-bases 22348  df-cld 22422  df-ntr 22423  df-cls 22424  df-nei 22501  df-lp 22539  df-perf 22540  df-cn 22630  df-cnp 22631  df-haus 22718  df-tx 22965  df-hmeo 23158  df-fil 23249  df-fm 23341  df-flim 23342  df-flf 23343  df-xms 23725  df-ms 23726  df-tms 23727  df-cncf 24293  df-limc 25282  df-dv 25283
This theorem is referenced by:  sinq12ge0  25917  sinq34lt0t  25918  cosq14gt0  25919  sineq0  25932  cosordlem  25938  tan2h  36177  sineq0ALT  43374  wallispilem1  44459
  Copyright terms: Public domain W3C validator