Singular Manual: coef

  | ### 5.1.11 coef `Syntax:` `coef (` poly_expression`,` product_of_ringvars `)` `coef (` ideal_expression`,` product_of_ringvars `)` `Type:` matrix `Syntax:` `coef (` vector_expression`,` product_of_ringvars`,` matrix_name`,` matrix_name `)` `Type:` none `Purpose:` determines the monomials in f divisible by a ring variable of m (where f is the first argument and m the second argument) and the coefficients of these monomials as polynomials in the remaining variables. First case: returns a matrix M, n being the number of the determined monomials. The first row consists of these monomials, the second row of the corresponding coefficients of the monomials in f. Thus, Second case: apply to all generators of the ideal and combine the results into one matrix. Third case: the second matrix (i.e., the 4th argument) contains the monomials, the first matrix (i.e., the 3rd argument) the corresponding coefficients of the monomials in the vector. `Note:` coef considers only monomials which really occur in f (i.e., which are not 0), while coeffs (see coeffs) returns the coefficient 0 at the appropriate place if a monomial is not present. `Example:`
        ring r=32003,(x,y,z),dp;
        poly f=x5+5x4y+10x2y3+y5;
        matrix m=coef(f,y);
        print(m);
      ==> y5,y3,  y,  1,
      ==> 1, 10x2,5x4,x5
        f=x20+xyz+xy+x2y+z3;
        print(coef(f,xy));
      ==> x20,x2y,xy, 1,
      ==> 1,  1,  z+1,z3
        print(coef(maxideal(3),yz));
      ==> y3,y2z,yz2,z3,y2,yz,z2,y, z, 1,
      ==> 0, 0,  0,  1, 0, 0, 0, 0, 0, 0,
      ==> 0, 0,  1,  0, 0, 0, 0, 0, 0, 0,
      ==> 0, 1,  0,  0, 0, 0, 0, 0, 0, 0,
      ==> 1, 0,  0,  0, 0, 0, 0, 0, 0, 0,
      ==> 0, 0,  0,  0, 0, 0, x, 0, 0, 0,
      ==> 0, 0,  0,  0, 0, x, 0, 0, 0, 0,
      ==> 0, 0,  0,  0, x, 0, 0, 0, 0, 0,
      ==> 0, 0,  0,  0, 0, 0, 0, 0, x2,0,
      ==> 0, 0,  0,  0, 0, 0, 0, x2,0, 0,
      ==> 0, 0,  0,  0, 0, 0, 0, 0, 0, x3
        vector v=[f,zy+77+xy];
        print(v);
      ==> [x20+x2y+xyz+z3+xy,xy+yz+77]
        matrix mc; matrix mm;
        coef(v,y,mc,mm);
        print(mc);
      ==> x2+xz+x,x20+z3,
      ==> x+z,    77
        print(mm);
      ==> y,1,
      ==> y,1
See coeffs.

User manual for Singular version 4-1-3, 2020, generated by texi2html.