Merged
Conversation
Co-authored-by: Dmitriy Suponitskiy <dsuponitskiy@dualitytech.com>
…aramsGenBGVRNS(), ParamsGenCKKSRNS() and ParamsGenBFVRNS() non-virtual in base-scheme.h (#903) Co-authored-by: Dmitriy Suponitskiy <dsuponitskiy@dualitytech.com>
* Removed unnecessary #include <iostream> * For loop improvements * Removal of obsolete code from utils/memory.h * Corrected includes of constants-lattice.h * Added includes of <ostream> * Update matrix.h * Update matrixstrassen.h * Update serial.h --------- Co-authored-by: Dmitriy Suponitskiy <dsuponitskiy@dualitytech.com> Co-authored-by: pascoec <123595534+pascoec@users.noreply.github.com>
* Corrected operator== for the family of cryptoparameters classes * Fixed syntax for multiple virtual functions, virtual destructors, made some print functions protected to force users to use operator<<(), fixed multiple issues, etc. * Changes for additional print functions --------- Co-authored-by: Dmitriy Suponitskiy <dsuponitskiy@dualitytech.com>
…less than 32 if keySwitchTechnique == BV (BGV/BFV) (#912) * Added a validation for the cryptocontext params: digitSize should be less than 32 if keySwitchTechnique == BV * Use MAX_MODULUS_SIZE instead of hardcoded values * Validate digitSize for all schemes, including CKKS --------- Co-authored-by: Dmitriy Suponitskiy <dsuponitskiy@dualitytech.com>
* Prevent integer overflow in FindAutomorphismIndex2nComplex() * Optimized the modulus operation in FindAutomorphismIndex2nComplex() --------- Co-authored-by: Dmitriy Suponitskiy <dsuponitskiy@dualitytech.com>
* Restrict isPowerOfTwo() to unsigned integral types * Restored the 'return' statement in IsPowerOfTwo() --------- Co-authored-by: Dmitriy Suponitskiy <dsuponitskiy@dualitytech.com>
…nctions to standardize the use of uint32_t (#923) Co-authored-by: Dmitriy Suponitskiy <dsuponitskiy@dualitytech.com>
* Refactored GetCollapsedFFTParams and SelectLayers(), added IsPowerOfTwo() to ReduceRotation(), some auxilliary changes * Refactored CoeffDecodingCollapse() * The scope of SelectLayers() is limited to ckksrns-utils.cpp only, some error handling, changes to GetCollapsedFFTParams() and Degree(), additional refactoring of CoeffDecodingCollapse() * Some corrections to CoeffEncodingCollapse() * Added some cast, replaced multiple calculations of std::log2(slots) in CoeffEncodingOneLevel() and CoeffDecodingOneLevel() with a variable, improvements to CoeffEncodingCollapse() * Finished refactoring CoeffEncodingCollapse() --------- Co-authored-by: Dmitriy Suponitskiy <dsuponitskiy@dualitytech.com>
… BGV mutable operations (#934) Co-authored-by: Dmitriy Suponitskiy <dsuponitskiy@dualitytech.com>
…ns to pke/unittest as it is a collection of special utilities (#916) * Moved schemeswitching-data-serializer.h from pke/include/scheme/ckksrns to pke/unittest as it is a collection of special utilities * Addressed code review comments --------- Co-authored-by: Dmitriy Suponitskiy <dsuponitskiy@dualitytech.com>
* udates to SwitchModulus * updates to ApproxSwitchCRTBasis and FastExpandCRTBasisPloverQ * add WITH_REDUCED_NOISE flag as OpenFHE CMake options; reformat CMake files * add LazySwitchModulus() functionality * add MultAccEqNoCheck() functionality * further updates to ApproxSwitchCRTBasis() * fix for BE6 * updates to HKS and BFV HPSPOVERQ noise estimation
…unctions (#939) Co-authored-by: Dmitriy Suponitskiy <dsuponitskiy@dualitytech.com>
* First cut of std thread mutual exclusion * distributiongenerator thread mutual exclusion * Diagnostic output for Precompute phases. * revert to minimal implementation that works under std::thread, with proper single-threaded initialization * remove lazy precompute map searches * Control the usage of C++ threads for PRNG from CMakeLists.txt * Restored lazy precompute map searches --------- Co-authored-by: Jack Bates <jbates@dualitytech.com> Co-authored-by: Dmitriy Suponitskiy <dsuponitskiy@dualitytech.com>
* fix for intt if ringdm is 2 * unittest for intt if ringdm is 2
Co-authored-by: Dmitriy Suponitskiy <dsuponitskiy@dualitytech.com>
* initial version of 2-party interactive CKKS bootstrapping - compiles - still debugging the correctness * fixed FLEXIBLEAUTOEXT * added unit test example * Code corrections * Added unit tests and removed obsolete examples for interactive 2party bootstrapping * Disable the new interactive 2party bottstrapping unittests for 128-bit * clean up the example for interactive bootstrapping * Corrected clang-18 errors for MB6 --------- Co-authored-by: Yuriy Polyakov <ypolyakod@dualitytech.com> Co-authored-by: Dmitriy Suponitskiy <dsuponitskiy@dualitytech.com>
dsuponitskiy
approved these changes
Apr 3, 2025
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Pushes changes from tmp-dev to dev