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

W carries the outer-product structure for factor spaces U and V: there is a dyad(u, v) → W constructor representing u ⊗ v in W. More...

Concept definition

template<typename W, typename U, typename V>
concept dedekind::geometry::IsOuterProductSpace = requires(U const& u, V const& v) {
{ dyad(u, v) } -> std::convertible_to<W>;
}
W carries the outer-product structure for factor spaces U and V: there is a dyad(u,...
Definition outer_product.cppm:85
constexpr LinearMap< F, M, N > dyad(const Vector< F, M > &u, const Vector< F, N > &v)
Definition outer_product.cppm:110

Detailed Description

W carries the outer-product structure for factor spaces U and V: there is a dyad(u, v) → W constructor representing u ⊗ v in W.

ops__Concept

The concept's value-level requirement is the existence of the dyad arrow. The bilinearity laws and the rank-1 entry law are pinned by carrier-site static_assert witnesses (see the ops__Witnesses section below for the LinearMap inhabitant's pins). The universal property of the tensor product is documented but not encoded in the concept itself.