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

◆ new_gen()

gbA::spair * gbA::new_gen ( int i,
gbvector * f,
ring_elem denom )
private

Definition at line 226 of file gb-default.cpp.

227{
228 gbvector *fsyz;
229
230 if (i < n_rows_per_syz)
231 fsyz = R->gbvector_term(_Fsyz, denom, i + 1);
232 else
233 fsyz = R->gbvector_zero();
234
235 if (R->gbvector_is_zero(f))
236 {
237 originalR->get_quotient_info()->gbvector_normal_form(_Fsyz, fsyz);
238 if (!R->gbvector_is_zero(fsyz))
239 {
240 // vec fsyzvec = _GR->gbvector_to_vec(_Fsyz,fsyz);
241 collect_syzygy(fsyz);
242 }
243 return nullptr;
244 }
245
246 POLY g;
247 g.f = f;
248 g.fsyz = fsyz;
249
250 return spair_make_gen(g);
251}
GBRing * R
const PolynomialRing * originalR
spair * spair_make_gen(POLY f)
const FreeModule * _Fsyz
int n_rows_per_syz
void collect_syzygy(gbvector *fsyz)
#define POLY(q)
Definition poly.cpp:23
gbvector * fsyz
Definition gbring.hpp:99
gbvector * f
Definition gbring.hpp:98

References _Fsyz, collect_syzygy(), POLY::f, POLY::fsyz, n_rows_per_syz, originalR, POLY, R, and spair_make_gen().

Referenced by initialize().