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

Tracking issue: support for describing 100% of Miden VM constraints in AirScript #162

Closed
10 of 11 tasks
grjte opened this issue Feb 22, 2023 · 1 comment
Closed
10 of 11 tasks
Assignees
Labels

Comments

@grjte
Copy link
Contributor

grjte commented Feb 22, 2023

Goal(s)

  • be able to describe 100% of Miden VM constraints in AirScript in a clean, modular way.

Details

We need to finish basic list comprehension, which was added to the parser but not yet to the IR. The final piece of functionality we need in order to write all Miden VM constraints in AirScript is support for variable-length public inputs, as described in #143. After adding this, we will also ideally add support for list comprehension for lists of variable size (this applies only to boundary constraints as variable-sized lists are possible only for public inputs)

While adding this support would give us the ability to define all constraints, we can't do so in a clean, sane, and maintainable way until we have support for modularity. At a minimum, we need support for module imports, evaluators, and selectors. Pure functions would be nice to have as well

Must have

Preview Give feedback
  1. enhancement v0.3
    tohrnii
  2. bug v0.3
    tohrnii
  3. enhancement v0.3
    grjte
  4. enhancement
  5. enhancement v0.3
    bitwalker
  6. enhancement v0.3
    tohrnii
  7. enhancement v0.3
    tohrnii

Nice to have

Preview Give feedback
  1. enhancement
    tohrnii
  2. enhancement v0.3

Working group:

@Al-Kindi-0, @grjte, @Overcastan, @tohrnii

Workflow
  • Discussion should happen here or in the related sub-issues.
  • PRs should only be merged by the coordinator, to ensure everyone is able to review.
  • Aim to complete reviews within 24 hours.
  • When a related sub-issue is opened:
    • add it to the list of sub-issues in this tracking issue
  • When opening a related PR:
    • request review from everyone in this working group
  • When a sub-issue is completed:
    • close the related issue with a comment that links to the PR where the work was completed

Coordinator: @tohrnii

The working group coordinator ensures scope & progress tracking are transparent and accurate. They will:

  • Merge approved PRs after all working group members have completed their reviews.
    • add the PR # to the relevant section of the current tracking PR.
    • close any completed sub-issue(s) with a comment that links to the PR where the work was completed
  • Monitor workflow items and complete anything that slips through the cracks.
  • Monitor scope to see if anything is untracked or unclear. Create missing sub-issues or initiate discussion as required.
  • Monitor progress to see if there's anything which isn't moving forward. Initiate discussion as required.
  • Identify PRs with especially significant changes and add @grjte and @bobbinth for review.
@grjte grjte added the v0.3 label Feb 22, 2023
@grjte grjte added this to the Recursive verification milestone Feb 22, 2023
@grjte grjte moved this from Todo to In Progress in Milestone for 2023/03/28 Feb 27, 2023
@grjte grjte changed the title Tracking issue: add support for describing 100% of Miden VM constraints Tracking issue: support for describing 100% of Miden VM constraints in AirScript Apr 18, 2023
@grjte grjte moved this to In Progress in Milestone for 2023/05/31 Apr 18, 2023
@bobbinth
Copy link
Contributor

bobbinth commented Jul 2, 2023

Closing this as most must-haves have been addresses, and variable-length public inputs is carried over into the next milestone.

@bobbinth bobbinth closed this as completed Jul 2, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
No open projects
Status: In Progress
Status: In Progress
Development

No branches or pull requests

5 participants