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

◆ rawDisplayMatrixStream()

void rawDisplayMatrixStream ( const Matrix * inputMatrix)

Definition at line 698 of file groebner.cpp.

699{
700 const Ring *R = inputMatrix->get_ring();
701 const PolyRing *P = R->cast_to_PolyRing();
702 if (P == nullptr)
703 {
704 ERROR("expected a polynomial ring");
705 return;
706 }
707 if (P->characteristic() > std::numeric_limits<int>::max())
708 {
709 ERROR("characteristic is too large for mathic gb computation");
710 return;
711 }
712 int charac = static_cast<int>(P->characteristic());
713 int nvars = P->n_vars();
714
715 mgb::GroebnerConfiguration configuration(
716 charac, nvars, inputMatrix->n_rows());
717 mgb::GroebnerInputIdealStream input(configuration);
718
719 std::ostringstream computedStr;
720 mgb::IdealStreamLog<> computed(
721 computedStr, charac, nvars, inputMatrix->n_rows());
722 mgb::IdealStreamChecker<decltype(computed)> checked(computed);
723
724 matrixToStream(inputMatrix, checked);
725
726 std::cout << "result: " << std::endl;
727 std::cout << computedStr.str() << std::endl;
728}
const Ring * get_ring() const
Definition matrix.hpp:134
int n_rows() const
Definition matrix.hpp:146
Concrete PolyRingFlat subclass implementing ordinary commutative polynomial rings K[x_1,...
Definition poly.hpp:64
int n_vars() const
Definition polyring.hpp:196
virtual const PolyRing * cast_to_PolyRing() const
Definition ring.hpp:245
long characteristic() const
Definition ring.hpp:159
xxx xxx xxx
Definition ring.hpp:102
const int ERROR
Definition m2-mem.cpp:55
void matrixToStream(const Matrix *M, T &stream)

References Ring::cast_to_PolyRing(), Ring::characteristic(), ERROR, Matrix::get_ring(), Matrix, matrixToStream(), Matrix::n_rows(), PolynomialRing::n_vars(), RingMap::nvars, RingMap::P, and RingMap::R.