-
Notifications
You must be signed in to change notification settings - Fork 160
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
feat: Implement hints on uint384 lib (Part 1) #960
Conversation
Codecov Report
@@ Coverage Diff @@
## main #960 +/- ##
========================================
Coverage 97.75% 97.75%
========================================
Files 74 75 +1
Lines 30538 30970 +432
========================================
+ Hits 29851 30274 +423
- Misses 687 696 +9
📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why are all the hint functions public?
|
Co-authored-by: Mario Rugiero <mario.rugiero@lambdaclass.com>
Co-authored-by: Mario Rugiero <mario.rugiero@lambdaclass.com>
Co-authored-by: Mario Rugiero <mario.rugiero@lambdaclass.com>
* Add hint code for UINT348_UNSIGNED_DIV_REM * Add file for uint348 files * Add pack & split for uint348 * Move comment * Implement uint348_unsigned_div_rem hint * Add integration test * Add integration test * Add unit tests * Add hint on split_128 * Test split_128 hint * Add add_no_uint384_hint * Fix hint + add tests * Add hint code for UINT348_UNSIGNED_DIV_REM_EXPAND * Msc fixes * Add integration test * Reduce Uint384_expand representation to the 3 used limbs * Add unit test * Add hint code for UINT384_SQRT * Add implementation for hint on sqrt * Integration test * Add unit tests * Fix missing directive * Run cairo-format * Add changelog entry * Spelling * Update src/hint_processor/builtin_hint_processor/uint384.rs Co-authored-by: Mario Rugiero <mario.rugiero@lambdaclass.com> * Update src/hint_processor/builtin_hint_processor/uint384.rs Co-authored-by: Mario Rugiero <mario.rugiero@lambdaclass.com> * Update src/hint_processor/builtin_hint_processor/uint384.rs Co-authored-by: Mario Rugiero <mario.rugiero@lambdaclass.com> * Make hint code more readable * fix fmt --------- Co-authored-by: Mario Rugiero <mario.rugiero@lambdaclass.com>
lib where these hints come from can be found here (https://github.com/NethermindEth/research-basic-Cairo-operations-big-integers/blob/main/lib/uint384.cairo)
Contains 5 hints:
UINT384_UNSIGNED_DIV_REM
UINT384_SPLIT_128
ADD_NO_UINT384_CHECK
UINT384_UNSIGNED_DIV_REM_EXPANDED
UINT384_SQRT