carl  24.04
Computer ARithmetic Library
operations.h File Reference
#include <cassert>
#include <cmath>
#include <limits>
#include <type_traits>
Include dependency graph for operations.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 carl
 carl is the main namespace for the library.
 

Functions

bool carl::is_zero (double n)
 Informational functions. More...
 
bool carl::is_positive (double n)
 
bool carl::is_negative (double n)
 
bool carl::isNaN (double d)
 
bool carl::isInf (double d)
 
bool carl::is_number (double d)
 
bool carl::is_integer (double d)
 
bool carl::is_integer (sint)
 
std::size_t carl::bitsize (unsigned)
 
double carl::to_double (sint n)
 Conversion functions. More...
 
double carl::to_double (double n)
 
template<typename Integer >
Integer carl::to_int (double n)
 
template<>
sint carl::to_int< sint > (double n)
 
template<>
uint carl::to_int< uint > (double n)
 
template<>
double carl::rationalize (double n)
 
template<typename T >
std::enable_if< std::is_arithmetic< typename remove_all< T >::type >::value, std::string >::type carl::toString (const T &n, bool)
 
double carl::floor (double n)
 Basic Operators. More...
 
double carl::ceil (double n)
 
double carl::abs (double n)
 
uint carl::mod (uint n, uint m)
 
sint carl::mod (sint n, sint m)
 
sint carl::remainder (sint n, sint m)
 
sint carl::div (sint n, sint m)
 
sint carl::quotient (sint n, sint m)
 
void carl::divide (sint dividend, sint divisor, sint &quo, sint &rem)
 
double carl::sin (double in)
 
double carl::cos (double in)
 
double carl::acos (double in)
 
double carl::sqrt (double in)
 
std::pair< double, double > carl::sqrt_safe (double in)
 
double carl::pow (double in, uint exp)
 
double carl::log (double in)
 
double carl::log10 (double in)
 
template<typename Number >
Number carl::highestPower (const Number &n)
 Returns the highest power of two below n. More...