-
Notifications
You must be signed in to change notification settings - Fork 9
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Add contract-based proofs for compression functions - scalar_compress_q_16 - scalar_compress_q_32 - poly_compress Signed-off-by: Rod Chapman <[email protected]> Signed-off-by: Hanno Becker <[email protected]> * Correct loop invariants and assigns clauses in poly_compress() Signed-off-by: Rod Chapman <[email protected]> * Update poly_compress() to avoid pointer arithmetic and mutation of formal parameter r. Uses array indexing instead. Signed-off-by: Rod Chapman <[email protected]> * Use Bitwuzla for proof of poly_compress() Signed-off-by: Rod Chapman <[email protected]> * 1. Correct pre-condition on poly_compress() 2. Remove commented-out line in body of poly_compress() Signed-off-by: Rod Chapman <[email protected]> * Explicitly disable EXTERNAL_SAT_SOLVER, and use SMT2 back-end instead Signed-off-by: Rod Chapman <[email protected]> * Finalize proof of poly_compress() 1. Introduce common num_blocks constant to avoid repetition of "KYBER_N / 8" 2. Add explanatory comment on switch from pointer arithmetic to array indexing in assignment to r[] 3. Introduce loop invariants for the KYBER_K=4 branch of the code. Signed-off-by: Rod Chapman <[email protected]> * Remove CBMC contracts on poly_decompress(). These will be re-introduced in a later PR Signed-off-by: Rod Chapman <[email protected]> * Remove INDENT-ON and INDENT-OFF tags for now to keep astyle happy. Signed-off-by: Rod Chapman <[email protected]> --------- Signed-off-by: Rod Chapman <[email protected]> Signed-off-by: Hanno Becker <[email protected]>
- Loading branch information
1 parent
9a44cdc
commit d72aa18
Showing
5 changed files
with
66 additions
and
45 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters