// TODO: commented out because it takes too long: // Actually: now this characteristic seems too big?! TEST(ARingZZpFFPACK, arithmetic67108859) { M2::ARingZZpFFPACK R(67108859); testCoerceToLongInteger(R); testCoercions(R); testNegate(R, ntrials); testAdd(R, ntrials); testSubtract(R, ntrials); testMultiply(R, ntrials); testDivide(R, ntrials); testReciprocal(R, ntrials); testPower(R, ntrials); testAxioms(R, ntrials); }
TEST(ARingZZpFlint, arithmetic33500479) { M2::ARingZZpFlint R(33500479); testCoerceToLongInteger(R); testCoercions(R); testNegate(R, ntrials); testAdd(R, ntrials); testSubtract(R, ntrials); testMultiply(R, ntrials); testDivide(R, ntrials); testReciprocal(R, ntrials); testPower(R, ntrials); testAxioms(R, ntrials); }
void testFiniteField(const T& R, int ntrials) { testCoercions(R); testNegate(R, ntrials); testAdd(R, ntrials); //fails in char 2, ffpack (negating 1 gives -1)... testSubtract(R, ntrials); //fails in char 2, ffpack testMultiply(R, ntrials); testDivide(R, ntrials); //fails in char 2, ffpack testReciprocal(R, ntrials); testPower(R, ntrials);// fails? testAxioms(R, ntrials); //TODO: test promote, lift, syzygy(?), (ringmaps) // test random number generation? // get generator }