C(++)ECCO
C++ Error Control COding: a header-only library for ECC simulations and experiments, modeling complete coding systems across arbitrary finite fields and complex inter-field relationships - Christian Senger <senger@inue.uni-stuttgart.de>
Loading...
Searching...
No Matches
CECCO::ReliablyComparableType Concept Reference

Types whose operator== reflects mathematical equality. More...

#include <field_concepts_traits.hpp>

Concept definition

template<typename T>
FiniteFieldType<details::coefficient_of_t<T>> || std::same_as<details::coefficient_of_t<T>, Rationals<InfInt>> ||
Field of rational numbers ℚ = { p/q : p, q ∈ ℤ, q ≠ 0 } with selectable precision.
Definition fields.hpp:470
Refines FieldType for finite fields 𝔽_{p^m}.
Types whose operator== reflects mathematical equality.
Standard signed integers or InfInt for arbitrary precision.

Detailed Description

Types whose operator== reflects mathematical equality.

Template Parameters
TCandidate type

Satisfied by FiniteFieldType, SignedIntType, Rationals<InfInt>, and by Polynomial<C> exactly when C is itself reliably comparable (polynomials are kept in canonical pruned form, so coefficient-wise comparison is mathematical equality). Excludes double and std::complex<double> (and polynomials over them) because rounding makes comparison unreliable. Used by algorithms that need stable equality (e.g. Hamming weight, structural matrix tests).

Definition at line 258 of file field_concepts_traits.hpp.