lean4-htt/src/Init/Data/Option
Paul Reichert e2617903f8
feat: MonadAttach (#11532)
This PR adds the new operation `MonadAttach.attach` that attaches a
proof that a postcondition holds to the return value of a monadic
operation. Most non-CPS monads in the standard library support this
operation in a nontrivial way. The PR also changes the `filterMapM`,
`mapM` and `flatMapM` combinators so that they attach postconditions to
the user-provided monadic functions passed to them. This makes it
possible to prove termination for some of these for which it wasn't
possible before. Additionally, the PR adds many missing lemmas about
`filterMap(M)` and `map(M)` that were needed in the course of this PR.
2025-12-16 18:57:00 +00:00
..
Array.lean chore: remove redundant imports in core (#10750) 2025-10-16 20:27:46 +00:00
Attach.lean feat: MonadAttach (#11532) 2025-12-16 18:57:00 +00:00
Basic.lean chore: remove ≥6 month old deprecations (#11627) 2025-12-12 10:40:04 +00:00
BasicAux.lean chore: remove redundant imports in core (#10750) 2025-10-16 20:27:46 +00:00
Coe.lean feat: make private the default in module (#9044) 2025-06-28 16:30:53 +00:00
Instances.lean chore: post-stage0 update fixes 2025-12-10 17:28:06 +01:00
Lemmas.lean chore: remove ≥6 month old deprecations (#11627) 2025-12-12 10:40:04 +00:00
List.lean chore: remove redundant imports in core (#10750) 2025-10-16 20:27:46 +00:00
Monadic.lean chore: remove ≥6 month old deprecations (#11627) 2025-12-12 10:40:04 +00:00