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

◆ rawIdealOfPoints()

M2_bool rawIdealOfPoints ( const Ring * R,
const MutableMatrix * Pts,
Matrix ** result_GB,
Matrix ** result_std_monoms )

Definition at line 13 of file points.cpp.

17{
18 // Branch depending on the type of K, the ring of Pts.
19 // If Pts is not a DMatrix, make it one.
20
21 // First: check that coeff ring of R is the same as ring of Pts
22
23 // Now branch depending on this type
24 const Ring *K = Pts->get_ring();
26 if (P == 0 || K != P->getCoefficients())
27 {
28 ERROR("expected polynomial ring with same coefficient ring");
29 return false;
30 }
31 const Z_mod *KZZp = K->cast_to_Z_mod();
32 if (KZZp != 0)
33 {
34 DMat<M2::ARingZZp> *Pts1 = 0;
36 P, KZZp, Pts1, *result_std_monoms);
37 return true;
38 }
39
40 ERROR("not implemented yet");
41 return false;
42}
Definition dmat.hpp:62
virtual const Ring * get_ring() const =0
static Matrix * points(const PolynomialRing *R, const typename CoeffRing::ring_type *K, const DMat< CoeffRing > *Pts, Matrix *&result_std_monoms)
Definition points.cpp:54
virtual const Ring * getCoefficients() const
Definition polyring.hpp:277
Abstract base for the engine's polynomial-ring hierarchy.
Definition polyring.hpp:96
virtual const PolynomialRing * cast_to_PolynomialRing() const
Definition ring.hpp:243
virtual const Z_mod * cast_to_Z_mod() const
Definition ring.hpp:237
xxx xxx xxx
Definition ring.hpp:102
Engine-side Z/p ring for small primes (p < 32767), using a discrete-log (Zech) representation.
Definition ZZp.hpp:63
const int ERROR
Definition m2-mem.cpp:55

References Ring::cast_to_PolynomialRing(), Ring::cast_to_Z_mod(), ERROR, MutableMatrix::get_ring(), PolynomialRing::getCoefficients(), Matrix, and PointsComputation< CoeffRing >::points().