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

The set-indexed lift of the axiomatic category::IsField: a set object X whose carrier X::Domain is a field. More...

Concept definition

template<typename X, typename Add std::plus<typename X::Domain>, typename Mult std::multiplies<typename X::Domain>>
An algebraic set: a Tarski set whose carrier is closed under a family of operations....
Definition universal.cppm:187
The set-indexed lift of the axiomatic category::IsField: a set object X whose carrier X::Domain is a ...
Definition field.cppm:179
The axiomatic field witness — a commutative ring whose multiplicative structure is an abelian group (...
Definition total.cppm:857

Detailed Description

The set-indexed lift of the axiomatic category::IsField: a set object X whose carrier X::Domain is a field.

Template Parameters
XThe set object (category::IsSet).
AddAdditive operation witness (defaults to std::plus).
MultMultiplicative operation witness (defaults to std::multiplies).

The faithful lift, matching every other rung: IsAlgebraOnSet supplies the carrier discipline (IsLSet roots std::semiregular on X::Domain, IsClosedAlgebra pins strict closure) and category::IsField<X::Domain, Add, Mult> supplies the axioms — a commutative ring whose non-zero elements are multiplicatively invertible (via is_invertible_v / IsAbelianGroup<X::Domain, Mult>).

Note
The division operator surface (operator/, .inverse(), std::divides) is deliberately not required here. It is a syntactic concern carried by the separate concepts HasFieldOperators (shape only) and IsDivisionRing (ring + surface). Keeping it out makes IsField a pure axiomatic lift, so a genuine field with no division operator — \(\mathbb{F}_2 = \mathbb{A}\langle\texttt{bool}\rangle\) under (bit_xor, bit_and) — qualifies. A callsite that needs to write a/b on field elements constrains additionally on HasFieldOperators.