readme - first content
This commit is contained in:
parent
f6085eb128
commit
6c3fc0d50e
55
README.md
55
README.md
@ -0,0 +1,55 @@
|
||||
# SAGEMATH module: superelliptic curves and their Artin-Schreier covers
|
||||
|
||||
## Basic information
|
||||
|
||||
## Usage
|
||||
|
||||
The main file is init.sage. In order to use it, type:
|
||||
|
||||
```sage: load('init.sage')```
|
||||
|
||||
The main two "packages" are intended for:
|
||||
- superelliptic curves,
|
||||
- $(\mathbb Z/p)^n$-covers of superelliptic curves.
|
||||
|
||||
## Superelliptic curves
|
||||
|
||||
In order to define a superelliptic curve $C : y^4 = x^6 + 1$ over the finite field with 9 elements,
|
||||
use the following commands:
|
||||
|
||||
```
|
||||
F.<a> = GF(9, 'a')
|
||||
Rx.<x> = PolynomialRing(F)
|
||||
f = x^6 + 1
|
||||
C = superelliptic(f, 4)
|
||||
```
|
||||
There are three auxilliary classes: superelliptic_function (for functions defined on superelliptic curves), superelliptic_form (for forms defined on superelliptic curves) and superelliptic_cech (for cech cocycles for the de Rham cohomology on superelliptic curves).
|
||||
|
||||
For example, in order to define the function $x + y$ on our curve $C$ we can define it like this:
|
||||
|
||||
```
|
||||
Rxy.<x, y> = PolynomialRing(F, 2)
|
||||
fct = superelliptic_function(C, x + y)
|
||||
```
|
||||
or simpler:
|
||||
```
|
||||
fct = C.x + C.y
|
||||
```
|
||||
|
||||
Similarly, in order to define the form $\omega = y \cdot dx$ we may use:
|
||||
```
|
||||
omega = superelliptic_form(C, y)
|
||||
```
|
||||
or simpler:
|
||||
```
|
||||
omega = C.y * C.dx
|
||||
```
|
||||
|
||||
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
- precision
|
||||
- threshold
|
||||
- no root in the field
|
||||
- basis -- coordinates.
|
Loading…
Reference in New Issue
Block a user