0xMiden / 0xMiden/air-script

[Plonky3 Codegen] Propagate tagging to Plonky3 generated constraints

Offen
#555 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Rust
Sterne
96
Forks
39
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

PR #461 adds a Plonky3 Backend to air-script. It converts air-script programs into AirBuilder equivalent constraints. This issue, along with #534, outlines improvements on this Plonky3 backend that could be useful to better suit the current codebases and needs (e.g. regarding MidenVM constraints generation and comparison).

Since PR #461 was made, the constraints tagging system (https://github.com/0xMiden/air-script/pull/539) made it easier to track constraints and compare air-script constraints with AirBuilder constraints to ensure they are equal.
PRs [#540, and from #543 to #554] (on the air-script side) and [#2725, #2735, #2736 and from #2748 to #2756] (on the miden-vm side) leveraged this tagging system to write MidenVM constraints in both languages.

What would be interesting is to improve the existing Plonky3 backend to support these tags, and be able to directly compare the auto-generated AirBuilder constraints from the manually-written ones.

However, this may be dependent on #534 to improve readability of generated constraints first.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Review PR #461 to understand the Plonky3 backend and the tagging system introduced in PR #539. Examine the linked PRs on both air-script and miden-vm sides to see how tags are used. The work involves modifying the codegen to propagate tags to generated constraints, likely in the Plonky3 backend module. Start by locating the constraint generation code and understanding the tag data structures.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
rust
Bereich
backend-api-design, compilers
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.