Developer documentation

mmx Namespace Reference

Namespaces

 array
 Module for generic functions on vectors. Generic implementations for vectors are gathered in the namespace array. These are generic functions, that can be used to build new linear classes. The type R must provide the following definitions or methods:
 
 bernstein
 
 brnops
 
 let
 Namespace for explicit type conversion.
 
 linear
 
 memory
 
 meta
 
 numerics
 
 realroot
 
 solvers
 
 sparse
 namespace for representation of polynomials as sequence of monomials
 
 tensor
 namespace for representation of polynomials as dense tensor product.
 
 texp
 
 univariate
 Module for Univariate POLynomials with a Direct Access Representation.
 
 upoldse_
 
 vct
 
 vctops
 
 xml
 Namespace for parsing and printing in xml format.
 

Classes

struct  abs_max
 
struct  AkritasBound
 
struct  algebraic
 
struct  Approximate
 
struct  as_helper
 
struct  as_helper< double, char * >
 
struct  as_helper< double, const char * >
 
struct  as_helper< double, mpf_t >
 
struct  as_helper< double, RR >
 
struct  as_helper< double, scalar< EMPQ > >
 
struct  as_helper< double, scalar< EMPZ > >
 
struct  as_helper< double, scalar< MPQ > >
 
struct  as_helper< double, scalar< MPZ > >
 
struct  as_helper< Interval< double >, QQ >
 
struct  as_helper< Interval< FT >, IntervalData< RT, Poly > >
 
struct  as_helper< interval< FT >, IntervalData< RT, Poly > >
 
struct  as_helper< interval< T >, interval< F > >
 
struct  as_helper< monom< T, TR >, monom< F, FR > >
 
struct  as_helper< QQ, RR >
 
struct  as_helper< QQ, ZZ >
 
struct  as_helper< RR, double >
 
struct  as_helper< RR, QQ >
 
struct  as_helper< scalar< EMPQ >, scalar< EMPZ > >
 
struct  as_helper< set_of< U >, set_of< T > >
 
struct  as_helper< ZZ, double >
 
struct  as_helper< ZZ, QQ >
 
struct  as_helper< ZZ, unsigned >
 
struct  AsSize
 
struct  Bernstein
 
struct  BezierBound
 
struct  bigunsigned
 
struct  binary_approx
 
struct  binary_convert
 
struct  binary_convert< K, Approximate >
 
struct  binary_convert< K, Isolate >
 
struct  binary_isolate
 
struct  binary_sleeve_subdivision
 
struct  binary_subdivision
 
struct  binomials
 
struct  bound
 
struct  Bspline
 
struct  cast_helper
 
struct  cast_helper< double, QQ >
 
struct  cast_helper< double, RR >
 
struct  cast_helper< double, ZZ >
 
struct  cast_helper< QQ, ZZ >
 
struct  Cauchy
 Cauchy bound. More...
 
class  cell_mv_bernstein
 
class  cell_uv_bernstein
 
struct  CFallIsolate
 
struct  CFdecide
 
struct  CFfirstApproximate
 
struct  CFfirstFloor
 
struct  CFfirstIsolate
 
struct  CFseparate
 
struct  ContFrac
 
struct  ContFrac_t
 Class. More...
 
struct  continued_fraction_approximate
 
struct  continued_fraction_approximate< K, B, false_t >
 
struct  continued_fraction_approximate< K, B, true_t >
 
struct  continued_fraction_isolate
 
struct  continued_fraction_isolate< K, B, false_t >
 
struct  continued_fraction_isolate< K, B, true_t >
 
struct  continued_fraction_subdivision
 
struct  data_t
 
struct  default_variant_of
 
struct  default_variant_of< Sparse >
 
struct  DegRevLex
 Degree Reverse Lexicographic monomial ordering. More...
 
struct  Dual
 
struct  dynamic_exp
 Dynamic exponent. More...
 
struct  euclidean
 
struct  extended
 
struct  GMP
 Numerical kernel based on gmp. More...
 
struct  homography
 
struct  homography_mv
 
struct  HongBound
 
struct  IEEE754
 Default numerical kernel. More...
 
struct  Interval
 Generic class for intervals. More...
 
struct  interval_newton
 
class  interval_rep
 
struct  IntervalData
 
struct  IntervalNewton
 
struct  Intervals
 
struct  is_extended
 
struct  is_extended< EQQ >
 
struct  is_extended< EZZ >
 
struct  Isolate
 
struct  Lex
 Lexicographic monomial ordering. More...
 
struct  LexRevDegree
 
struct  MCFapproximate
 
struct  MCFisolate
 
struct  monom
 Monomial class. More...
 
struct  MonomialOrdering
 Virtual class of monomial ordering. More...
 
struct  MonomialTensor
 
struct  mul_helper< polynomial< C, with< Dual, O > >, polynomial< C, with< Sparse, O > > >
 
struct  mul_helper< polynomial< C, with< Sparse, O > >, polynomial< C, with< Dual, O > > >
 
struct  mv_binary_approx
 
struct  mv_binary_isolate
 
struct  MvBernsteinBinaryApproximate
 
struct  NISN
 Negative Inverse Sum bound for negative roots. More...
 
struct  NISP
 Negative Inverse Sum bound for positive roots. More...
 
struct  operators_of
 
struct  polynomial
 
struct  polynomial< C, VARIANT >
 
struct  polynomial_of
 
struct  printer
 
struct  ProjRd
 
struct  ReferTo
 The structure for obtain the template parameter. More...
 
struct  ReferTo< shared_object< T > >
 The structure for obtain the template parameter. More...
 
struct  rep_view
 
struct  res_t
 
struct  ring
 Ring of polynomials. More...
 
struct  ring< C, Bernstein >
 
struct  ring< C, Dual, O >
 Dual ring of the polynomials. More...
 
struct  ring< C, MonomialTensor >
 Tensor ring of polynomials in the monomial basis. More...
 
struct  ring< C, Sparse, O >
 Ring of sparse polynomials. More...
 
struct  ring< C, Univariate >
 Tensor ring of polynomials in the monomial basis. More...
 
struct  ring_of
 Generic ring class. More...
 
struct  ring_of< polynomial< C, V > >
 
struct  ring_of< polynomial< C, with< Bernstein > > >
 
struct  ring_of< polynomial< C, with< MonomialTensor > > >
 
struct  ring_of< polynomial< C, with< V, W > > >
 
struct  scalar
 
struct  Seq
 Sequence of terms with reference counter. More...
 
struct  set_of
 
class  shared_object
 
struct  sign_wanted
 
struct  Sleeve
 
struct  sleeve_rep
 
struct  solver
 
struct  solver< C, ContFrac< Approximate > >
 
struct  solver< C, ContFrac< Isolate > >
 
struct  solver< C, MCFapproximate >
 
struct  solver< C, MCFisolate >
 
struct  solver< C, ProjRd< MTH > >
 Multivariate Bernstein solver. More...
 
struct  solver< C, Sleeve< V > >
 
struct  solver< Ring, Bspline >
 
struct  solver< Ring, CFallIsolate >
 
struct  solver< Ring, CFdecide >
 
struct  solver< Ring, CFfirstApproximate >
 
struct  solver< Ring, CFfirstFloor >
 
struct  solver< Ring, CFfirstIsolate >
 
struct  solver< Ring, CFseparate >
 
struct  solver_approximate_traits
 
struct  solver_approximate_traits< C, false_t >
 
struct  solver_approximate_traits< C, true_t >
 
struct  solver_bspline
 
struct  solver_cffirst
 
struct  solver_isolate_traits
 
struct  solver_isolate_traits< C, false_t >
 
struct  solver_isolate_traits< C, true_t >
 
struct  solver_of
 
struct  solver_of< C, IntervalNewton< IT, C > >
 
struct  solver_of< C, MvBernsteinBinaryApproximate >
 
struct  solver_of< C, UvBernsteinBinaryApproximate >
 
struct  Sparse
 
struct  sub_resultant
 
class  subdivisor
 
struct  Univariate
 
struct  upoldse
 
struct  use
 
struct  use< operators_of, POLYNOMIAL >
 
struct  use< operators_of, Polynomial >
 
struct  use< operators_of, SparsePolynomial >
 
struct  use< polynomial_of, polynomial< C, with< Bernstein > > >
 
struct  use< polynomial_of, polynomial< C, with< Dual, O > > >
 
struct  use< polynomial_of, polynomial< C, with< MonomialTensor > > >
 
struct  use< polynomial_of, polynomial< C, with< Sparse, O > > >
 
struct  use< polynomial_of, polynomial< C, with< Univariate > > >
 Tensor ring of polynomials in the monomial basis. More...
 
struct  uv_binary_approx
 
struct  uv_binary_isolate
 
struct  UvBernsteinBinaryApproximate
 
struct  variables
 
struct  with
 

Typedefs

typedef GMP::rational QQ
 
typedef GMP::integer ZZ
 
typedef GMP::floating RR
 
typedef GMP::extended_rational EQQ
 
typedef GMP::extended_integer EZZ
 
typedef extended< MPZEMPZ
 
typedef extended< MPQEMPQ
 
typedef __mpf_struct MPF
 
typedef MP_INT MPZ
 
typedef MP_RAT MPQ
 

Functions

std::string to_string (int x)
 to_string convert int to std::string In C++11, it should use std::to_string More...
 
std::string to_string (double x)
 to_string convert double to std::string In C++11, it should use std::to_string More...
 
template<typename T , typename F >
as (const F &x)
 
template<typename T , typename F , class U >
as (const F &x, const U &u)
 
template<typename T , typename F , class U , class V >
as (const F &x, const U &u, const V &v)
 
template<class T >
pow (const T &a, int i)
 
template<typename T >
factorial (int n)
 
template<typename T >
binomial (int n, int p)
 
template<class C >
meta::rationalof< C >::T to_rational (const C &a, const C &b)
 
template<class NT , class LB >
Seq< typename ContFrac< NT, LB >::root_t > solve (const typename ContFrac< NT >::Poly &f, ContFrac< NT, LB >)
 
template<typename K >
void CF_positive (const typename K::Poly &f, Seq< typename K::FIT > &RL, bool posneg, K)
 
template<typename K >
void MCF_positive (const typename K::Poly &f, Seq< typename K::root_t > &RL, bool posneg, K)
 
template<typename OutputIterator , typename K >
OutputIterator CF_solve (const typename K::Poly &f, OutputIterator sol, int mult, K)
 
template<typename K , typename OutputIterator >
OutputIterator solve_contfrac (const typename K::Poly &h, OutputIterator sol, K)
 
template<class POL >
void div_x (POL &p, int k)
 
template<typename FT >
Interval< FT > as_interval (const FT &a, const FT &b)
 
template<typename RT , typename Poly >
IntervalData< RT, Poly > as_interval_data (const RT &a, const RT &b, const RT &c, const RT &d, const Poly &f)
 
template<class C >
texp::rationalof< C >::T to_FT (const C &a, const C &b)
 
template<typename FT >
Interval< FT > to_FIT (const FT &a, const FT &b)
 
template<typename K >
K::FIT to_FIT (const typename K::RT &a, const typename K::RT &b, const typename K::RT &c, const typename K::RT &d, const typename K::FT &B)
 
template<typename Poly >
void reverse (Poly &R, const Poly &P)
 
template<typename Poly >
void reverse (Poly &R)
 
template<typename RT , typename Poly >
void reverse (IntervalData< RT, Poly > &I1)
 
template<typename Poly >
void shift_by_1 (Poly &R, const Poly &P)
 
template<typename RT , typename Poly >
void shift_by_1 (IntervalData< RT, Poly > &I1, const IntervalData< RT, Poly > &I2)
 
template<typename RT , typename Poly >
void shift_by_1 (IntervalData< RT, Poly > &I1)
 
template<typename Poly >
void shift_by_1 (Poly &R)
 
template<typename RT , typename Poly >
void scale (IntervalData< RT, Poly > &ID, const RT &a)
 
template<typename RT , typename Poly , typename RT2 >
void scale (IntervalData< RT, Poly > &ID, const RT2 &a)
 
template<typename RT , typename Poly >
void scale (IntervalData< RT, Poly > &ID, long k)
 
template<typename RT , typename Poly >
void inv_scale (IntervalData< RT, Poly > &ID, const RT &a)
 
template<typename RT , typename Poly >
void shift (IntervalData< RT, Poly > &ID, const RT &a)
 
template<typename RT , typename Poly , typename RT2 >
void shift (IntervalData< RT, Poly > &ID, const RT2 &a)
 
template<typename RT , typename Poly >
void reverse_shift_homography (IntervalData< RT, Poly > &I2, const IntervalData< RT, Poly > &ID)
 
template<typename RT , typename Poly >
void reverse_shift (IntervalData< RT, Poly > &I2, const IntervalData< RT, Poly > &ID)
 
template<class E >
dynamic_exp< E >::degree_t degree (const dynamic_exp< E > &t)
 
template<class E >
std::ostream & operator<< (std::ostream &os, const dynamic_exp< E > &t)
 
template<class E >
int lvar (const dynamic_exp< E > &A)
 
template<class E >
void erase (dynamic_exp< E > &A)
 
template<class E >
void add (dynamic_exp< E > &r, const dynamic_exp< E > &A, const dynamic_exp< E > &B)
 
template<class NT >
bool operator== (const extended< NT > &lhs, const extended< NT > &rhs)
 
template<class NT >
bool operator!= (const extended< NT > &lhs, const extended< NT > &rhs)
 
template<class NT >
extended< NT > operator* (const extended< NT > &lhs, const extended< NT > &rhs)
 
template<class NT >
extended< NT > operator/ (const extended< NT > &lhs, const extended< NT > &rhs)
 
template<class NT >
extended< NT > operator+ (const extended< NT > &lhs, const extended< NT > &rhs)
 
template<class NT >
extended< NT > operator- (const extended< NT > &lhs, const extended< NT > &rhs)
 
template<class NT >
extended< NT > operator- (const extended< NT > &lhs)
 
template<class NT >
extended< NT > & operator<<= (extended< NT > &x, long int s)
 
template<class NT >
extended< NT > & operator+= (extended< NT > &x, const extended< NT > &other)
 
template<class NT >
extended< NT > & operator-= (extended< NT > &x, const extended< NT > &other)
 
template<class NT >
extended< NT > & operator*= (extended< NT > &x, const extended< NT > &other)
 
template<class NT >
extended< NT > & operator/= (extended< NT > &x, const extended< NT > &other)
 
template<class NT >
bool operator< (const extended< NT > &lhs, const extended< NT > &rhs)
 
template<class NT >
bool operator<= (const extended< NT > &lhs, const extended< NT > &rhs)
 
template<class NT >
bool operator> (const extended< NT > &lhs, const extended< NT > &rhs)
 
template<class NT >
bool operator>= (const extended< NT > &lhs, const extended< NT > &rhs)
 
int sign (const QQ &a)
 
bool with_plus_sign (const ZZ &c)
 
bool with_plus_sign (const QQ &c)
 
bool with_plus_sign (const RR &c)
 
double to_double (const RR &a)
 
double as_double (const RR &a)
 
double to_XT (const ZZ &a)
 
double to_XT (const QQ &a)
 
double to_XT (const RR &a)
 
void bit_precision (unsigned long l)
 
void bit_precision (RR b, unsigned long l)
 
double gcd (const double &, const double &)
 
QQ to_FT (const ZZ &a, const ZZ &b=1)
 
QQ to_FT (const QQ &a, const QQ &b=1)
 
long int bit_size (const ZZ &z)
 
ZZ gcd (const ZZ &a, const ZZ &b)
 
ZZ lcm (const ZZ &a, const ZZ &b)
 
int sign (const RR &a)
 
QQ Size (const QQ &r)
 
ZZ Size (const ZZ &z)
 
ZZ size (const ZZ &z)
 
QQ size (const QQ &r)
 
int compare (const QQ &a, const QQ &b)
 
int compare (const RR &a, const RR &b)
 
double to_double (const QQ &a)
 
double to_double (const ZZ &z)
 
ZZ numerator (const QQ &a)
 
ZZ denominator (const QQ &a)
 
ZZ pow (const ZZ &a, unsigned n)
 
ZZ isqrt (const ZZ &a)
 
RR fracpart (const RR &r)
 
void Precision (unsigned long l)
 
void Precision (RR b, unsigned long l)
 
template<class OSTREAM , class T , int r>
void print (OSTREAM &os, const Interval< T, r > &a)
 
template<class T , int r>
void hull (Interval< T, r > &v, const Interval< T, r > &a, const Interval< T, r > &b)
 
template<class T , int r>
bool intersect (Interval< T, r > &result, const Interval< T, r > &a, const Interval< T, r > &b)
 
template<typename T >
int sign (const T &x)
 
template<class C , int r>
bool with_plus_sign (const Interval< C, r > &I)
 
template<class T , int r>
lower (const Interval< T, r > &x)
 
template<class T , int r>
upper (const Interval< T, r > &x)
 
template<class T , int r>
median (const Interval< T, r > &x)
 
template<class T , int r>
width (const Interval< T, r > &x)
 
template<class T , int r>
bool singleton (const Interval< T, r > &x)
 
template<class T , int r>
bool contain_zero (const Interval< T, r > &x)
 
template<class T , int r>
bool in (const T &x, const Interval< T, r > &y)
 
template<class T , int r>
std::pair< Interval< T, r >, Interval< T, r > > bissect (const Interval< T, r > &x)
 
template<class T , int r>
void bissect (Interval< T, r > &g, Interval< T, r > &d, const Interval< T, r > &x)
 
template<class T , int r>
Interval< T, r > hull (const Interval< T, r > &a, const Interval< T, r > &b)
 
template<class T , int r>
Interval< T, r > min (const Interval< T, r > &a, const Interval< T, r > &b)
 
template<class T , int r>
Interval< T, r > max (const Interval< T, r > &a, const Interval< T, r > &b)
 
template<class T , int r>
bool intersectp (const Interval< T, r > &a, const Interval< T, r > &b)
 
template<class T , int r>
Interval< T, r > intersection (const Interval< T, r > &a, const Interval< T, r > &b)
 
template<class T , int r>
size (const Interval< T, r > &i)
 
template<class T , int r>
std::ostream & operator<< (std::ostream &o, const Interval< T, r > &i)
 
template<class C , int r>
void abs (Interval< C, r > &x, const Interval< C, r > &a)
 
template<class C , int r>
void neg (Interval< C, r > &a)
 
template<class C , int r>
void neg (Interval< C, r > &a, const Interval< C, r > &b)
 
template<class C , int r>
void add (Interval< C, r > &a, const C &x)
 
template<class C , int r>
void add (Interval< C, r > &a, const Interval< C, r > &b, const C &x)
 
template<class C , int r>
void add (Interval< C, r > &a, const C &x, const Interval< C, r > &b)
 
template<class C , int r>
void sub (Interval< C, r > &a, const C &x)
 
template<class C , int r>
void sub (Interval< C, r > &a, const Interval< C, r > &b, const C &x)
 
template<class C , int r>
void sub (Interval< C, r > &a, const C &x, const Interval< C, r > &b)
 
template<class C , int r>
void add (Interval< C, r > &a, const Interval< C, r > &x)
 
template<class C , int r>
void add (Interval< C, r > &a, const Interval< C, r > &b, const Interval< C, r > &x)
 
template<class C , int r>
void sub (Interval< C, r > &a, const Interval< C, r > &x)
 
template<class C , int r>
void sub (Interval< C, r > &a, const Interval< C, r > &b, const Interval< C, r > &x)
 
template<class C , int r>
void mul (Interval< C, r > &a, const C &x)
 
template<class C , int r>
void mul (Interval< C, r > &a, const Interval< C, r > &b, const C &x)
 
template<class C , int r>
void mul (Interval< C, r > &a, const C &x, const Interval< C, r > &b)
 
template<class C , int r>
void mul (Interval< C, r > &a, const Interval< C, r > &b)
 
template<class C , int r>
void mul (Interval< C, r > &x, const Interval< C, r > &a, const Interval< C, r > &b)
 
template<class C , int r>
void div (Interval< C, r > &a, const C &x)
 
template<class C , int r>
void div (Interval< C, r > &a, const Interval< C, r > &b, const C &x)
 
template<class C , int r>
void div (Interval< C, r > &a, const C &x, const Interval< C, r > &b)
 
template<class C , int r>
void div (Interval< C, r > &a, const Interval< C, r > &b)
 
template<class C , int r>
void div (Interval< C, r > &x, const Interval< C, r > &a, const Interval< C, r > &b)
 
template<class C , int R>
void split (Interval< C, R > &l, Interval< C, R > &r)
 
template<class C , int R>
Interval< C, R > operator- (const Interval< C, R > &I)
 
TMPL texp::sup< ARG0, ARG1 >::T operator+ (const ARG0 &Ia, const ARG1 &Ib)
 
TMPL texp::sup< ARG0, ARG1 >::T operator- (const ARG0 &Ia, const ARG1 &Ib)
 
TMPL texp::sup< ARG0, ARG1 >::T operator* (const ARG0 &Ia, const ARG1 &Ib)
 
TMPL texp::sup< ARG0, ARG1 >::T operator/ (const ARG0 &Ia, const ARG1 &Ib)
 
TMPL texp::sup< ARG0, ARG1 >::T operator+ (const ARG1 &Ia, const ARG0 &Ib)
 
TMPL texp::sup< ARG0, ARG1 >::T operator- (const ARG1 &Ia, const ARG0 &Ib)
 
TMPL texp::sup< ARG0, ARG1 >::T operator* (const ARG1 &Ia, const ARG0 &Ib)
 
TMPL texp::sup< ARG0, ARG1 >::T operator/ (const ARG1 &Ia, const ARG0 &Ib)
 
 declare_binary_operator (TMPL, ARG1, ARG0, _add_, operator+)
 
 declare_binary_operator (TMPL, ARG1, ARG0, _sub_, operator-)
 
 declare_binary_operator (TMPL, ARG1, ARG0, _mul_, operator*)
 
 declare_binary_operator (TMPL, ARG1, ARG0, _div_, operator/)
 
 declare_binary_operator (TMPL, ARG0, ARG1, _add_, operator+)
 
 declare_binary_operator (TMPL, ARG0, ARG1, _sub_, operator-)
 
 declare_binary_operator (TMPL, ARG0, ARG1, _mul_, operator*)
 
 declare_binary_operator (TMPL, ARG0, ARG1, _div_, operator/)
 
 FORALL (C) inline mmx
 
TMPL Monomial operator* (const Monomial &m1, const Monomial &m2)
 
TMPL Monomial operator/ (const Monomial &m1, const Monomial &m2)
 
TMPL bool divide (const Monomial &m1, const Monomial &m2, Monomial &r)
 
TMPL void mul (Monomial &a, const Monomial &m1, const Monomial &m2)
 
TMPL void div (Monomial &a, const Monomial &m1, const Monomial &m2)
 
TMPL Monomial div (const Monomial &m1, const Monomial &m2)
 
TMPL Monomial div_quo (const Monomial &m1, const Monomial &m2)
 
template<class C , class E >
E::degree_t degree (const Monomial &m)
 
TMPL Monomial MGcd (const Monomial &m1, const Monomial &m2)
 
TMPL Monomial pow (const Monomial &m1, int n)
 
template<class C , class E >
Monomial operator+ (const Monomial &m1, const Monomial &m2)
 
template<class C , class E >
Monomial operator- (const Monomial &m1, const Monomial &m2)
 
template<class C , class E >
Monomial operator* (const Monomial &m1, const C &c2)
 
template<class C , class E >
Monomial operator* (const C &c2, const Monomial &m1)
 
template<class C , class E >
Monomial operator/ (const Monomial &m1, const C &c2)
 
bool is_polynomial (const std::ostringstream &sm)
 
template<class OSTREAM , class C , class E >
OSTREAM & print (OSTREAM &os, const Monomial &m, const variables &V)
 
template<class C , class E >
std::string to_string_pp (const Monomial &m, const variables &V)
 
template<class C , class E >
std::string to_string (const Monomial &m, const variables &V)
 
template<class OSTREAM , class C , class E >
OSTREAM & print_as_double (OSTREAM &os, const Monomial &m, const variables &V)
 
template<class C , class E >
std::ostream & operator<< (std::ostream &os, const monom< C, E > &m)
 Output operator. More...
 
TMPL bool exact_eq (const Monomial &v1, const Monomial &v2)
 
TMPL bool exact_neq (const Monomial &v1, const Monomial &v2)
 
TMPL unsigned hash (const Monomial &v)
 
TMPL unsigned exact_hash (const Monomial &m)
 
TMPL unsigned soft_hash (const Monomial &m)
 
TMPL syntactic flatten (const MONOMIAL &v)
 
TMPL MONOMIAL monomial_from_vector (const vector< int > &t)
 
TMPL vector< int > vector_from_monomial (const MONOMIAL &m)
 
TMPL int N (const MONOMIAL &v)
 
TMPL int size (const MONOMIAL &v)
 
TMPL Seq< typename ring< C, Bernstein >::Polynomialcoefficients (const typename ring< C, Bernstein >::Polynomial &pol, int v)
 
TMPL unsigned hash (const RING &p)
 
TMPL unsigned exact_hash (const RING &p)
 
TMPL unsigned soft_hash (const RING &p)
 
TMPL bool exact_eq (const RING &p, const RING &q)
 
TMPL bool exact_neq (const RING &p, const RING &q)
 
TMPL bool operator== (const RING &p, const RING &q)
 
TMPL bool operator!= (const RING &p, const RING &q)
 
TMPL syntactic flatten (const RING &rg)
 
TMPL RING ring_bernstein_string (const scalar_set< C > &rg, const vector< string > &s)
 
TMPL RING ring_tensor_of (const ring< C, Bernstein > &r)
 
TMPL RING ring_bernstein_of (const ring< C, Sparse, DegRevLex > &r)
 
TMPL RING ring_bernstein_generic (const scalar_set< C > &rg, const Bernstein &b, const vector< generic > &s)
 
TMPL RING ring_bernstein_extend_generic (const RING &R, const vector< generic > &s)
 
TMPL syntactic flatten (const POLYNOMIAL &p)
 
TMPL POLYNOMIAL polynomial_bernstein (const RING &r, const C &c)
 
TMPL POLYNOMIAL polynomial_bernstein (const RING &r, const C &c, const int &d, const int &v)
 
TMPL POLYNOMIAL polynomial_bernstein (const RING &r, const string &s)
 
TMPL POLYNOMIAL polynomial_bernstein (const RING &r, const generic &s)
 
TMPL POLYNOMIAL polynomial_bernstein_of (const polynomial< C, with< Sparse, DegRevLex > > &f)
 
TMPL polynomial< C, with< Sparse, DegRevLex > > polynomial_sparse_of (const POLYNOMIAL &f)
 
TMPL polynomial< C, with< MonomialTensor > > polynomial_tensor_of (const POLYNOMIAL &f)
 
TMPL vector< generic > polynomial_bernstein_coefficients (const POLYNOMIAL &f, const int &v)
 
TMPL vector< generic > polynomial_bernstein_coefficients (const POLYNOMIAL &p)
 
template<class C , class O >
C sample (const RING &rg)
 
TMPL define_operator_rrr (DUALPOL, POL, DUALPOL, operator*, sparse::mul) TMPL define_operator_rrr(POL
 
TMPL RING dual_of (const RING_POL &rg)
 
TMPL RING dual_of (const RING_POL &rg, const generic &x)
 
TMPL syntactic flatten (const Polynomial &p)
 
TMPL Polynomial polynomial_dual (const RING &rg, const C &c)
 
TMPL Polynomial polynomial_dual (const RING &rg, const C &c, int d, int v)
 
TMPL Polynomial polynomial_dual (const RING &rg, const string &s)
 
TMPL Polynomial polynomial_dual (const RING &r, const generic &s)
 
TMPL vector< generic > polynomial_dual_coefficients (const Polynomial &f, const int &v)
 
TMPL vector< generic > polynomial_dual_coefficients (const Polynomial &p)
 
TMPL int nbvar (const Polynomial &mp)
 
TMPL int degree (const Polynomial &mp)
 
TMPL int degree (const Polynomial &mp, int v)
 
TMPL unsigned size (const Polynomial &p)
 
TMPL std::string to_string (const Polynomial &mp, const variables &var)
 
TMPL std::ostream & operator<< (std::ostream &os, const Polynomial &mp)
 
template<class OSTREAM , class C , class Rep , class Ord >
OSTREAM & print (OSTREAM &os, const Polynomial &mp)
 
template<class OSTREAM , class C , class Rep , class Ord >
OSTREAM & print (OSTREAM &os, const Polynomial &mp, const variables &Var)
 
TMPL std::string as_string (const Polynomial &p)
 
TMPL std::string as_string (const Polynomial &p, const variables &var)
 
TMPL Polynomial diff (const Polynomial &pol, int v)
 Multivariate Polynomial Differentiation. More...
 
TMPL Polynomial diff (const Polynomial &pol)
 Multivariate Polynomial Differentiation. More...
 
TMPL Seq< Ccoefficients (const Polynomial &pol)
 
TMPL Seq< Polynomialcoefficients (const Polynomial &pol, int v)
 
template<class Result , class C , class Rep , class Ord , class Parameters >
Result eval (const Polynomial &polynomial, const Parameters &parameters)
 Multivariate Polynomial Evaluation. More...
 
template<class Result , class C , class Rep , class Ord , class Parameters >
Result eval (const Polynomial &polynomial, const Parameters &parameters, int n)
 
template<class Result , class C , class Rep , class Ord , class Parameters >
void eval (Result &result, const Polynomial &polynomial, const Parameters &parameters)
 
TMPL Polynomial homogenize (const Polynomial &p, const Polynomial &v)
 
TMPL Polynomial homogenize (const Polynomial &p, int i, const Polynomial &v)
 
template<class POL1 , class C2 , class R2 , class V2 >
POL1 as (const polynomial< C2, with< R2, V2 > > &p)
 
template<class MP >
MP binomial (typename MP::coeff_t coeff, int i, int d, typename MP::coeff_t a)
 
TMPL void shift (Polynomial &f, const C &t, const int &v)
 
TMPL void shift (Polynomial &r, const Polynomial &p, int d, int v=0)
 
TMPL void reciprocal (Polynomial &f, const int &v)
 
TMPL Polynomial::Scalar content (const Polynomial &p)
 
TMPL unsigned hash (const Polynomial &p)
 
TMPL unsigned exact_hash (const Polynomial &p)
 
TMPL unsigned soft_hash (const Polynomial &p)
 
TMPL bool exact_eq (const Polynomial &p, const Polynomial &q)
 
TMPL bool exact_neq (const Polynomial &p, const Polynomial &q)
 
TMPL Polynomial diff (const Polynomial &p, const generic &v)
 
TMPL vector< generic > polynomial_sturm_sequence (const Polynomial &p, const Polynomial &q, int v)
 
TMPL Polynomial polynomial_resultant (const Polynomial &p, const Polynomial &q, int v)
 
TMPL Polynomial polynomial_gcd (const Polynomial &p, const Polynomial &q, int v)
 
TMPL void add (POLYNOMIAL &r, const POLYNOMIAL &a)
 
TMPL void add (POLYNOMIAL &r, const POLYNOMIAL &a, const POLYNOMIAL &b)
 
TMPL void add (POLYNOMIAL &r, const POLYNOMIAL &a, const C &b)
 
TMPL void add (POLYNOMIAL &r, const C &a, const POLYNOMIAL &b)
 
TMPL void sub (POLYNOMIAL &r, const POLYNOMIAL &a)
 
TMPL void sub (POLYNOMIAL &r, const POLYNOMIAL &a, const POLYNOMIAL &b)
 
TMPL void sub (POLYNOMIAL &r, const C &a, const POLYNOMIAL &b)
 
TMPL void sub (POLYNOMIAL &r, const POLYNOMIAL &a, const C &b)
 
TMPL void mul (POLYNOMIAL &r, const POLYNOMIAL &a)
 
TMPL void mul (POLYNOMIAL &r, const POLYNOMIAL &a, const POLYNOMIAL &b)
 
TMPL void mul (POLYNOMIAL &r, const POLYNOMIAL &a, const C &b)
 
TMPL void mul (POLYNOMIAL &r, const C &a, const POLYNOMIAL &b)
 
TMPL void div (POLYNOMIAL &r, const POLYNOMIAL &a, const POLYNOMIAL &b)
 
TMPL void div (POLYNOMIAL &r, const POLYNOMIAL &a, const C &b)
 
TMPL void rem (POLYNOMIAL &r, const POLYNOMIAL &a, const POLYNOMIAL &b)
 
TMPL POLYNOMIAL operator- (const POLYNOMIAL &p)
 
TMPL define_operator_rrr (POLYNOMIAL, POLYNOMIAL, POLYNOMIAL, operator+, OP::add) TMPLX define_operator_r_r(POLYNOMIAL
 
TMPL bool operator== (const POLYNOMIAL &mp, const C &c)
 
TMPL bool operator== (const POLYNOMIAL &mp, unsigned n)
 
template<class C , class V , class X >
bool operator!= (const polynomial< C, V > &p, const X &q)
 
TMPL RING ring_sparse_string (const scalar_set< C > &rg, const vector< string > &s)
 
TMPL RING ring_sparse_generic (const scalar_set< C > &rg, const vector< generic > &s)
 
TMPL RING ring_sparse_extend_generic (const RING &R, const vector< generic > &s)
 
TMPL Polynomial polynomial_sparse (const RING &r, const C &c)
 
TMPL Polynomial polynomial_sparse (const RING &r, const C &c, const int &d, const int &v)
 
TMPL Polynomial polynomial_sparse (const RING &r, const string &s)
 
TMPL Polynomial polynomial_sparse (const RING &r, const generic &s)
 
TMPL vector< generic > polynomial_sparse_coefficients (const Polynomial &f, const int &v)
 
TMPL vector< generic > polynomial_sparse_coefficients (const Polynomial &p)
 
TMPL vector< generic > polynomial_sparse_monomials (const Polynomial &p)
 
TMPL generic polynomial_sparse_eval_generic (const Polynomial &p, const vector< generic > &v)
 
TMPL Seq< POLYNOMIALcoefficients (const POLYNOMIAL &f, const int &v)
 
TMPL Seq< Ccoefficients (const POLYNOMIAL &f)
 
TMPL RING ring_tensor_string (const scalar_set< C > &rg, const vector< string > &s)
 
TMPL RING ring_tensor_of (const ring< C, Sparse, DegRevLex > &r)
 
TMPL RING ring_tensor_generic (const scalar_set< C > &rg, const MonomialTensor &b, const vector< generic > &s)
 
TMPL RING ring_tensor_extend_generic (const RING &R, const vector< generic > &s)
 
TMPL POLYNOMIAL polynomial_tensor (const RING &r, const C &c)
 
TMPL POLYNOMIAL polynomial_tensor (const RING &r, const C &c, const int &d, const int &v)
 
TMPL POLYNOMIAL polynomial_tensor (const RING &r, const string &s)
 
TMPL POLYNOMIAL polynomial_tensor (const RING &r, const generic &s)
 
TMPL POLYNOMIAL polynomial_tensor_of (const polynomial< C, with< Sparse, DegRevLex > > &f)
 
TMPL vector< generic > polynomial_tensor_coefficients (const POLYNOMIAL &f, const int &v)
 
TMPL vector< generic > polynomial_tensor_coefficients (const POLYNOMIAL &p)
 
TMPL void print (OSTREAM &os, int x)
 
TMPL void print (OSTREAM &os, long int x)
 
TMPL void print (OSTREAM &os, unsigned x)
 
TMPL void print (OSTREAM &os, double x)
 
TMPL C sample (const SELF &R)
 Function which returns an element of the ring (here 0). More...
 
TMPL POLYNOMIAL polynomial_bernstein_tensor (const RING &r, const C &c)
 
TMPL POLYNOMIAL polynomial_bernstein_tensor (const RING &r, const C &c, const int &d, const int &v)
 
TMPL POLYNOMIAL polynomial_bernstein_tensor (const RING &r, const string &s)
 
TMPL POLYNOMIAL polynomial_bernstein_tensor (const RING &r, const generic &s)
 
TMPL POLYNOMIAL polynomial_bernstein_tensor_of (const polynomial< C, with< Sparse, DegRevLex > > &f)
 
TMPL vector< generic > polynomial_bernstein_tensor_coefficients (const POLYNOMIAL &f, const int &v)
 
TMPL vector< generic > polynomial_bernstein_tensor_coefficients (const POLYNOMIAL &p)
 
TMPL polynomial< C, with< Sparse, DegRevLex > > ring_sparse_of (const POLYNOMIAL &f)
 
template<class T >
scalar< T > & operator+ (const scalar< T > &b, unsigned long ul)
 
template<class T >
scalar< T > & operator- (const scalar< T > &b, unsigned long ul)
 
template<class T >
scalar< T > & operator* (const scalar< T > &b, unsigned long ul)
 
template<class T >
scalar< T > & operator/ (const scalar< T > &b, unsigned long ul)
 
template<class T >
scalar< T > & operator% (const scalar< T > &b, unsigned long ul)
 
template<class T >
scalar< T > & operator+ (unsigned long ul, const scalar< T > &b)
 
template<class T >
scalar< T > & operator* (unsigned long ul, const scalar< T > &b)
 
template<class T >
scalar< T > & operator+ (const scalar< T > &b, long sl)
 
template<class T >
scalar< T > & operator- (const scalar< T > &b, long sl)
 
template<class T >
scalar< T > & operator* (const scalar< T > &b, long sl)
 
template<class T >
scalar< T > & operator/ (const scalar< T > &b, long sl)
 
template<class T >
scalar< T > & operator% (const scalar< T > &b, long sl)
 
template<class T >
scalar< T > & operator+ (long sl, const scalar< T > &b)
 
template<class T >
scalar< T > & operator* (int sl, const scalar< T > &b)
 
template<class T >
scalar< T > & operator* (long sl, const scalar< T > &b)
 
template<class T >
scalar< T > & operator* (double d, const scalar< T > &b)
 
template<class T >
scalar< T > & Div2Exp (const scalar< T > &b, unsigned long exponent_of_2)
 
template<class T >
scalar< T > & GCD (const scalar< T > &b1, const scalar< T > &b2)
 
template<class T >
scalar< T > & gcd (const scalar< T > &b1, const scalar< T > &b2)
 
template<class T >
scalar< T > & Mod2Exp (const scalar< T > &b, unsigned long exponent_of_2)
 
template<class T >
scalar< T > & Mul2Exp (const scalar< T > &b, unsigned long exponent_of_2)
 
template<class T >
scalar< T > & PowMod (const scalar< T > &b, const scalar< T > &exp, const scalar< T > &m)
 
template<class T >
scalar< T > & PowMod (const scalar< T > &b, unsigned long exp, const scalar< T > &m)
 
template<class T >
scalar< T > abs (const scalar< T > &b)
 
template<class T >
scalar< T > & neg (const scalar< T > &b)
 
template<class T >
scalar< T > pow (const scalar< T > &base, unsigned long exp)
 
template<class T >
scalar< T > & quo (const scalar< T > &dividend, unsigned long divisor)
 
template<class T >
scalar< T > & rem (const scalar< T > &dividend, const scalar< T > &divisor)
 
template<class T >
unsigned long rem (const scalar< T > &b, unsigned long divisor)
 
template<class T >
scalar< T > sqrt (const scalar< T > &b)
 
template<class T >
scalar< T > & BigIntFactorial (unsigned long n)
 
template<class T >
scalar< T > & operator+ (const scalar< T > &b, unsigned sl) NRVAL(r(b))
 
template<class T >
scalar< T > & operator- (const scalar< T > &b, unsigned sl) NRVAL(r(b))
 
template<class T >
scalar< T > & operator* (const scalar< T > &b, unsigned sl) NRVAL(r(b))
 
template<class T >
scalar< T > & operator/ (const scalar< T > &b, unsigned sl) NRVAL(r(b))
 
template<class T >
scalar< T > & operator% (const scalar< T > &b, unsigned sl) NRVAL(r(b))
 
template<class T >
scalar< T > & operator+ (const scalar< T > &b, int sl) NRVAL(r(b))
 
template<class T >
scalar< T > & operator- (const scalar< T > &b, int sl) NRVAL(r(b))
 
template<class T >
scalar< T > & operator* (const scalar< T > &b, int sl) NRVAL(r(b))
 
template<class T >
scalar< T > & operator/ (const scalar< T > &b, int sl) NRVAL(r(b))
 
template<class T >
scalar< T > & operator% (const scalar< T > &b, int sl) NRVAL(r(b))
 
template<class T >
scalar< T > & operator+ (const scalar< T > &b, long int sl) NRVAL(r(b))
 
template<class T >
scalar< T > & operator- (const scalar< T > &b, long int sl) NRVAL(r(b))
 
template<class T >
scalar< T > & operator* (const scalar< T > &b, long int sl) NRVAL(r(b))
 
template<class T >
scalar< T > & operator/ (const scalar< T > &b, long int sl) NRVAL(r(b))
 
template<class T >
scalar< T > & operator% (const scalar< T > &b, long int sl) NRVAL(r(b))
 
template<class T >
scalar< T > quo (const scalar< T > &dividend, const scalar< T > &divisor) NRVAL(r(dividend))
 
template<class T >
scalar< T > quo (const scalar< T > &dividend, unsigned long divisor) NRVAL(r(dividend))
 
template<class T >
scalar< T > & BigIntPow (unsigned long base, unsigned long exp) NRVAL(r)
 
template<class T >
scalar< T > Size (const scalar< T > &r)
 
double rfloor (double x)
 
double rceil (double x)
 
long int bit_size (double x)
 
template<unsigned N>
bigunsigned< Noperator<< (const bigunsigned< N > &b, unsigned n)
 
template<unsigned N>
bigunsigned< Noperator| (const bigunsigned< N > &b, unsigned n)
 
template<unsigned N>
bigunsigned< Noperator+ (const bigunsigned< N > &b, unsigned n)
 
template<unsigned N>
unsigned operator& (const bigunsigned< N > &b, unsigned n)
 
template<unsigned N>
void add (bigunsigned< N > &r, typename bigunsigned< N >::hdwi_t n)
 
void add (bigunsigned< 1 > &r, const bigunsigned< 1 > &a)
 
template<unsigned N>
void add (bigunsigned< N > &r, const bigunsigned< N > &a)
 
template<unsigned N>
void reverse (bigunsigned< N > &r, const bigunsigned< N > &lu)
 
void rprint (std::ostream &o, unsigned n)
 
template<unsigned N>
void rprint (std::ostream &o, bigunsigned< N > &bu)
 
template<unsigned N>
void print (std::ostream &o, const bigunsigned< N > &bi)
 
template<unsigned N>
std::ostream & operator<< (std::ostream &o, const bigunsigned< N > &bi)
 
std::ostream & operator<< (std::ostream &os, const scalar< EMPZ > &b)
 
scalar< EMPZoperator+ (const scalar< EMPZ > &a1, const scalar< EMPZ > &a2)
 
scalar< EMPZoperator- (const scalar< EMPZ > &a1, const scalar< EMPZ > &a2)
 
scalar< EMPZoperator- (const scalar< EMPZ > &a1)
 
scalar< EMPZoperator* (const scalar< EMPZ > &a1, const scalar< EMPZ > &a2)
 
scalar< EMPZoperator* (const scalar< EMPZ > &a1, const scalar< MPZ > &a2)
 
scalar< EMPZoperator* (const scalar< MPZ > &a1, const scalar< EMPZ > &a2)
 
scalar< EMPZoperator* (const scalar< EMPZ > &a2, int a1)
 
scalar< EMPZoperator* (int a1, const scalar< EMPZ > &a2)
 
scalar< EMPZoperator/ (const scalar< EMPZ > &a1, const scalar< EMPZ > &a2)
 
scalar< EMPZoperator/ (const scalar< EMPZ > &a1, const scalar< MPZ > &a2)
 
template<class OSTREAM >
void print (OSTREAM &os, const scalar< EMPZ > &b)
 
scalar< EMPZoperator<< (const scalar< EMPZ > &x, long int s)
 
scalar< EMPZ > & operator<<= (scalar< EMPZ > &x, long int s)
 
int compare (const scalar< EMPZ > &b1, const scalar< EMPZ > &b2)
 
int compare (const scalar< EMPZ > &b, unsigned long ul)
 
int compare (const scalar< EMPZ > &b, long sl)
 
int compare (const scalar< EMPZ > &b, int si)
 
scalar< EMPZmin (const scalar< EMPZ > &a1, const scalar< EMPZ > &a2)
 
scalar< EMPZmax (const scalar< EMPZ > &a1, const scalar< EMPZ > &a2)
 
long int bit_size (const scalar< EMPZ > &z)
 
std::ostream & operator<< (std::ostream &os, const scalar< EMPQ > &b)
 
scalar< EMPQoperator+ (const scalar< EMPQ > &a1, const scalar< EMPQ > &a2)
 
scalar< EMPQoperator- (const scalar< EMPQ > &a1, const scalar< EMPQ > &a2)
 
scalar< EMPQoperator- (const scalar< EMPQ > &a1)
 
scalar< EMPQoperator* (const scalar< EMPQ > &a1, const scalar< EMPQ > &a2)
 
scalar< EMPQoperator* (const scalar< EMPQ > &a1, const scalar< EMPZ > &a2)
 
scalar< EMPQoperator* (const scalar< EMPZ > &a1, const scalar< EMPQ > &a2)
 
scalar< EMPQoperator* (const scalar< EMPQ > &a1, const scalar< MPQ > &a2)
 
scalar< EMPQoperator* (const scalar< MPQ > &a1, const scalar< EMPQ > &a2)
 
scalar< EMPQoperator* (const scalar< EMPQ > &a2, int a1)
 
scalar< EMPQoperator* (int a1, const scalar< EMPQ > &a2)
 
scalar< EMPQoperator/ (const scalar< EMPQ > &a1, const scalar< EMPQ > &a2)
 
scalar< EMPQoperator/ (const scalar< EMPQ > &a1, const scalar< MPQ > &a2)
 
scalar< EMPQoperator/ (const scalar< EMPQ > &a1, const scalar< EMPZ > &a2)
 
int compare (const scalar< EMPQ > &b1, const scalar< EMPQ > &b2)
 
int compare (const scalar< EMPQ > &b, unsigned long ul)
 
int compare (const scalar< EMPQ > &b, long sl)
 
int compare (const scalar< EMPQ > &b, int si)
 
scalar< EMPQmin (const scalar< EMPQ > &a1, const scalar< EMPQ > &a2)
 
scalar< EMPQmax (const scalar< EMPQ > &a1, const scalar< EMPQ > &a2)
 
scalar< MPFoperator+ (const scalar< MPF > &a1, const scalar< MPF > &a2)
 
scalar< MPFoperator- (const scalar< MPF > &a1, const scalar< MPF > &a2)
 
scalar< MPFoperator- (const scalar< MPF > &a1)
 
scalar< MPFoperator* (const scalar< MPF > &a1, const scalar< MPF > &a2)
 
scalar< MPFoperator/ (const scalar< MPF > &a1, const scalar< MPF > &a2)
 
void convert (scalar< MPF > &n, char *s)
 
std::ostream & operator<< (std::ostream &os, const scalar< MPF > &b)
 
std::istream & operator>> (std::istream &is, scalar< MPF > &b)
 
void Precision (scalar< MPF > &b, unsigned long l)
 
size_t log (const scalar< MPF > &b)
 
int sign (const scalar< MPF > &b)
 
int compare (const scalar< MPF > &b1, const scalar< MPF > &b2)
 
int compare (const scalar< MPF > &b, unsigned long ul)
 
int compare (const scalar< MPF > &b, long sl)
 
void assign (double &r, const scalar< MPF > &z)
 
void assign (scalar< MPF > &r, double d)
 
scalar< MPZoperator+ (const scalar< MPZ > &a1, const scalar< MPZ > &a2)
 
scalar< MPZoperator- (const scalar< MPZ > &a1, const scalar< MPZ > &a2)
 
scalar< MPZoperator- (const scalar< MPZ > &a1)
 
scalar< MPZoperator* (const scalar< MPZ > &a1, const scalar< MPZ > &a2)
 
scalar< MPZoperator/ (const scalar< MPZ > &a1, const scalar< MPZ > &a2)
 
void convert (scalar< MPZ > &n, char *s)
 
std::ostream & operator<< (std::ostream &os, const scalar< MPZ > &b)
 
char * as_charp (const scalar< MPZ > &b)
 
std::string to_string (const scalar< MPZ > &b)
 
template<class OSTREAM >
void print (OSTREAM &os, const scalar< MPZ > &b)
 
std::istream & operator>> (std::istream &is, scalar< MPZ > &b)
 
scalar< MPZrfloor (const scalar< MPZ > &q)
 
scalar< MPZrceil (const scalar< MPZ > &q)
 
void SqrtRem (scalar< MPZ > &sqrt, scalar< MPZ > &rem, const scalar< MPZ > &b)
 
void QuoRem (scalar< MPZ > &q, scalar< MPZ > &r, const scalar< MPZ > &divdend, const scalar< MPZ > &divisor)
 
unsigned long QuoRem (scalar< MPZ > &q, scalar< MPZ > &r, const scalar< MPZ > &divdend, unsigned long divisor)
 
void DivMod (scalar< MPZ > &q, scalar< MPZ > &r, const scalar< MPZ > &divdend, const scalar< MPZ > &divisor)
 
void DivMod (scalar< MPZ > &q, scalar< MPZ > &r, const scalar< MPZ > &divdend, unsigned long divisor)
 
void ExtGCD (scalar< MPZ > &gcd, scalar< MPZ > &a, scalar< MPZ > &b, const scalar< MPZ > &x, const scalar< MPZ > &y)
 
void HalfExtGCD (scalar< MPZ > &gcd, scalar< MPZ > &a, const scalar< MPZ > &x, const scalar< MPZ > &y)
 
unsigned long BigIntToUL (const scalar< MPZ > &b)
 
signed long BigIntToSL (const scalar< MPZ > &b)
 
size_t log (const scalar< MPZ > &b)
 
size_t log (const scalar< MPZ > &b, int base)
 
int sign (const scalar< MPZ > &b)
 
int compare (const scalar< MPZ > &b1, const scalar< MPZ > &b2)
 
int compare (const scalar< MPZ > &b, unsigned long ul)
 
int compare (const scalar< MPZ > &b, long sl)
 
bool IsPositive (const scalar< MPZ > &b)
 
bool IsNegative (const scalar< MPZ > &b)
 
bool IsZero (const scalar< MPZ > &b)
 
bool IsOne (const scalar< MPZ > &b)
 
bool IsMinusOne (const scalar< MPZ > &b)
 
bool IsOdd (const scalar< MPZ > &b)
 
bool IsEven (const scalar< MPZ > &b)
 
bool IsPerfectSquare (const scalar< MPZ > &b)
 
bool IsProbablyPrime (const scalar< MPZ > &b, int reps)
 
scalar< MPZoperator<< (const scalar< MPZ > &x, long int s)
 
scalar< MPZ > & operator<<= (scalar< MPZ > &x, long int s)
 
scalar< MPZSize (const scalar< MPZ > &z)
 
long int bit_size (const scalar< MPZ > &z)
 
scalar< MPZgcd (const scalar< MPZ > &a, const scalar< MPZ > &b)
 
scalar< MPZlcm (const scalar< MPZ > &a, const scalar< MPZ > &b)
 
scalar< MPZpow (const scalar< MPZ > &a, unsigned n)
 
scalar< MPZisqrt (const scalar< MPZ > &a)
 
double to_double (const scalar< MPZ > &z)
 
double as_double (const scalar< MPZ > &z)
 
double as_double (const double &d)
 
std::ostream & operator<< (std::ostream &os, const scalar< MPQ > &b)
 
scalar< MPQoperator+ (const scalar< MPQ > &a1, const scalar< MPQ > &a2)
 
scalar< MPQoperator- (const scalar< MPQ > &a1, const scalar< MPQ > &a2)
 
scalar< MPQoperator- (const scalar< MPQ > &a1)
 
scalar< MPQoperator* (const scalar< MPQ > &a1, const scalar< MPQ > &a2)
 
scalar< MPQoperator* (const scalar< MPQ > &a1, const scalar< MPZ > &a2)
 
scalar< MPQoperator* (const scalar< MPZ > &a1, const scalar< MPQ > &a2)
 
scalar< MPQoperator* (const scalar< MPQ > &a2, int a1)
 
scalar< MPQoperator* (int a1, const scalar< MPQ > &a2)
 
scalar< MPQoperator/ (const scalar< MPQ > &a1, const scalar< MPQ > &a2)
 
scalar< MPQoperator/ (const scalar< MPQ > &a1, const scalar< MPZ > &a2)
 
char * as_charp (const scalar< MPQ > &b)
 
std::string to_string (const scalar< MPQ > &b)
 
template<class OSTREAM >
void print (OSTREAM &os, const scalar< MPQ > &b)
 
std::istream & operator>> (std::istream &is, scalar< MPQ > &b)
 
scalar< MPZnumerator (const scalar< MPQ > &q)
 
scalar< MPZdenominator (const scalar< MPQ > &q)
 
scalar< MPZrfloor (const scalar< MPQ > &q)
 
scalar< MPZrceil (const scalar< MPQ > &q)
 
int compare (const scalar< MPQ > &b1, const scalar< MPQ > &b2)
 
int compare (const scalar< MPQ > &b, unsigned long ul)
 
int compare (const scalar< MPQ > &b, long sl)
 
scalar< MPQmin (const scalar< MPQ > &a1, const scalar< MPQ > &a2)
 
scalar< MPQmax (const scalar< MPQ > &a1, const scalar< MPQ > &a2)
 
void convert (scalar< MPQ > &dd, char *s)
 
scalar< MPQSize (const scalar< MPQ > &r)
 
double to_double (const scalar< MPQ > &a)
 
double as_double (const scalar< MPQ > &a)
 
template<class C >
std::ostream & operator<< (std::ostream &os, const std::vector< C > &V)
 
template<class C , class R >
const Cread (const Seq< C, R > &m, unsigned i)
 
template<class C , class R >
bool eq (const Seq< C, R > &v1, const Seq< C, R > &v2)
 
template<class C , class R >
bool neq (const Seq< C, R > &v1, const Seq< C, R > &v2)
 
template<class C , class R >
unsigned hash (const Seq< C, R > &v)
 
template<class C , class R >
unsigned soft_hash (const Seq< C, R > &m)
 
template<class C , class R >
Seq< C, R >::const_iterator iterate (const Seq< C, R > &m)
 
template<class C , class R >
Seq< C, R > & operator<< (Seq< C, R > &r, const C &x)
 
template<class C , class R >
bool operator== (const Seq< C, R > &a, const Seq< C, R > &b)
 
template<class C , class R >
bool operator!= (const Seq< C, R > &a, const Seq< C, R > &b)
 
template<class C , class R >
std::ostream & operator<< (std::ostream &os, const Seq< C, R > &s)
 Output operator. More...
 
template<class C , class R >
std::istream & operator>> (std::istream &is, Seq< C, R > &V)
 
template<class C , class R >
Seq< C, R > operator+ (Seq< C, R > a, const Seq< C, R > &b)
 
template<class C , class R >
Seq< C, R > adds (Seq< C, R > a, const Seq< C, R > &b)
 
template<class C , class R >
Seq< C, R > mul (C b, Seq< C, R > a)
 
template<class C , class R >
Seq< C, R > operator/ (Seq< C, R > a, const C b)
 
template<class X >
bool operator== (const set_of< X > &r1, const set_of< X > &r2)
 
template<class X >
bool operator!= (const set_of< X > &r1, const set_of< X > &r2)
 
template<class C >
set_of< Cmake_set (const C &c)
 
template<class C >
int hash (const set_of< C > &R)
 
template<class C >
int soft_hash (const set_of< C > &R)
 
template<class C >
bool eq (const set_of< C > &R1, const set_of< C > &R2)
 
template<class X >
syntactic flatten (const set_of< X > &s)
 
 DECLARE_SET ("ZZ", integer)
 
 DECLARE_SET ("QQ", rational)
 
template<class R >
R & rep (R &r)
 
template<class R >
const R & rep (const R &r)
 
template<class R >
R & rep (shared_object< R > &r)
 
template<class R >
const R & rep (const shared_object< R > &r)
 
template<typename Iterator >
unsigned sign_variation (Iterator b, Iterator e)
 
template<typename Iterator >
unsigned sign_variation (Iterator b, Iterator e, unsigned maxv)
 
template<typename Vector >
unsigned sign_variation_n (const Vector &t, unsigned l, unsigned maxv)
 
template<typename Iterator >
bool has_sign_variation (Iterator b, Iterator e)
 
template<typename Iterator >
bool has_no_strict_sign_variation (Iterator b, Iterator e)
 
template<typename Vector >
bool has_sign_variation (const Vector &t)
 
template<typename Vector >
int sign_of (const Vector &t)
 
template<typename T >
int sign_variation (const T &v)
 
template<typename T >
int sign_variation (const T &v, unsigned maxv)
 
template<typename C , unsigned N>
unsigned sign_variation (const C(&t)[N])
 
template<typename C , unsigned N>
unsigned sign_variation (const C(&t)[N], unsigned maxv)
 
template<typename C >
unsigned sign_variation (const C *t, unsigned size)
 
template<typename C >
unsigned sign_variation (const C *t, unsigned size, unsigned maxv)
 
template<typename T >
int Var (const T &v)
 
template<typename T >
int Per (const T &v)
 Per is computing the number of equal consecutive signs -1 to 1. More...
 
template<typename T >
int Eps (const T &v)
 
template<typename T >
int Count (const T &v)
 
template<typename C , typename Iterator >
C min_value (Iterator b, Iterator e)
 
template<typename C , typename Iterator >
C max_value (Iterator b, Iterator e)
 
template<class POL , class SLV >
solver< typename POL::Scalar, SLV >::Solutions solve (const POL &p, const SLV &s)
 
template<class POL , class SLV >
solver< typename POL::Scalar, SLV >::Solutions solve (const POL &p, SLV &s)
 
template<class POL , class SLV , class Domain >
solver< typename POL::Scalar, SLV >::Solutions solve (const POL &p, const SLV &s, const Domain &D)
 
template<class POL , class SLV , class Domain1 , class Domain2 >
solver< typename POL::Scalar, SLV >::Solutions solve (const POL &p, const SLV &s, const Domain1 &D1, const Domain2 &D2)
 
template<class C , class MPC , class Domains , int MTH>
Seq< std::vector< C > > solve (const MPC &l, const ProjRd< MTH > &, const Domains &D, bool verbose=false)
 Solve function. More...
 
template<class POL , class SLV >
void run_solver (int argc, char **argv)
 
TMPL vector< generic > solver_univariate_contfrac_prec (const POLYNOMIAL &p, const int &prec)
 
TMPL vector< generic > solver_univariate_contfrac (const POLYNOMIAL &p)
 
TMPL vector< generic > solver_univariate_contfrac (const POLYNOMIAL &p, const interval< rational > &D)
 
TMPL vector< generic > solver_univariate_contfrac_approx_prec (const POLYNOMIAL &p, const int &prec)
 
TMPL vector< generic > solver_univariate_contfrac_approx (const POLYNOMIAL &p)
 
TMPL vector< generic > solver_univariate_sleeve (const POLYNOMIAL &p)
 
TMPL interval< floating<> > solver_univariate_newton (const POLYNOMIAL &p, const interval< floating<> > &I)
 
TMPL Real knotSum (Real *t, int k, int d)
 
template<class POL , class M >
solver< typename POL::Scalar, ContFrac< M > >::Solutions solve (const POL &p, const ContFrac< M > &slv)
 
template<class POL , class M , class B >
solver< typename POL::Scalar, ContFrac< M > >::Solutions solve (const POL &p, const ContFrac< M > &slv, const B &b1, const B &b2)
 
template<class POL , class IT >
IntervalNewton< IT, typename POL::coeff_t >::solutions_t solve (const POL &f, IntervalNewton< IT, typename POL::coeff_t > &s)
 
template<class POL , class M , class B >
solver< B, Sleeve< M > >::Solutions solve (const POL &p, const Sleeve< M > &slv, const B &u, const B &v)
 
template<class POL , class M >
solver< typename POL::Scalar, Sleeve< M > >::Solutions solve (const POL &p, const Sleeve< M > &slv)
 
template<class C , class V >
polynomial< C, V > sr_gcd (const polynomial< C, V > &p, const polynomial< C, V > &q)
 
template<class X >
bool with_plus_sign (const X &x)
 
template<class C >
bool with_plus_sign (const tensor::monomials< C > &x)
 
template<typename T >
abs (const T &x)
 
template<class T >
pow2 (int i)
 
template<typename FT , typename POLY >
FT bound_root (const POLY &p, const Cauchy< FT > &m)
 
template<typename FT , typename POLY >
FT max_bound (const POLY &p, const Cauchy< FT > &m)
 
template<typename FT , typename POLY >
FT min_bound (const POLY &p, Cauchy< FT >)
 
template<class ISTREAM , typename C , typename R >
bool read (ISTREAM &is, polynomial< C, R > &p, variables &V)
 Read a polynomial, enclosed in polynomial tags. More...
 

Variables

const Cb
 
const Cc
 
const IntervalI
 
char * synaps_inputptr
 
TMPL DUALPOL
 
TMPL POL
 
TMPL X
 
TMPL POLYNOMIAL
 

Typedef Documentation

typedef __mpf_struct mmx::MPF
typedef MP_RAT mmx::MPQ
typedef MP_INT mmx::MPZ

Function Documentation

template<typename T >
T mmx::abs ( const T &  x)
inline
template<class C , int r>
void mmx::abs ( Interval< C, r > &  x,
const Interval< C, r > &  a 
)
template<class T >
scalar< T > mmx::abs ( const scalar< T > &  b)
inline
TMPL void mmx::add ( POLYNOMIAL r,
const POLYNOMIAL a 
)
inline
TMPL void mmx::add ( POLYNOMIAL r,
const POLYNOMIAL a,
const POLYNOMIAL b 
)
inline
TMPL void mmx::add ( POLYNOMIAL r,
const POLYNOMIAL a,
const C b 
)
inline
TMPL void mmx::add ( POLYNOMIAL r,
const C a,
const POLYNOMIAL b 
)
inline
template<unsigned N>
void mmx::add ( bigunsigned< N > &  r,
typename bigunsigned< N >::hdwi_t  n 
)
inline
void mmx::add ( bigunsigned< 1 > &  r,
const bigunsigned< 1 > &  a 
)
inline
template<unsigned N>
void mmx::add ( bigunsigned< N > &  r,
const bigunsigned< N > &  a 
)
inline
template<class C , int r>
void mmx::add ( Interval< C, r > &  a,
const C x 
)
inline
template<class C , int r>
void mmx::add ( Interval< C, r > &  a,
const Interval< C, r > &  b,
const C x 
)
inline
template<class C , int r>
void mmx::add ( Interval< C, r > &  a,
const C x,
const Interval< C, r > &  b 
)
inline
template<class C , int r>
void mmx::add ( Interval< C, r > &  a,
const Interval< C, r > &  x 
)
inline
template<class C , int r>
void mmx::add ( Interval< C, r > &  a,
const Interval< C, r > &  b,
const Interval< C, r > &  x 
)
inline
template<class E >
void mmx::add ( dynamic_exp< E > &  r,
const dynamic_exp< E > &  A,
const dynamic_exp< E > &  B 
)
template<class C , class R >
Seq<C,R> mmx::adds ( Seq< C, R >  a,
const Seq< C, R > &  b 
)
template<typename T , typename F >
T mmx::as ( const F &  x)
inline
template<typename T , typename F , class U >
T mmx::as ( const F &  x,
const U &  u 
)
inline
template<typename T , typename F , class U , class V >
T mmx::as ( const F &  x,
const U &  u,
const V &  v 
)
inline
template<class POL1 , class C2 , class R2 , class V2 >
POL1 mmx::as ( const polynomial< C2, with< R2, V2 > > &  p)
inline
char* mmx::as_charp ( const scalar< MPZ > &  b)
inline
char* mmx::as_charp ( const scalar< MPQ > &  b)
inline
double mmx::as_double ( const RR a)
inline
double mmx::as_double ( const scalar< MPQ > &  a)
inline
double mmx::as_double ( const scalar< MPZ > &  z)
inline
double mmx::as_double ( const double &  d)
inline
template<typename FT >
Interval< FT > mmx::as_interval ( const FT &  a,
const FT &  b 
)
inline
template<typename RT , typename Poly >
IntervalData<RT,Poly> mmx::as_interval_data ( const RT &  a,
const RT &  b,
const RT &  c,
const RT &  d,
const Poly &  f 
)
TMPL std::string mmx::as_string ( const Polynomial p)
TMPL std::string mmx::as_string ( const Polynomial p,
const variables var 
)
void mmx::assign ( double &  r,
const scalar< MPF > &  z 
)
inline
void mmx::assign ( scalar< MPF > &  r,
double  d 
)
inline
template<class T >
scalar< T > & mmx::BigIntFactorial ( unsigned long  n)
inline
template<class T >
scalar<T>& mmx::BigIntPow ( unsigned long  base,
unsigned long  exp 
)
inline
signed long mmx::BigIntToSL ( const scalar< MPZ > &  b)
inline
unsigned long mmx::BigIntToUL ( const scalar< MPZ > &  b)
inline
template<typename T >
T mmx::binomial ( int  n,
int  p 
)

Binomial coefficients

template<class MP >
MP mmx::binomial ( typename MP::coeff_t  coeff,
int  i,
int  d,
typename MP::coeff_t  a 
)

Expansion of coeff*(x_i+a)^d, where i is the index of the variable x, a is the shift, d is the degree.

template<class T , int r>
std::pair< Interval<T,r>, Interval<T,r> > mmx::bissect ( const Interval< T, r > &  x)
inline
template<class T , int r>
void mmx::bissect ( Interval< T, r > &  g,
Interval< T, r > &  d,
const Interval< T, r > &  x 
)
inline
void mmx::bit_precision ( unsigned long  l)
inline

Set the default precision for the MPZ numbers. This is not the precision of the results of operations on these numbers, because of error propagations.

Examples:
solver_mv_fatarcs_test.cpp.
void mmx::bit_precision ( RR  b,
unsigned long  l 
)
inline

Set the precision for RR. This precision is not the precision of the result of operations on this number.

long int mmx::bit_size ( const ZZ z)
inline
long int mmx::bit_size ( const scalar< EMPZ > &  z)
inline
long int mmx::bit_size ( double  x)
inline
long int mmx::bit_size ( const scalar< MPZ > &  z)
inline
template<typename FT , typename POLY >
FT mmx::bound_root ( const POLY &  p,
const Cauchy< FT > &  m 
)
template<typename K >
void mmx::CF_positive ( const typename K::Poly &  f,
Seq< typename K::FIT > &  RL,
bool  posneg,
 
)
template<typename OutputIterator , typename K >
OutputIterator mmx::CF_solve ( const typename K::Poly &  f,
OutputIterator  sol,
int  mult,
 
)
TMPL Seq<typename ring<C,Bernstein>::Polynomial> mmx::coefficients ( const typename ring< C, Bernstein >::Polynomial pol,
int  v 
)
inline
TMPL Seq< POLYNOMIAL > mmx::coefficients ( const POLYNOMIAL f,
const int &  v 
)
inline
TMPL Seq< C > mmx::coefficients ( const POLYNOMIAL f)
inline
TMPL Seq<C> mmx::coefficients ( const Polynomial pol)
inline
TMPL Seq<Polynomial> mmx::coefficients ( const Polynomial pol,
int  v 
)
inline
int mmx::compare ( const QQ a,
const QQ b 
)
inline
int mmx::compare ( const RR a,
const RR b 
)
inline
int mmx::compare ( const scalar< EMPZ > &  b1,
const scalar< EMPZ > &  b2 
)
inline
int mmx::compare ( const scalar< EMPZ > &  b,
unsigned long  ul 
)
inline
int mmx::compare ( const scalar< EMPZ > &  b,
long  sl 
)
inline
int mmx::compare ( const scalar< EMPQ > &  b1,
const scalar< EMPQ > &  b2 
)
inline
int mmx::compare ( const scalar< EMPZ > &  b,
int  si 
)
inline
int mmx::compare ( const scalar< EMPQ > &  b,
unsigned long  ul 
)
inline
int mmx::compare ( const scalar< EMPQ > &  b,
long  sl 
)
inline
int mmx::compare ( const scalar< EMPQ > &  b,
int  si 
)
inline
int mmx::compare ( const scalar< MPF > &  b1,
const scalar< MPF > &  b2 
)
inline
int mmx::compare ( const scalar< MPF > &  b,
unsigned long  ul 
)
inline
int mmx::compare ( const scalar< MPQ > &  b1,
const scalar< MPQ > &  b2 
)
inline
int mmx::compare ( const scalar< MPF > &  b,
long  sl 
)
inline
int mmx::compare ( const scalar< MPQ > &  b,
unsigned long  ul 
)
inline
int mmx::compare ( const scalar< MPQ > &  b,
long  sl 
)
inline
int mmx::compare ( const scalar< MPZ > &  b1,
const scalar< MPZ > &  b2 
)
inline
int mmx::compare ( const scalar< MPZ > &  b,
unsigned long  ul 
)
inline
int mmx::compare ( const scalar< MPZ > &  b,
long  sl 
)
inline
template<class T , int r>
bool mmx::contain_zero ( const Interval< T, r > &  x)
inline
TMPL Polynomial::Scalar mmx::content ( const Polynomial p)
void mmx::convert ( scalar< MPZ > &  n,
char *  s 
)
inline
void mmx::convert ( scalar< MPF > &  n,
char *  s 
)
inline
void mmx::convert ( scalar< MPQ > &  dd,
char *  s 
)
inline
template<typename T >
int mmx::Count ( const T &  v)
mmx::declare_binary_operator ( TMPL  ,
ARG1  ,
ARG0  ,
_add_  ,
operator+   
)
mmx::declare_binary_operator ( TMPL  ,
ARG1  ,
ARG0  ,
_sub_  ,
operator-   
)
mmx::declare_binary_operator ( TMPL  ,
ARG1  ,
ARG0  ,
_mul_  ,
operator*   
)
mmx::declare_binary_operator ( TMPL  ,
ARG1  ,
ARG0  ,
_div_  ,
operator/   
)
mmx::declare_binary_operator ( TMPL  ,
ARG0  ,
ARG1  ,
_add_  ,
operator+   
)
mmx::declare_binary_operator ( TMPL  ,
ARG0  ,
ARG1  ,
_sub_  ,
operator-   
)
mmx::declare_binary_operator ( TMPL  ,
ARG0  ,
ARG1  ,
_mul_  ,
operator*   
)
mmx::declare_binary_operator ( TMPL  ,
ARG0  ,
ARG1  ,
_div_  ,
operator/   
)
mmx::DECLARE_SET ( "ZZ"  ,
integer   
)
mmx::DECLARE_SET ( "QQ"  ,
rational   
)
TMPL mmx::define_operator_rrr ( DUALPOL  ,
POL  ,
DUALPOL  ,
operator*  ,
sparse::mul   
)
TMPL mmx::define_operator_rrr ( POLYNOMIAL  ,
POLYNOMIAL  ,
POLYNOMIAL  ,
operator+  ,
OP::add   
)
TMPL int mmx::degree ( const Polynomial mp)
inline
TMPL int mmx::degree ( const Polynomial mp,
int  v 
)
inline
template<class E >
dynamic_exp<E>::degree_t mmx::degree ( const dynamic_exp< E > &  t)
inline
template<class C , class E >
E::degree_t mmx::degree ( const Monomial m)
inline
ZZ mmx::denominator ( const QQ a)
inline
scalar<MPZ> mmx::denominator ( const scalar< MPQ > &  q)
inline
TMPL Polynomial mmx::diff ( const Polynomial p,
const generic &  v 
)
TMPL Polynomial mmx::diff ( const Polynomial pol,
int  v 
)
inline

Multivariate Polynomial Differentiation.

Compute the partial derivative of polynomial w.r.t v the vth variable of polynomial.

Examples:
subresultant_test.cpp.
TMPL Polynomial mmx::diff ( const Polynomial pol)
inline

Multivariate Polynomial Differentiation.

Compute the partial derivative of polynomial w.r.t v the vth variable of polynomial.

TMPL void mmx::div ( POLYNOMIAL r,
const POLYNOMIAL a,
const POLYNOMIAL b 
)
inline
TMPL void mmx::div ( POLYNOMIAL r,
const POLYNOMIAL a,
const C b 
)
inline
TMPL void mmx::div ( Monomial a,
const Monomial m1,
const Monomial m2 
)
inline
TMPL Monomial mmx::div ( const Monomial m1,
const Monomial m2 
)
inline
template<class C , int r>
void mmx::div ( Interval< C, r > &  a,
const C x 
)
inline
template<class C , int r>
void mmx::div ( Interval< C, r > &  a,
const Interval< C, r > &  b,
const C x 
)
inline
template<class C , int r>
void mmx::div ( Interval< C, r > &  a,
const C x,
const Interval< C, r > &  b 
)
inline
template<class C , int r>
void mmx::div ( Interval< C, r > &  a,
const Interval< C, r > &  b 
)
inline
template<class C , int r>
void mmx::div ( Interval< C, r > &  x,
const Interval< C, r > &  a,
const Interval< C, r > &  b 
)
inline
template<class T >
scalar< T > & mmx::Div2Exp ( const scalar< T > &  b,
unsigned long  exponent_of_2 
)
inline
TMPL Monomial mmx::div_quo ( const Monomial m1,
const Monomial m2 
)
inline
template<class POL >
void mmx::div_x ( POL p,
int  k 
)
TMPL bool mmx::divide ( const Monomial m1,
const Monomial m2,
Monomial r 
)
inline
void mmx::DivMod ( scalar< MPZ > &  q,
scalar< MPZ > &  r,
const scalar< MPZ > &  divdend,
const scalar< MPZ > &  divisor 
)
inline
void mmx::DivMod ( scalar< MPZ > &  q,
scalar< MPZ > &  r,
const scalar< MPZ > &  divdend,
unsigned long  divisor 
)
inline
TMPL RING mmx::dual_of ( const RING_POL rg)
TMPL RING mmx::dual_of ( const RING_POL rg,
const generic &  x 
)
template<typename T >
int mmx::Eps ( const T &  v)
template<class C >
bool mmx::eq ( const set_of< C > &  R1,
const set_of< C > &  R2 
)
inline
template<class C , class R >
bool mmx::eq ( const Seq< C, R > &  v1,
const Seq< C, R > &  v2 
)
template<class E >
void mmx::erase ( dynamic_exp< E > &  A)
template<class Result , class C , class Rep , class Ord , class Parameters >
Result mmx::eval ( const Polynomial polynomial,
const Parameters &  parameters 
)
inline

Multivariate Polynomial Evaluation.

The type Prm must a container type, parameters corresponds to the 0..nvr() coordinates. The computation is done in the Sup Type of the Contained Type of Prm and Coeff. The type Result is the type of the result, it is assumed that an operator = on the computation type exists.

template<class Result , class C , class Rep , class Ord , class Parameters >
Result mmx::eval ( const Polynomial polynomial,
const Parameters &  parameters,
int  n 
)
inline
template<class Result , class C , class Rep , class Ord , class Parameters >
void mmx::eval ( Result &  result,
const Polynomial polynomial,
const Parameters &  parameters 
)
inline
TMPL bool mmx::exact_eq ( const Polynomial p,
const Polynomial q 
)
TMPL bool mmx::exact_eq ( const RING p,
const RING q 
)
TMPL bool mmx::exact_eq ( const Monomial v1,
const Monomial v2 
)
TMPL unsigned mmx::exact_hash ( const Polynomial p)
TMPL unsigned mmx::exact_hash ( const RING p)
TMPL unsigned mmx::exact_hash ( const Monomial m)
TMPL bool mmx::exact_neq ( const Polynomial p,
const Polynomial q 
)
TMPL bool mmx::exact_neq ( const RING p,
const RING q 
)
TMPL bool mmx::exact_neq ( const Monomial v1,
const Monomial v2 
)
void mmx::ExtGCD ( scalar< MPZ > &  gcd,
scalar< MPZ > &  a,
scalar< MPZ > &  b,
const scalar< MPZ > &  x,
const scalar< MPZ > &  y 
)
inline
template<typename T >
T mmx::factorial ( int  n)

Factorial

TMPL syntactic mmx::flatten ( const RING rg)
template<class X >
syntactic mmx::flatten ( const set_of< X > &  s)
inline
TMPL syntactic mmx::flatten ( const MONOMIAL v)
TMPL syntactic mmx::flatten ( const Polynomial p)
TMPL syntactic mmx::flatten ( const POLYNOMIAL p)
mmx::FORALL ( C  )
RR mmx::fracpart ( const RR r)
inline
ZZ mmx::gcd ( const ZZ a,
const ZZ b 
)
inline
double mmx::gcd ( const double &  ,
const double &   
)
inline
template<class T >
scalar< T > & mmx::GCD ( const scalar< T > &  b1,
const scalar< T > &  b2 
)
inline
template<class T >
scalar< T > & mmx::gcd ( const scalar< T > &  b1,
const scalar< T > &  b2 
)
inline
scalar<MPZ> mmx::gcd ( const scalar< MPZ > &  a,
const scalar< MPZ > &  b 
)
inline
void mmx::HalfExtGCD ( scalar< MPZ > &  gcd,
scalar< MPZ > &  a,
const scalar< MPZ > &  x,
const scalar< MPZ > &  y 
)
inline
template<typename Iterator >
bool mmx::has_no_strict_sign_variation ( Iterator  b,
Iterator  e 
)
template<typename Iterator >
bool mmx::has_sign_variation ( Iterator  b,
Iterator  e 
)
template<typename Vector >
bool mmx::has_sign_variation ( const Vector &  t)
TMPL unsigned mmx::hash ( const Polynomial p)
TMPL unsigned mmx::hash ( const RING p)
TMPL unsigned mmx::hash ( const Monomial v)
template<class C >
int mmx::hash ( const set_of< C > &  R)
inline
template<class C , class R >
unsigned mmx::hash ( const Seq< C, R > &  v)
TMPL Polynomial mmx::homogenize ( const Polynomial p,
const Polynomial v 
)
inline
TMPL Polynomial mmx::homogenize ( const Polynomial p,
int  i,
const Polynomial v 
)
inline
template<class T , int r>
Interval<T,r> mmx::hull ( const Interval< T, r > &  a,
const Interval< T, r > &  b 
)
inline
template<class T , int r>
void mmx::hull ( Interval< T, r > &  v,
const Interval< T, r > &  a,
const Interval< T, r > &  b 
)
inline
template<class T , int r>
bool mmx::in ( const T &  x,
const Interval< T, r > &  y 
)
inline
template<class T , int r>
bool mmx::intersect ( Interval< T, r > &  result,
const Interval< T, r > &  a,
const Interval< T, r > &  b 
)
inline
template<class T , int r>
Interval<T,r> mmx::intersection ( const Interval< T, r > &  a,
const Interval< T, r > &  b 
)
inline
template<class T , int r>
bool mmx::intersectp ( const Interval< T, r > &  a,
const Interval< T, r > &  b 
)
inline
template<typename RT , typename Poly >
void mmx::inv_scale ( IntervalData< RT, Poly > &  ID,
const RT &  a 
)
inline
bool mmx::is_polynomial ( const std::ostringstream &  sm)
inline
bool mmx::IsEven ( const scalar< MPZ > &  b)
inline
bool mmx::IsMinusOne ( const scalar< MPZ > &  b)
inline
bool mmx::IsNegative ( const scalar< MPZ > &  b)
inline
bool mmx::IsOdd ( const scalar< MPZ > &  b)
inline
bool mmx::IsOne ( const scalar< MPZ > &  b)
inline
bool mmx::IsPerfectSquare ( const scalar< MPZ > &  b)
inline
bool mmx::IsPositive ( const scalar< MPZ > &  b)
inline
bool mmx::IsProbablyPrime ( const scalar< MPZ > &  b,
int  reps 
)
inline
ZZ mmx::isqrt ( const ZZ a)
inline
scalar<MPZ> mmx::isqrt ( const scalar< MPZ > &  a)
inline
bool mmx::IsZero ( const scalar< MPZ > &  b)
inline
template<class C , class R >
Seq<C,R>::const_iterator mmx::iterate ( const Seq< C, R > &  m)
TMPL Real mmx::knotSum ( Real *  t,
int  k,
int  d 
)
ZZ mmx::lcm ( const ZZ a,
const ZZ b 
)
inline
scalar<MPZ> mmx::lcm ( const scalar< MPZ > &  a,
const scalar< MPZ > &  b 
)
inline
size_t mmx::log ( const scalar< MPF > &  b)
inline
size_t mmx::log ( const scalar< MPZ > &  b)
inline
size_t mmx::log ( const scalar< MPZ > &  b,
int  base 
)
inline
template<class T , int r>
T mmx::lower ( const Interval< T, r > &  x)
inline
template<class E >
int mmx::lvar ( const dynamic_exp< E > &  A)
template<class C >
set_of<C> mmx::make_set ( const C c)
inline
template<class T , int r>
Interval<T,r> mmx::max ( const Interval< T, r > &  a,
const Interval< T, r > &  b 
)
inline
scalar<EMPZ> mmx::max ( const scalar< EMPZ > &  a1,
const scalar< EMPZ > &  a2 
)
inline
scalar<EMPQ> mmx::max ( const scalar< EMPQ > &  a1,
const scalar< EMPQ > &  a2 
)
inline
scalar<MPQ> mmx::max ( const scalar< MPQ > &  a1,
const scalar< MPQ > &  a2 
)
inline
template<typename FT , typename POLY >
FT mmx::max_bound ( const POLY &  p,
const Cauchy< FT > &  m 
)
template<typename C , typename Iterator >
C mmx::max_value ( Iterator  b,
Iterator  e 
)
template<typename K >
void mmx::MCF_positive ( const typename K::Poly &  f,
Seq< typename K::root_t > &  RL,
bool  posneg,
 
)
template<class T , int r>
T mmx::median ( const Interval< T, r > &  x)
inline
TMPL Monomial mmx::MGcd ( const Monomial m1,
const Monomial m2 
)
template<class T , int r>
Interval<T,r> mmx::min ( const Interval< T, r > &  a,
const Interval< T, r > &  b 
)
inline
scalar<EMPZ> mmx::min ( const scalar< EMPZ > &  a1,
const scalar< EMPZ > &  a2 
)
inline
scalar<EMPQ> mmx::min ( const scalar< EMPQ > &  a1,
const scalar< EMPQ > &  a2 
)
inline
scalar<MPQ> mmx::min ( const scalar< MPQ > &  a1,
const scalar< MPQ > &  a2 
)
inline
template<typename FT , typename POLY >
FT mmx::min_bound ( const POLY &  p,
Cauchy< FT >   
)
template<typename C , typename Iterator >
C mmx::min_value ( Iterator  b,
Iterator  e 
)
template<class T >
scalar< T > & mmx::Mod2Exp ( const scalar< T > &  b,
unsigned long  exponent_of_2 
)
inline
TMPL MONOMIAL mmx::monomial_from_vector ( const vector< int > &  t)
TMPL void mmx::mul ( POLYNOMIAL r,
const POLYNOMIAL a 
)
inline
TMPL void mmx::mul ( POLYNOMIAL r,
const POLYNOMIAL a,
const POLYNOMIAL b 
)
inline
TMPL void mmx::mul ( POLYNOMIAL r,
const POLYNOMIAL a,
const C b 
)
inline
TMPL void mmx::mul ( POLYNOMIAL r,
const C a,
const POLYNOMIAL b 
)
inline
TMPL void mmx::mul ( Monomial a,
const Monomial m1,
const Monomial m2 
)
inline
template<class C , int r>
void mmx::mul ( Interval< C, r > &  a,
const C x 
)
inline
template<class C , int r>
void mmx::mul ( Interval< C, r > &  a,
const Interval< C, r > &  b,
const C x 
)
inline
template<class C , int r>
void mmx::mul ( Interval< C, r > &  a,
const C x,
const Interval< C, r > &  b 
)
inline
template<class C , int r>
void mmx::mul ( Interval< C, r > &  a,
const Interval< C, r > &  b 
)
inline
template<class C , class R >
Seq<C,R> mmx::mul ( C  b,
Seq< C, R >  a 
)
template<class C , int r>
void mmx::mul ( Interval< C, r > &  x,
const Interval< C, r > &  a,
const Interval< C, r > &  b 
)
inline
template<class T >
scalar< T > & mmx::Mul2Exp ( const scalar< T > &  b,
unsigned long  exponent_of_2 
)
inline
TMPL int mmx::N ( const MONOMIAL v)
inline
TMPL int mmx::nbvar ( const Polynomial mp)
inline
template<class C , int r>
void mmx::neg ( Interval< C, r > &  a)
inline
template<class C , int r>
void mmx::neg ( Interval< C, r > &  a,
const Interval< C, r > &  b 
)
inline
template<class T >
scalar<T>& mmx::neg ( const scalar< T > &  b)
template<class C , class R >
bool mmx::neq ( const Seq< C, R > &  v1,
const Seq< C, R > &  v2 
)
ZZ mmx::numerator ( const QQ a)
inline
scalar<MPZ> mmx::numerator ( const scalar< MPQ > &  q)
inline
TMPL bool mmx::operator!= ( const RING p,
const RING q 
)
template<class X >
bool mmx::operator!= ( const set_of< X > &  r1,
const set_of< X > &  r2 
)
template<class NT >
bool mmx::operator!= ( const extended< NT > &  lhs,
const extended< NT > &  rhs 
)
inline
template<class C , class V , class X >
bool mmx::operator!= ( const polynomial< C, V > &  p,
const X q 
)
template<class C , class R >
bool mmx::operator!= ( const Seq< C, R > &  a,
const Seq< C, R > &  b 
)
template<class T >
scalar< T > & mmx::operator% ( const scalar< T > &  b,
unsigned long  ul 
)
inline
template<class T >
scalar<T>& mmx::operator% ( const scalar< T > &  b,
long  sl 
)
template<class T >
scalar<T>& mmx::operator% ( const scalar< T > &  b,
unsigned  sl 
)
inline
template<class T >
scalar<T>& mmx::operator% ( const scalar< T > &  b,
int  sl 
)
inline
template<class T >
scalar<T>& mmx::operator% ( const scalar< T > &  b,
long int  sl 
)
inline
template<unsigned N>
unsigned mmx::operator& ( const bigunsigned< N > &  b,
unsigned  n 
)
template<class NT >
extended<NT> mmx::operator* ( const extended< NT > &  lhs,
const extended< NT > &  rhs 
)
inline
TMPL Monomial mmx::operator* ( const Monomial m1,
const Monomial m2 
)
inline
template<class T >
scalar< T > & mmx::operator* ( const scalar< T > &  b,
unsigned long  ul 
)
inline
template<class T >
scalar< T > & mmx::operator* ( unsigned long  ul,
const scalar< T > &  b 
)
inline
template<class T >
scalar<T>& mmx::operator* ( const scalar< T > &  b,
long  sl 
)
scalar<EMPZ> mmx::operator* ( const scalar< EMPZ > &  a1,
const scalar< EMPZ > &  a2 
)
inline
scalar<EMPQ> mmx::operator* ( const scalar< EMPQ > &  a1,
const scalar< EMPQ > &  a2 
)
inline
template<class T >
scalar<T>& mmx::operator* ( int  sl,
const scalar< T > &  b 
)
template<class T >
scalar< T > & mmx::operator* ( long  sl,
const scalar< T > &  b 
)
inline
template<class T >
scalar<T>& mmx::operator* ( double  d,
const scalar< T > &  b 
)
scalar<EMPZ> mmx::operator* ( const scalar< EMPZ > &  a1,
const scalar< MPZ > &  a2 
)
inline
scalar<EMPQ> mmx::operator* ( const scalar< EMPQ > &  a1,
const scalar< EMPZ > &  a2 
)
inline
scalar<EMPZ> mmx::operator* ( const scalar< MPZ > &  a1,
const scalar< EMPZ > &  a2 
)
inline
scalar<EMPQ> mmx::operator* ( const scalar< EMPZ > &  a1,
const scalar< EMPQ > &  a2 
)
inline
scalar<EMPZ> mmx::operator* ( const scalar< EMPZ > &  a2,
int  a1 
)
inline
scalar<EMPQ> mmx::operator* ( const scalar< EMPQ > &  a1,
const scalar< MPQ > &  a2 
)
inline
scalar<EMPZ> mmx::operator* ( int  a1,
const scalar< EMPZ > &  a2 
)
inline
scalar<EMPQ> mmx::operator* ( const scalar< MPQ > &  a1,
const scalar< EMPQ > &  a2 
)
inline
scalar<EMPQ> mmx::operator* ( const scalar< EMPQ > &  a2,
int  a1 
)
inline
scalar<EMPQ> mmx::operator* ( int  a1,
const scalar< EMPQ > &  a2 
)
inline
template<class T >
scalar<T>& mmx::operator* ( const scalar< T > &  b,
unsigned  sl 
)
inline
template<class T >
scalar<T>& mmx::operator* ( const scalar< T > &  b,
int  sl 
)
inline
template<class T >
scalar<T>& mmx::operator* ( const scalar< T > &  b,
long int  sl 
)
inline
scalar<MPZ> mmx::operator* ( const scalar< MPZ > &  a1,
const scalar< MPZ > &  a2 
)
inline
scalar<MPF> mmx::operator* ( const scalar< MPF > &  a1,
const scalar< MPF > &  a2 
)
inline
scalar<MPQ> mmx::operator* ( const scalar< MPQ > &  a1,
const scalar< MPQ > &  a2 
)
inline
scalar<MPQ> mmx::operator* ( const scalar< MPQ > &  a1,
const scalar< MPZ > &  a2 
)
inline
template<class C , class E >
Monomial mmx::operator* ( const Monomial m1,
const C c2 
)
inline
scalar<MPQ> mmx::operator* ( const scalar< MPZ > &  a1,
const scalar< MPQ > &  a2 
)
inline
template<class C , class E >
Monomial mmx::operator* ( const C c2,
const Monomial m1 
)
inline
scalar<MPQ> mmx::operator* ( const scalar< MPQ > &  a2,
int  a1 
)
inline
scalar<MPQ> mmx::operator* ( int  a1,
const scalar< MPQ > &  a2 
)
inline
TMPL texp::sup< ARG0, ARG1 >::T mmx::operator* ( const ARG0 Ia,
const ARG1 Ib 
)
TMPL texp::sup<ARG0,ARG1>::T mmx::operator* ( const ARG1 Ia,
const ARG0 Ib 
)
template<class NT >
extended<NT>& mmx::operator*= ( extended< NT > &  x,
const extended< NT > &  other 
)
inline
template<class NT >
extended<NT> mmx::operator+ ( const extended< NT > &  lhs,
const extended< NT > &  rhs 
)
inline
template<unsigned N>
bigunsigned<N> mmx::operator+ ( const bigunsigned< N > &  b,
unsigned  n 
)
inline
scalar<EMPZ> mmx::operator+ ( const scalar< EMPZ > &  a1,
const scalar< EMPZ > &  a2 
)
inline
scalar<EMPQ> mmx::operator+ ( const scalar< EMPQ > &  a1,
const scalar< EMPQ > &  a2 
)
inline
template<class T >
scalar< T > & mmx::operator+ ( const scalar< T > &  b,
unsigned long  ul 
)
inline
template<class T >
scalar< T > & mmx::operator+ ( unsigned long  ul,
const scalar< T > &  b 
)
inline
template<class T >
scalar<T>& mmx::operator+ ( const scalar< T > &  b,
long  sl 
)
template<class T >
scalar< T > & mmx::operator+ ( long  sl,
const scalar< T > &  b 
)
inline
template<class C , class R >
Seq<C,R> mmx::operator+ ( Seq< C, R >  a,
const Seq< C, R > &  b 
)
template<class T >
scalar<T>& mmx::operator+ ( const scalar< T > &  b,
unsigned  sl 
)
inline
template<class T >
scalar<T>& mmx::operator+ ( const scalar< T > &  b,
int  sl 
)
inline
template<class T >
scalar<T>& mmx::operator+ ( const scalar< T > &  b,
long int  sl 
)
inline
scalar<MPZ> mmx::operator+ ( const scalar< MPZ > &  a1,
const scalar< MPZ > &  a2 
)
inline
template<class C , class E >
Monomial mmx::operator+ ( const Monomial m1,
const Monomial m2 
)
inline
scalar<MPF> mmx::operator+ ( const scalar< MPF > &  a1,
const scalar< MPF > &  a2 
)
inline
scalar<MPQ> mmx::operator+ ( const scalar< MPQ > &  a1,
const scalar< MPQ > &  a2 
)
inline
TMPL texp::sup< ARG0, ARG1 >::T mmx::operator+ ( const ARG0 Ia,
const ARG1 Ib 
)
TMPL texp::sup<ARG0,ARG1>::T mmx::operator+ ( const ARG1 Ia,
const ARG0 Ib 
)
template<class NT >
extended<NT>& mmx::operator+= ( extended< NT > &  x,
const extended< NT > &  other 
)
inline
template<class NT >
extended<NT> mmx::operator- ( const extended< NT > &  lhs,
const extended< NT > &  rhs 
)
inline
TMPL POLYNOMIAL mmx::operator- ( const POLYNOMIAL p)
inline
template<class NT >
extended<NT> mmx::operator- ( const extended< NT > &  lhs)
inline
scalar<EMPZ> mmx::operator- ( const scalar< EMPZ > &  a1,
const scalar< EMPZ > &  a2 
)
inline
scalar<EMPQ> mmx::operator- ( const scalar< EMPQ > &  a1,
const scalar< EMPQ > &  a2 
)
inline
template<class T >
scalar< T > & mmx::operator- ( const scalar< T > &  b,
unsigned long  ul 
)
inline
scalar<EMPZ> mmx::operator- ( const scalar< EMPZ > &  a1)
inline
scalar<EMPQ> mmx::operator- ( const scalar< EMPQ > &  a1)
inline
template<class T >
scalar<T>& mmx::operator- ( const scalar< T > &  b,
long  sl 
)
template<class T >
scalar<T>& mmx::operator- ( const scalar< T > &  b,
unsigned  sl 
)
inline
template<class T >
scalar<T>& mmx::operator- ( const scalar< T > &  b,
int  sl 
)
inline
template<class T >
scalar<T>& mmx::operator- ( const scalar< T > &  b,
long int  sl 
)
inline
scalar<MPZ> mmx::operator- ( const scalar< MPZ > &  a1,
const scalar< MPZ > &  a2 
)
inline
template<class C , class E >
Monomial mmx::operator- ( const Monomial m1,
const Monomial m2 
)
inline
scalar<MPF> mmx::operator- ( const scalar< MPF > &  a1,
const scalar< MPF > &  a2 
)
inline
scalar<MPZ> mmx::operator- ( const scalar< MPZ > &  a1)
inline
scalar<MPQ> mmx::operator- ( const scalar< MPQ > &  a1,
const scalar< MPQ > &  a2 
)
inline
scalar<MPF> mmx::operator- ( const scalar< MPF > &  a1)
inline
scalar<MPQ> mmx::operator- ( const scalar< MPQ > &  a1)
inline
template<class C , int R>
Interval<C,R> mmx::operator- ( const Interval< C, R > &  I)
TMPL texp::sup< ARG0, ARG1 >::T mmx::operator- ( const ARG0 Ia,
const ARG1 Ib 
)
TMPL texp::sup<ARG0,ARG1>::T mmx::operator- ( const ARG1 Ia,
const ARG0 Ib 
)
template<class NT >
extended<NT>& mmx::operator-= ( extended< NT > &  x,
const extended< NT > &  other 
)
inline
template<class NT >
extended<NT> mmx::operator/ ( const extended< NT > &  lhs,
const extended< NT > &  rhs 
)
inline
TMPL Monomial mmx::operator/ ( const Monomial m1,
const Monomial m2 
)
inline
template<class T >
scalar< T > & mmx::operator/ ( const scalar< T > &  b,
unsigned long  ul 
)
inline
template<class T >
scalar<T>& mmx::operator/ ( const scalar< T > &  b,
long  sl 
)
scalar<EMPZ> mmx::operator/ ( const scalar< EMPZ > &  a1,
const scalar< EMPZ > &  a2 
)
inline
scalar<EMPZ> mmx::operator/ ( const scalar< EMPZ > &  a1,
const scalar< MPZ > &  a2 
)
inline
scalar<EMPQ> mmx::operator/ ( const scalar< EMPQ > &  a1,
const scalar< EMPQ > &  a2 
)
inline
scalar<EMPQ> mmx::operator/ ( const scalar< EMPQ > &  a1,
const scalar< MPQ > &  a2 
)
inline
scalar<EMPQ> mmx::operator/ ( const scalar< EMPQ > &  a1,
const scalar< EMPZ > &  a2 
)
inline
template<class C , class R >
Seq<C,R> mmx::operator/ ( Seq< C, R >  a,
const C  b 
)
template<class T >
scalar<T>& mmx::operator/ ( const scalar< T > &  b,
unsigned  sl 
)
inline
template<class T >
scalar<T>& mmx::operator/ ( const scalar< T > &  b,
int  sl 
)
inline
template<class T >
scalar<T>& mmx::operator/ ( const scalar< T > &  b,
long int  sl 
)
inline
scalar<MPZ> mmx::operator/ ( const scalar< MPZ > &  a1,
const scalar< MPZ > &  a2 
)
inline
scalar<MPF> mmx::operator/ ( const scalar< MPF > &  a1,
const scalar< MPF > &  a2 
)
inline
template<class C , class E >
Monomial mmx::operator/ ( const Monomial m1,
const C c2 
)
inline
scalar<MPQ> mmx::operator/ ( const scalar< MPQ > &  a1,
const scalar< MPQ > &  a2 
)
inline
scalar<MPQ> mmx::operator/ ( const scalar< MPQ > &  a1,
const scalar< MPZ > &  a2 
)
inline
TMPL texp::sup< ARG0, ARG1 >::T mmx::operator/ ( const ARG0 Ia,
const ARG1 Ib 
)
TMPL texp::sup<ARG0,ARG1>::T mmx::operator/ ( const ARG1 Ia,
const ARG0 Ib 
)
template<class NT >
extended<NT>& mmx::operator/= ( extended< NT > &  x,
const extended< NT > &  other 
)
inline
template<class NT >
bool mmx::operator< ( const extended< NT > &  lhs,
const extended< NT > &  rhs 
)
inline
std::ostream & mmx::operator<< ( std::ostream &  os,
const scalar< EMPZ > &  b 
)
inline
std::ostream & mmx::operator<< ( std::ostream &  os,
const scalar< MPQ > &  b 
)
inline
std::ostream & mmx::operator<< ( std::ostream &  os,
const scalar< EMPQ > &  b 
)
inline
template<class C >
std::ostream& mmx::operator<< ( std::ostream &  os,
const std::vector< C > &  V 
)
TMPL std::ostream& mmx::operator<< ( std::ostream &  os,
const Polynomial mp 
)
template<unsigned N>
bigunsigned<N> mmx::operator<< ( const bigunsigned< N > &  b,
unsigned  n 
)
template<class T , int r>
std::ostream& mmx::operator<< ( std::ostream &  o,
const Interval< T, r > &  i 
)
template<class E >
std::ostream& mmx::operator<< ( std::ostream &  os,
const dynamic_exp< E > &  t 
)
template<class C , class R >
Seq<C,R>& mmx::operator<< ( Seq< C, R > &  r,
const C x 
)
inline
template<class C , class R >
std::ostream& mmx::operator<< ( std::ostream &  os,
const Seq< C, R > &  s 
)

Output operator.

template<unsigned N>
std::ostream& mmx::operator<< ( std::ostream &  o,
const bigunsigned< N > &  bi 
)
scalar<EMPZ> mmx::operator<< ( const scalar< EMPZ > &  x,
long int  s 
)
inline
std::ostream& mmx::operator<< ( std::ostream &  os,
const scalar< MPZ > &  b 
)
inline
std::ostream& mmx::operator<< ( std::ostream &  os,
const scalar< MPF > &  b 
)
inline
template<class C , class E >
std::ostream& mmx::operator<< ( std::ostream &  os,
const monom< C, E > &  m 
)
inline

Output operator.

scalar<MPZ> mmx::operator<< ( const scalar< MPZ > &  x,
long int  s 
)
inline
template<class NT >
extended<NT>& mmx::operator<<= ( extended< NT > &  x,
long int  s 
)
inline
scalar<EMPZ>& mmx::operator<<= ( scalar< EMPZ > &  x,
long int  s 
)
inline
scalar<MPZ>& mmx::operator<<= ( scalar< MPZ > &  x,
long int  s 
)
inline
template<class NT >
bool mmx::operator<= ( const extended< NT > &  lhs,
const extended< NT > &  rhs 
)
inline
template<class X >
bool mmx::operator== ( const set_of< X > &  r1,
const set_of< X > &  r2 
)
TMPL bool mmx::operator== ( const RING p,
const RING q 
)
template<class NT >
bool mmx::operator== ( const extended< NT > &  lhs,
const extended< NT > &  rhs 
)
inline
TMPL bool mmx::operator== ( const POLYNOMIAL mp,
const C c 
)
TMPL bool mmx::operator== ( const POLYNOMIAL mp,
unsigned  n 
)
template<class C , class R >
bool mmx::operator== ( const Seq< C, R > &  a,
const Seq< C, R > &  b 
)
template<class NT >
bool mmx::operator> ( const extended< NT > &  lhs,
const extended< NT > &  rhs 
)
inline
template<class NT >
bool mmx::operator>= ( const extended< NT > &  lhs,
const extended< NT > &  rhs 
)
inline
template<class C , class R >
std::istream& mmx::operator>> ( std::istream &  is,
Seq< C, R > &  V 
)
inline

Input operator for standard matrices. The input format is of the form s c0 c1 ... where s is the number of elements.

std::istream& mmx::operator>> ( std::istream &  is,
scalar< MPF > &  b 
)
inline
std::istream& mmx::operator>> ( std::istream &  is,
scalar< MPZ > &  b 
)
inline
std::istream& mmx::operator>> ( std::istream &  is,
scalar< MPQ > &  b 
)
inline
template<unsigned N>
bigunsigned<N> mmx::operator| ( const bigunsigned< N > &  b,
unsigned  n 
)
template<typename T >
int mmx::Per ( const T &  v)

Per is computing the number of equal consecutive signs -1 to 1.

TMPL POLYNOMIAL mmx::polynomial_bernstein ( const RING r,
const C c 
)
TMPL POLYNOMIAL mmx::polynomial_bernstein ( const RING r,
const C c,
const int &  d,
const int &  v 
)
TMPL POLYNOMIAL mmx::polynomial_bernstein ( const RING r,
const string &  s 
)
TMPL POLYNOMIAL mmx::polynomial_bernstein ( const RING r,
const generic &  s 
)
TMPL vector<generic> mmx::polynomial_bernstein_coefficients ( const POLYNOMIAL f,
const int &  v 
)
TMPL vector<generic> mmx::polynomial_bernstein_coefficients ( const POLYNOMIAL p)
TMPL POLYNOMIAL mmx::polynomial_bernstein_of ( const polynomial< C, with< Sparse, DegRevLex > > &  f)
TMPL POLYNOMIAL mmx::polynomial_bernstein_tensor ( const RING r,
const C c 
)
TMPL POLYNOMIAL mmx::polynomial_bernstein_tensor ( const RING r,
const C c,
const int &  d,
const int &  v 
)
TMPL POLYNOMIAL mmx::polynomial_bernstein_tensor ( const RING r,
const string &  s 
)
TMPL POLYNOMIAL mmx::polynomial_bernstein_tensor ( const RING r,
const generic &  s 
)
TMPL vector<generic> mmx::polynomial_bernstein_tensor_coefficients ( const POLYNOMIAL f,
const int &  v 
)
TMPL vector<generic> mmx::polynomial_bernstein_tensor_coefficients ( const POLYNOMIAL p)
TMPL POLYNOMIAL mmx::polynomial_bernstein_tensor_of ( const polynomial< C, with< Sparse, DegRevLex > > &  f)
TMPL Polynomial mmx::polynomial_dual ( const RING rg,
const C c 
)
TMPL Polynomial mmx::polynomial_dual ( const RING rg,
const C c,
int  d,
int  v 
)
TMPL Polynomial mmx::polynomial_dual ( const RING rg,
const string &  s 
)
TMPL Polynomial mmx::polynomial_dual ( const RING r,
const generic &  s 
)
TMPL vector<generic> mmx::polynomial_dual_coefficients ( const Polynomial f,
const int &  v 
)
TMPL vector<generic> mmx::polynomial_dual_coefficients ( const Polynomial p)
TMPL Polynomial mmx::polynomial_gcd ( const Polynomial p,
const Polynomial q,
int  v 
)
TMPL Polynomial mmx::polynomial_resultant ( const Polynomial p,
const Polynomial q,
int  v 
)
TMPL Polynomial mmx::polynomial_sparse ( const RING r,
const C c 
)
TMPL Polynomial mmx::polynomial_sparse ( const RING r,
const C c,
const int &  d,
const int &  v 
)
TMPL Polynomial mmx::polynomial_sparse ( const RING r,
const string &  s 
)
TMPL Polynomial mmx::polynomial_sparse ( const RING r,
const generic &  s 
)
TMPL vector< generic > mmx::polynomial_sparse_coefficients ( const Polynomial f,
const int &  v 
)
TMPL vector< generic > mmx::polynomial_sparse_coefficients ( const Polynomial p)
TMPL generic mmx::polynomial_sparse_eval_generic ( const Polynomial p,
const vector< generic > &  v 
)
TMPL vector< generic > mmx::polynomial_sparse_monomials ( const Polynomial p)
TMPL polynomial< C, with< Sparse, DegRevLex > > mmx::polynomial_sparse_of ( const POLYNOMIAL f)
TMPL vector<generic> mmx::polynomial_sturm_sequence ( const Polynomial p,
const Polynomial q,
int  v 
)
TMPL POLYNOMIAL mmx::polynomial_tensor ( const RING r,
const C c 
)
TMPL POLYNOMIAL mmx::polynomial_tensor ( const RING r,
const C c,
const int &  d,
const int &  v 
)
TMPL POLYNOMIAL mmx::polynomial_tensor ( const RING r,
const string &  s 
)
TMPL POLYNOMIAL mmx::polynomial_tensor ( const RING r,
const generic &  s 
)
TMPL vector< generic > mmx::polynomial_tensor_coefficients ( const POLYNOMIAL f,
const int &  v 
)
TMPL vector< generic > mmx::polynomial_tensor_coefficients ( const POLYNOMIAL p)
TMPL POLYNOMIAL mmx::polynomial_tensor_of ( const polynomial< C, with< Sparse, DegRevLex > > &  f)
TMPL polynomial< C, with< MonomialTensor > > mmx::polynomial_tensor_of ( const POLYNOMIAL f)
template<class T >
T mmx::pow ( const T &  a,
int  i 
)
ZZ mmx::pow ( const ZZ a,
unsigned  n 
)
inline
template<class T >
scalar< T > mmx::pow ( const scalar< T > &  base,
unsigned long  exp 
)
inline
TMPL Monomial mmx::pow ( const Monomial m1,
int  n 
)
inline
scalar<MPZ> mmx::pow ( const scalar< MPZ > &  a,
unsigned  n 
)
inline
template<class T >
T mmx::pow2 ( int  i)
template<class T >
scalar< T > & mmx::PowMod ( const scalar< T > &  b,
const scalar< T > &  exp,
const scalar< T > &  m 
)
inline
template<class T >
scalar< T > & mmx::PowMod ( const scalar< T > &  b,
unsigned long  exp,
const scalar< T > &  m 
)
inline
void mmx::Precision ( unsigned long  l)
inline

Set the default precision for the MPZ numbers. This is not the precision of the results of operations on these numbers, because of error propagations.

void mmx::Precision ( RR  b,
unsigned long  l 
)
inline

Set the precision for RR. This precision is not the precision of the result of operations on this number.

void mmx::Precision ( scalar< MPF > &  b,
unsigned long  l 
)
inline

Set the precision for MPZ. This precision is not the precision of the result of operations on this number.

TMPL void mmx::print ( OSTREAM &  os,
int  x 
)
inline
TMPL void mmx::print ( OSTREAM &  os,
long int  x 
)
inline
TMPL void mmx::print ( OSTREAM &  os,
unsigned  x 
)
inline
TMPL void mmx::print ( OSTREAM &  os,
double  x 
)
inline
template<class OSTREAM , class C , class Rep , class Ord >
OSTREAM& mmx::print ( OSTREAM &  os,
const Polynomial mp 
)
inline
template<class OSTREAM , class C , class Rep , class Ord >
OSTREAM& mmx::print ( OSTREAM &  os,
const Polynomial mp,
const variables Var 
)
inline
template<class OSTREAM , class T , int r>
void mmx::print ( OSTREAM &  os,
const Interval< T, r > &  a 
)
inline
template<unsigned N>
void mmx::print ( std::ostream &  o,
const bigunsigned< N > &  bi 
)
template<class OSTREAM >
void mmx::print ( OSTREAM &  os,
const scalar< EMPZ > &  b 
)
inline
template<class OSTREAM , class C , class E >
OSTREAM& mmx::print ( OSTREAM &  os,
const Monomial m,
const variables V 
)
inline
template<class OSTREAM >
void mmx::print ( OSTREAM &  os,
const scalar< MPZ > &  b 
)
inline
template<class OSTREAM >
void mmx::print ( OSTREAM &  os,
const scalar< MPQ > &  b 
)
inline
template<class OSTREAM , class C , class E >
OSTREAM& mmx::print_as_double ( OSTREAM &  os,
const Monomial m,
const variables V 
)
inline
template<class T >
scalar<T>& mmx::quo ( const scalar< T > &  dividend,
unsigned long  divisor 
)
inline
template<class T >
scalar<T> mmx::quo ( const scalar< T > &  dividend,
const scalar< T > &  divisor 
)
inline
template<class T >
scalar<T> mmx::quo ( const scalar< T > &  dividend,
unsigned long  divisor 
)
inline
void mmx::QuoRem ( scalar< MPZ > &  q,
scalar< MPZ > &  r,
const scalar< MPZ > &  divdend,
const scalar< MPZ > &  divisor 
)
inline
unsigned long mmx::QuoRem ( scalar< MPZ > &  q,
scalar< MPZ > &  r,
const scalar< MPZ > &  divdend,
unsigned long  divisor 
)
inline
scalar<MPZ> mmx::rceil ( const scalar< MPQ > &  q)
inline
scalar<MPZ> mmx::rceil ( const scalar< MPZ > &  q)
inline
double mmx::rceil ( double  x)
inline
template<class ISTREAM , typename C , typename R >
bool mmx::read ( ISTREAM &  is,
polynomial< C, R > &  p,
variables V 
)

Read a polynomial, enclosed in polynomial tags.

template<class C , class R >
const C& mmx::read ( const Seq< C, R > &  m,
unsigned  i 
)
inline
TMPL void mmx::reciprocal ( Polynomial f,
const int &  v 
)
inline

Inplace reciprocal w.r.t. variable v

TMPL void mmx::rem ( POLYNOMIAL r,
const POLYNOMIAL a,
const POLYNOMIAL b 
)
inline
template<class T >
scalar< T > & mmx::rem ( const scalar< T > &  dividend,
const scalar< T > &  divisor 
)
inline
template<class T >
unsigned long mmx::rem ( const scalar< T > &  b,
unsigned long  divisor 
)
inline
template<class R >
R& mmx::rep ( R &  r)
inline

Allows us to access to the data when we don't use shared object.

template<class R >
const R& mmx::rep ( const R &  r)
inline

Allows us to access to the data when we don't use shared object.

template<class R >
R& mmx::rep ( shared_object< R > &  r)
inline

Allows us to access to the data when we use shared object.

template<class R >
const R& mmx::rep ( const shared_object< R > &  r)
inline

Allows us to access to the data when we use shared object.

template<typename Poly >
void mmx::reverse ( Poly &  R,
const Poly &  P 
)
inline
template<typename Poly >
void mmx::reverse ( Poly &  R)
inline
template<typename RT , typename Poly >
void mmx::reverse ( IntervalData< RT, Poly > &  I1)
inline
template<unsigned N>
void mmx::reverse ( bigunsigned< N > &  r,
const bigunsigned< N > &  lu 
)
template<typename RT , typename Poly >
void mmx::reverse_shift ( IntervalData< RT, Poly > &  I2,
const IntervalData< RT, Poly > &  ID 
)
inline
template<typename RT , typename Poly >
void mmx::reverse_shift_homography ( IntervalData< RT, Poly > &  I2,
const IntervalData< RT, Poly > &  ID 
)
inline
scalar<MPZ> mmx::rfloor ( const scalar< MPQ > &  q)
inline
scalar<MPZ> mmx::rfloor ( const scalar< MPZ > &  q)
inline
double mmx::rfloor ( double  x)
inline
TMPL RING mmx::ring_bernstein_extend_generic ( const RING R,
const vector< generic > &  s 
)
TMPL RING mmx::ring_bernstein_generic ( const scalar_set< C > &  rg,
const Bernstein b,
const vector< generic > &  s 
)
TMPL RING mmx::ring_bernstein_of ( const ring< C, Sparse, DegRevLex > &  r)
TMPL RING mmx::ring_bernstein_string ( const scalar_set< C > &  rg,
const vector< string > &  s 
)
TMPL RING mmx::ring_sparse_extend_generic ( const RING R,
const vector< generic > &  s 
)
TMPL RING mmx::ring_sparse_generic ( const scalar_set< C > &  rg,
const vector< generic > &  s 
)
TMPL polynomial<C, with<Sparse, DegRevLex> > mmx::ring_sparse_of ( const POLYNOMIAL f)
TMPL RING mmx::ring_sparse_string ( const scalar_set< C > &  rg,
const vector< string > &  s 
)
TMPL RING mmx::ring_tensor_extend_generic ( const RING R,
const vector< generic > &  s 
)
TMPL RING mmx::ring_tensor_generic ( const scalar_set< C > &  rg,
const MonomialTensor b,
const vector< generic > &  s 
)
TMPL RING mmx::ring_tensor_of ( const ring< C, Sparse, DegRevLex > &  r)
TMPL RING mmx::ring_tensor_of ( const ring< C, Bernstein > &  r)
TMPL RING mmx::ring_tensor_string ( const scalar_set< C > &  rg,
const vector< string > &  s 
)
void mmx::rprint ( std::ostream &  o,
unsigned  n 
)
inline
template<unsigned N>
void mmx::rprint ( std::ostream &  o,
bigunsigned< N > &  bu 
)
template<class POL , class SLV >
void mmx::run_solver ( int  argc,
char **  argv 
)
TMPL C mmx::sample ( const SELF R)

Function which returns an element of the ring (here 0).

template<class C , class O >
C mmx::sample ( const RING rg)
template<typename RT , typename Poly >
void mmx::scale ( IntervalData< RT, Poly > &  ID,
const RT &  a 
)
inline
template<typename RT , typename Poly , typename RT2 >
void mmx::scale ( IntervalData< RT, Poly > &  ID,
const RT2 &  a 
)
inline
template<typename RT , typename Poly >
void mmx::scale ( IntervalData< RT, Poly > &  ID,
long  k 
)
inline
TMPL void mmx::shift ( Polynomial f,
const C t,
const int &  v 
)
inline

Inplace shift by t in variable v

TMPL void mmx::shift ( Polynomial r,
const Polynomial p,
int  d,
int  v = 0 
)
inline

Inplace shift p by degree d in variable v

template<typename RT , typename Poly >
void mmx::shift ( IntervalData< RT, Poly > &  ID,
const RT &  a 
)
inline
template<typename RT , typename Poly , typename RT2 >
void mmx::shift ( IntervalData< RT, Poly > &  ID,
const RT2 &  a 
)
inline
template<typename Poly >
void mmx::shift_by_1 ( Poly &  R,
const Poly &  P 
)
inline
template<typename RT , typename Poly >
void mmx::shift_by_1 ( IntervalData< RT, Poly > &  I1,
const IntervalData< RT, Poly > &  I2 
)
inline
template<typename RT , typename Poly >
void mmx::shift_by_1 ( IntervalData< RT, Poly > &  I1)
inline
template<typename Poly >
void mmx::shift_by_1 ( Poly &  R)
inline
template<typename T >
int mmx::sign ( const T &  x)
inline
int mmx::sign ( const QQ a)
inline
int mmx::sign ( const RR a)
inline
int mmx::sign ( const scalar< MPF > &  b)
inline
int mmx::sign ( const scalar< MPZ > &  b)
inline
template<typename Vector >
int mmx::sign_of ( const Vector &  t)
template<typename Iterator >
unsigned mmx::sign_variation ( Iterator  b,
Iterator  e 
)

Function that computes the number of sign changes between b and e.

template<typename Iterator >
unsigned mmx::sign_variation ( Iterator  b,
Iterator  e,
unsigned  maxv 
)
template<typename T >
int mmx::sign_variation ( const T &  v)
inline

Function that computes the number of sign changes in a linear array, using iterators, and counters for the number of sign changes. The parameters v is a linear array of coefficients. The output var is the number of sign changes of v.

template<typename T >
int mmx::sign_variation ( const T &  v,
unsigned  maxv 
)
inline
template<typename C , unsigned N>
unsigned mmx::sign_variation ( const C(&)  t[N])
inline
template<typename C , unsigned N>
unsigned mmx::sign_variation ( const C(&)  t[N],
unsigned  maxv 
)
inline
template<typename C >
unsigned mmx::sign_variation ( const C t,
unsigned  size 
)
inline
template<typename C >
unsigned mmx::sign_variation ( const C t,
unsigned  size,
unsigned  maxv 
)
inline
template<typename Vector >
unsigned mmx::sign_variation_n ( const Vector &  t,
unsigned  l,
unsigned  maxv 
)
template<class T , int r>
bool mmx::singleton ( const Interval< T, r > &  x)
inline
TMPL unsigned mmx::size ( const Polynomial p)
inline
TMPL int mmx::size ( const MONOMIAL v)
inline
QQ mmx::Size ( const QQ r)
inline
ZZ mmx::Size ( const ZZ z)
inline
ZZ mmx::size ( const ZZ z)
inline
QQ mmx::size ( const QQ r)
inline
template<class T , int r>
T mmx::size ( const Interval< T, r > &  i)
template<class T >
scalar<T> mmx::Size ( const scalar< T > &  r)
scalar<MPQ> mmx::Size ( const scalar< MPQ > &  r)
inline
scalar<MPZ> mmx::Size ( const scalar< MPZ > &  z)
inline
TMPL unsigned mmx::soft_hash ( const Polynomial p)
TMPL unsigned mmx::soft_hash ( const RING p)
template<class C >
int mmx::soft_hash ( const set_of< C > &  R)
inline
TMPL unsigned mmx::soft_hash ( const Monomial m)
template<class C , class R >
unsigned mmx::soft_hash ( const Seq< C, R > &  m)
template<class POL , class SLV >
solver<typename POL::Scalar,SLV>::Solutions mmx::solve ( const POL p,
const SLV &  s 
)
template<class POL , class SLV >
solver<typename POL::Scalar,SLV>::Solutions mmx::solve ( const POL p,
SLV &  s 
)
template<class POL , class SLV , class Domain >
solver<typename POL::Scalar,SLV>::Solutions mmx::solve ( const POL p,
const SLV &  s,
const Domain &  D 
)
template<class POL , class SLV , class Domain1 , class Domain2 >
solver<typename POL::Scalar,SLV>::Solutions mmx::solve ( const POL p,
const SLV &  s,
const Domain1 &  D1,
const Domain2 &  D2 
)
template<class NT , class LB >
Seq< typename ContFrac<NT,LB>::root_t > mmx::solve ( const typename ContFrac< NT >::Poly &  f,
ContFrac< NT, LB >   
)
inline
template<class POL , class IT >
IntervalNewton<IT,typename POL::coeff_t>::solutions_t mmx::solve ( const POL f,
IntervalNewton< IT, typename POL::coeff_t > &  s 
)
template<class C , class MPC , class Domains , int MTH>
Seq<std::vector<C> > mmx::solve ( const MPC &  l,
const ProjRd< MTH > &  ,
const Domains &  D,
bool  verbose = false 
)

Solve function.

Interface function for the solvers of the family ProjRd.

Parameters
lis a sequence of polynomials (with begin() and end() member functions) expressed in the Monomial basis.
Dis the domain for the resolution.
verboseset to true output complete information on the resolution.
template<class POL , class M >
solver<typename POL::Scalar, ContFrac<M> >::Solutions mmx::solve ( const POL p,
const ContFrac< M > &  slv 
)
template<class POL , class M , class B >
solver<typename POL::Scalar, ContFrac<M> >::Solutions mmx::solve ( const POL p,
const ContFrac< M > &  slv,
const B &  b1,
const B &  b2 
)
template<class POL , class M , class B >
solver<B, Sleeve<M> >::Solutions mmx::solve ( const POL p,
const Sleeve< M > &  slv,
const B &  u,
const B &  v 
)
template<class POL , class M >
solver<typename POL::Scalar, Sleeve<M> >::Solutions mmx::solve ( const POL p,
const Sleeve< M > &  slv 
)
template<typename K , typename OutputIterator >
OutputIterator mmx::solve_contfrac ( const typename K::Poly &  h,
OutputIterator  sol,
 
)
inline
TMPL vector<generic> mmx::solver_univariate_contfrac ( const POLYNOMIAL p)
TMPL vector<generic> mmx::solver_univariate_contfrac ( const POLYNOMIAL p,
const interval< rational > &  D 
)
TMPL vector<generic> mmx::solver_univariate_contfrac_approx ( const POLYNOMIAL p)
TMPL vector<generic> mmx::solver_univariate_contfrac_approx_prec ( const POLYNOMIAL p,
const int &  prec 
)
TMPL vector<generic> mmx::solver_univariate_contfrac_prec ( const POLYNOMIAL p,
const int &  prec 
)
TMPL interval<floating<> > mmx::solver_univariate_newton ( const POLYNOMIAL p,
const interval< floating<> > &  I 
)
TMPL vector<generic> mmx::solver_univariate_sleeve ( const POLYNOMIAL p)
template<class C , int R>
void mmx::split ( Interval< C, R > &  l,
Interval< C, R > &  r 
)
template<class T >
scalar< T > mmx::sqrt ( const scalar< T > &  b)
inline
void mmx::SqrtRem ( scalar< MPZ > &  sqrt,
scalar< MPZ > &  rem,
const scalar< MPZ > &  b 
)
inline
template<class C , class V >
polynomial<C,V> mmx::sr_gcd ( const polynomial< C, V > &  p,
const polynomial< C, V > &  q 
)
inline
TMPL void mmx::sub ( POLYNOMIAL r,
const POLYNOMIAL a 
)
inline
TMPL void mmx::sub ( POLYNOMIAL r,
const POLYNOMIAL a,
const POLYNOMIAL b 
)
inline
TMPL void mmx::sub ( POLYNOMIAL r,
const C a,
const POLYNOMIAL b 
)
inline
TMPL void mmx::sub ( POLYNOMIAL r,
const POLYNOMIAL a,
const C b 
)
inline
template<class C , int r>
void mmx::sub ( Interval< C, r > &  a,
const C x 
)
inline
template<class C , int r>
void mmx::sub ( Interval< C, r > &  a,
const Interval< C, r > &  b,
const C x 
)
inline
template<class C , int r>
void mmx::sub ( Interval< C, r > &  a,
const C x,
const Interval< C, r > &  b 
)
inline
template<class C , int r>
void mmx::sub ( Interval< C, r > &  a,
const Interval< C, r > &  x 
)
inline
template<class C , int r>
void mmx::sub ( Interval< C, r > &  a,
const Interval< C, r > &  b,
const Interval< C, r > &  x 
)
inline
double mmx::to_double ( const RR a)
inline
double mmx::to_double ( const QQ a)
inline
double mmx::to_double ( const ZZ z)
inline
double mmx::to_double ( const scalar< MPQ > &  a)
inline
double mmx::to_double ( const scalar< MPZ > &  z)
inline
template<typename FT >
Interval< FT > mmx::to_FIT ( const FT &  a,
const FT &  b 
)
inline
template<typename K >
K::FIT mmx::to_FIT ( const typename K::RT &  a,
const typename K::RT &  b,
const typename K::RT &  c,
const typename K::RT &  d,
const typename K::FT &  B 
)
template<class C >
texp::rationalof<C>::T mmx::to_FT ( const C a,
const C b 
)
QQ mmx::to_FT ( const ZZ a,
const ZZ b = 1 
)
inline
QQ mmx::to_FT ( const QQ a,
const QQ b = 1 
)
inline
template<class C >
meta::rationalof<C>::T mmx::to_rational ( const C a,
const C b 
)
std::string mmx::to_string ( int  x)
inline

to_string convert int to std::string In C++11, it should use std::to_string

std::string mmx::to_string ( double  x)
inline

to_string convert double to std::string In C++11, it should use std::to_string

TMPL std::string mmx::to_string ( const Polynomial mp,
const variables var 
)
std::string mmx::to_string ( const scalar< MPZ > &  b)
inline
std::string mmx::to_string ( const scalar< MPQ > &  b)
inline
template<class C , class E >
std::string mmx::to_string ( const Monomial m,
const variables V 
)
inline
template<class C , class E >
std::string mmx::to_string_pp ( const Monomial m,
const variables V 
)
double mmx::to_XT ( const ZZ a)
inline
double mmx::to_XT ( const QQ a)
inline
double mmx::to_XT ( const RR a)
inline
template<class T , int r>
T mmx::upper ( const Interval< T, r > &  x)
inline
template<typename T >
int mmx::Var ( const T &  v)

Var is computing the number of sign variations from -1 to 1 or 1 to -1.

TMPL vector<int> mmx::vector_from_monomial ( const MONOMIAL m)
template<class T , int r>
T mmx::width ( const Interval< T, r > &  x)
inline
template<class X >
bool mmx::with_plus_sign ( const X x)
inline
template<class C >
bool mmx::with_plus_sign ( const tensor::monomials< C > &  x)
inline
template<class C , int r>
bool mmx::with_plus_sign ( const Interval< C, r > &  I)
inline
bool mmx::with_plus_sign ( const ZZ c)
inline
bool mmx::with_plus_sign ( const QQ c)
inline
bool mmx::with_plus_sign ( const RR c)
inline

Variable Documentation

const C& mmx::b
Initial value:
{
return Interval(a,b)
const C & b
Definition: Interval_glue.hpp:25
#define Interval
Definition: Interval_glue.hpp:8
Examples:
solver_mv_bernstein_proj_test.cpp.
const C & mmx::c
Initial value:
{
return I+ Interval(c,c)
const Interval & I
Definition: Interval_glue.hpp:49
#define Interval
Definition: Interval_glue.hpp:8
const C & c
Definition: Interval_glue.hpp:45
Examples:
polynomial_mv_sparse_test.cpp, solver_uv_all_test.cpp, solver_uv_bernstein_binary_test.cpp, and solver_uv_inewton_test.cpp.
TMPL mmx::DUALPOL
const Interval & mmx::I
Initial value:
{
return Interval(c,c)+I
const Interval & I
Definition: Interval_glue.hpp:49
#define Interval
Definition: Interval_glue.hpp:8
const C & c
Definition: Interval_glue.hpp:45
Examples:
interval_test.cpp, and solver_uv_bernstein_binary_test.cpp.
TMPL mmx::POLYNOMIAL
char * mmx::synaps_inputptr
TMPL mmx::X
Home