Cairo Zero hints are currently being implemented. This issue summarises the state of integration tests for Cairo Zero hints.
Some hints are inter-related, and should be tested together. For example, the process of dictionaries squashing involves many hints, while integration test should ensure squashing process works properly after all hints are implemented. Same for usort where the action of sorting a list requires all usort-related hint.
Uint256 Operations
[x] Uint256Add
[x] Split64
[x] Uint256SignedNN
[x] Uint256UnsignedDivRem
[x] Uint256MulDivMod
[x] Uint256Sqrt
Math Operations
[x] IsNn
[x] IsNnOutOfRange
[x] IsLeFelt
[x] AssertLtFelt
[x] Pow
[x] IsPositive
[x] SplitFelt
[x] SplitInt
[x] SplitIntAssertRange
[x] AssertNotZero
[x] AssertNn
[x] AssertNotEqual
[x] Assert250Bits
[x] AssertLeFelt
[x] AssertLeFeltExcluded0
[x] AssertLeFeltExcluded1
[x] AssertLeFeltExcluded2
[x] Sqrt
[x] UnsignedDivRem
[x] SignedDivRem
[x] IsQuadResidue
Usort
[x] UsortEnterScope
[x] UsortBody
[x] UsortVerify
[x] UsortVerifyMultiplicityAssert
[x] UsortVerifyMultiplicityBody
Elliptic Curve Operations
[x] EcNegate
[x] EcDoubleSlopeV1
[x] ComputeSlopeV1
[x] EcDoubleAssignNewXV1
[x] EcDoubleAssignNewYV1
[x] NondetBigint3V1
[x] FastEcAddAssignNewX
[x] FastEcAddAssignNewY
[x] isZeroNondet
[x] ReduceV1
[x] isZeroDivMod
[x] EcMulInner
[x] RandomEcPoint (ecop builtin hint)
[x] ChainedEcopRandomEcPoint (ecop builtin hint)
Signatures (ECDSA & SEC_P)
[x] VerifyEcdsaSignature
[x] ImportSecp256R1P
[x] VerifyZero
[x] DivModNPackedDivmodV1
[x] DivModNSafeDiv
[x] GetPointFromX
Blake Hash
[x] Blake2sCompute
[x] Blake2sAddUint256
[x] Blake2sAddUint256Bigend
[x] Blake2sFinalize
Keccak
[x] UnsafeKeccak
[x] UnsafeKeccakFinalize
[x] BlockPermutation
[x] CairoKeccakFinalize
[x] KeccakWriteArgs
[x] keccak builtin hints
Dictionaries
[x] DefaultDictNew
[x] DictRead
[x] DictWrite
[x] DictUpdate
[x] SquashDict
[x] SquashDictInnerSkipLoop
[x] SquashDictInnerFirstIteration
[x] SquashDictInnerCheckAccessIndex
[x] SquashDictInnerContinueLoop
[x] SquashDictInnerAssertLenKeys
[x] SquashDictInnerLenAssert
[x] SquashDictInnerUsedAccessesAssert
[x] SquashDictInnerNextKey
[x] DictSquashCopyDict
[x] DictSquashUpdatePtr
[x] DictNew
Other
[x] AllocSegment
[x] SetAdd
[x] VmExitScope
[x] VmEnterScope
[x] MemcpyEnterScope
[x] MemcpyContinueCopying
[x] MemsetEnterScope
[x] MemsetContinueLoop
[x] FindElement
[x] SearchSortedLower
[x] AllocSegment
[x] NondetElementsOverTWo (poseidon builtin)
[x] NondetElementsOverTen (poseidon builtin)
and all additional whitelisted hints discovered secondly , see #164 for the entire list of hints
Cairo Zero hints are currently being implemented. This issue summarises the state of integration tests for Cairo Zero hints.
Some hints are inter-related, and should be tested together. For example, the process of dictionaries squashing involves many hints, while integration test should ensure squashing process works properly after all hints are implemented. Same for usort where the action of sorting a list requires all usort-related hint.
Uint256 Operations
Math Operations
Usort
Elliptic Curve Operations
Signatures (ECDSA & SEC_P)
Blake Hash
Keccak
Dictionaries
Other
[x] AllocSegment
[x] SetAdd
[x] VmExitScope
[x] VmEnterScope
[x] MemcpyEnterScope
[x] MemcpyContinueCopying
[x] MemsetEnterScope
[x] MemsetContinueLoop
[x] FindElement
[x] SearchSortedLower
[x] AllocSegment
[x] NondetElementsOverTWo (poseidon builtin)
[x] NondetElementsOverTen (poseidon builtin)
and all additional whitelisted hints discovered secondly , see #164 for the entire list of hints