
Numeric and Mathematical Modules
********************************

The modules described in this chapter provide numeric and math-related
functions and data types. The "numbers" module defines an abstract
hierarchy of numeric types. The "math" and "cmath" modules contain
various mathematical functions for floating-point and complex numbers.
The "decimal" module supports exact representations of decimal
numbers, using arbitrary precision arithmetic.

The following modules are documented in this chapter:

* "numbers" --- Numeric abstract base classes

  * The numeric tower

  * Notes for type implementors

    * Adding More Numeric ABCs

    * Implementing the arithmetic operations

* "math" --- Mathematical functions

  * Number-theoretic and representation functions

  * Power and logarithmic functions

  * Trigonometric functions

  * Angular conversion

  * Hyperbolic functions

  * Special functions

  * Constants

* "cmath" --- Mathematical functions for complex numbers

  * Conversions to and from polar coordinates

  * Power and logarithmic functions

  * Trigonometric functions

  * Hyperbolic functions

  * Classification functions

  * Constants

* "decimal" --- Decimal fixed point and floating point arithmetic

  * Quick-start Tutorial

  * Decimal objects

    * Logical operands

  * Context objects

  * Constants

  * Rounding modes

  * Signals

  * Floating Point Notes

    * Mitigating round-off error with increased precision

    * Special values

  * Working with threads

  * Recipes

  * Decimal FAQ

* "fractions" --- Rational numbers

* "random" --- Generate pseudo-random numbers

  * Notes on Reproducibility

  * Examples and Recipes
