Skip to content

feat: Auth Cmra#134

Merged
markusdemedeiros merged 4 commits intoleanprover-community:masterfrom
ahuoguo:AuthCmra
Feb 6, 2026
Merged

feat: Auth Cmra#134
markusdemedeiros merged 4 commits intoleanprover-community:masterfrom
ahuoguo:AuthCmra

Conversation

@ahuoguo
Copy link
Contributor

@ahuoguo ahuoguo commented Jan 27, 2026

Description

Defines Auth CMRA, finishes #53

Most of the theorems are directly using View.lean as an instance. I ignored the _1 _2 lemmas, most of the theorem names are a suffix of the corresponding rocq theorem, the missing ones are marked as TODO:

The functor construction is based on Puming's PR #130, where he defined view_map.

Problems

  • I don't like the fact that you need to add the type information in ((●V a : View F R) • ◯V b), this is also a problem in View.lean. There might be a way to use notation and scopes to fix it. (I might leave this as an issue)
  • Most of the names follows the rocq-iris theorem names, for the ones that deviate, I provide a comment like /-- Rocq: auth_view_rel_discrete -/ I'm not sure if the deprecated name attribute described in #iris-lean > Noting Rocq names when porting @ 💬 applies here. Also, View.lean theorem names deviate from iris-rocq counterpart a lot
  • For the ones I don't know how to port (like the ones that has BigOp or IsOp), I left a TODO

Checklist

  • My code follows the mathlib naming and code style conventions
  • I have updated PORTING.md as appropriate
  • I have added my name to the authors section of any appropriate files

@ahuoguo ahuoguo changed the title Auth Cmra feat: Auth Cmra Jan 27, 2026
hxrts added a commit to hxrts/iris-lean that referenced this pull request Jan 29, 2026
Add Auth resource algebra built on the view construction, including:
- authViewRel and IsViewRel instance
- Auth type with ● (authoritative) and ◯ (fragment) notation
- Validity, inclusion, and injectivity lemmas
- Frame-preserving updates: auth_update, auth_update_alloc,
  auth_update_dealloc, auth_update_auth_persist, auth_local_update
- AuthURF/AuthRF functors with URFunctor/RFunctor instances
- View, Heap, and HeapView functor additions
- CMRA infrastructure extensions (opM lemmas, validN helpers)

Based on upstream PR leanprover-community#134 (ahuoguo/AuthCmra).
hxrts added a commit to hxrts/iris-lean that referenced this pull request Feb 1, 2026
Add Auth resource algebra built on the view construction, including:
- authViewRel and IsViewRel instance
- Auth type with ● (authoritative) and ◯ (fragment) notation
- Validity, inclusion, and injectivity lemmas
- Frame-preserving updates: auth_update, auth_update_alloc,
  auth_update_dealloc, auth_update_auth_persist, auth_local_update
- AuthURF/AuthRF functors with URFunctor/RFunctor instances
- View, Heap, and HeapView functor additions
- CMRA infrastructure extensions (opM lemmas, validN helpers)

Based on upstream PR leanprover-community#134 (ahuoguo/AuthCmra).
@ahuoguo ahuoguo marked this pull request as ready for review February 6, 2026 17:47
@markusdemedeiros markusdemedeiros merged commit d1b18b3 into leanprover-community:master Feb 6, 2026
1 check passed
lzy0505 pushed a commit to lzy0505/iris-lean that referenced this pull request Mar 2, 2026
Co-authored-by: Markus de Medeiros <markusdemedeiros@outlook.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants