<section>
<title>math reference</title>
<section id=".l'Exponential.sand.slogarithmic.sfunctions'.c.r">
  <title>Exponential and logarithmic functions</title>
  <section id="exp">
    <title>exp</title>
    <indexterm type="functions"><primary>exp</primary><secondary>exp</secondary></indexterm>
    <synopsis>double exp(double x);
</synopsis>
<para>Exponential function of X.  </para>
    
    
  </section>
  <section id="frexp">
    <title>frexp</title>
    <indexterm type="functions"><primary>frexp</primary><secondary>frexp</secondary></indexterm>
    <synopsis>double frexp(double x, int* e);
</synopsis>
<para>Break VALUE into a normalized fraction and an integral power of 2.  </para>
    
    
  </section>
  <section id="ldexp">
    <title>ldexp</title>
    <indexterm type="functions"><primary>ldexp</primary><secondary>ldexp</secondary></indexterm>
    <synopsis>double ldexp(double x, int e);
</synopsis>
<para>X times (two to the EXP power).  </para>
    
    
  </section>
  <section id="log">
    <title>log</title>
    <indexterm type="functions"><primary>log</primary><secondary>log</secondary></indexterm>
    <synopsis>double log(double x);
</synopsis>
<para>Natural logarithm of X.  </para>
    
    
  </section>
  <section id="log10">
    <title>log10</title>
    <indexterm type="functions"><primary>log10</primary><secondary>log10</secondary></indexterm>
    <synopsis>double log10(double x);
</synopsis>
<para>Base-ten logarithm of X.  </para>
    
    
  </section>
  <section id="modf">
    <title>modf</title>
    <indexterm type="functions"><primary>modf</primary><secondary>modf</secondary></indexterm>
    <synopsis>double modf(double x, double* iptr);
</synopsis>
<para>Break VALUE into integral and fractional parts.  </para>
    
    
  </section>
  <section id="exp10">
    <title>exp10</title>
    <indexterm type="functions"><primary>exp10</primary><secondary>exp10</secondary></indexterm>
    <synopsis>double exp10(double x);
</synopsis>
<para>A function missing in all standards: compute exponent to base ten.  </para>
    
    
  </section>
  <section id="pow10">
    <title>pow10</title>
    <indexterm type="functions"><primary>pow10</primary><secondary>pow10</secondary></indexterm>
    <synopsis>double pow10(double x);
</synopsis>
<para>Another name occasionally used.  </para>
    
    
  </section>
  
</section>

<section id=".l'Hyperbolic.sfunctions'.c.r">
  <title>Hyperbolic functions</title>
  <section id="cosh">
    <title>cosh</title>
    <indexterm type="functions"><primary>cosh</primary><secondary>cosh</secondary></indexterm>
    <synopsis>double cosh(double x);
</synopsis>
<para>Hyperbolic cosine of X.  </para>
    
    
  </section>
  <section id="sinh">
    <title>sinh</title>
    <indexterm type="functions"><primary>sinh</primary><secondary>sinh</secondary></indexterm>
    <synopsis>double sinh(double x);
</synopsis>
<para>Hyperbolic sine of X.  </para>
    
    
  </section>
  <section id="tanh">
    <title>tanh</title>
    <indexterm type="functions"><primary>tanh</primary><secondary>tanh</secondary></indexterm>
    <synopsis>double tanh(double x);
</synopsis>
<para>Hyperbolic tangent of X.  </para>
    
    
  </section>
  <section id="acosh">
    <title>acosh</title>
    <indexterm type="functions"><primary>acosh</primary><secondary>acosh</secondary></indexterm>
    <synopsis>double acosh(double x);
</synopsis>
<para>Hyperbolic arc cosine of X.  </para>
    
    
  </section>
  <section id="asinh">
    <title>asinh</title>
    <indexterm type="functions"><primary>asinh</primary><secondary>asinh</secondary></indexterm>
    <synopsis>double asinh(double x);
</synopsis>
<para>Hyperbolic arc sine of X.  </para>
    
    
  </section>
  <section id="atanh">
    <title>atanh</title>
    <indexterm type="functions"><primary>atanh</primary><secondary>atanh</secondary></indexterm>
    <synopsis>double atanh(double x);
</synopsis>
<para>Hyperbolic arc tangent of X.  </para>
    
    
  </section>
  
</section>

<section id="LIB_VERSION">
  <title>LIB_VERSION</title>
  <synopsis>LIB_VERSION_TYPE LIB_VERSION;
</synopsis>
<para>This variable can be changed at run-time to any of the values above to
  affect floating point error handling behavior (it may also be necessary
  to change the hardware FPU exception settings).  </para>
  
  
</section>
<section id="LIB_VERSION_TYPE">
  <title>LIB_VERSION_TYPE</title>
  <indexterm type="types"><primary>LIB_VERSION_TYPE</primary><secondary>LIB_VERSION_TYPE</secondary></indexterm>
  <synopsis>enum LIB_VERSION_TYPE { IEEE=- 1, SVID, XOPEN, POSIX, ISOC};
</synopsis>

</section>
<section id=".l'Nearest.sinteger.c.sabsolute.svalue.c.sand.sremainder.sfunctions'.c.r">
  <title>Nearest integer, absolute value, and remainder functions</title>
  <section id="ceil">
    <title>ceil</title>
    <indexterm type="functions"><primary>ceil</primary><secondary>ceil</secondary></indexterm>
    <synopsis>double ceil(double x);
</synopsis>
<para>Smallest integral value not less than X.  </para>
    
    
  </section>
  <section id="fabs">
    <title>fabs</title>
    <indexterm type="functions"><primary>fabs</primary><secondary>fabs</secondary></indexterm>
    <synopsis>double fabs(double x);
</synopsis>
<para>Absolute value of X.  </para>
    
    
  </section>
  <section id="floor">
    <title>floor</title>
    <indexterm type="functions"><primary>floor</primary><secondary>floor</secondary></indexterm>
    <synopsis>double floor(double x);
</synopsis>
<para>Largest integer not greater than X.  </para>
    
    
  </section>
  <section id="fmod">
    <title>fmod</title>
    <indexterm type="functions"><primary>fmod</primary><secondary>fmod</secondary></indexterm>
    <synopsis>double fmod(double x, double y);
</synopsis>
<para>Floating-point modulo remainder of X/Y.  </para>
    
    
  </section>
  <section id="isinf">
    <title>isinf</title>
    <indexterm type="functions"><primary>isinf</primary><secondary>isinf</secondary></indexterm>
    <synopsis>int isinf(double x);
</synopsis>
<para>Return 0 if VALUE is finite or NaN, +1 if it
    is +Infinity, -1 if it is -Infinity.  </para>
    
    
  </section>
  <section id="isfinite">
    <title>isfinite</title>
    <indexterm type="functions"><primary>isfinite</primary><secondary>isfinite</secondary></indexterm>
    <synopsis>int isfinite(double x);
</synopsis>
<para>Return nonzero if VALUE is finite and not NaN.  </para>
    
    
  </section>
  <section id="isnan">
    <title>isnan</title>
    <indexterm type="functions"><primary>isnan</primary><secondary>isnan</secondary></indexterm>
    <synopsis>int isnan(double x);
</synopsis>
<para>Return nonzero if VALUE is not a number.  </para>
    
    
  </section>
  
</section>

<section id=".l'Power.sfunctions'.c.r">
  <title>Power functions</title>
  <section id="pow">
    <title>pow</title>
    <indexterm type="functions"><primary>pow</primary><secondary>pow</secondary></indexterm>
    <synopsis>double pow(double x, double y);
</synopsis>
<para>Return X to the Y power.  </para>
    
    
  </section>
  <section id="sqrt">
    <title>sqrt</title>
    <indexterm type="functions"><primary>sqrt</primary><secondary>sqrt</secondary></indexterm>
    <synopsis>double sqrt(double x);
</synopsis>
<para>Return the square root of X.  </para>
    
    
  </section>
  <section id="hypot">
    <title>hypot</title>
    <indexterm type="functions"><primary>hypot</primary><secondary>hypot</secondary></indexterm>
    <synopsis>double hypot(double x, double y);
</synopsis>
<para>Return `sqrt(X*X + Y*Y)'.  </para>
    
    
  </section>
  <section id="cbrt">
    <title>cbrt</title>
    <indexterm type="functions"><primary>cbrt</primary><secondary>cbrt</secondary></indexterm>
    <synopsis>double cbrt(double x);
</synopsis>
<para>Return the cube root of X.  </para>
    
    
  </section>
  
</section>

<section id=".l'Trigonometric.sfunctions'.c.r">
  <title>Trigonometric functions</title>
  <section id="acos">
    <title>acos</title>
    <indexterm type="functions"><primary>acos</primary><secondary>acos</secondary></indexterm>
    <synopsis>double acos(double x);
</synopsis>
<para>Arc cosine of X.  </para>
    
    
  </section>
  <section id="asin">
    <title>asin</title>
    <indexterm type="functions"><primary>asin</primary><secondary>asin</secondary></indexterm>
    <synopsis>double asin(double x);
</synopsis>
<para>Arc sine of X.  </para>
    
    
  </section>
  <section id="atan">
    <title>atan</title>
    <indexterm type="functions"><primary>atan</primary><secondary>atan</secondary></indexterm>
    <synopsis>double atan(double x);
</synopsis>
<para>Arc tangent of X.  </para>
    
    
  </section>
  <section id="atan2">
    <title>atan2</title>
    <indexterm type="functions"><primary>atan2</primary><secondary>atan2</secondary></indexterm>
    <synopsis>double atan2(double y, double x);
</synopsis>
<para>Arc tangent of Y/X.  </para>
    
    
  </section>
  <section id="cos">
    <title>cos</title>
    <indexterm type="functions"><primary>cos</primary><secondary>cos</secondary></indexterm>
    <synopsis>double cos(double x);
</synopsis>
<para>Cosine of X.  </para>
    
    
  </section>
  <section id="sin">
    <title>sin</title>
    <indexterm type="functions"><primary>sin</primary><secondary>sin</secondary></indexterm>
    <synopsis>double sin(double x);
</synopsis>
<para>Sine of X.  </para>
    
    
  </section>
  <section id="tan">
    <title>tan</title>
    <indexterm type="functions"><primary>tan</primary><secondary>tan</secondary></indexterm>
    <synopsis>double tan(double x);
</synopsis>
<para>Tangent of X.  </para>
    
    
  </section>
  
</section>

<section id="exception">
  <title>struct exception</title>
  <indexterm type="types"><primary>exception</primary><secondary>exception</secondary></indexterm>
  <section id="exception-type">
    <title>type</title>
    <synopsis>int type;
</synopsis>

  </section>
  <section id="exception-name">
    <title>name</title>
    <synopsis> char * name;
</synopsis>

  </section>
  <section id="exception-arg1">
    <title>arg1</title>
    <synopsis>double arg1;
</synopsis>

  </section>
  <section id="exception-arg2">
    <title>arg2</title>
    <synopsis>double arg2;
</synopsis>

  </section>
  <section id="exception-retval">
    <title>retval</title>
    <synopsis>double retval;
</synopsis>

  </section>
  
</section>

<section id="math_h_">
  <title>math_h_</title>
  <synopsis>math_h_
</synopsis>

</section>
<section id="matherr">
  <title>matherr</title>
  <indexterm type="functions"><primary>matherr</primary><secondary>matherr</secondary></indexterm>
  <synopsis>int matherr(exception* exc);
</synopsis>

</section>
</section>
