# Singular Places and Indicial Polynomials

All functions treated in this section concern differential operator rings defined over a function field of transcendence degree one. They all require that the derivation of such an operator ring $F[D]$ over $F$ is defined with respect to a differential.

Any solution of a differential operator $L\in F[D]$ is also a solution of the operator $c\cdot L$, for any non–zero $c\in F$. For considering solutions we may therefore consider $L$ to be monic of the form

$$
L =  D^n+a_{n-1}D^{n-1}+\cdots+a_0,
$$

with coefficients $a_i\in F$ for $i=1,2,\ldots n-1$. Each of the coefficients is a rational function in $F$. They play an important role in the rational solutions of $L(y)=0$ in $F$ that come to expression in so-called regular and singular places.

## Singular Places

Given a place $(q)$ in the set of places of $F$, a putative rational solution $y\in F$ of $L(y)=0$ has a $q$-adic expansion

$$
y = y_{\alpha}\, q^{ \alpha}+ y_{\alpha+1}\, q^{\alpha+1}+\ldots
$$

It has a pole at the place $(q)$ if the valuation $\alpha$ is negative. After substituting this solution in $L(y)$ it becomes clear that there is only a finite number of places which can occur as poles of an arbitrary solution of $Ly=0$. Such a place is either a pole of one of the coefficients $a_i$ or a zero or a pole of the differential $\omega$ of $F[D]$. There exists a classification for the poles of solutions of $L(y)=0$.

Given a place $(q)$ and local parameter $t$ at $(q)$, the differential operator can be rewritten as a differential operator $\tilde{L}\in \tilde{F}[\tilde{D}]$, with $\tilde{F}\cong F$, the valuation of whose differential at $(q)$ is $0$. The place $(q)$ is defined to be a *singular place* of $L$, if one of the coefficients of $\tilde{L}$ has negative valuation at $(q)$. Places that are not singular are called *regular*.

There are two kinds of singular places of a differential operator; the *regular singular* places and the *irregular singular* places. With the notation as above, a singular place $(q)$ of $L$ is regular singular if the valuation of the coefficient of $(\tilde{D})^i$ in $\tilde{L}$ is at most $i-n$ for every $i\in\{0,1,\ldots,n-1\}$. Otherwise it is irregular singular.

### `IsRegularPlace(L, p): RngDiffOpElt, PlcFunElt -> BoolElt`

Returns `true` iff the place $p$ is a regular place of the differential operator $L$. If $p$ is not a regular place of $L$ `false` is returned. This function only works for operators whose derivation is defined by a differential.

### `IsRegularSingularPlace(L, p): RngDiffOpElt, PlcFunElt -> BoolElt`

Returns `true` iff the place $p$ is a regular singular place of the differential operator $L$. If $p$ is not a regular singular place of $L$ `false` is returned. This function only works for operators whose derivation is defined by a differential.

### `IsIrregularSingularPlace(L, p): RngDiffOpElt, PlcFunElt -> BoolElt`

Returns `true` iff the place $p$ is an irregular singular place of the differential operator $L$. If $p$ is not an irregular singular place of $L$ `false` is returned. This function only works for operators whose derivation is defined by a differential.

### `SetsOfSingularPlaces(L): RngDiffOpElt -> SetEnum, SetEnum`

Two sets are returned. The first set contains precisely all regular singular places of the differential operator $L$. The second set consists of all irregular singular places of $L$. This function only works for operators whose derivation is defined by a differential.

### `IsFuchsianOperator(L): RngDiffOpElt -> BoolElt, SetEnum`

Returns `true` iff the differential operator $L$ is Fuchsian (i.e. if all singular places of $L$ are regular singular). If $L$ is not Fuchsian, `false` is returned. Secondly, the set of all singular places of $L$, is returned only if $L$ is a Fuchsian differential operator. This function only works for operators whose derivation is defined by a differential.

### `IsRegularSingularOperator(L): RngDiffOpElt -> BoolElt, SetEnum`

Returns `true` if and only if the differential operator $L$ is regular singular. The operator may be defined over a differential Laurent series ring, $F$ say. In this case being regular singular means that the operator must be regular singular at $F.1$. Then also there is no second argument returned. In the case that the derivation is defined with respect to a differential, then the values from `IsFuchsianOperator(L)` are returned.

### `Example Singularities (ex-3dba78)`

```magma
> F<z> := RationalDifferentialField(Rationals());
> R<D> := DifferentialOperatorRing(F);
> H := (z^2-z)*D^2+(3*z-6)*D+1;
> IsRegularPlace(H, Zeros(z)[1]);
false
> IsRegularSingularPlace(H, Zeros(z)[1]);
true
> SetsOfSingularPlaces(H);
{ (1/z), (z - 1), (z) }
{}
> IsFuchsianOperator(H);
true { (z), (1/z), (z - 1) }
> IsFuchsianOperator(D^2-1/z^3);
false

```

### `Example Regular Singular DLSR (ex-5e64d4)`

```magma
> S<t> := DifferentialLaurentSeriesRing(Rationals());
> R<D> := DifferentialOperatorRing(S);
> IsRegularSingularOperator(D^2 -t*D+2);
true
> IsRegularSingularOperator(D^2 +3);
true
> IsRegularSingularOperator(D^2 +3 +O(t));
true
> IsRegularSingularOperator(D^2 +3*t^(-1));
false

```

## Indicial Polynomials

For the definition of a indicial polynomial at a place, we refer to Section $4.1$ in [[van der Put and Singer, 2003](../../references.md#cite-vdps03)].

### `IndicialPolynomial(L, p): RngDiffOpElt, PlcFunElt -> RngElt`

Returns the monic indicial polynomial of the differential operator $L$ at the place $p$. This function only works for operators whose derivation is defined by a differential and whose base ring has one generator.

### `Example Indicial Pol (ex-eadf1f)`

```magma
> F<z> := RationalDifferentialField(Rationals());
> _<T> := PolynomialRing(Rationals());
> R<D> := DifferentialOperatorRing(F);
> H := (z^2-z)*D^2+(3*z-6)*D+1;
> IndicialPolynomial(H, Zeros(z)[1]);
T^2 + 5*T
> IndicialPolynomial(H, Zeros(z-1)[1]);
T^2 - 4*T
> IndicialPolynomial(H, Zeros(1/z)[1]);
T^2 - 2*T + 1
> Apply(H, (z-1)^4/z^5);
0

```
