-
Notifications
You must be signed in to change notification settings - Fork 43
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
garaga-rs : MSM calldata function updates #189
Comments
feltroidprime
added
priority-medium
This issue may be useful, and needs some attention.
and removed
priority-medium
This issue may be useful, and needs some attention.
labels
Sep 10, 2024
This issue was closed.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The current implementation of the
msm_calldata_builder
ingaraga/tools/garaga_rs/src/msm.rs
Lines 25 to 45 in 7e16413
garaga/hydra/garaga/starknet/tests_and_calldata_generators/msm.py
Line 361 in 7e16413
Is calling the internal function
calldata_builder
with default boolean parameters forRequested tasks :
Modify
msm_calldata_builder
to include those 3 parameters as wellUpdate the Wasm binding to use those 3 parameters
Add a new boolean parameter
risc0_mode
like in the Python class. The main difference betweenrisc0_mode
and "normal" mode is that the scalars should be u128 and not u256. This is a simpler case where the zk-ecip hint is used only one time instead of three. See the difference in the Cairo function for msm_g1 and msm_g1_u128garaga/src/src/ec_ops.cairo
Lines 352 to 557 in 7e16413
create a python binding for this msm_calldata_builder:
garaga/hydra/garaga/starknet/tests_and_calldata_generators/msm.py
Line 361 in 7e16413
use_rust
. If set to True, the class should call a new method_serialize_to_calldata_rust(self, options)
, serialize correctly the class members and call the rust binding.tests/hydra/starknet/calldata.py
. The test should compare using pytest fixtures the rust and python implementation over all curves, msm size from 1 to 2, and all 4 options (include_digits, include_points_and_scalars, serialize_as_pure_felt252_array, risc0_mode) similarly togaraga/tests/hydra/hints/test_ecip.py
Lines 12 to 29 in 7e16413
The text was updated successfully, but these errors were encountered: