Skip to content

docs: state must be idempotent commutative monoid, not just commutative - #112

Open
sanity wants to merge 1 commit into
mainfrom
docs/idempotent-manual-pages
Open

docs: state must be idempotent commutative monoid, not just commutative#112
sanity wants to merge 1 commit into
mainfrom
docs/idempotent-manual-pages

Conversation

@sanity

@sanity sanity commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

Problem

Manual pages, FAQ, and a slide deck described contract state merge as only requiring commutativity. The actual requirement (per freenet-stdlib's ContractInterface docs and the whitepaper) is that merge is associative, commutative, AND idempotent (an idempotent commutative monoid / join-semilattice).

Approach

Align wording across the site with the whitepaper's terminology.

Testing

Doc-only change (markdown + slide HTML content, no code).

[AI-assisted - Claude]

The manual pages, FAQ, and slides described contract state merge as
only requiring commutativity, but the whitepaper and stdlib trait docs
require associativity and idempotence too (state forms an idempotent
commutative monoid / join-semilattice). Align wording across the site.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018gMSXHaQ2rXKGfAVWKqk11
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.

1 participant