Dedekind 0.0.0
A structuralist C++23 Module Library
Loading...
Searching...
No Matches
dedekind::category::Profile< E, N > Struct Template Referenceexport

The laws an arrow is known to have, one answer in K₃ per law: True where certified, Unknown where not, never False (a profile certifies, it does not refute). The pointwise lift Ω^E of the truth chain to the laws (lattice__Omega_First_Pointwise_Lift), restricted to its sub-chain Σ = {Unknown < True}: combined law by law with Inf / Sup. Read by the laws of functions below and by the laws of relations (relational:dyadic). More...

Collaboration diagram for dedekind::category::Profile< E, N >:

Public Member Functions

constexpr Ternary operator[] (E w) const
constexpr Profile with (E w) const
 This profile with law w certified: a new profile, this one unchanged.
constexpr bool operator== (const Profile &) const =default

Static Public Member Functions

template<typename F>
requires std::invocable<const F&, E>
static constexpr Profile tabulate (const F &f)
 The profile whose answer at each law is f(law): the one loop every engine runs, law by law.

Public Attributes

std::array< Ternary, N > of {}

Detailed Description

template<typename E, std::size_t N>
struct dedekind::category::Profile< E, N >

The laws an arrow is known to have, one answer in K₃ per law: True where certified, Unknown where not, never False (a profile certifies, it does not refute). The pointwise lift Ω^E of the truth chain to the laws (lattice__Omega_First_Pointwise_Lift), restricted to its sub-chain Σ = {Unknown < True}: combined law by law with Inf / Sup. Read by the laws of functions below and by the laws of relations (relational:dyadic).

Template Parameters
Ethe laws, an enumeration 0 … N − 1.
Nhow many.

Member Function Documentation

◆ tabulate()

template<typename E, std::size_t N>
template<typename F>
requires std::invocable<const F&, E>
constexpr Profile dedekind::category::Profile< E, N >::tabulate ( const F & f)
inlinestaticconstexpr

The profile whose answer at each law is f(law): the one loop every engine runs, law by law.

Parameters
fthe answer per law.

◆ with()

template<typename E, std::size_t N>
Profile dedekind::category::Profile< E, N >::with ( E w) const
inlineconstexpr

This profile with law w certified: a new profile, this one unchanged.

Parameters
wthe law.

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