# Construction and basic functionality

## Constructor

Given a finite group $G\leq \operatorname{GL}_n(K)$, one can construct the corresponding linear quotient $K^n/G$:

linear_quotientMethod
linear_quotient(G::MatrixGroup)

Return the linear quotient by G, that is, the orbit space of the action of G on the vector space of dimension degree(G).

If the given group is not finite, an error is raised.

Experimental

This function is part of the experimental code in Oscar. Please read here for more details.

source
Implicit choice of representation

Let $V = K^n$ be the regular representation of the matrix group $G$. In the current version, the object returned by linear_quotient(G) will work with the dual representation, that is, the linear quotient will be $V^\ast/G$. This might change in the future (notice that this code is still considered experimental)

Root of unity

For many computations, we require that the base field base_ring(G) contains a primitive root of unity of order exponent(G). If your chosen field is 'too small', you can easily change the base field with map_entries(L, G), where L is the larger field.

## Class group

The divisor class group of a linear quotient $V/G$ is controlled by the pseudo-reflections contained in the group $G$, see [Ben93].

class_groupMethod
class_group(L::LinearQuotient)

Return the class group of the linear quotient L and a map from group(L) to this group.

If G = group(L), then the class group is Ab(G/H), where H is the subgroup of G generated by the pseudo-reflections.

Experimental

This function is part of the experimental code in Oscar. Please read here for more details.

source

## Singularities

One can study the types of the singularities of a linear quotient as follows.

has_canonical_singularitiesMethod
has_canonical_singularities(L::LinearQuotient)

Return true if L has canonical singularities, false otherwise.

This is checked using the Reid–Tai criterion, see Theorem 3.21 in [Kol13].

Experimental

This function is part of the experimental code in Oscar. Please read here for more details.

source
has_terminal_singularitiesMethod
has_terminal_singularities(L::LinearQuotient)

Return true if L has terminal singularities, false otherwise.

This is checked using the Reid–Tai criterion, see Theorem 3.21 in [Kol13].

Experimental

This function is part of the experimental code in Oscar. Please read here for more details.

source