|
Macaulay2 Engine
|
res2_comp — original (1996) free-resolution engine using explicit pair processing. More...
#include "style.hpp"#include "matrix.hpp"#include "monideal.hpp"#include "poly.hpp"#include "comp-res.hpp"#include "res-a0-poly.hpp"Go to the source code of this file.
Classes | |
| struct | auto_reduce_node |
| struct | res2_level |
| class | res2_comp |
| One of the Resolution computations, based on Schreyer and Lascala. More... | |
Enumerations | |
| enum | { RES_SKELETON , RES_MONORDER , RES_MONIDEAL , RES_REDUCTIONS , RES_DONE , RES_COMPLETE } |
Variables | |
| const int | FLAGS_SORT = 7 |
| const int | FLAGS_DESCEND = 8 |
| const int | FLAGS_REVERSE = 16 |
| const int | FLAGS_DEGREE = 32 |
| const int | FLAGS_LEVEL = (1 << 13) |
| const int | FLAGS_AUTO = (3 << 14) |
| const int | SHIFT_AUTO = 14 |
| const int | FLAGS_GEO = (1 << 16) |
| const int | FLAGS_DEGREELEVEL = (1 << 17) |
| const int | FLAGS_LEVEL_STRIP |
| const int | SORT_SKELETON = 1 |
| const int | SORT_MONORDER = 2 |
| const int | SORT_REDUCTIONS = 3 |
| const int | COMPARE_LEX = 0 |
| const int | COMPARE_LEX_EXTENDED = 1 |
| const int | COMPARE_LEX_EXTENDED2 = 2 |
| const int | COMPARE_ORDER = 3 |
| const int | COMPARE_MONORDER = 4 |
| const int | COMPUTE_SKELETON = 0 |
| const int | COMPUTE_MONORDER = 1 |
| const int | COMPUTE_MONOMIAL_RES = 2 |
| const int | COMPUTE_RES = 3 |
res2_comp — original (1996) free-resolution engine using explicit pair processing.
Declares res2_comp, the engine's first-generation resolution computation. The class drives a traditional Schreyer-style algorithm with its own polynomial type (res2_poly from res-a0-poly.hpp) and intrusive pair records (res2_pair), stepping through the RES_SKELETON / RES_MONORDER / RES_MONIDEAL / ... states declared at the top of the header. The _2 suffix in the type names is a historical naming quirk — this is actually the oldest of the three legacy engines, but its class names ended up with the suffix because res_comp (in res-a1.hpp) was the first to be touched in a later rework.
Selected by M2 strategies 0 and 1 via the dispatcher in comp-res.hpp. Kept alongside res-a1.hpp, res-a2.hpp, and the modern Schreyer-frame F4 engine in schreyer-resolution/ so each strategy covers the cases the others do not.
Definition in file res-a0.hpp.