Macaulay2 Engine
Loading...
Searching...
No Matches
res-f4-m2-interface.hpp File Reference

Conversion layer between engine Matrix / vec types and the F4-resolution internal types. More...

#include "ringelem.hpp"
#include <utility>

Go to the source code of this file.

Classes

class  ResF4toM2Interface
 Static-method namespace bridging engine Matrix / vec values and the resolution engine's ResPolynomial representation. More...

Detailed Description

Conversion layer between engine Matrix / vec types and the F4-resolution internal types.

Note
AI-generated documentation. Verify against the source before relying on it.

Declares ResF4toM2Interface, a static-only helper class that crosses the boundary between the user-facing Matrix / vec / FreeModule / PolynomialRing vocabulary and the resolution-tuned ResPolynomial / ResPolyRing / SchreyerFrame vocabulary. from_M2_vec translates an input vec (sparse (component, coeff) list over the M2 ring) into a ResPolynomial; to_M2_vec, to_M2_freemodule, to_M2_matrix, and the two to_M2_MutableMatrix variants walk back, including a variant that returns a dense matrix over a ZZ/p coefficient ring for a specific (level, degree) Macaulay submatrix. setDegreeZeroMap extracts the degree-zero part of a level for the minimal-Betti accelerator.

F4ResComputation translates inputs once at startup and outputs once on demand, so the conversion cost lives entirely at the boundaries and never inside the inner reduction loop. Counterpart to f4/f4-m2-interface.hpp on the GB side.

See also
res-poly-ring.hpp
res-schreyer-frame.hpp
res-f4-computation.hpp
f4/f4-m2-interface.hpp

Definition in file res-f4-m2-interface.hpp.