linbox

LinBox rings, ring wrappers, ring construction tools. More...
Modules  
Integers  
LinBox integer representation and operations.  
Polynomials  
NO DOC YET.  
Files  
file  ring/archetype.h 
Specification and archetypic instance for the ring interface.  
file  givaropolynomial.h 
NO DOC.  
file  modular.h 
A Givaro::Modular ring is a representations of Z/mZ .  
file  ntllzz_pEX.h 
NO DOC.  
file  ntllzz_pX.h 
NO DOC.  
file  ntlZZ_p.h 
NO DOC.  
Data Structures  
class  RingAbstract 
Abstract ring base class. More...  
class  RingArchetype 
specification and archetypic instance for the ring interfaceThe RingArchetype and its encapsulated element class contain pointers to the RingAbstract and its encapsulated ring element, respectively. More...  
class  RingEnvelope< Field > 
implement the ring archetype to minimize code bloat. More...  
class  GivPolynomialRing< Domain, StorageTag > 
Polynomials. More...  
class  NTL_ZZ 
the integer ring. More...  
struct  NTL_PID_zz_p 
extend Wrapper of zz_p from NTL. More...  
class  Modular< Ints > 
Ring of elements modulo some power of two. More...  
LinBox rings, ring wrappers, ring construction tools.
LinBox ring classes implement the BasicRing concept, which has the same members as the field concept. The difference is that some functions have different semantics. Specifically, inv and div are partial functions.
Some ring classes extend BasicRing:
The PIR concept (principal ideal ring) has, beyond BasicRing, gcd(g, a, b)
, g = (a,b), greatest common divisor of a, b. gcd(g, s, a, b)
, g = (a,b) = sa modulo b. s < b/g. gcd(g, s, t, a, b)
, g = (a,b) = sa + tb, s < b/g, t < a/g. gcd(g, s, t, u, v, a, b)
, (a,b) = g = sa + tb, u = a/g, v = b/g. gcdin(g, a)
, g = (g,a) lcm()
, isUnit()
, isZeroDivisor()
.
The PID concept (principal ideal domain) has the same members as the PIR concept, but it is promised that there are no zero divisors.
The LocalPIR concept has the members of PIR, but there is a unique prime ideal. Some algorithms exploit this.
Local2_32 exploits a few additional functions and the type Exponent
. This concept could be used for other small rings extending tiny fields as well.
Example of BasicRing: Givaro::Modular<int32_t> when the modulus may be nonprime. Example of PIR: PIRModular Example of PID: PIDInteger. Example of LocalPIR: Local2_32.