Macaulay2 Engine
Loading...
Searching...
No Matches
ResTest.cpp File Reference

gtest coverage for ResMonoidDense — the dense-exponent monoid used by the F4 resolution. More...

#include <cstdio>
#include <string>
#include <iostream>
#include <memory>
#include <gtest/gtest.h>
#include "schreyer-resolution/res-moninfo.hpp"

Go to the source code of this file.

Functions

 TEST (ResMonoidDense, create)
 TEST (ResMonoidDense, encodeDecode)
 TEST (ResMonoidSparse, encodeDecode)
 TEST (ResMonoidDense, mult)
 TEST (ResMonoidSparse, mult)
 TEST (ResMonoidDense, encode5)
 TEST (ResMonoidDense, encode6)
 TEST (ResMonoidDense, concatenateResMonoidDense)
 TEST (ResMonoidDense, outOfRange)
 TEST (ResMonoidDense, encodeBoundary)

Detailed Description

gtest coverage for ResMonoidDense — the dense-exponent monoid used by the F4 resolution.

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

Hosts TEST(ResMonoidDense, create) and TEST(ResMonoidDense, encodeDecode), which build ResMonoidDense instances under different weight, heft, and ordering combinations (GRevLex, Weights, Lex) and assert construction, variable counts, monomial encoding / decoding via from_expvector / to_expvector, multiplication via mult, and the per-ordering compare semantics behave correctly. The pre-allocated std::vector<res_monomial_word> storage pattern used in the tests matches the round-trip surface ResPolyRing and SchreyerFrame consume.

End-to-end resolution coverage lives in the M2-level test suite; this file intentionally pins down only the monoid building block so a regression in ResMonoidDense surfaces here instead of as a cryptic miscompare three layers up.

See also
schreyer-resolution/res-moninfo.hpp
schreyer-resolution/res-moninfo-dense.hpp
schreyer-resolution/res-poly-ring.hpp
MonoidTest.cpp

Definition in file ResTest.cpp.