Skip to content

Conversation

@williamdemeo
Copy link
Member

@williamdemeo williamdemeo commented Nov 17, 2025

Description

This closes issue #965.

Copilot Generated Description

This pull request removes the outdated Properties.md summary file and replaces it with individual markdown files for each formally stated or proved property in the ledger specification. Each property now has its own dedicated documentation page, with improved cross-referencing and explicit section anchors for easier navigation. The changes also update the navigation and link references to reflect this new structure.

Documentation Restructuring:

  • Removed the old Properties.md summary file from both the documentation sources and navigation, eliminating the previous aggregation of ledger properties. [1] [2] [3]
  • Added standalone markdown documentation files for each property, such as Certs/Properties/PoV.lagda.md, Certs/Properties/PoVLemmas.lagda.md, Certs/Properties/VoteDelegsVDeleg.lagda.md, and similar files for chain and epoch properties. Each file contains a dedicated section with an explicit anchor for the property or theorem. [1] [2] [3] [4] [5] [6] [7] [8]

Content Improvements:

  • Updated the property documentation to clarify informal statements, add explicit theorem/claim anchors, and improve the presentation of Agda code and proofs (including toggles for proof visibility). [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]

Cross-Referencing and Navigation:

  • Enhanced cross-referencing in links.md by adding direct links to theorems and claims, using section anchors for each property, and updating references to point to the new documentation structure. [1] [2] [3]
  • Improved navigation by removing the obsolete Properties.md entry and ensuring each property is accessible via its own page.

Minor Codebase Improvements:

  • Added missing typeclass instance for HasGovState in EpochState, ensuring consistency in the Agda specification.

These changes make the formal ledger specification more modular, navigable, and maintainable, with each property clearly documented and easily referenced.

Checklist

  • Commit sequence broadly makes sense and commits have useful messages
  • Any semantic changes to the specifications are documented in CHANGELOG.md
  • Code is formatted according to CONTRIBUTING.md
  • Self-reviewed the diff

@williamdemeo williamdemeo self-assigned this Nov 17, 2025
@williamdemeo williamdemeo added the documentation Improvements or additions to documentation label Nov 17, 2025
@williamdemeo williamdemeo marked this pull request as ready for review November 17, 2025 06:53
Copy link
Collaborator

@carlostome carlostome left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@williamdemeo williamdemeo merged commit fe861b0 into master Dec 9, 2025
15 checks passed
@williamdemeo williamdemeo deleted the 965-refactor-properties branch December 9, 2025 02:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Refactor Ledger.Conway.Properties and move the contents of Ledger.Properties to Conway

3 participants