Uni20
Asynchronous tensor and runtime library.
Loading...
Searching...
No Matches
Classes | Namespaces | Concepts | Functions
floating_eq.hpp File Reference
#include <algorithm>
#include <bit>
#include <cmath>
#include <complex>
#include <cstdint>
#include <cstdlib>
#include <limits>
#include <type_traits>
#include <uni20/core/numeric_limits.hpp>
#include <uni20/core/scalar_concepts.hpp>
#include <uni20/core/scalar_traits.hpp>
Include dependency graph for floating_eq.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  uni20::check::FloatingULP< T >
 ULP comparator for complex numbers over floating point. More...
 

Namespaces

namespace  uni20
 
namespace  uni20::check
 

Concepts

concept  uni20::check::IeeeBinaryReal
 Real scalar stored in an IEEE binary32, binary64, or binary128 interchange representation.
 
concept  uni20::check::UlpOrderedReal
 Real scalar with an implemented ordering of adjacent representable values.
 
concept  uni20::check::UlpComparable
 Concept satisfied if T can be compared in ULPs.
 

Functions

template<UlpOrderedReal T>
long long uni20::check::float_abs_distance (T a, T b)
 Return the absolute diagnostic ULP distance between two real scalars.
 
template<uni20::Complex T>
requires UlpOrderedReal<uni20::make_real_t<T>>
long long uni20::check::float_abs_distance (T a, T b)
 
template<UlpOrderedReal T>
long long uni20::check::float_distance (T a, T b)
 Return the signed distance in ULPs between two supported real scalars.