Dedekind 0.0.0
A structuralist C++23 Module Library
Loading...
Searching...
No Matches
dedekind::algebra::IsEuclidean Concept Referenceexport

A Commutative Ring endowed with a division algorithm. More...

Concept definition

template<typename T, typename Add std::plus<T>, typename Mult std::multiplies<T>, typename Div std::divides<T>, typename Rem std::modulus<T>>
IsDividableChain<T> && requires(T a, T b) {
{ a / b } -> std::same_as<T>;
{ a % b } -> std::same_as<T>;
{ Div{}(a, b) } -> std::same_as<T>;
{ Rem{}(a, b) } -> std::same_as<T>;
}
A Commutative Ring endowed with a division algorithm.
Definition division.cppm:76
A Ring whose multiplication is commutative.
Definition total.cppm:811

Detailed Description

A Commutative Ring endowed with a division algorithm.

Template Parameters
TThe carrier type.
AddAdditive operation witness (defaults to std::plus<T>).
MultMultiplicative operation witness (defaults to std::multiplies<T>).
DivDivision operation witness (defaults to std::divides<T>).
RemRemainder operation witness (defaults to std::modulus<T>).