Overconvergent module of distributions

Initialize self. See help(type(self)) for accurate signature.

class darmonpoints.ocmodule.AddMeromorphicFunctions(K, twisting_matrix=None)[source]

Bases: Parent, CachedRepresentation

TESTS:

sage: from darmonpoints.ocmodule import AddMeromorphicFunctions sage: from darmonpoints.homology import Divisors sage: from darmonpoints.sarithgroup import BigArithGroup sage: padic_printing.mode(‘val-unit’) sage: K.<a> = Qq(7^2,5) sage: G = BigArithGroup(7,1,1,use_shapiro=False, outfile=’/dev/null’) sage: M = AddMeromorphicFunctions(K) sage: Div = Divisors(K) sage: D = Div(a/7) - Div((a+1)/7) sage: f = M(D) sage: f.power_series() 7 * (1205 + 401*a) + O(7^5) + (7^2 * (59 + 229*a) + O(7^5))*t + (7^3 * (23 + 13*a) + O(7^5))*t^2 + (7^4 * (6 + 2*a) + O(7^5))*t^3 + O(7^5)*t^4 sage: E = Div((a+3)) - Div((a+2)) sage: f(E).log(0) == D.pair_with(E) True sage: g = G.Gpn.gen(1).quaternion_rep sage: M(g * D)(E) == (g * f)(E) True sage: M = AddMeromorphicFunctions(K, twisting_matrix = G.wp()) sage: Div = Divisors(K) sage: D = Div(a) - Div((a+1)) sage: f = M(D) sage: f.power_series() 7 * 2400 + O(7^5) + (7^2 * (1 + 2*a) + O(7^5))*t + (7^3 * (8 + 15*a) + O(7^5))*t^2 + (7^4 * (6 + 2*a) + O(7^5))*t^3 + O(7^5)*t^4 sage: E = Div((a+3)/7) - Div((a+2)/7) sage: f(E).log(0) == D.pair_with(E) True sage: g = G.Gpn.gen(1).quaternion_rep sage: A = M(g * D)(E) sage: B = (g * f)(E) sage: A == B True

Element

alias of AddMeromorphicFunctionsElement

acting_matrix(g, dim=None)[source]
base_ring()[source]
get_action_data(g, K=None)[source]
is_additive()[source]
power_series_ring()[source]
twisting_matrix()[source]
class darmonpoints.ocmodule.AddMeromorphicFunctionsElement(parent, data, check=True)[source]

Bases: ModuleElement

evaluate_additive(D)[source]
evaluate_multiplicative(D)[source]
left_act_by_matrix(g)[source]
pair_with(D)[source]
power_series()[source]
scale_by(k)[source]
valuation(p=None)[source]
class darmonpoints.ocmodule.OCVn(p, depth)[source]

Bases: Module, UniqueRepresentation

Element

This class represents objects in the overconvergent approximation modules used to describe overconvergent p-adic automorphic forms.

INPUT:

  • n - integer

  • R - ring

  • depth - integer (Default: None)

  • basis - (Default: None)

AUTHORS:

  • Cameron Franc (2012-02-20)

  • Marc Masdeu (2012-02-20)

alias of OCVnElement

Sigma0()[source]
acting_matrix(g, M)[source]
approx_module(M=None)[source]
base_ring()[source]

This function returns the base ring of the overconvergent element.

basis()[source]

A basis of the module.

INPUT:

  • x - integer (default: 1) the description of the argument x goes here. If it contains multiple lines, all the lines after the first need to be indented.

  • y - integer (default: 2) the …

clear_cache()[source]
depth()[source]

Returns the depth of the module.

dimension()[source]

Returns the dimension (rank) of the module.

is_exact()[source]
is_overconvergent()[source]
precision_cap()[source]

Returns the dimension (rank) of the module.

prime()[source]
class darmonpoints.ocmodule.OCVnElement(parent, val=0, check=True, normalize=False)[source]

Bases: ModuleElement

This class represents elements in an overconvergent coefficient module.

INPUT:

  • parent - An overconvergent coefficient module.

  • val - The value that it needs to store (default: 0). It can be another OCVnElement, in which case the values are copied. It can also be a column vector (or something coercible to a column vector) which represents the values of the element applied to the polynomials 1, x, x^2, … ,`x^n`.

  • check - boolean (default: True). If set to False, no checks are done and val is assumed to be the a column vector.

AUTHORS:

  • Cameron Franc (2012-02-20)

  • Marc Masdeu (2012-02-20)

element()[source]

The element self represents.

evaluate_at_poly(P, R=None, depth=None)[source]

Evaluate self at a polynomial

lift(p=None, M=None)[source]
list()[source]

The element self represents.

matrix_rep()[source]

Returns a matrix representation of self.

moment(i)[source]
moments()[source]
r_act_by(x)[source]

Act on the right by a matrix.

reduce_mod(N=None)[source]
valuation(l=None)[source]

The l-adic valuation of self.

INPUT: a prime l. The default (None) uses the prime of the parent.

valuation_list(l=None)[source]

The l-adic valuation of self, as a list.

INPUT: a prime l. The default (None) uses the prime of the parent.

class darmonpoints.ocmodule.Sigma0Action(G, M)[source]

Bases: Action

class darmonpoints.ocmodule.our_adjuster[source]

Bases: Sigma0ActionAdjuster

Callable object that turns matrices into 4-tuples.

EXAMPLES:

sage: from sage.modular.btquotients.pautomorphicform import _btquot_adjuster
sage: adj = _btquot_adjuster()
sage: adj(matrix(ZZ,2,2,[1..4]))
(4, 2, 3, 1)
class darmonpoints.ocmodule.ps_adjuster[source]

Bases: Sigma0ActionAdjuster

Callable object that turns matrices into 4-tuples.

Representations

Initialize self. See help(type(self)) for accurate signature.

class darmonpoints.representations.CoIndAction(algebra, V, G)[source]

Bases: Action

class darmonpoints.representations.CoIndElement(parent, data, check=True)[source]

Bases: ModuleElement

Elements in a co-induced module are represented by lists [v_1,ldots v_r] indexed by the cosets of G(p) G(1).

act_and_evaluate_at_identity(g)[source]
evaluate(x)[source]
evaluate_at_identity()[source]
is_zero()[source]
values()[source]
class darmonpoints.representations.CoIndModule(G, V)[source]

Bases: Parent

A co-induced module.

TESTS:

sage: from darmonpoints.homology import *
sage: from darmonpoints.cohomology_abstract import *
sage: from darmonpoints.sarithgroup import *
sage: G = BigArithGroup(5,6,1,outfile='/tmp/darmonpoints.tmp') #  optional - magma
Element

alias of CoIndElement

act_by_genpow(i, a, v)[source]
acting_matrix(g, prec=None)[source]

EXAMPLES:

sage: class Foo:
....:     def __init__(self, x):
....:         self._x = x
....:     @cached_method
....:     def f(self,*args):
....:         return self._x^2
sage: a = Foo(2)
sage: a.f.cache
{}
sage: a.f()
4
sage: a.f.cache
{((), ()): 4}
base_field()[source]
base_ring()[source]
basis()[source]
coefficient_module()[source]
dimension()[source]
gen(i)[source]

EXAMPLES:

sage: class Foo:
....:     def __init__(self, x):
....:         self._x = x
....:     @cached_method
....:     def f(self,*args):
....:         return self._x^2
sage: a = Foo(2)
sage: a.f.cache
{}
sage: a.f()
4
sage: a.f.cache
{((), ()): 4}
gens()[source]

EXAMPLES:

sage: class Foo:
....:     def __init__(self, x):
....:         self._x = x
....:     @cached_method
....:     def f(self):
....:         return self._x^2
sage: a = Foo(2)
sage: print(a.f.cache)
None
sage: a.f()
4
sage: a.f.cache
4
get_action_data(g, idx=None)[source]

EXAMPLES:

sage: class Foo:
....:     def __init__(self, x):
....:         self._x = x
....:     @cached_method
....:     def f(self,*args):
....:         return self._x^2
sage: a = Foo(2)
sage: a.f.cache
{}
sage: a.f()
4
sage: a.f.cache
{((), ()): 4}
group()[source]
class darmonpoints.representations.IndAction(algebra, V, G)[source]

Bases: CoIndAction

class darmonpoints.representations.IndElement(parent, data, check=True)[source]

Bases: CoIndElement

evaluate_at_identity()[source]
class darmonpoints.representations.IndModule(G, V)[source]

Bases: CoIndModule

Element

alias of IndElement

class darmonpoints.representations.MatrixAction(G, M)[source]

Bases: Action

class darmonpoints.representations.Scaling(G, M)[source]

Bases: Action

class darmonpoints.representations.TrivialAction(G, M)[source]

Bases: Action

Meromorphic functions

Initialize self. See help(type(self)) for accurate signature.

class darmonpoints.meromorphic.MeromorphicFunctions(K, p, prec)[source]

Bases: Parent, UniqueRepresentation

TESTS:

Element

alias of MeromorphicFunctionsElement

base_ring()[source]
get_action_data(g, oldparam, param, prec=None)[source]

EXAMPLES:

sage: class Foo:
....:     def __init__(self, x):
....:         self._x = x
....:     @cached_method
....:     def f(self,*args):
....:         return self._x^2
sage: a = Foo(2)
sage: a.f.cache
{}
sage: a.f()
4
sage: a.f.cache
{((), ()): 4}
power_series_ring()[source]
prime()[source]
class darmonpoints.meromorphic.MeromorphicFunctionsElement(parent, data, parameter, check=True)[source]

Bases: ModuleElement

eval_derivative(D)[source]
evaluate(D)[source]
fast_act(key)[source]
left_act_by_matrix(g, param=None)[source]
power_series()[source]
scale_by(k)[source]
valuation(p=None)[source]
darmonpoints.meromorphic.divisor_to_pseries(parameter, Ps, data, prec)[source]
darmonpoints.meromorphic.evalpoly(poly, x)[source]