Signature-level witness for Grothendieck coverage rules over sieves.
More...
template<typename J, typename S>
IsSieve<S> &&
requires(S s,
typename S::Arrow f) {
{ J::is_cover(s) } -> std::convertible_to<bool>;
{ J::identity_cover(s.target()) } -> std::convertible_to<bool>;
{ J::is_cover(s.pullback_along(f)) } -> std::convertible_to<bool>;
{ J::pullback_stable(s, f) } -> std::convertible_to<bool>;
{ J::transitive(s) } -> std::convertible_to<bool>;
}
Signature-level witness for Grothendieck coverage rules over sieves.
Definition topoi.cppm:210
Signature-level witness for a sieve of arrows into an object.
Definition topoi.cppm:185
Signature-level witness for Grothendieck coverage rules over sieves.
This concept encodes the three textbook shape obligations used by this project's ETCS narrative:
- Identity cover witness,
- Pullback-stability witness,
- Transitivity witness.
It is a proof-surface contract: implementations may use stronger internal laws, but these witnesses keep API-level claims reviewable and testable.