|
7.7.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.7.4.0. annfs | | compute Ann F^s0 in D and Bernstein polynomial for a poly F |
7.7.4.0. annfspecial | | compute Ann F^n from Ann F^s for a polynomial F and a number n |
7.7.4.0. Sannfs | | compute Ann F^s in D[s] for a polynomial F |
7.7.4.0. Sannfslog | | compute Ann^(1) F^s in D[s] for a polynomial F |
7.7.4.0. bernsteinBM | | compute global Bernstein polynomial for a polynomial F (algorithm of Briancon-Maisonobe) |
7.7.4.0. bernsteinLift | | compute a possible multiple of Bernstein polynomial via lift-like procedure |
7.7.4.0. operatorBM | | compute Ann F^s, Ann F^s0, BS and PS for a polynomial F (algorithm of Briancon-Maisonobe) |
7.7.4.0. operatorModulo | | compute PS via the modulo approach |
7.7.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.7.4.0. annfsBMI | | compute Ann F^s and Bernstein ideal for a polynomial F=f1*..*fP (multivariate algorithm of Briancon-Maisonobe) |
7.7.4.0. checkRoot | | check if a given rational is a root of the global Bernstein polynomial of F and compute its multiplicity |
7.7.4.0. SannfsBFCT | | compute Ann F^s in D[s] for a polynomial F (algorithm of Briancon-Maisonobe, other output ordering) |
7.7.4.0. annfs0 | | compute Ann F^s0 in D and Bernstein polynomial from the known Ann F^s in D[s] |
7.7.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.7.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.7.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.7.4.0. arrange | | create a poly, describing a full hyperplane arrangement |
7.7.4.0. reiffen | | create a poly, describing a Reiffen curve |
7.7.4.0. isHolonomic | | check whether a module is holonomic |
7.7.4.0. convloc | | replace global orderings with local in the ringlist L |
7.7.4.0. minIntRoot | | minimal integer root among the roots of a maximal ideal P |
7.7.4.0. isRational | | check whether n is a rational number |
See also:
bfun_lib;
dmodapp_lib;
dmodvar_lib;
gmssing_lib.
|