|
Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
|
Tests for the industrial NTT core, CRT exact multiplier, and high-level algebra helpers. More...
#include <gtest/gtest.h>#include <algorithm>#include <chrono>#include <cstdlib>#include <random>#include <string>#include <modular_arithmetic.H>#include <ntt.H>#include <thread_pool.H>Go to the source code of this file.
Classes | |
| class | NTTIndustrialTest |
Functions | |
| TEST_F (NTTIndustrialTest, ReportsSupportedSizesAndRoots) | |
| TEST_F (NTTIndustrialTest, SimdBackendNameIsRecognized) | |
| TEST_F (NTTIndustrialTest, SequentialRoundTripMatchesModuloProjection) | |
| TEST_F (NTTIndustrialTest, ForcedSimdBackendsMatchScalarResults) | |
| TEST_F (NTTIndustrialTest, PolynomialEvalAndDivmodMatchNaiveReference) | |
| TEST_F (NTTIndustrialTest, PolynomialInverseMatchesNaiveReferenceAndIdentity) | |
| TEST_F (NTTIndustrialTest, PolynomialLogExpAndPowerMatchNaiveReference) | |
| TEST_F (NTTIndustrialTest, PolynomialSqrtRecoversKnownSquares) | |
| TEST_F (NTTIndustrialTest, PolynomialInterpolationRoundTripMatchesNaiveReference) | |
| TEST_F (NTTIndustrialTest, BigintMultiplyMatchesKnownProductsAndNaiveReference) | |
| TEST_F (NTTIndustrialTest, ParallelBigintMultiplyMatchesSequentialAndNormalizes) | |
| TEST_F (NTTIndustrialTest, BigintMultiplyLargeDecimalPattern) | |
| TEST_F (NTTIndustrialTest, NegacyclicMultiplyMatchesNaiveReference) | |
| TEST_F (NTTIndustrialTest, BigintMillionDigitPatternIsGuardedByEnvironment) | |
| TEST_F (NTTIndustrialTest, AlternatePrimeRoundTripMatchesModuloProjection) | |
| TEST_F (NTTIndustrialTest, BluesteinMatchesNaiveTransformOnSupportedSizes) | |
| TEST_F (NTTIndustrialTest, MultiplyMatchesNaiveConvolution) | |
| TEST_F (NTTIndustrialTest, PlanMatchesStaticTransformAndMultiply) | |
| TEST_F (NTTIndustrialTest, BatchTransformMatchesItemWiseTransform) | |
| TEST_F (NTTIndustrialTest, BluesteinPlanMatchesStaticAndBatchVariants) | |
| TEST_F (NTTIndustrialTest, ParallelTransformAndMultiplyMatchSequentialResults) | |
| TEST_F (NTTIndustrialTest, ParallelBatchMatchesSequentialBatch) | |
| TEST_F (NTTIndustrialTest, MultiplyInplaceReplacesLeftOperand) | |
| TEST_F (NTTIndustrialTest, ExactMultiplyReportsSupportedProductLengths) | |
| TEST_F (NTTIndustrialTest, ExactMultiplyMatchesNaiveReferenceAboveSinglePrime) | |
| TEST_F (NTTIndustrialTest, ExactMultiplyAcceptsNearTwoToSixtyThreeWhenBoundFits) | |
| TEST_F (NTTIndustrialTest, ParallelExactMultiplyMatchesSequentialAndPrimeResidues) | |
| TEST_F (NTTIndustrialTest, ExactMultiplyRejectsInputsOutsideCRTRange) | |
| TEST_F (NTTIndustrialTest, ErrorPathsAreValidated) | |
| TEST_F (NTTIndustrialTest, PerformanceRegressionIsGuardedByEnvironment) | |
Tests for the industrial NTT core, CRT exact multiplier, and high-level algebra helpers.
Definition in file ntt_test.cc.
| TEST_F | ( | NTTIndustrialTest | , |
| AlternatePrimeRoundTripMatchesModuloProjection | |||
| ) |
Definition at line 988 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp(), and Aleph::Array< T >::size().
| TEST_F | ( | NTTIndustrialTest | , |
| BatchTransformMatchesItemWiseTransform | |||
| ) |
Definition at line 1072 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp().
| TEST_F | ( | NTTIndustrialTest | , |
| BigintMillionDigitPatternIsGuardedByEnvironment | |||
| ) |
Definition at line 967 of file ntt_test.cc.
References Aleph::Array< T >::create(), Aleph::divide_and_conquer_partition_dp(), and Aleph::product().
| TEST_F | ( | NTTIndustrialTest | , |
| BigintMultiplyLargeDecimalPattern | |||
| ) |
Definition at line 934 of file ntt_test.cc.
References Aleph::Array< T >::create(), and Aleph::divide_and_conquer_partition_dp().
| TEST_F | ( | NTTIndustrialTest | , |
| BigintMultiplyMatchesKnownProductsAndNaiveReference | |||
| ) |
Definition at line 885 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp().
| TEST_F | ( | NTTIndustrialTest | , |
| BluesteinMatchesNaiveTransformOnSupportedSizes | |||
| ) |
Definition at line 1005 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp(), and Aleph::Array< T >::size().
| TEST_F | ( | NTTIndustrialTest | , |
| BluesteinPlanMatchesStaticAndBatchVariants | |||
| ) |
Definition at line 1099 of file ntt_test.cc.
References Aleph::Array< T >::append(), and Aleph::divide_and_conquer_partition_dp().
| TEST_F | ( | NTTIndustrialTest | , |
| ErrorPathsAreValidated | |||
| ) |
Definition at line 1262 of file ntt_test.cc.
References Aleph::Array< T >::create(), Aleph::divide_and_conquer_partition_dp(), Aleph::NTTExact::multiply(), and Aleph::NTT< MOD, ROOT >::negacyclic_multiply().
| TEST_F | ( | NTTIndustrialTest | , |
| ExactMultiplyAcceptsNearTwoToSixtyThreeWhenBoundFits | |||
| ) |
Definition at line 1209 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp(), and Aleph::NTTExact::multiply().
| TEST_F | ( | NTTIndustrialTest | , |
| ExactMultiplyMatchesNaiveReferenceAboveSinglePrime | |||
| ) |
Definition at line 1191 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp(), and Aleph::NTTExact::multiply().
| TEST_F | ( | NTTIndustrialTest | , |
| ExactMultiplyRejectsInputsOutsideCRTRange | |||
| ) |
Definition at line 1254 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp(), and Aleph::NTTExact::multiply().
| TEST_F | ( | NTTIndustrialTest | , |
| ExactMultiplyReportsSupportedProductLengths | |||
| ) |
Definition at line 1181 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp(), and Aleph::NTTExact::supports_product_size().
| TEST_F | ( | NTTIndustrialTest | , |
| ForcedSimdBackendsMatchScalarResults | |||
| ) |
Definition at line 734 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp().
| TEST_F | ( | NTTIndustrialTest | , |
| MultiplyInplaceReplacesLeftOperand | |||
| ) |
Definition at line 1171 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp().
| TEST_F | ( | NTTIndustrialTest | , |
| MultiplyMatchesNaiveConvolution | |||
| ) |
Definition at line 1032 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp().
| TEST_F | ( | NTTIndustrialTest | , |
| NegacyclicMultiplyMatchesNaiveReference | |||
| ) |
Definition at line 946 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp(), and Aleph::Array< T >::size().
| TEST_F | ( | NTTIndustrialTest | , |
| ParallelBatchMatchesSequentialBatch | |||
| ) |
Definition at line 1152 of file ntt_test.cc.
References Aleph::Array< T >::append(), Aleph::divide_and_conquer_partition_dp(), and Aleph::Array< T >::size().
| TEST_F | ( | NTTIndustrialTest | , |
| ParallelBigintMultiplyMatchesSequentialAndNormalizes | |||
| ) |
Definition at line 912 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp().
| TEST_F | ( | NTTIndustrialTest | , |
| ParallelExactMultiplyMatchesSequentialAndPrimeResidues | |||
| ) |
Definition at line 1223 of file ntt_test.cc.
References Aleph::Array< T >::create(), Aleph::divide_and_conquer_partition_dp(), Aleph::NTT< MOD, ROOT >::multiply(), Aleph::NTTExact::multiply(), and Aleph::NTTExact::pmultiply().
| TEST_F | ( | NTTIndustrialTest | , |
| ParallelTransformAndMultiplyMatchSequentialResults | |||
| ) |
Definition at line 1129 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp().
| TEST_F | ( | NTTIndustrialTest | , |
| PerformanceRegressionIsGuardedByEnvironment | |||
| ) |
Definition at line 1349 of file ntt_test.cc.
References Aleph::Array< T >::create(), Aleph::divide_and_conquer_partition_dp(), and Aleph::product().
| TEST_F | ( | NTTIndustrialTest | , |
| PlanMatchesStaticTransformAndMultiply | |||
| ) |
Definition at line 1049 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp().
| TEST_F | ( | NTTIndustrialTest | , |
| PolynomialEvalAndDivmodMatchNaiveReference | |||
| ) |
Definition at line 780 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp().
| TEST_F | ( | NTTIndustrialTest | , |
| PolynomialInterpolationRoundTripMatchesNaiveReference | |||
| ) |
Definition at line 863 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp().
| TEST_F | ( | NTTIndustrialTest | , |
| PolynomialInverseMatchesNaiveReferenceAndIdentity | |||
| ) |
Definition at line 799 of file ntt_test.cc.
References Aleph::Array< T >::create(), Aleph::divide_and_conquer_partition_dp(), Aleph::prefix(), and Aleph::product().
| TEST_F | ( | NTTIndustrialTest | , |
| PolynomialLogExpAndPowerMatchNaiveReference | |||
| ) |
Definition at line 817 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp().
| TEST_F | ( | NTTIndustrialTest | , |
| PolynomialSqrtRecoversKnownSquares | |||
| ) |
Definition at line 842 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp(), and root().
| TEST_F | ( | NTTIndustrialTest | , |
| ReportsSupportedSizesAndRoots | |||
| ) |
Definition at line 683 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp(), and Aleph::mod_exp().
| TEST_F | ( | NTTIndustrialTest | , |
| SequentialRoundTripMatchesModuloProjection | |||
| ) |
Definition at line 717 of file ntt_test.cc.
References Aleph::divide_and_conquer_partition_dp(), and Aleph::Array< T >::size().
| TEST_F | ( | NTTIndustrialTest | , |
| SimdBackendNameIsRecognized | |||
| ) |
Definition at line 707 of file ntt_test.cc.
References Aleph::and, and Aleph::divide_and_conquer_partition_dp().