Number theory in Sage
Sage has the capability to work with objects like the integers and the rationals , as well as objects like elliptic and hyperelliptic curves.
Besides integers and rationals, one can use real numbers, complex numbers (where capital I denotes the chosen square root of -1), and p-adic numbers.
Here we create the number field: :
We can work with power series and Laurent series:
Sage has lots of functionality for elliptic curves.
Sage includes a couple of useful ways to find out more about functions. One of these is tab completion: if you type part of the name of a function and hit Tab, Sage will attempt to complete the name of the function.
If more than one completion is possible, Sage will show you all possible completions.
Introspection is another useful tool: if one evaluates the name of a function followed by a ?, Python will show you a bit of documentation about that function.
Another useful way to find functions which might already be in Sage is to search the source code for relevant key words:
Some functionality relevant to computing zeta functions of hyperelliptic curves: