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

◆ handle_pair()

void res_comp::handle_pair ( res_pair * p)
private

Definition at line 1075 of file res-a1.cpp.

1076{
1077 if (p->syz_type == SYZ_NOT_NEEDED) return;
1078
1079 resterm *f = s_pair(p);
1080 res_pair *q;
1081 if (n_level == 2)
1082 q = reduce_level_one(f, p->syz, p->pivot_term);
1083 else
1084 q = reduce(f, p->syz, p->pivot_term);
1085
1086 if (f == nullptr)
1087 {
1088 // minimal syzygy
1089 p->syz_type = SYZ_MINIMAL;
1090 p->minimal_me = resn[n_level]->nminimal++;
1091 nminimal++;
1092 if (M2_gbTrace >= 2) emit_wrapped("z");
1093 }
1094 else
1095 {
1096 R->make_monic(f);
1097 p->syz_type = SYZ_NOT_MINIMAL;
1098
1099 // non-minimal syzygy
1100 q->syz = f;
1102 if (M2_gbTrace >= 2) emit_wrapped("m");
1103 // MES: need to decrement nleft for 'q'.
1104 }
1105}
resterm * s_pair(res_pair *fsyz) const
Definition res-a1.cpp:722
int n_level
Definition res-a1.hpp:88
res_pair * reduce_level_one(resterm *&f, resterm *&fsyz, resterm *&pivot)
Definition res-a1.cpp:795
res_poly * R
Definition res-a1.hpp:79
int nminimal
Definition res-a1.hpp:111
res_pair * reduce(resterm *&f, resterm *&fsyz, resterm *&pivot)
Definition res-a1.cpp:743
resterm * syz
int p
int M2_gbTrace
Definition m2-types.cpp:52
@ SYZ_NOT_MINIMAL
@ SYZ_NOT_NEEDED
@ SYZ_MINIMAL
void emit_wrapped(const char *s)
Definition text-io.cpp:27

References emit_wrapped(), M2_gbTrace, n_level, nminimal, p, R, reduce(), reduce_level_one(), s_pair(), res_pair::syz, SYZ_MINIMAL, SYZ_NOT_MINIMAL, SYZ_NOT_NEEDED, and res_pair::syz_type.

Referenced by reductions().