# math – mathematical functions

This module implements a subset of the corresponding CPython module, as described below. For more information, refer to the original CPython documentation: math.

The `math` module provides some basic mathematical functions for working with floating-point numbers.

Note: On the pyboard, floating-point numbers have 32-bit precision.

Availability: not available on WiPy. Floating point support required for this module.

## 1. Functions

### 1.1. math.acos(x)

Return the inverse cosine of `x`.

### 1.2. math.acosh(x)

Return the inverse hyperbolic cosine of `x`.

### 1.3. math.asin(x)

Return the inverse sine of `x`.

### 1.4. math.asinh(x)

Return the inverse hyperbolic sine of `x`.

### 1.5. math.atan(x)

Return the inverse tangent of `x`.

### 1.6. math.atan2(y, x)

Return the principal value of the inverse tangent of `y`/`x`.

### 1.7. math.atanh(x)

Return the inverse hyperbolic tangent of `x`.

### 1.8. math.ceil(x)

Return an integer, being `x` rounded towards positive infinity.

### 1.9. math.copysign(x, y)

Return `x` with the sign of `y`.

### 1.10. math.cos(x)

Return the cosine of `x`.

### 1.11. math.cosh(x)

Return the hyperbolic cosine of `x`.

### 1.12. math.degrees(x)

Return radians `x` converted to degrees.

### 1.13. math.erf(x)

Return the error function of `x`.

### 1.14. math.erfc(x)

Return the complementary error function of `x`.

### 1.15. math.exp(x)

Return the exponential of `x`.

### 1.16. math.expm1(x)

Return `exp(x) - 1`.

### 1.17. math.fabs(x)

Return the absolute value of `x`.

### 1.18. math.floor(x)

Return an integer, being `x` rounded towards negative infinity.

### 1.19. math.fmod(x, y)

Return the remainder of `x`/`y`.

### 1.20. math.frexp(x)

Decomposes a floating-point number into its mantissa and exponent. The returned value is the tuple `(m, e)` such that `x == m * 2**e` exactly. If `x == 0` then the function returns `(0.0, 0)`, otherwise the relation `0.5 <= abs(m) < 1` holds.

### 1.21. math.gamma(x)

Return the gamma function of `x`.

### 1.22. math.isfinite(x)

Return True if `x` is finite.

### 1.23. math.isinf(x)

Return True if `x` is infinite.

### 1.24. math.isnan(x)

Return True if `x` is not-a-number

### 1.25. math.ldexp(x, exp)

Return `x * (2**exp)`.

### 1.26. math.lgamma(x)

Return the natural logarithm of the gamma function of `x`.

### 1.27. math.log(x)

Return the natural logarithm of `x`.

### 1.28. math.log10(x)

Return the base-10 logarithm of `x`.

### 1.29. math.log2(x)

Return the base-2 logarithm of `x`.

### 1.30. math.modf(x)

Return a tuple of two floats, being the fractional and integral parts of `x`. Both return values have the same sign as `x`.

### 1.31. math.pow(x, y)

Returns `x` to the power of `y`.

Return degrees `x` converted to radians.

### 1.33. math.sin(x)

Return the sine of `x`.

### 1.34. math.sinh(x)

Return the hyperbolic sine of `x`.

### 1.35. math.sqrt(x)

Return the square root of `x`.

### 1.36. math.tan(x)

Return the tangent of `x`.

### 1.37. math.tanh(x)

Return the hyperbolic tangent of `x`.

### 1.38. math.trunc(x)

Return an integer, being `x` rounded towards 0.

## 2. Constants

### 2.1. math.e

base of the natural logarithm

### 2.2. math.pi

the ratio of a circle’s circumference to its diameter