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

◆ mult_vec() [1/2]

vec Ring::mult_vec ( const ring_elem f,
const vec w ) const

Definition at line 222 of file ring-vecs.cpp.

223{
224 if (is_zero(f)) return nullptr;
225 vecterm head;
226 vec result = &head;
227 for (vec v = w; v != nullptr; v = v->next)
228 {
229 ring_elem a = mult(f, v->coeff);
230 if (!is_zero(a))
231 {
232 vec t = make_vec(v->comp, a);
233 result->next = t;
234 result = t;
235 }
236 }
237 result->next = nullptr;
238 return head.next;
239}
vec make_vec(int r, ring_elem a) const
Definition ring-vecs.cpp:60
virtual bool is_zero(const ring_elem f) const =0
virtual ring_elem mult(const ring_elem f, const ring_elem g) const =0
VALGRIND_MAKE_MEM_DEFINED & result(result)

References is_zero(), make_vec(), mult(), vec::next, and result().