#### D.10.1.6 AGcode_L

Procedure from library `brnoeth.lib` (see brnoeth_lib).

Usage:
  AGcode_L( G, D, EC ); G,D intvec, EC a list

Return:
  a generator matrix for the evaluation AG code defined by the divisors G and D.

Note:
  The procedure must be called within the ring EC[1][4], where EC is the output of `extcurve(d)` (or within the ring EC[1][2] if d=1).
  The entry i in the intvec D refers to the i-th rational place in EC[1][5] (i.e., to POINTS[i], etc., see extcurve).
  The intvec G represents a rational divisor (see BrillNoether for more details).
  The code evaluates the vector space basis of L(G) at the rational places given by D.

Warnings:
  G should satisfy , which is not checked by the algorithm.
  G and D should have disjoint supports (checked by the algorithm).

Example:

    LIB "brnoeth.lib";
    int plevel=printlevel;
    printlevel=-1;
    ring s=2,(x,y),lp;
    list HC=Adj_div(x3+y2+y);
    ==> The genus of the curve is 1
    HC=NSplaces(1..2,HC);
    HC=extcurve(2,HC);
    ==> Total number of rational places : NrRatPl = 9
    def ER=HC[1][4];
    setring ER;
    intvec G=5;      // the rational divisor G = 5*HC[3][1]
    intvec D=2..9;   // D = sum of the rational places no. 2..9 over F_4
    // let us construct the corresponding evaluation AG code :
    matrix C=AGcode_L(G,D,HC);
    ==> Vector basis successfully computed
    // here is a linear code of type [8,5,>=3] over F_4
    print(C);
    ==> 0,0,1,  1,    (a),  (a+1),(a+1),(a),
    ==> 0,1,(a),(a+1),(a),  (a+1),(a),  (a+1),
    ==> 1,1,1,  1,    1,    1,    1,    1,
    ==> 0,0,1,  1,    (a+1),(a),  (a),  (a+1),
    ==> 0,0,(a),(a+1),(a+1),(a),  1,    1
    printlevel=plevel;

See also: AGcode_Omega; Adj_div; BrillNoether; extcurve.

User manual for Singular version 4.4.1, 2025, generated by texi2html.