Dedekind 0.0.0
A structuralist C++23 Module Library
Loading...
Searching...
No Matches
dedekind::linear_algebra::matrix2x2_functor< T > Struct Template Referenceexport

Public Types

using Σ_cat = dedekind::category::CanonicalSetCCC<T>
using Τ_cat = dedekind::category::CanonicalSetCCC<Matrix2x2V<T>>
using Domain = Σ_cat
using Codomain = Τ_cat
template<typename U>
using Shape = Matrix2x2V<U>

Public Member Functions

template<typename 𝗳>
requires dedekind::category::IsArrow<std::remove_cvref_t<𝗳>>
constexpr Matrix2x2Map< T, std::remove_cvref_t< 𝗳 > > operator() (𝗳 &&f) const
constexpr Τ_cat operator() (const Σ_cat &) const noexcept

Detailed Description

template<typename T>
requires std::semiregular<T> && dedekind::algebra::HasRingOperators<T>
struct dedekind::linear_algebra::matrix2x2_functor< T >

matrix__Functorial_Hub

Matrix2x2V<·> carries a 2×2 structural shape that is functorial in the element type T: an arrow f: T→T lifts elementwise to an arrow Matrix2x2V<T>→Matrix2x2V<T>. The functor type below owns that lift and witnesses dedekind::category::IsShapedFunctor; it complements vec2_functor / covec2_functor in :vec2, closing the (1×1, 2×1, 1×2, 2×2) shape family below.


The documentation for this struct was generated from the following file: