# Invariants for Genus One Models

## `aInvariants(model): ModelG1 -> [ RngElt ]`

The invariants $[a_1, a_2, a_3, a_4, a_6]$ of the given genus one model which must have degree 2, 3, or 4. The formulae in the degree 3 case come from [[Artin *et al.*, 2005](../../references.md#cite-artin-etal)].

## `bInvariants(model): ModelG1 -> [ RngElt ]`

The invariants $[b_2, b_4, b_6, b_8]$ of the given genus one model which must have degree 2, 3, or 4. These are computed from the `aInvariants` in the standard way (as for elliptic curves).

## `cInvariants(model): ModelG1 -> [ RngElt ]`

The invariants $[c_4, c_6]$ of the given genus one model. For $n=2$, 3, or 4 these are the classical invariants, as can be found in [[An *et al.*, 2001](../../references.md#cite-six-authors-invariants)]. For $n=5$ the algorithm is described in [[Fisher, 2008](../../references.md#cite-fisher-invariants)].

## `Invariants(model): ModelG1 -> RngElt, RngElt, RngElt`

The invariants $c_4, c_6$ and $\Delta$ (the discriminant) of the given genus one model.

## `Discriminant(model): ModelG1 -> RngElt`

The discriminant $\Delta$ of the given genus one model.

## `SL4Invariants(model): ModelG1 -> [ RngElt ]`

The $SL_4$-invariants of a genus one model of degree $4$.
