Macaulay2 Engine
Loading...
Searching...
No Matches

◆ initialize_frac()

bool FractionField::initialize_frac ( const PolyRingFlat * R)
protected

Definition at line 27 of file frac.cpp.

28{
31
32 R_ = R;
33
34 zeroV = from_long(0);
35 oneV = from_long(1);
37
38 if (R->n_quotients() > 0 ||
40 ->cast_to_FractionField() // disallowed in x-relem.cpp
41 ||
43 0) // disallowed in x-relem.cpp
44 use_gcd_simplify = false;
45 else
46 use_gcd_simplify = true;
47#ifdef DEVELOPMENT
48#warning "frac simplify: doesn't handle towers of fracs"
49#endif
50
52 return true;
53}
bool use_gcd_simplify
Definition frac.hpp:64
const PolyRingFlat * R_
Definition frac.hpp:63
virtual ring_elem from_long(long n) const
Definition frac.cpp:252
int numNonTermOrderVariables() const
Definition monoid.hpp:190
int n_quotients() const
Definition polyring.hpp:219
virtual const Monoid * getMonoid() const
Definition polyring.hpp:282
virtual const Ring * getCoefficients() const
Definition polyring.hpp:277
ring_elem minus_oneV
Definition ring.hpp:131
void initialize_ring(long charac, const PolynomialRing *DR=nullptr, const std::vector< int > &heft_vec={})
Definition ring.cpp:30
long characteristic() const
Definition ring.hpp:159
ring_elem oneV
Definition ring.hpp:130
bool declare_field()
Definition ring.cpp:69
const PolynomialRing * get_degree_ring() const
Definition ring.hpp:161
virtual const FractionField * cast_to_FractionField() const
Definition ring.hpp:251
const std::vector< int > & get_heft_vector() const
Definition ring.hpp:162
ring_elem zeroV
Definition ring.hpp:129

References Ring::cast_to_FractionField(), Ring::characteristic(), Ring::declare_field(), from_long(), Ring::get_degree_ring(), Ring::get_heft_vector(), PolynomialRing::getCoefficients(), PolynomialRing::getMonoid(), Ring::initialize_ring(), Ring::minus_oneV, PolynomialRing::n_quotients(), Monoid::numNonTermOrderVariables(), Ring::oneV, R_, use_gcd_simplify, and Ring::zeroV.