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

A Morphism whose domain species admits no undefined (hazard) values. More...

Concept definition

template<typename F>
IsArrow<F> && std::same_as<typename GetLogic<domain_t<F>>::type::Ω, bool>
A type that knows its own Domain (A) and Codomain (B), objects it maps between: called at the domain'...
Definition morphism.cppm:168
A Morphism whose domain species admits no undefined (hazard) values.
Definition total.cppm:409

Detailed Description

A Morphism whose domain species admits no undefined (hazard) values.

∀x ∈ Domain: f(x) is valid (not a hazard).

A morphism is "Total" when it is defined for every element of its domain. This corresponds to functions that cannot produce undefined behaviour (e.g. overflow, division by zero). The criterion is structural: the domain species must use bool as its logic type, which is only satisfied by species whose arithmetic wraps predictably (e.g. unsigned int, bool).