|
Dedekind 0.0.0
A structuralist C++23 Module Library
|
:expressions predicate for the LP's unique optimal vertex at NTTP coordinates.
More...
Public Types | |
| using | Domain = dedekind::linear_algebra::Vec2V<T> |
| using | cardinality_type = dedekind::sets::Finite |
Public Member Functions | |
| constexpr bool | operator() (const Domain &p) const |
Static Public Attributes | |
| static constexpr T | coord_x = x_val |
| static constexpr T | coord_y = y_val |
:expressions predicate for the LP's unique optimal vertex at NTTP coordinates.
Predicates for the output side of argmax — the optimal locus expressed as a :expressions::Set rather than a typed Vec2 . The output Set's predicate type encodes the LP's mathematical regime:
(x*, y*) at the type level when the LP has a unique optimal vertex.:expressions::EmptyPredicate carries the empty set when the LP is infeasible.argmax (the NTTP combinator) returns a Set whose predicate type pins the regime (singleton / empty) at the type level. The runtime entries maximize_with_values and siblings also return a Set, with the regime carried at the value level via LPSolutionPredicate 's (point, feasible) state — see lp_runtime_solution_set . The §3 sets-as-rules vocabulary is the same on both sides of argmax — input polytope and output locus alike — at both the NTTP and runtime entries.
Carries (x_val, y_val) as NTTPs (structural) and exposes a stateless operator() — the predicate matches v iff v.x == x_val && v.y == y_val . Cardinality is Finite (size 1). Used as the output-Set predicate when argmax produces a unique optimum.