Home Online Manual
Top
Back: cimonom_lib
Forward: MinMult
FastBack:
FastForward:
Up: cimonom_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

D.15.3.1 BelongSemig

Procedure from library cimonom.lib (see cimonom_lib).

Usage:
BelongSemig (n,v[,sup]); n bigint, v and sup intvec

Return:
In the default form, it returns 1 if n is in the semigroup generated by the elements of v or 0 otherwise. If the argument sup is added and in case n belongs to the semigroup generated by the elements of v, it returns a monomial in the variables {x(i) | i in sup} of degree n if we set deg(x(sup[j])) = v[j].

Assume:
v and sup positive integer vectors of same size, sup has no repeated entries, x(i) has to be an indeterminate in the current ring for all i in sup.

Example:
 
LIB "cimonom.lib";
ring r=0,x(1..5),dp;
int a = 125;
intvec v = 13,17,51;
intvec sup = 2,4,1;
BelongSemig(a,v,sup);
==> x(2)^7*x(4)^2
BelongSemig(a,v);
==> 1