### 7.5.4 dmod_lib

Library:
  dmod.lib
Purpose:
  Algorithms for algebraic D-modules
Authors:
  Viktor Levandovskyy, levandov@math.rwth-aachen.de
  Jorge Martin Morales, jorge@unizar.es

Overview:
  Let K be a field of characteristic 0. Given a polynomial ring
  R = K[x_1,...,x_n] and a polynomial F in R,
  one is interested in the R[1/F]-module of rank one, generated by
  the symbol F^s for a symbolic discrete variable s.
  In fact, the module R[1/F]*F^s has a structure of a D(R)[s]-module, where D(R)
  is an n-th Weyl algebra K<x_1,...,x_n,d_1,...,d_n | d_j x_j = x_j d_j +1> and
  D(R)[s] = D(R) tensored with K[s] over K.
  Constructively, one needs to find a left ideal I = I(F^s) in D(R), such
  that K[x_1,...,x_n,1/F]*F^s is isomorphic to D(R)/I as a D(R)-module.
  We often write just D for D(R) and D[s] for D(R)[s].
  One is interested in the following data:
  - Ann F^s = I = I(F^s) in D(R)[s], denoted by LD in the output
  - global Bernstein polynomial in K[s], denoted by bs,
  - its minimal integer root s0, the list of all roots of bs, which are known
  to be rational, with their multiplicities, which is denoted by BS
  - Ann F^s0 = I(F^s0) in D(R), denoted by LD0 in the output
  (LD0 is a holonomic ideal in D(R))
  - Ann^(1) F^s in D(R)[s], denoted by LD1 (logarithmic derivations)
  - an operator in D(R)[s], denoted by PS, such that the functional equality
  PS*F^(s+1) = bs*F^s holds in K[x_1,...,x_n,1/F]*F^s.

References:
  We provide the following implementations of algorithms:
  (OT) the classical Ann F^s algorithm from Oaku and Takayama (Journal of
  Pure and Applied Math., 1999),
  (LOT) Levandovskyy's modification of the Oaku-Takayama algorithm (ISSAC 2007)
  (BM) the Ann F^s algorithm by Briancon and Maisonobe (Remarques sur
  l'ideal de Bernstein associe a des polynomes, preprint, 2002)
  (LM08) V. Levandovskyy and J. Martin-Morales, ISSAC 2008
  (C) Countinho, A Primer of Algebraic D-Modules,
  (SST) Saito, Sturmfels, Takayama 'Groebner Deformations of Hypergeometric
  Differential Equations', Springer, 2000

  Guide:
  - Ann F^s = I(F^s) = LD in D(R)[s] can be computed by Sannfs [BM, OT, LOT]
  - Ann^(1) F^s in D(R)[s] can be computed by Sannfslog
  - global Bernstein polynomial bs in K[s] can be computed by bernsteinBM
  - Ann F^s0 = I(F^s0) = LD0 in D(R) can be computed by annfs0, annfs, annfsBM,
  annfsOT, annfsLOT, annfs2, annfsRB etc.
  - all the relevant data to F^s (LD, LD0, bs, PS) are computed by operatorBM
  - operator PS can be computed via operatorModulo or operatorBM
  - annihilator of F^{s1} for a number s1 is computed with annfspecial
  - annihilator of F_1^s_1 * ... * F_p^s_p is computed with annfsBMI
  - computing the multiplicity of a rational number r in the Bernstein poly
  of a given ideal goes with checkRoot
  - check, whether a given univariate polynomial divides the Bernstein poly
  goes with checkFactor

Procedures:

> 7.5.4.0. annfs |  | compute Ann F^s0 in D and Bernstein polynomial for a poly F
> 7.5.4.0. annfspecial |  | compute Ann F^n for a given polynomial F and a number n
> 7.5.4.0. annfspecialOld |  | compute Ann F^n from I=Ann F^s for a polynomial F and a number n
> 7.5.4.0. Sannfs |  | compute Ann F^s in D[s] for a polynomial F
> 7.5.4.0. Sannfslog |  | compute Ann^(1) F^s in D[s] for a polynomial F
> 7.5.4.0. bernsteinBM |  | compute global Bernstein polynomial for a polynomial F (algorithm of Briancon-Maisonobe)
> 7.5.4.0. bernsteinLift |  | compute a possible multiple of Bernstein polynomial via lift-like procedure
> 7.5.4.0. operatorBM |  | compute Ann F^s, Ann F^s0, BS and PS for a polynomial F (algorithm of Briancon-Maisonobe)
> 7.5.4.0. operatorModulo |  | compute PS via the modulo approach
> 7.5.4.0. annfsParamBM |  | compute the generic Ann F^s (algorithm by Briancon and Maisonobe) and exceptional parametric constellations for a polynomial F with parametric coefficients
> 7.5.4.0. annfsBMI |  | compute Ann F^s and Bernstein ideal for a polynomial F=f1*..*fP (multivariate algorithm of Briancon-Maisonobe)
> 7.5.4.0. checkRoot |  | check if a given rational is a root of the global Bernstein polynomial of F and compute its multiplicity
> 7.5.4.0. SannfsBFCT |  | compute Ann F^s in D[s] for a polynomial F (algorithm of Briancon-Maisonobe, other output ordering)
> 7.5.4.0. annfs0 |  | compute Ann F^s0 in D and Bernstein polynomial from the known Ann F^s in D[s]
> 7.5.4.0. annfs2 |  | compute Ann F^s0 in D and Bernstein polynomial from the known Ann F^s in D[s] by using a trick of Noro
> 7.5.4.0. annfsRB |  | compute Ann F^s0 in D and Bernstein polynomial from the known Ann F^s in D[s] by using Jacobian ideal
> 7.5.4.0. checkFactor |  | check whether a polynomial q in K[s] is a factor of the global Bernstein polynomial of F from the known Ann F^s in D[s]
> 7.5.4.0. arrange |  | create a poly, describing a full hyperplane arrangement
> 7.5.4.0. reiffen |  | create a poly, describing a Reiffen curve
> 7.5.4.0. isHolonomic |  | check whether a module is holonomic
> 7.5.4.0. convloc |  | replace global orderings with local in the ringlist L
> 7.5.4.0. minIntRoot |  | minimal integer root among the roots of a maximal ideal P
> 7.5.4.0. isRational |  | check whether n is a rational number

See also: bfun_lib; dmodapp_lib; dmodvar_lib; gmssing_lib.

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