I have been trying to compute the Automorphism group of a curve using MAGMA with no success. This is what I have tried: I have tried to compute the Automorphism group of the curve $y^3=x^4-x$ and no matter what I try -- it produces a trivial AutomorphismsGroup over rationals and I am not able to extend the scalars.



```
Attempt 1:


K:=Rationals(); 
P<x,y,z>:=ProjectiveSpace(K,2);
C:=Curve(P,y^3*z-x^4+x*z^3);
G:=AutomorphismGroup(C);
#G;
1

```

The group is trivial... However, we know that over the complex numbers the group is $C\_9$, cyclic group of order 9. But, I am not able to extend the scalars to complex numbers and get this result...



```
L:=AlgebraicClosure(K);
D:=BaseChange(C,L);
G:=AutomorphismGroup(D);
                       ^
Runtime error in 'AutomorphismGroup': Curve must have a function field

```

or 



```

L:=ComplexField();
D:=BaseChange(C,L); 
                ^
Runtime error in 'BaseChange': Ring must be exact


```

I have tried to compute the group via function fields:



```
Attempt 2:
A<x>:=PolynomialRing(K);
B<y>:=PolynomialRing(A);
F:=FunctionField(y^3-x^4+x);
G:=AutomorphismGroup(F);
#G;
1

and 
L:=ComplexField();
BaseChange(F,L);
             ^
Runtime error in 'BaseChange': Bad argument types
Argument types given: FldFun[FldFunRat[FldRat]], FldCom



```

First question: 
How can one compute the Automorphism group of the curve over the complex numbers using MAGMA?


Second question:
Is it possible to compute (in MAGMA) the Automorphism group of the Jacobian and then, using the Torelli theorem, the automorphism group of a curve?



Why does MAGMA claim that the automorphism group of a curve is trivial?
`AutomorphismGroup` computes the automorphism group over the base field, and it only works with certain types of base fields - in particular, it won't work over the reals, complexes, and the "algebraic closure" (none of which are really suited to geometric computations). But you can get what you want by working over a number field, and in your example it's not hard to see which one you need:



```
> K := CyclotomicField(3);
> P<x,y,z> := ProjectiveSpace(K, 2);
> C := Curve(P, y^3*z - x^4 + x*z^3);
> G := AutomorphismGroup(C);
> #G;
3

```

This doesn't really help if you can't work out the field of definition of the automorphisms you want in advance. If you're working with hyperelliptic curves, though, you can use `GeometricAutomorphismGroup` to get the automorphism group over the algebraic closure.


