include/algebramix/algebraic.hpp File Reference
#include <algebramix/algebraic_extension.hpp>
Go to the source code of this file.
Classes
Namespaces
Defines
- #define TMPL_DEF template<typename C, typename Extension=algebraic_extension<C> >
- #define TMPL template<typename C, typename Extension>
- #define Polynomial polynomial<C>
- #define Algebraic algebraic<C,Extension>
- #define Element typename Extension::El
Functions
- template<typename C , typename Extension > Extension trivial_extension ()
- template<typename C , typename Extension > Extension trivial_extension (const format< C > &fm)
- STYPE_TO_TYPE (template< typename C, typename Extension >, scalar_type, algebraic< C, Extension >, C)
- template<typename C , typename Extension > format< C > CF (const algebraic< C, Extension > &x)
- template<typename C , typename Extension > Extension field (const algebraic< C, Extension > &x)
- template<typename C , typename Extension > Extension::El value (const algebraic< C, Extension > &x)
- template<typename C , typename Extension > polynomial< C > field_modulus (const algebraic< C, Extension > &x)
- template<typename C , typename Extension > nat hash (const algebraic< C, Extension > &x)
- template<typename C , typename Extension > nat exact_hash (const algebraic< C, Extension > &x)
- template<typename C , typename Extension > nat hard_hash (const algebraic< C, Extension > &x)
- template<typename C , typename Extension > bool exact_eq (const algebraic< C, Extension > &x1, const algebraic< C, Extension > &x2)
- template<typename C , typename Extension > bool exact_neq (const algebraic< C, Extension > &x1, const algebraic< C, Extension > &x2)
- template<typename C , typename Extension > bool hard_eq (const algebraic< C, Extension > &x1, const algebraic< C, Extension > &x2)
- template<typename C , typename Extension > bool hard_neq (const algebraic< C, Extension > &x1, const algebraic< C, Extension > &x2)
- template<typename C , typename Extension > bool is_zero (const algebraic< C, Extension > &x)
- template<typename C , typename Extension > int sign (const algebraic< C, Extension > &x)
- template<typename C , typename Extension > bool operator== (const algebraic< C, Extension > &x1, const algebraic< C, Extension > &x2)
- template<typename C , typename Extension > bool operator!= (const algebraic< C, Extension > &x1, const algebraic< C, Extension > &x2)
- EQUAL_INT_SUGAR (template< typename C, typename Extension >, algebraic< C, Extension >)
- EQUAL_SCALAR_SUGAR (template< typename C, typename Extension >, algebraic< C, Extension >, C)
- EQUAL_SCALAR_SUGAR_BIS (template< typename C, typename Extension >, algebraic< C, Extension >, C)
- COMPARE_SUGAR (template< typename C, typename Extension >, algebraic< C, Extension >)
- COMPARE_INT_SUGAR (template< typename C, typename Extension >, algebraic< C, Extension >)
- COMPARE_SCALAR_SUGAR (template< typename C, typename Extension >, algebraic< C, Extension >, C)
- COMPARE_SCALAR_SUGAR_BIS (template< typename C, typename Extension >, algebraic< C, Extension >, C)
- template<typename C , typename Extension > syntactic flatten (const algebraic< C, Extension > &x)
- template<typename C , typename Extension > void upgrade (algebraic< C, Extension > &a1, algebraic< C, Extension > &a2)
- template<typename C , typename Extension > algebraic< C, Extension > lcommon (const algebraic< C, Extension > &a1b, const algebraic< C, Extension > &a2b)
- template<typename C , typename Extension > algebraic< C, Extension > rcommon (const algebraic< C, Extension > &a1b, const algebraic< C, Extension > &a2b)
- template<typename C , typename Extension > polynomial< C > annihilator (const algebraic< C, Extension > &a)
- template<typename C , typename Extension > algebraic< C, Extension > normalize (const algebraic< C, Extension > &a)
- template<typename C , typename Extension > algebraic< C, Extension > operator+ (const algebraic< C, Extension > &x1b, const algebraic< C, Extension > &x2b)
- template<typename C , typename Extension > algebraic< C, Extension > operator+ (const algebraic< C, Extension > &x1, const C &x2)
- template<typename C , typename Extension > algebraic< C, Extension > operator+ (const C &x1, const algebraic< C, Extension > &x2)
- template<typename C , typename Extension > algebraic< C, Extension > operator- (const algebraic< C, Extension > &x)
- template<typename C , typename Extension > algebraic< C, Extension > operator- (const algebraic< C, Extension > &x1b, const algebraic< C, Extension > &x2b)
- template<typename C , typename Extension > algebraic< C, Extension > operator- (const algebraic< C, Extension > &x1, const C &x2)
- template<typename C , typename Extension > algebraic< C, Extension > operator- (const C &x1, const algebraic< C, Extension > &x2)
- template<typename C , typename Extension > algebraic< C, Extension > square (const algebraic< C, Extension > &x1)
- template<typename C , typename Extension > algebraic< C, Extension > operator* (const algebraic< C, Extension > &x1b, const algebraic< C, Extension > &x2b)
- template<typename C , typename Extension > algebraic< C, Extension > operator* (const algebraic< C, Extension > &x1, const C &x2)
- template<typename C , typename Extension > algebraic< C, Extension > operator* (const C &x1, const algebraic< C, Extension > &x2)
- template<typename C , typename Extension > algebraic< C, Extension > invert (const algebraic< C, Extension > &x1)
- template<typename C , typename Extension > algebraic< C, Extension > operator/ (const C &x1, const algebraic< C, Extension > &x2)
- template<typename C , typename Extension > algebraic< C, Extension > operator/ (const algebraic< C, Extension > &x1, const C &x2)
- template<typename C , typename Extension > algebraic< C, Extension > operator/ (const algebraic< C, Extension > &x1b, const algebraic< C, Extension > &x2b)
- ARITH_SCALAR_INT_SUGAR (template< typename C, typename Extension >, algebraic< C, Extension >)
- template<typename C , typename Extension > algebraic< C, Extension > root (const algebraic< C, Extension > &x, const int &p)
- template<typename C , typename Extension > algebraic< C, Extension > sqrt (const algebraic< C, Extension > &x)
Define Documentation
#define Algebraic algebraic<C,Extension> |
Definition at line 20 of file algebraic.hpp.
Referenced by binary_helper< algebraic< C, Extension > >::assemble(), mmx::invert(), mmx::lcommon(), mmx::normalize(), mmx::operator*(), mmx::operator+(), mmx::operator-(), mmx::operator/(), mmx::rcommon(), binary_helper< algebraic< C, Extension > >::read(), mmx::root(), mmx::square(), and mmx::upgrade().
#define Element typename Extension::El |
#define Polynomial polynomial<C> |
Definition at line 19 of file algebraic.hpp.
Referenced by implementation< polynomial_subresultant_base, V, polynomial_gcd_ring_dicho_inc< BV > >::_half_gcd(), implementation< polynomial_evaluate, V, polynomial_dicho< BV > >::_multi_rem(), mmx::annihilator(), implementation< polynomial_evaluate, V, polynomial_naive >::annulator(), implementation< polynomial_evaluate, V, polynomial_dicho< BV > >::annulator(), binary_helper< polynomial< C, V > >::assemble(), mmx::big_add(), mmx::compose(), mmx::decode_kronecker(), implementation< polynomial_subresultant_base, V, polynomial_gcd_ring_ducos_inc< BV > >::defected_prem(), implementation< polynomial_subresultant_base, V, polynomial_gcd_ring_naive_inc< W > >::defected_prem(), root_modular_naive::degree_one_factorization(), mmx::derive(), mmx::dilate(), mmx::div_kronecker(), mmx::encode_kronecker(), implementation< polynomial_evaluate, V, polynomial_dicho< BV > >::evaluate(), mmx::expand(), mmx::extract_mod(), implementation< polynomial_gcd, V, polynomial_ring_naive< W > >::gcd(), implementation< polynomial_gcd, V, polynomial_naive >::gcd(), mmx::gcd(), mmx::graeffe(), implementation< polynomial_subresultant_base, V, polynomial_gcd_ring_dicho_inc< BV > >::half_subresultant(), implementation< polynomial_subresultant_base, V, polynomial_gcd_ring_dicho_inc< BV > >::half_subresultant_rec(), mmx::improve_zero(), inv_mod_polynomial_series_rep< C, U, V, W >::initialize(), mmx::integrate(), implementation< polynomial_evaluate, V, polynomial_naive >::interpolate(), implementation< polynomial_evaluate, V, polynomial_dicho< BV > >::interpolate(), mmx::invert_hi(), mmx::invert_lo(), implementation< polynomial_gcd, X, polynomial_series< BV > >::invert_mod(), implementation< polynomial_gcd, V, polynomial_ring_naive< W > >::invert_mod(), implementation< polynomial_gcd, V, polynomial_naive >::invert_mod(), mmx::is_zero(), mmx::join(), implementation< polynomial_gcd, V, polynomial_ring_naive< W > >::lcm(), implementation< polynomial_gcd, V, polynomial_naive >::lcm(), root_modular_naive::linear_factorization(), root_modular_naive::linear_splitting(), mmx::lshiftz(), mmx::minimal_polynomial_bis(), mmx::mul_kronecker(), modulus_polynomial_mul_power_of_the_variable< X, W >::mul_mod(), modulus_polynomial_mul_preinverse< X, W >::mul_mod(), implementation< polynomial_evaluate, V, polynomial_naive >::multi_rem(), mmx::normalize(), mmx::operator*(), mmx::operator+(), mmx::operator-(), mmx::operator/(), mmx::pade(), root_modular_naive::pow_mod(), mmx::pquo(), mmx::prem(), mmx::primitive_part(), mmx::q_difference(), mmx::quo(), mmx::range(), binary_helper< polynomial< C, V > >::read(), implementation< polynomial_gcd, V, polynomial_ring_naive< W > >::reconstruct(), implementation< polynomial_gcd, V, polynomial_naive >::reconstruct(), mmx::reconstruct(), modulus_polynomial_reduction_preinverse< X >::reduce_mod(), mmx::rem(), mmx::resultant(), mmx::reverse(), mmx::root(), root_modular_naive::roots(), mmx::shift(), mmx::sign(), mmx::skew_div(), mmx::square(), mmx::square_kronecker(), implementation< polynomial_subresultant_base, V, polynomial_ring_naive< W > >::subresultant(), mmx::subresultant(), implementation< polynomial_subresultant_base, V, polynomial_gcd_ring_dicho_inc< BV > >::subresultant_compose(), implementation< polynomial_subresultant_base, V, polynomial_gcd_ring_ducos_inc< BV > >::subresultant_sequence(), implementation< polynomial_subresultant_base, V, polynomial_gcd_ring_naive_inc< W > >::subresultant_sequence(), implementation< polynomial_subresultant_base, V, polynomial_ring_naive< W > >::subresultant_sequence(), implementation< polynomial_subresultant_base, V, polynomial_naive >::subresultant_sequence(), mmx::subresultants(), implementation< polynomial_evaluate, V, polynomial_naive >::tevaluate(), implementation< polynomial_evaluate, V, polynomial_dicho< BV > >::tevaluate(), mmx::tevaluate_bis(), implementation< polynomial_evaluate, V, polynomial_dicho< BV > >::tinterpolate(), mmx::tmul(), mmx::tquo(), mmx::trem(), mmx::truncate(), fast_helper< polynomial< C, V > >::uu(), and mmx::xderive().
#define TMPL template<typename C, typename Extension> |
#define TMPL_DEF template<typename C, typename Extension=algebraic_extension<C> > |