Skip to content

Conversation

@lemmy
Copy link
Member

@lemmy lemmy commented Dec 3, 2025

  • Introduced a new document outlining best practices for reviewing and validating TLA+ specifications.
  • Covers key areas such as model checking, simulation, specification structure, constants, variables, invariants, properties, fairness constraints, and documentation standards.
  • Provides a systematic approach for reviewers to evaluate TLA+ specifications using a producer-consumer example.

This is based on three sources:
a) items that came to mind while reviewing the project
b) material that Claude Sonnet 4.5 extracted from old PR at https://github.com/tlaplus/Examples/pulls
c) discussions that Claude Sonnet 4.5 gathered from https://discuss.tlapl.us/

[Documentation]

@lemmy lemmy force-pushed the mku-ReviewGuidelines branch from 941272c to f7e6e32 Compare December 3, 2025 03:10
@lemmy lemmy added documentation Improvements or additions to documentation enhancement New feature or request AI Work related to TLAi+ labels Dec 3, 2025
@lemmy
Copy link
Member Author

lemmy commented Dec 3, 2025

Inviting TLA+ experts like @hwayne @muenchnerkindl @will62794, @kape1395, @craft095, @ajdavis, @muratdem, @konnov, ... to contribute their review guidelines and checklist items.

@lemmy lemmy force-pushed the mku-ReviewGuidelines branch 2 times, most recently from ddeb57e to befa190 Compare December 4, 2025 00:50
@lemmy lemmy force-pushed the mku-ReviewGuidelines branch from 00c6a60 to bf1a5bc Compare December 5, 2025 15:22
@lemmy lemmy marked this pull request as ready for review December 5, 2025 15:37
@lemmy lemmy force-pushed the mku-ReviewGuidelines branch from bf1a5bc to 6a532cc Compare December 5, 2025 15:41
@lemmy
Copy link
Member Author

lemmy commented Dec 5, 2025

@muenchnerkindl Thank you (all suggestions have been incorporated)!

@konnov
Copy link

konnov commented Dec 5, 2025

Who is the audience of this document? It looks like it is being designed for LLMs. I find the lack of structure in this document rather confusing.

@lemmy
Copy link
Member Author

lemmy commented Dec 5, 2025

@konnov What other structure are you suggesting? It starts with a section on guidelines of formulas, followed by sections for each section of a TLA+ spec, ending with at section how to do (TLC) model checking.

@konnov
Copy link

konnov commented Dec 5, 2025

@konnov What other structure are you suggesting? It starts with a section on guidelines of formulas, followed by sections for each section of a TLA+ spec, ending with at section how to do (TLC) model checking.

I am trying to understand the current structure at the moment. Perhaps, it is the section "Functions, Records, and Sequences" that threw me off, as it focuses on one particular language feature. The following sections on the specification structure look much more complete.

@lemmy
Copy link
Member Author

lemmy commented Dec 5, 2025

I am trying to understand the current structure at the moment. Perhaps, it is the section "Functions, Records, and Sequences" that threw me off, as it focuses on one particular language feature. The following sections on the specification structure look much more complete.

Yes, the initial section currently contains only this one item, which gives it an unstructured appearance. However, I intend to add more items to the section over time.

@lemmy lemmy force-pushed the mku-ReviewGuidelines branch from 6a532cc to 297c777 Compare December 5, 2025 22:39
- Introduced a new document outlining best practices for reviewing and validating TLA+ specifications.
- Covers key areas such as model checking, simulation, specification structure, constants, variables, invariants, properties, fairness constraints, and documentation standards.
- Provides a systematic approach for reviewers to evaluate TLA+ specifications using a producer-consumer example.
- An invariant is a better alternative than Assert.
- Includes examples for bug injection strategies.
- Clarify coverage statistics reporting in TLC, including usage of the `-coverage 1` option for model checking.
- References new guide on Functions, Records, and Sequences in TLA+
  - Introduced a new document detailing the definitions, modifications, and usage of functions, records, and sequences in TLA+.
  - Included examples for defining functions, accessing values, modifying functions with `EXCEPT`, and recursive functions.
  - Explained the relationship between sequences and records as specific cases of functions.

[Documentation]

Co-authored-by: Stephan Merz <[email protected]>

Signed-off-by: Markus Alexander Kuppe <[email protected]>
@lemmy lemmy force-pushed the mku-ReviewGuidelines branch from 297c777 to e7f07aa Compare December 5, 2025 22:41
@lemmy
Copy link
Member Author

lemmy commented Dec 11, 2025

@konnov Is your review still pending, or can I proceed with the PR?

@konnov
Copy link

konnov commented Dec 11, 2025

Yes, the initial section currently contains only this one item, which gives it an unstructured appearance. However, I intend to add more items to the section over time.

Please go ahead and merge it. I don't want to block your PR.

@lemmy lemmy merged commit cfaf84d into master Dec 11, 2025
4 checks passed
@lemmy lemmy deleted the mku-ReviewGuidelines branch December 11, 2025 13:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

AI Work related to TLAi+ documentation Improvements or additions to documentation enhancement New feature or request

Development

Successfully merging this pull request may close these issues.

4 participants