|
Dedekind 0.0.0
A structuralist C++23 Module Library
|
The retract of an IsIsomorphism: its total inverse arrow wrapped in an always-engaged std::optional.
More...

Public Member Functions | |
| constexpr Maybe< Dom< F > > | operator() (const Cod< F > &y) const |
Public Attributes | |
| F | f |
The retract of an IsIsomorphism: its total inverse arrow wrapped in an always-engaged std::optional.
Every iso \(f:A\to B\) has a two-sided inverse \(f^{-1}:B\to A\), so its retract is total: retract(f)(y) is always Some(f^{-1}(y)), built through the maybe unit η(maybe_monad, ·) rather than a raw std::optional constructor. A named functor (not a lambda) so the type is nameable and the closure is transparent.
| F | The iso arrow type. |