Formally define design safety, and prove it for 1-step and 2-step induction #59

Merged
cesar merged 2 commits from cesar/fayalite:rocq_hdl into master 2025-12-24 20:09:11 +00:00
Owner

Continuing from the simple earlier designs, I remove a limitation in that I proved the base and inductive cases for those designs, but didn't actually proved them to be safe (or even defined in Rocq what it meant to be safe). It also opens an opportunity to prove safety in other possible ways maybe. As an example, I prove soundness of the algorithm, which is used in Symbiyosys, for the particular cases of 1-step and 2-step induction.

Continuing from the simple earlier designs, I remove a limitation in that I proved the base and inductive cases for those designs, but didn't actually proved them to be safe (or even defined in Rocq what it meant to be safe). It also opens an opportunity to prove safety in other possible ways maybe. As an example, I prove soundness of the algorithm, which is used in Symbiyosys, for the particular cases of 1-step and 2-step induction.
cesar added 2 commits 2025-12-23 01:53:46 +00:00
Define design safety, and prove it for 1-step and 2-step induction.
All checks were successful
/ test (pull_request) Successful in 4m8s
/ test (push) Successful in 4m35s
a398f8f185
programmerjake approved these changes 2025-12-23 01:59:30 +00:00
programmerjake left a comment
Owner

It'd be nice to add running Rocq to CI, but that can be left for a future PR

It'd be nice to add running Rocq to CI, but that can be left for a future PR

so I'm clear, I approved this PR which I intend to mean that, if you think the current changes are good, feel free to merge them by clicking the "fast-forward" button.

so I'm clear, I approved this PR which I intend to mean that, if you think the current changes are good, feel free to merge them by clicking the "fast-forward" button.
cesar merged commit a398f8f185 into master 2025-12-24 20:09:11 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: libre-chip/fayalite#59
No description provided.