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

A callable φ from Source to Target that carries the ring structure: \(\varphi(a + b) = \varphi(a) + \varphi(b)\), \(\varphi(a b) = \varphi(a) \varphi(b)\), \(\varphi(0) = 0\) and \(\varphi(1) = 1\) (Lang, Algebra, §II.1). More...

Concept definition

template<typename Phi, typename Source, typename Target>
typename semiring_ops<Source>::mult> &&
typename semiring_ops<Target>::mult> &&
std::same_as<dedekind::category::Dom<Phi>, Source> &&
std::same_as<dedekind::category::Cod<Phi>, Target> &&
An arrow between two algebras that carries each operation of the signature S on to the one in the s...
Definition universal.cppm:606
A callable φ from Source to Target that carries the ring structure: , , and (Lang,...
Definition ring.cppm:314
A type that knows its own Domain (A) and Codomain (B), objects it maps between: called at the domain'...
Definition morphism.cppm:168
The Perfect Species (Rig ∩ Rng).
Definition total.cppm:791
Signature< typename semiring_ops< S >::add, typename semiring_ops< S >::mult > semiring_signature
The semiring signature a carrier registers, (⊕, ⊗) off semiring_ops: the default family of a homomorp...
Definition universal.cppm:534

Detailed Description

A callable φ from Source to Target that carries the ring structure: \(\varphi(a + b) = \varphi(a) + \varphi(b)\), \(\varphi(a b) = \varphi(a) \varphi(b)\), \(\varphi(0) = 0\) and \(\varphi(1) = 1\) (Lang, Algebra, §II.1).

A homomorphism of the semiring signatures, IsHomomorphism of the (⊕, ⊗) each ring registers on semiring_ops: two monoid homomorphisms, the laws on every pair declared on category::is_homomorphism and the laws at the units computed. The negation comes along, since a monoid homomorphism between additive groups is a group homomorphism. An arrow between two rings, each certified category::IsRing under the operations it registers.

Template Parameters
Phithe map.
Source
Targetthe rings.