-
Notifications
You must be signed in to change notification settings - Fork 54
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
Add Cairo Zero Hints #164
Labels
cairo zero
Exclusively targets cairo zero
enhancement
New feature or request
vm hint
Related with VM hints
Comments
This was referenced Nov 14, 2023
Closed
Closed
Open
To implement the hints in this issue you'll need to follow the next steps:
|
quasilyte
added a commit
that referenced
this issue
Feb 16, 2024
This hint uses the assert_felt_le beneath it, but it was implemented beforehand. This PR has no tests included since #204 is not solved yet. I used a couple of Cairo0 scripts to test this functionality with a set of different arguments to cover both hints that are a part of `is_nn` function. (One of them handles negatives while another is for the non-negatives.) Refs #164
quasilyte
added a commit
that referenced
this issue
Feb 16, 2024
is_nn hint uses the assert_felt_le beneath it, but it was implemented beforehand. This PR has no tests included since #204 is not solved yet. I used a couple of Cairo0 scripts to test this functionality with a set of different arguments to cover both hints that are a part of `is_nn` function. (One of them handles negatives while another is for the non-negatives.) Refs #164
quasilyte
added a commit
that referenced
this issue
Feb 20, 2024
implement several Cairo0 hint is_nn hint uses the assert_felt_le beneath it, but it was implemented beforehand. This PR has no tests included since #204 is not solved yet. I used a couple of Cairo0 scripts to test this functionality with a set of different arguments to cover both hints that are a part of `is_nn` function. (One of them handles negatives while another is for the non-negatives.) Refs #164
Closed
91 tasks
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
cairo zero
Exclusively targets cairo zero
enhancement
New feature or request
vm hint
Related with VM hints
Cairo Zero Hints
The following is a (big!) list of hints required by Cairo Zero. They might be an overlap between Cairo Zero hints and Cairo One hints #36 .
The list was extracted from sister VM in Go by LambdaClass where they gathered all Pythonic hints.
👀 For specific instructions on how to implement these hints you can check out the readme file in the zero package
Uint256 Operations
Uint256Sub
hint #561Uint256UnsignedDivRemExpanded
hint #563Uint128Add
hint #562Uint128Sqrt
hint #614Math Operations
SplitInt
is within the expected range.AssertLeFelt
.AssertLeFelt
.AssertLeFelt
.GetFeltBitLength
hint #544BigIntToUint256
hint #554getHighLen
hint #558invModPUint512
hint #559Split128
hint #560SplitXX
hint #564Is250Bits
hint #569Usort
Other
NondetElementsOverTen
hint (poseidon builtin hint) #491NondetElementsOverTwo
hint (poseidon builtin hint) #492Sha256AndBlake2sInput
hint #540NormalizeAddress
hint #568Elliptic Curve Operations
RecoverY
hint (ecop builtin (STARK curve) related hint) #490ChainedEcOpRandomEcPoint
hint (ecop builtin (STARK curve) related hint) #489RandomEcPoint
hint (ecop builtin (STARK curve) related hint) #488DivModNSafeDivPlusOne
hint (ec hint) #527ComputeSlopeV2
hint (secp hint) #531DivModNPackedDivmodExternalN
hint (secp hint) #532EcDoubleAssignNewXV4
hint (secp hint) #533EcDoubleSlopeV3
hint (secp hint) #535ComputeSlopeV3
hint (secp hint) #536EcdoubleAssignNewXV2
hint (secp hint) #538FastEcAddAssignNewXV3
hint #542FastEcAddAssignNewXV2
hint #546ImportSecp256R1NAsN
hint #579reduceV2
hint #577reduceEd25519
hint #578EcRecoverDivModNPacked
hint (ec recover hint) #534BigIntPackDivmod
+BigIntSafeDiv
hints (ec hints) #530Signatures (ECDSA & SEC_P)
VerifyZeroV3
hint #552VerifyZeroV2
hint (secp hint) #537VerifyZeroAlt
hint #556Blake Hash
Blake2sCompress
hint #539Blake2sFinalizeV3
hint #541Blake2sFinalizeV2
hint #543Keccak
CompareBytesInWord
hint (Keccak hint) #479compareKeccakFullRateInBytes
hint (Keccak hint) #480SplitInput3
hint (keccak builtin hint) #498SplintInput6
hint (keccak builtin hint) #499SplitInput9
hint (keccak builtin hint) #500SplitInt12
hint (keccak builtin hint) #501SplitInt15
hint (keccak builtin hint) #502SplitOutput0
hint (keccak builtin hint) #503SplitOutputMidLowHigh
hint (keccak builtin hint) #504SplitNBytes
hint (keccak builtin hint) #505cairoKeccakFinalizeBlockSize1000Code
missing hint #528Sha256
Sha256Chunk
hint #565FinalizeSha256
hint #566PackedSha256
hint #567Dictionaries
The text was updated successfully, but these errors were encountered: