Operations returning logical values
Mind that in SIMD context these functions DO NOT return boolean but logical values that is an internal representation of a vector of truth values that can be handled by the function of the previous section logical operations).
The set of functions is quite exhaustive. Peculiarly all comparison are treated with their negations and decorations as sometime architectures provide specific intrinsics and also because floating Nan values must be taken into account more easily.
Supplementary comparisons functions take the bit of sign of zero into account, namely is_eqpz, is_eqmz, is_negative, is_positive
Variables | |
| constexpr auto | eve::compare_absolute = functor<compare_absolute_t> |
elementwise callable returning a logical true if and only if the absolute value of the first parameters satisfy the predicate parameters. | |
| constexpr auto | eve::is_bit_equal = functor<is_bit_equal_t> |
elementwise callable returning a logical true if and only if the element bits are all equal. | |
| constexpr auto | eve::is_denormal = functor<is_denormal_t> |
elementwise callable returning a logical true if and only if the element value is denormal | |
| constexpr auto | eve::is_eqmz = functor<is_eqmz_t> |
elementwise callable returning a logical true if and only if the element value is a floating zero with its sign bit set (mzero). | |
| constexpr auto | eve::is_eqpz = functor<is_eqpz_t> |
elementwise callable returning a logical true if and only if the element value is a floating zero with its sign bit unset. | |
| constexpr auto | eve::is_equal = functor<is_equal_t> |
elementwise callable returning a logical true if and only if the element values are equal. | |
| constexpr auto | eve::is_eqz = functor<is_eqz_t> |
elementwise callable returning a logical true if and only if the element value is zero. This includes both positive and negative zero for floating point values. | |
| constexpr auto | eve::is_even = functor<is_even_t> |
elementwise callable returning a logical true if and only if the element value is even. | |
| constexpr auto | eve::is_finite = functor<is_finite_t> |
elementwise callable returning a logical true if and only if the element is a finite value | |
| constexpr auto | eve::is_flint = functor<is_flint_t> |
elementwise callable returning a logical true if and only if the element value is a floating value representing an integer | |
| constexpr auto | eve::is_gez = functor<is_gez_t> |
elementwise callable returning a logical true if and only if the element value is greater or equal to 0. | |
| constexpr auto | eve::is_greater = functor<is_greater_t> |
elementwise callable returning a logical true if and only if the element value of the first parameter is greater than the second one. | |
| constexpr auto | eve::is_greater_equal = functor<is_greater_equal_t> |
elementwise callable returning a logical true if and only if the element value of the first parameter is greater or equal to the second one. | |
| constexpr auto | eve::is_gtz = functor<is_gtz_t> |
elementwise callable returning a logical true if and only if the element value is greater than 0. | |
| constexpr auto | eve::is_infinite = functor<is_infinite_t> |
elementwise callable returning a logical true if and only if the element is an infinite value | |
| constexpr auto | eve::is_less = functor<is_less_t> |
elementwise callable returning a logical true if and only if the element value of the first parameter is less than the second one. | |
| constexpr auto | eve::is_less_equal = functor<is_less_equal_t> |
elementwise callable returning a logical true if and only if the element value of the first parameter is less or equal to the second one. | |
| constexpr auto | eve::is_lessgreater = functor<is_lessgreater_t> |
elementwise callable returning a logical true if and only if the elements pair are not equal or unordered. | |
| constexpr auto | eve::is_lez = functor<is_lez_t> |
elementwise callable returning a logical true if and only if the element value is less or equal to 0. | |
| constexpr auto | eve::is_ltz = functor<is_ltz_t> |
elementwise callable returning a logical true if and only if the element value is less than 0. | |
| constexpr auto | eve::is_minf = functor<is_minf_t> |
elementwise callable returning a logical true if and only if the element is a negative infinite value | |
| constexpr auto | eve::is_nan = functor<is_nan_t> |
elementwise callable returning a logical true if and only if the element value is NaN | |
| constexpr auto | eve::is_negative = functor<is_negative_t> |
elementwise callable returning a logical true if and only if the element value is signed and has its sign bit set | |
| constexpr auto | eve::is_nemz = functor<is_nemz_t> |
elementwise callable returning a logical true unless the element value is a floating zero with its sign bit set (mzero) or a NaN. | |
| constexpr auto | eve::is_nepz = functor<is_nepz_t> |
elementwise callable returning a logical true unless the element value is a floating zero with its sign bit unset. | |
| constexpr auto | eve::is_nez = functor<is_nez_t> |
elementwise callable returning a logical true if and only if the element value is not zero. | |
| constexpr auto | eve::is_ngez = functor<is_ngez_t> |
elementwise callable returning a logical true if and only if the element value is not greater or equal to 0. | |
| constexpr auto | eve::is_ngtz = functor<is_ngtz_t> |
elementwise callable returning a logical true if and only if the element value is not greater than zero. | |
| constexpr auto | eve::is_nlez = functor<is_nlez_t> |
elementwise callable returning a logical true if and only if the element value is not less or equal to 0. | |
| constexpr auto | eve::is_nltz = functor<is_nltz_t> |
elementwise callable returning a logical true if and only if the element value is not less than zero. | |
| constexpr auto | eve::is_normal = functor<is_normal_t> |
elementwise callable returning a logical true if and only if the element value is normal. | |
| constexpr auto | eve::is_not_denormal = functor<is_not_denormal_t> |
elementwise callable returning a logical true if and only if the element value is not denormal. | |
| constexpr auto | eve::is_not_equal = functor<is_not_equal_t> |
elementwise callable returning a logical true if and only if the element values are not equal. | |
| constexpr auto | eve::is_not_finite = functor<is_not_finite_t> |
elementwise callable returning a logical true if and only if the element is not a finite value | |
| constexpr auto | eve::is_not_flint = functor<is_not_flint_t> |
elementwise callable returning a logical true if and only if the element value is a floating value not representing an integer | |
| constexpr auto | eve::is_not_greater = functor<is_not_greater_t> |
elementwise callable returning a logical true if and only if the element value of the first parameter is not greater than the second one. | |
| constexpr auto | eve::is_not_greater_equal = functor<is_not_greater_equal_t> |
elementwise callable returning a logical true if and only if the element value of the first parameter is greater or equal to the second one. | |
| constexpr auto | eve::is_not_infinite = functor<is_not_infinite_t> |
elementwise callable returning a logical true if and only if the element is not an infinite value | |
| constexpr auto | eve::is_not_less = functor<is_not_less_t> |
elementwise callable returning a logical true if and only if the element value of the first parameter is not less than the second one. | |
| constexpr auto | eve::is_not_less_equal = functor<is_not_less_equal_t> |
elementwise callable returning a logical true if and only if the element value of the first parameter is not less or equal to the second one. | |
| constexpr auto | eve::is_not_nan = functor<is_not_nan_t> |
elementwise callable returning a logical true if and only if the element value is not NaN | |
| constexpr auto | eve::is_odd = functor<is_odd_t> |
elementwise callable returning a logical true if and only if the element value is odd. | |
| constexpr auto | eve::is_ordered = functor<is_ordered_t> |
elementwise callable returning a logical true if and only no parameter is NaN. | |
| constexpr auto | eve::is_pinf = functor<is_pinf_t> |
elementwise callable returning a logical true if and only if the element is a positive infinite value | |
| constexpr auto | eve::is_positive = functor<is_positive_t> |
elementwise callable returning a logical true if and only if the element value is signed and has its sign bit not set | |
| constexpr auto | eve::is_pow2 = functor<is_pow2_t> |
elementwise callable returning a logical true if and only if the element value is a power of 2. | |
| constexpr auto | eve::is_unit = functor<is_unit_t> |
elementwise callable returning a logical true if and only if the element value is zero. | |
| constexpr auto | eve::is_unordered = functor<is_unordered_t> |
elementwise callable returning a logical true if and only if at least one of the parameters is NaN. | |