linbox  1
Public Member Functions
RationalRemainder< RatCRABase > Struct Template Reference

Chinese remainder of rationals. More...

#include <rational-cra.h>

List of all members.

Public Member Functions

template<class Function , class RandPrimeIterator >
Integer & operator() (Integer &num, Integer &den, Function &Iteration, RandPrimeIterator &genprime)
 The Rational CRA loop.

Detailed Description

template<class RatCRABase>
struct LinBox::RationalRemainder< RatCRABase >

Chinese remainder of rationals.

Compute the reconstruction of rational numbers Either by Early Termination see [Dumas, Saunder, Villard, JSC 32 (1/2), pp 71-99, 2001], Or via a bound on the size of the integers.


Member Function Documentation

Integer& operator() ( Integer &  num,
Integer &  den,
Function &  Iteration,
RandPrimeIterator &  genprime 
) [inline]

The Rational CRA loop.

Given a function to generate residues mod a single prime, this loop produces the residues resulting from the Chinese remainder process on sufficiently many primes to meet the termination condition.

F - Function object of two arguments, F(r, p), given prime p it outputs residue(s) r. This loop may be parallelized. F must be reentrant, thread safe. For example, F may be returning the coefficients of the minimal polynomial of a matrix mod p. Warning - we won't detect bad primes.

genprime - RandIter object for generating primes.

Returns:
num - the rational numerator
den - the rational denominator

The documentation for this struct was generated from the following file: