|
linbox
|
tests ring and field operations More...
#include <iostream>#include <sstream>#include <vector>#include <cstdio>#include "linbox/util/commentator.h"#include "linbox/util/field-axpy.h"#include <givaro/givranditer.h>#include "linbox/integer.h"#include "test-common.h"Namespaces | |
| namespace | field_subtests |
| Tests of algebraic properties of rings and fields. | |
Functions | |
| template<class Ring> | |
| bool | testRing (Ring &F, const char *title, bool fieldp=true, bool runInitConvertIdentity=true) |
| Check each field or ring operation. | |
| template<class Field> | |
| bool | testFieldInversion (const Field &F, const char *name, unsigned int iterations) |
| Generic test 5: Inversion of elements. | |
| template<class Field> | |
| bool | testFieldDistributivity (const Field &F, const char *name, unsigned int iterations) |
| Generic test 7a: Distributivity of multiplication over addition. | |
| template<class Field> | |
| bool | testFieldCommutativity (const Field &F, const char *name, unsigned int iterations) |
| Generic test 7b: Commutativity of multiplication and addition. | |
| template<class Field> | |
| bool | testFieldAssociativity (const Field &F, const char *name, unsigned int iterations) |
| Generic test 7c: Associativity of addition and multiplication. | |
| template<class Field> | |
| bool | testGeometricSummation (const Field &F, const char *name, unsigned int iterations, unsigned int n) |
| Generic test 2: Geometric summation. | |
| template<class Field> | |
| bool | testFieldCharacteristic (const Field &F, const char *name, unsigned int iterations) |
| Generic test 3: Test of field characteristic. | |
| template<class Field> | |
| bool | testFreshmansDream (const Field &F, const char *name, unsigned int iterations) |
| Generic test 4: The Freshman's Dream. | |
| template<class Field> | |
| bool | testRingArithmeticConsistency (const Field &F, const char *name, unsigned int iterations) |
| Generic test 7: Consistency of in-place and out-of-place arithmetic. | |
| template<class Field> | |
| bool | testRingTrivia (const Field &F, const char *name) |
| template<class Field> | |
| bool | testAxpyConsistency (const Field &F, const char *name, unsigned int iterations) |
| Generic test 8: Consistency of axpy. | |
| template<class Field> | |
| bool | testRanditerBasic (const Field &F, const char *name, unsigned int iterations) |
| Generic test 9: Basic concept check of RandIter. | |
Generic field tests | |
| template<class Field> | |
| bool | testRandomIterator (const Field &F, const char *text, unsigned int num_trials, unsigned int num_categories, unsigned int hist_len) |
| Random number test. | |
tests ring and field operations
| bool testRing | ( | Ring & | F, |
| const char * | title, | ||
| bool | fieldp = true, | ||
| bool | runInitConvertIdentity = true ) |
Check each field or ring operation.
Test various field operations
F - Field over which to perform computations title - String to use as the descriptive title of this test fieldp - use true if inv and div must work for all nonzero denominators
Return true on success and false on failure
| bool testRandomIterator | ( | const Field & | F, |
| const char * | text, | ||
| unsigned int | num_trials, | ||
| unsigned int | num_categories, | ||
| unsigned int | hist_len ) |
Random number test.
Test that the random iterator over the given field works.
Test up to two times, accepting either one, to reduce probability of failing statistical tests.