Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Jasmin, Mathcomp2 and Coq.8.18.0 #39

Draft
wants to merge 410 commits into
base: main
Choose a base branch
from
Draft

Jasmin, Mathcomp2 and Coq.8.18.0 #39

wants to merge 410 commits into from

Conversation

cmester0
Copy link
Collaborator

No description provided.

TheoWinterhalter and others added 30 commits April 12, 2022 15:06
- added several auxiliary lemmas on get/set/folds
- note that `chWrite` has both a `foldl` and `foldr` version
- also added some comments to structure proofs in `choice_type`
important changes:
- the translation of `app_sopn` binds to a list instead of a tuple
- the translation of `app_sopn` does not truncate when it binds, but
  when it applies the operations
- the translation of `app_sopn` uses axiom of choice, since it needs a
  `choiceType` of `list typed_chElement` (i think, though, that it can
  proven to be a `choiceType` without axioms)

other notes:
- the proof `app_sopn_list_correct` is *very* slow (~10min on my
  machine), since it needs to destruct on the list of values and list
  of input types of the operations.
- I kept variants `bind_list_to_tuple` in here if we need it for something
  else. I also kept attempts and correctness proofs about these
  constructions. It can all safely be deleted.
…nslation

Procedure calls need to know at which type they happen, so we pass around a
typing environment in the translation of instructions. This environment is
built from the translation of a program by projecting the translated functions
to their input- and output-types.
@cmester0 cmester0 marked this pull request as draft February 10, 2024 21:19
@cmester0
Copy link
Collaborator Author

cmester0 commented Feb 16, 2024

Updating the Jasmin files seems a bit harder, than updating to mathcomp2 (and coq-8.18), as things have been moved around and renamed, and I do not have much knowledge about the Jasmin library.

@cmester0 cmester0 mentioned this pull request Mar 5, 2024
@cmester0 cmester0 force-pushed the jasmin-coq.8.18.0 branch from e327151 to 6aa247c Compare March 7, 2024 14:09
@spitters
Copy link
Contributor

spitters commented Apr 3, 2024

Waiting for:
jasmin-lang/jasmin#560

@cmester0 cmester0 changed the base branch from jasmin to main April 4, 2024 07:43
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.

5 participants