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

distinguish AIR constraints for base tables and extension tables #119

Closed
jan-ferdinand opened this issue Nov 14, 2022 · 3 comments · Fixed by #144
Closed

distinguish AIR constraints for base tables and extension tables #119

jan-ferdinand opened this issue Nov 14, 2022 · 3 comments · Fixed by #144
Labels
🤖 code Changes the implementation 💫 good first issue Good for newcomers 🟢 prio: low Not at all urgent ⏩ speedup Makes stuff go faster.

Comments

@jan-ferdinand
Copy link
Member

Multiplying two XFieldElements requires 12 multiplications of BFieldElements. AIR constraints that only pertain to a table's base columns do not need to have type XFieldElement, but for reasons of convenience, they currently do.

Refactor the code, and possibly the involved traits such as Evaluable, to distinguish between constraints for the base table and constraints for the extension table.

@jan-ferdinand jan-ferdinand added 💫 good first issue Good for newcomers 🟢 prio: low Not at all urgent 🤖 code Changes the implementation ⏩ speedup Makes stuff go faster. labels Nov 14, 2022
@Sword-Smith
Copy link
Collaborator

After speaking to @bobbinth we realized that we could probably make this distinction on the leaf type for the ConstraintCircuit struct that we use to auto generate code for evaluating constraints. We should distinguish whether something is an base_field_input or an extension_field_input.

@jan-ferdinand
Copy link
Member Author

As far as I know, joint credit also to @grjte. 😌

@jan-ferdinand
Copy link
Member Author

It's probably best to wait until #139 is in place.

@jan-ferdinand jan-ferdinand mentioned this issue Dec 5, 2022
25 tasks
jan-ferdinand added a commit that referenced this issue Dec 22, 2022
- add master tables (#144)
- distinguish AIR constraints of base and extension tables (#119)
- enforce RAM initialization to all zero (#155)
- reduce memory footprint (#11)
- split Triton VM's instructions into separate sub-crate
- use twenty-first v0.10
jan-ferdinand added a commit that referenced this issue Dec 22, 2022
- add master tables (#144)
- distinguish AIR constraints of base and extension tables (#119)
- enforce RAM initialization to all zero (#155)
- reduce memory footprint (#11)
- split Triton VM's instructions into separate sub-crate
- use twenty-first v0.10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🤖 code Changes the implementation 💫 good first issue Good for newcomers 🟢 prio: low Not at all urgent ⏩ speedup Makes stuff go faster.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants