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

◆ betti_nmonoms()

M2_arrayint res2_comp::betti_nmonoms ( ) const

Definition at line 1877 of file res-a0.cpp.

1878{
1879 int lo = lodegree;
1880 int hi = lo + hidegree;
1881 int len = resn.size() - 1;
1882 int *bettis;
1883 betti_init(lo, hi, len, bettis);
1884 for (int lev = 0; lev <= len; lev++)
1885 {
1886 for (res2_pair *p = resn[lev]->pairs; p != nullptr; p = p->next)
1887 {
1888 int d = p->degree;
1889 bettis[lev + (len + 1) * d] += R->n_terms(p->syz);
1890 }
1891 }
1892 M2_arrayint result = betti_make(lo, hi, len, bettis);
1893 freemem(bettis);
1894 return result;
1895}
static void betti_init(int lo, int hi, int len, int *&bettis)
Definition comp-res.cpp:151
static M2_arrayint betti_make(int lo, int hi, int len, int *bettis)
Definition comp-res.cpp:157
int hidegree
Definition res-a0.hpp:138
res2_poly * R
Definition res-a0.hpp:123
int lodegree
Definition res-a0.hpp:137
int p
void freemem(void *s)
Definition m2-mem.cpp:103
VALGRIND_MAKE_MEM_DEFINED & result(result)

References ResolutionComputation::betti_init(), ResolutionComputation::betti_make(), freemem(), hidegree, lodegree, p, R, and result().

Referenced by get_betti(), and text_out().