This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Enumerating places of 𝐏1\mathbf{P}^{1} up to
automorphisms of 𝐏1\mathbf{P}^{1} in quasilinear time

Everett W. Howe Independent mathematician, San Diego, CA 92104, USA [email protected] http://ewhowe.com
(Date: 7 July 2024)
Abstract.

We present an algorithm that, for every fixed degree n3n\geq 3, will enumerate all degree-nn places of the projective line over a finite field kk up to the natural action of PGL2(k)\operatorname{PGL}_{2}(k) using O(logq)O(\log q) space and O~(qn3)\widetilde{O}(q^{n-3}) time, where q=#k{q=\#k}. Since there are Θ(qn3)\Theta(q^{n-3}) orbits of PGL2(k)\operatorname{PGL}_{2}(k) acting on the set of degree-nn places, the algorithm is quasilinear in the size of its output. The algorithm is probabilistic unless we assume the extended Riemann hypothesis, because its complexity depends on that of polynomial factorization: for odd nn, it involves factoring Θ(qn3)\Theta(q^{n-3}) polynomials over kk of degree up to 1+((n1)/2)n{1+((n-1)/2)^{n}}.

For composite degrees nn, earlier work of the author gives an algorithm for enumerating PGL2(k)\operatorname{PGL}_{2}(k) orbit representatives for degree-nn places of 𝐏1\mathbf{P}^{1} over kk that runs in time O~(qn3)\widetilde{O}(q^{n-3}) independent of the extended Riemann hypothesis, but that uses O(qn3)O(q^{n-3}) space.

We also present an algorithm for enumerating orbit representatives for the action of PGL2(k)\operatorname{PGL}_{2}(k) on the degree-nn effective divisors of 𝐏1\mathbf{P}^{1} over finite fields kk. The two algorithms depend on one another; our method of enumerating orbits of places of odd degree nn depends on enumerating orbits of effective divisors of degree (n+1)/2(n+1)/2.

Key words and phrases:
Projective line, place, finite field
1991 Mathematics Subject Classification:
Primary 11G20; Secondary 11Y16, 14G15

1. Introduction

The effective divisors of 𝐏1{\mathbf{P}}^{1} are a fundamental object in geometry, and there are situations in which one would like to enumerate all such divisors of a given degree when the base field kk is finite, up to the action of Aut(𝐏1/k)PGL2(k)\operatorname{Aut}({\mathbf{P}}^{1}\phantom{k}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/k$}}$})\cong\operatorname{PGL}_{2}(k). For instance, if one is interested in enumerating hyperelliptic curves of genus g>1g>1 over 𝐅q{\mathbf{F}}_{q}, where qq is an odd prime power, then it is natural to look at effective divisors of degree 2g+22g+2 in which no point has multiplicity larger than 11, up to the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) (see [8, §3.1], [9, §0]). More generally, if one is interested in covers of 𝐏1/k{\mathbf{P}}^{1}\phantom{k}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/k$}}$} of a given degree and genus up to isomorphism, a natural place to start is to group them by ramification divisor, up to the action of PGL2(k)\operatorname{PGL}_{2}(k).

An argument that we give in Section 5 shows that to develop an algorithm to enumerate all degree-nn effective divisors of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} up to PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) in quasilinear time, the central case to consider is that of effective divisors consisting of a single place of degree nn. When n3n\leq 3 this is trivial, and Theorems 1.2 and 3.8 of [5] tell us how to do this when n=4n=4. Our main result, therefore, is the following:

Theorem 1.1.

Fix an integer n5.n\geq 5. The algorithms we present in Sections 6 and 7 take as input a prime power qq and output a complete set of unique representatives for the orbits of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) acting on the degree-nn places of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$}. The algorithms take time O~(qn3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{n-3}) and space O(logq)O(\log q), and are probabilistic unless we assume the extended Riemann hypothesis.

Corollary 1.2.

Fix an integer n3.n\geq 3. The algorithm we present in Section 5 takes as input a prime power qq and outputs a complete set of unique representatives for the orbits of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) acting on the effective divisors of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} of degree nn. The algorithm takes time O~(qn3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{n-3}) and space O(logq)O(\log q), and is probabilistic unless we assume the extended Riemann hypothesis.

(Here and throughout the paper, by a “complete set of unique representatives” for a group acting on a set we mean a set of orbit representatives that contains exactly one element from each orbit.)

Since up to PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) there are roughly qn3/nq^{n-3}/n degree-nn places of 𝐏1{\mathbf{P}}^{1} and roughly qn3q^{n-3} effective divisors of degree nn, we see that both algorithms take time quasilinear in the size of their output.

Almost all of the ingredients of our algorithms already appear in [5], which focuses on enumerating a complete set of unique representatives for the action of PGL2\operatorname{PGL}_{2} on the effective divisors of 𝐏1{\mathbf{P}}^{1} of even degree nn that do not include any places with multiplicity greater than 11. However, the restriction to even nn (or, more generally, composite nn) was critical to the approach in [5]. Furthermore, the algorithms in that paper do not attempt to minimize their memory usage.

The main new idea in this paper is a method for enumerating PGL2\operatorname{PGL}_{2} orbits of places of odd degree. Given an odd n3n\geq 3, we show how to assign to every degree-nn place PP of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} a rational function on 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} of degree at most (n1)/2(n-1)/2 that reflects the action of Frobenius on the geometric points of PP; we call this the Frobenius function for PP. If FF is the Frobenius function for PP, then its divisor DD of fixed points is effective and has degree at most (n+1)/2(n+1)/2; we call DD the Frobenius divisor of PP. The map that sends a degree-nn place PP to its Frobenius divisor is equivariant with respect to the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on places and divisors. Also, there is a straightforward way to enumerate all degree-nn places with a given Frobenius divisor. Thus, to enumerate all degree-nn places up to the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}), we simply enumerate orbit representatives for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on effective divisors of degree at most (n+1)/2(n+1)/2, and then find all degree-nn places whose Frobenius divisors are among these orbit representatives. We can compute these orbit representatives by recursively applying our algorithm — or by other means, since any algorithm that takes time at most O~(qn3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{n-3}) and space at most O(logq)O(\log q) will suffice.

The critical step in computing the places with a given Frobenius divisor involves finding the degree-nn factors of a polynomial of degree bounded by 1+((n1)/2)n1+((n-1)/2)^{n}, so the complexity of our algorithm is essentially tied to that of the polynomial factorization algorithm we use. Under the extended Riemann hypothesis, we can deterministically factor polynomials in 𝐅q[x]{\mathbf{F}}_{q}[x] of bounded degree in time polynomial in logq\log q (see [10], [3]); unconditionally, there are probabilistic algorithms that factor in polynomial time (see [1], [2], [4], [6], [7]). Thus, a probabilistic version of our algorithm takes time O~(qn3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{n-3}), and a deterministic version has the same complexity if we assume the extended Riemann hypothesis.

In Section 2 we present the main ingredients of our argument, most notably the idea of the Frobenius function of a place of odd degree, as well as how such rational functions are related to their divisors of fixed points. In Section 3 we observe that a low-memory algorithm to output a finite list can be converted into a low-memory algorithm that takes one element of the list (plus some extra data) as input and outputs the next element (plus the necessary extra data). This can be done in such a way that the time to create the whole list by repeatedly running the second algorithm is essentially the same as that of running the first algorithm once. This observation simplifies our exposition of our main algorithms.

In Section 4 we outline the recursive nature of our algorithms and explain how the arguments in the following sections piece together to create a proof of Theorem 1.1. In Section 5 we show how to enumerate PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbits of effective divisors of degree nn if we can enumerate the PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbits of places of degree at most nn, which shows that Corollary 1.2 follows from Theorem 1.1. In Section 6 we present an algorithm to enumerate orbit representatives for PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) acting on places of odd degree by using the connection between a place and its Frobenius divisor. Finally, in Section 7 we show how to handle places of even degree nn over 𝐅q{\mathbf{F}}_{q} by combining our algorithm for places of degree n/2n/2 over 𝐅q2{\mathbf{F}}_{q^{2}} with an explicit list of coset representatives for PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) in PGL2(𝐅q2)\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}}).

2. Mise en place

In this section we lay out the ingredients necessary to prove our main results. We start by defining the basic objects of study, and then in separate subsections we present various results needed for our later arguments.

Let kk be a finite field and let R\colonequalsk[x,y]R\colonequals k[x,y]. We view RR as a graded ring, graded by degree, and we view 𝐏1/k{\mathbf{P}}^{1}\phantom{k}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/k$}}$} as ProjR\operatorname{Proj}R. For each nn let RnR_{n} be the set of homogeneous polynomials in RR of degree nn, and let RhomR_{\textup{hom}} be the union of the RnR_{n}. We say that f(x,y)Rhomf(x,y)\in R_{\textup{hom}} is monic if f(x,1)f(x,1) is monic as a univariate polynomial. We say that αk¯\alpha\in\mathchoice{k\hbox to0.0pt{\hss$\overline{\phantom{\displaystyle\rm k}}$}}{k\hbox to0.0pt{\hss$\overline{\phantom{\textstyle\rm k}}$}}{k\hbox to0.0pt{\hss$\overline{\phantom{\scriptstyle\rm k}}$}}{k\hbox to0.0pt{\hss$\overline{\phantom{\scriptscriptstyle\rm k}}$}} is a root of ff if f(α,1)=0f(\alpha,1)=0.

There is a natural action of the group PGL2(k)\operatorname{PGL}_{2}(k) on 𝐏1(k¯){\mathbf{P}}^{1}(\mathchoice{k\hbox to0.0pt{\hss$\overline{\phantom{\displaystyle\rm k}}$}}{k\hbox to0.0pt{\hss$\overline{\phantom{\textstyle\rm k}}$}}{k\hbox to0.0pt{\hss$\overline{\phantom{\scriptstyle\rm k}}$}}{k\hbox to0.0pt{\hss$\overline{\phantom{\scriptscriptstyle\rm k}}$}}): If ΓPGL2(k)\Gamma\in\operatorname{PGL}_{2}(k) is represented by a matrix [abcd]\bigl{[}\begin{smallmatrix}a&b\\ c&d\end{smallmatrix}\bigr{]} and if P\colonequals[α:β]𝐏1(k¯)P\colonequals[\alpha\,{:}\,\beta]\in{\mathbf{P}}^{1}(\mathchoice{k\hbox to0.0pt{\hss$\overline{\phantom{\displaystyle\rm k}}$}}{k\hbox to0.0pt{\hss$\overline{\phantom{\textstyle\rm k}}$}}{k\hbox to0.0pt{\hss$\overline{\phantom{\scriptstyle\rm k}}$}}{k\hbox to0.0pt{\hss$\overline{\phantom{\scriptscriptstyle\rm k}}$}}), then we define

Γ(P)\colonequals[aα+bβ:cα+dβ].\Gamma(P)\colonequals[a\alpha+b\beta\,{:}\,c\alpha+d\beta].

This action extends to an action on divisors on 𝐏1/k{\mathbf{P}}^{1}\phantom{k}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/k$}}$}.

There is a related action of PGL2(k)\operatorname{PGL}_{2}(k) on the set Rhom/k×R_{\textup{hom}}/k^{\times}, such that Γ\Gamma sends the class [f][f] of a homogeneous polynomial f(x,y)f(x,y) to the class of f(dxby,cx+ay){f(dx-by,-cx+ay)}. Since every element of Rhom/k×R_{\textup{hom}}/k^{\times} has a unique monic representative, we can also view PGL2(k)\operatorname{PGL}_{2}(k) as acting on the set of homogeneous polynomials; given a homogenous ff, we let Γ(f)\Gamma(f) be the unique monic ff^{\prime} such that [f]=Γ([f])[f^{\prime}]=\Gamma([f]). Let div\operatorname{div} be the function that sends a homogenous polynomial to its divisor. Then we have

divΓ(f)=Γ(divf).\operatorname{div}\Gamma(f)=\Gamma(\operatorname{div}f). (1)

Our goal is to produce, for each n>3n>3, an algorithm that will create a complete set of unique representatives for the action of PGL2(k)\operatorname{PGL}_{2}(k) on the degree-nn effective divisors of 𝐏1/k{\mathbf{P}}^{1}\phantom{k}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/k$}}$}, in time O~(qn3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{n-3}), where q=#kq=\#k. Since effective divisors on 𝐏1/k{\mathbf{P}}^{1}\phantom{k}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/k$}}$} correspond to monic elements of RhomR_{\textup{hom}}, our goal can also be viewed as finding orbit representatives for PGL2(k)\operatorname{PGL}_{2}(k) acting on the monic elements of RnR_{n}.

2.1. Frobenius functions and Frobenius divisors

In this subsection we introduce the concepts of Frobenius functions and Frobenius divisors and prove some basic results about them.

Theorem 2.1.

Let fk[x,y]f\in k[x,y] be an irreducible homogeneous polynomial of degree nn, where n3n\geq 3 is odd. Among the rational functions 𝐏1𝐏1{\mathbf{P}}^{1}\to{\mathbf{P}}^{1} of degree at most (n1)/2(n-1)/2, there is a unique function FF such that [α#k: 1]=F([α: 1])[\alpha^{\#k}\,{:}\,1]=F([\alpha\,{:}\,1]) for every root α\alpha of ff in k¯\mathchoice{k\hbox to0.0pt{\hss$\overline{\phantom{\displaystyle\rm k}}$}}{k\hbox to0.0pt{\hss$\overline{\phantom{\textstyle\rm k}}$}}{k\hbox to0.0pt{\hss$\overline{\phantom{\scriptstyle\rm k}}$}}{k\hbox to0.0pt{\hss$\overline{\phantom{\scriptscriptstyle\rm k}}$}}.

Definition 2.2.

Given ff and FF as in the theorem, we say that FF is the Frobenius function for ff. If PP is the degree-nn place corresponding to ff, we also say that FF is the Frobenius function for PP.

Proof of Theorem 2.1.

Let q=#kq=\#k, let r=(n1)/2r=(n-1)/2, and let α𝐅qn\alpha\in{\mathbf{F}}_{q^{n}} be a root of ff. Then

1,α,α2,,αr,αq,αq+1,,αq+r1,\alpha,\alpha^{2},\ldots,\alpha^{r},\alpha^{q},\alpha^{q+1},\ldots,\alpha^{q+r}

is a list of 2r+2=n+12r+2=n+1 elements of 𝐅qn{\mathbf{F}}_{q^{n}}, so there is an 𝐅q{\mathbf{F}}_{q}-linear relation among these elements, say

a0+a1α++arαr=b0αq+b1αq+1++brαq+r.a_{0}+a_{1}\alpha+\cdots+a_{r}\alpha^{r}=b_{0}\alpha^{q}+b_{1}\alpha^{q+1}+\cdots+b_{r}\alpha^{q+r}\,.

We know that the two sides of this equality are nonzero, because otherwise α\alpha would be a root of a polynomial of degree smaller than nn. Therefore we can write

αq=arαr++a1α+a0brαr++b1α+b0.\alpha^{q}=\frac{a_{r}\alpha^{r}+\cdots+a_{1}\alpha+a_{0}}{b_{r}\alpha^{r}+\cdots+b_{1}\alpha+b_{0}}\,.

Let FF be the rational function

F\colonequalsarxr++a1xyr1+a0yrbrxr++b1xyr1+b0yr.F\colonequals\frac{a_{r}x^{r}+\cdots+a_{1}xy^{r-1}+a_{0}y^{r}}{b_{r}x^{r}+\cdots+b_{1}xy^{r-1}+b_{0}y^{r}}\,.

Then [αq: 1]=F([α: 1])[\alpha^{q}\,{:}\,1]=F([\alpha\,{:}\,1]), and the same holds if we replace α\alpha by any of its conjugates. Also, FF is a rational function of degree at most rr (“at most” because there may be common factors in the numerator and denominator that cancel one another). This proves the existence claim of the theorem.

Suppose F1F_{1} and F2F_{2} are two rational functions of degree at most rr such that [αq: 1]=Fi([α: 1])[\alpha^{q}\,{:}\,1]=F_{i}([\alpha\,{:}\,1]) for i=1i=1 and i=2i=2. Write Fi=gi/hiF_{i}=g_{i}/h_{i} for homogeneous polynomials gig_{i} and hih_{i} of degree at most rr. Then since F1([α: 1])=F2([α: 1])F_{1}([\alpha\,{:}\,1])=F_{2}([\alpha\,{:}\,1]), we see that [α: 1][\alpha\,{:}\,1] is zero of the homogeneous polynomial g1h2g2h1g_{1}h_{2}-g_{2}h_{1}, whose degree is at most 2r<n2r<n. Since α\alpha generates a degree-nn extension of 𝐅q{\mathbf{F}}_{q}, this is impossible unless g1h2=g2h1g_{1}h_{2}=g_{2}h_{1}; that is, unless F1=F2F_{1}=F_{2}. This proves the uniqueness claim of the theorem. ∎

Definition 2.3.

Let FF be a rational function of degree rr on 𝐏1/k{\mathbf{P}}^{1}\phantom{k}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/k$}}$} and write F=g/hF=g/h for coprime homogenous polynomials gg and hh in RrR_{r}. If Fx/yF\neq x/y, we define the divisor of fixed points for FF to be the divisor Φ(F)\colonequalsdiv(xhyg)\Phi(F)\colonequals\operatorname{div}(xh-yg) of degree r+1r+1. If ff is an irreducible homogeneous polynomial whose Frobenius function is FF, then we call Φ(F)\Phi(F) the Frobenius divisor for ff.

Lemma 2.4.

Let ff be a monic irreducible homogeneous polynomial in RR of odd degree n3n\geq 3 and let FF be the Frobenius function for ff. For every ΓPGL2(k)\Gamma\in\operatorname{PGL}_{2}(k), the rational function ΓFΓ1\Gamma\circ F\circ\Gamma^{-1} is the Frobenius function for Γ(f)\Gamma(f), and

Φ(ΓFΓ1)=Γ(Φ(F)).\Phi(\Gamma\circ F\circ\Gamma^{-1})=\Gamma(\Phi(F))\,. (2)
Proof.

If β\beta is a root of Γ(f)\Gamma(f) then we have [β: 1]=Γ([α: 1])[\beta\,{:}\,1]=\Gamma([\alpha\,{:}\,1]) for a root α\alpha of ff. We check that

[β#k: 1]\displaystyle[\beta^{\#k}\,{:}\,1] =Γ([α#k: 1])\displaystyle=\Gamma([\alpha^{\#k}\,{:}\,1])
=Γ(F([α: 1]))\displaystyle=\Gamma(F([\alpha\,{:}\,1]))
=(ΓF)([α: 1])\displaystyle=(\Gamma\circ F)([\alpha\,{:}\,1])
=(ΓFΓ1)(Γ([α: 1]))\displaystyle=(\Gamma\circ F\circ\Gamma^{-1})(\Gamma([\alpha\,{:}\,1]))
=(ΓFΓ1)([β: 1]),\displaystyle=(\Gamma\circ F\circ\Gamma^{-1})([\beta\,{:}\,1])\,,

so ΓFΓ1\Gamma\circ F\circ\Gamma^{-1} is the Frobenius function for Γ(f)\Gamma(f). Suppose [abcd]\bigl{[}\begin{smallmatrix}a&b\\ c&d\end{smallmatrix}\bigr{]} is a matrix that represents Γ\Gamma, and suppose gg and hh are coprime homogenous polynomials such that F=g/hF=g/h. Using the definition of Φ\Phi, we find that Φ(ΓFΓ1)\Phi(\Gamma\circ F\circ\Gamma^{-1}) is the divisor of the polynomial

x[cg(x,y)+dh(x,y)]y[ag(x,y)+bh(x,y)],x\cdot[cg(x^{\prime},y^{\prime})+dh(x^{\prime},y^{\prime})]-y\cdot[ag(x^{\prime},y^{\prime})+bh(x^{\prime},y^{\prime})]\,,

where x=dxbyx^{\prime}=dx-by and y=cx+ayy^{\prime}=-cx+ay. But this simplifies to

xh(x,y)yg(x,y),x^{\prime}\cdot h(x^{\prime},y^{\prime})-y^{\prime}\cdot g(x^{\prime},y^{\prime})\,,

and the class of this polynomial in Rhom/k×R_{\textup{hom}}/k^{\times} is nothing other than Γ([xhyg])\Gamma([xh-yg]). By (1), we see that (2) holds. ∎

Corollary 2.5.

Let n=2r+13n=2r+1\geq 3 be an odd integer and let TT be a set of representatives for the orbits of PGL2(k)\operatorname{PGL}_{2}(k) acting on the effective divisors of 𝐏1/k{\mathbf{P}}^{1}\phantom{k}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/k$}}$} of degree at most r+1r+1. Suppose ff is a monic irreducible homogenous polynomial of degree nn. Then there is an ff^{\prime} in the PGL2(k)\operatorname{PGL}_{2}(k) orbit of ff such that the Frobenius divisor of ff^{\prime} lies in TT. ∎

2.2. Rational functions with a given divisor of fixed points

The following proposition tells us how to find all rational functions with a given divisor of fixed points.

Proposition 2.6.

Let DD be an effective divisor on 𝐏1{\mathbf{P}}^{1} of degree r+12r+1\geq 2 and let pp be the unique monic homogeneous polynomial of degree r+1r+1 with divp=D\operatorname{div}p=D.

  • Suppose \infty is not in the support of DD, so that pp is not divisible by yy. Then the set of degree-rr rational functions FF with Φ(F)=D\Phi(F)=D is equal to the set

    {xhpyh},\Bigl{\{}\frac{xh-p}{yh}\Bigr{\}}\,,

    where hh ranges over the set of monic polynomials in RrR_{r} that are coprime to ypyp.

  • Suppose \infty is in the support of DD, so that pp is a multiple of yy. Then the set of degree-rr rational functions FF with Φ(F)=D\Phi(F)=D is equal to the set

    {xhcpyh},\Bigl{\{}\frac{xh-cp}{yh}\Bigr{\}}\,,

    where hh ranges over the set of monic polynomials in RrR_{r} whose GCDs with pp are equal to yy, and where cc ranges over all elements of k×k^{\times} with cpxhmody2cp\not\equiv xh\bmod y^{2}.

Proof.

In order for a rational function FF to have Φ(F)=D\Phi(F)=D, we must be able to write F=g/hF=g/h for two coprime elements g,hRrg,h\in R_{r}, with hh monic, so that div(xhyg)=D\operatorname{div}(xh-yg)=D. This holds if and only if xhyg=cpxh-yg=cp for some ck×c\in k^{\times}.

Suppose we have xhyg=cpxh-yg=cp for such a gg, hh, and cc, and suppose pp is not divisible by yy. Then hh must also be coprime to yy. Since pp and hh are both monic, it follows that the coefficient of xr+1x^{r+1} in pp, and the coefficient of xrx^{r} in hh, are both equal to 11. Since the monomial xr+1x^{r+1} does not occur in ygyg, it follows that c=1c=1, so g=(xhp)/yg=(xh-p)/y. Finally, we see that hh and pp can share no common factor other than yy, because otherwise hh and gg would not be coprime. Conversely, if hh is a monic polynomial of degree rr that is coprime to ypyp, then (xhp)/(yh)(xh-p)/(yh) is a degree-rr function with divisor of fixed points equal to DD.

Now suppose xhyg=cpxh-yg=cp for such a gg, hh, and cc, where pp is divisible by yy. Then hh must also be divisible by yy. But pp and hh cannot both be divisibly by y2y^{2}, for otherwise gg would be divisible by yy, contradicting the requirement that gg and hh be coprime. Then g=x(h/y)c(p/y)g=x(h/y)-c(p/y), and if hh and pp had any common factors other than yy, this common factor would divide gg as well. Also, since gg must not be divisible by yy, we see that cpxhmody2cp\not\equiv xh\bmod y^{2}. Conversely, if hh is a monic polynomial of degree rr with (h,p)=y(h,p)=y and if ck×c\in k^{\times} satisfies cpxhmody2cp\not\equiv xh\bmod y^{2}, then (xhcp)/(yh)(xh-cp)/(yh) is a degree-rr function with divisor of fixed points equal to DD. ∎

Corollary 2.7.

Let DD be an effective divisor on 𝐏1{\mathbf{P}}^{1} of degree r+1r+1. The set of degree-rr rational functions FF with Φ(F)=D\Phi(F)=D contains at most qrq^{r} elements, where q=#kq=\#k, and it can be enumerated in time O(qr)O(q^{r}), measured in arithmetic operations in kk.∎

2.3. Places with a given Frobenius function

In this section we show how to find all the places of odd degree n3n\geq 3 with a given Frobenius function. First we consider Frobenius functions of degree greater than 11.

Theorem 2.8.

Let FF be a rational function on 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} of degree r>1r>1 and let nn be an odd integer integer with n2r+1n\geq 2r+1. Let G\colonequalsF(n)G\colonequals F^{(n)} be the nnth iterate of FF. Then every degree-nn place with Frobenius function equal to FF occurs in the divisor of fixed points of GG.

Proof.

Let PP be a degree-nn place whose Frobenius function is FF and let ff be the monic homogeneous polynomial whose divisor is PP. Let α\alpha be a root of ff, so that we have [αq: 1]=F([α: 1])[\alpha^{q}\,{:}\,1]=F([\alpha\,{:}\,1]). Applying Frobenius to both sides, we find that

[αq2: 1]=F([αq: 1])=F(2)([α: 1]),[\alpha^{q^{2}}\,{:}\,1]=F([\alpha^{q}\,{:}\,1])=F^{(2)}([\alpha\,{:}\,1])\,,

where the first equality follows from the fact that FF is 𝐅q{\mathbf{F}}_{q}-rational. Continuing in this way, we see that

[α: 1]=[αqn: 1]=F(n)([α: 1]).[\alpha\,{:}\,1]=[\alpha^{q^{n}}\,{:}\,1]=F^{(n)}([\alpha\,{:}\,1])\,.

It follows that α\alpha is a root of the function defining the divisor of fixed points for GG, so the place PP appears in Φ(G)\Phi(G). ∎

Theorem 2.8 gives us a simple algorithm to find the degree-nn places with a given Frobenius function FF of degree at least 22: We go through the finite set of degree-nn places PP appearing in Φ(G)\Phi(G), where G\colonequalsF(n)G\colonequals F^{(n)}, and for each such PP we check to see whether FF is the Frobenius function for PP. The degree of GG is large, but bounded in terms of nn, so for fixed nn this algorithm takes time polynomial in logq\log q, with the primary step being to find all degree-nn factors of the polynomial defining the divisor of fixed points of GG.

But Theorem 2.8 only deals with rational functions FF of degree greater than 11. The reason for this is that if FF is a Frobenius function of degree 11, then the rational function GG in the theorem will be the identity function, and its divisor of fixed points is not defined. To find places with Frobenius functions of degree 11, we instead use the following result.

Theorem 2.9.

If there are places of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} of odd degree n>1n>1 with Frobenius functions of degree 11, then either nn is the prime divisor of qq, or nn divides q1q-1, or nn divides q+1q+1.

Suppose n>1n>1 is an odd integer that is either the prime divisor of qq or a divisor of q1q-1 or q+1q+1. Let ss be an element of 𝐅q2𝐅q{\mathbf{F}}_{q^{2}}\setminus{\mathbf{F}}_{q}. If nn is the prime divisor of qq, choose an element tt of 𝐅q{\mathbf{F}}_{q} with nonzero absolute trace and let TT be the singleton set {xnxyn1tyn}\{x^{n}-xy^{n-1}-ty^{n}\}. If nn divides q1q-1, let ζ\zeta be a generator of 𝐅q×{\mathbf{F}}_{q}^{\times} and let TT be the set

{xnζiyn| 0<i<n/2,gcd(i,n)=1}.\{x^{n}-\zeta^{i}y^{n}\ |\ 0<i<n/2,\ \gcd(i,n)=1\}\,.

If nn divides q+1q+1, let ξ𝐅q2n\xi\in{\mathbf{F}}_{q^{2n}} be an element of order n(q+1)n(q+1) and let TT be the set of (homogenized) minimal polynomials of the elements

{sξi+sqξi+1| 0<i<n/2,gcd(i,n)=1},\biggl{\{}\frac{s\xi^{i}+s^{q}}{\xi^{i}+1}\ \Big{|}\ 0<i<n/2,\ \gcd(i,n)=1\biggr{\}}\,,

where ss is as above. Then in every case, the divisors of the elements of TT form a complete set of unique representatives for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on the set of degree-nn places of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} with Frobenius functions of degree 11.

Proof.

Suppose PP is a place of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} of odd degree n>1n>1 whose Frobenius function FF has degree 11. Since FF has degree 11 we can view it as an element of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}). Let ff be the monic irreducible homogeneous polynomial in 𝐅q[x,y]{\mathbf{F}}_{q}[x,y] that defines PP, and let α𝐅¯q\alpha\in\overline{{\mathbf{F}}}_{q} be a root of ff. Then for every i0i\geq 0 we have

[αqi: 1]=F(i)([α: 1]),[\alpha^{q^{i}}\,{:}\,1]=F^{(i)}([\alpha\,{:}\,1])\,,

so F(i)F^{(i)} is not the identity for 0<i<n0<i<n. On the other hand, F(n)F^{(n)} fixes [α: 1][\alpha\,{:}\,1] and all of its conjugates, so it must be the identity. In other words, as an element of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}), the function FF has order nn.

An easy exercise shows that the set of orders of elements of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) consists of the union of the prime divisor of qq, the divisors of q1q-1, and the divisors of q+1q+1. This proves the first statement of the theorem.

Let PP_{\infty} be the place of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} at infinity, let P0P_{0} be the place at 0, and let PsP_{s} be the degree-22 place whose geometric points are [s: 1][s\,{:}\,1] and [sq: 1][s^{q}\,{:}\,1], where ss is the element of 𝐅q2𝐅q{\mathbf{F}}_{q^{2}}\setminus{\mathbf{F}}_{q} from the statement of the theorem. If the Frobenius function of a place PP has degree 11, then the Frobenius divisor of PP has degree 22. Every divisor of degree 22 on 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} is in the PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbit of exactly one of the following divisors: D1\colonequals2PD_{1}\colonequals 2P_{\infty}, D2\colonequalsP+P0D_{2}\colonequals P_{\infty}+P_{0}, and D3\colonequalsPsD_{3}\colonequals P_{s}. Therefore, by Lemma 2.4 we may choose our orbit representatives for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on the degree-nn places with Frobenius functions of degree 11 to have one of these three divisors as their Frobenius divisors.

Consider the set S1S_{1} of monic irreducible degree-nn homogenous polynomials ff that define places whose Frobenius divisors are equal to D1D_{1}. By Proposition 2.6, the functions FF with Φ(F)=D1\Phi(F)=D_{1} are the functions x/y+rx/y+r for r𝐅qr\in{\mathbf{F}}_{q} with r0.r\neq 0. Every such function FF has order equal to the prime divisor of qq, so in this case nn must be that prime.

The subgroup of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) that stabilizes the set S1S_{1} is the “ax+bax+b” group — that is, the classes of the upper triangular matrices. We check that if α\alpha and β\beta are elements of 𝐅qn{\mathbf{F}}_{q^{n}} such that both αqα\alpha^{q}-\alpha and βqβ\beta^{q}-\beta are nonzero elements of 𝐅q{\mathbf{F}}_{q}, then there is an element of this subgroup that takes α\alpha to β\beta. Thus, all of the places with Frobenius divisors equal to D1D_{1} are equivalent up to PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}), and one of them is given by the divisor of the unique polynomial in the set TT given in the theorem in the case where nn is the prime divisor of qq.

Now consider the set S2S_{2} of monic irreducible degree-nn homogenous polynomials ff that define places whose Frobenius divisors are equal to D2D_{2}. By Proposition 2.6, the functions FF with Φ(F)=D2\Phi(F)=D_{2} are the functions rx/yrx/y for r𝐅qr\in{\mathbf{F}}_{q} with r0r\neq 0 and r1r\neq 1, so if ff is an element of S2S_{2} and if α𝐅qn\alpha\in{\mathbf{F}}_{q^{n}} is a root of ff, then αq=rα\alpha^{q}=r\alpha for some r𝐅q×r\in{\mathbf{F}}_{q}^{\times}. Since FPGL2(𝐅q)F\in\operatorname{PGL}_{2}({\mathbf{F}}_{q}) has order nn, the element rr of 𝐅q×{\mathbf{F}}_{q}^{\times} must also have order nn, so nq1n\mid q-1. Conversely, if α\alpha is an element of 𝐅qn×{\mathbf{F}}_{q^{n}}^{\times} such that αq1\alpha^{q-1} has order nn, then α\alpha defines a place with Frobenius divisor D2D_{2}. Since nn divides q1q-1, there are elements of 𝐅qn×{\mathbf{F}}_{q^{n}}^{\times} of order n(q1)n(q-1); let ω\omega be one of these. Then the α\alpha that give places of degree nn with Frobenius divisor D1D_{1} are exactly the elements ωi\omega^{i} with gcd(i,n)=1\gcd(i,n)=1.

The subgroup of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) that stabilizes the set S2S_{2} consists of the classes of the diagonal and antidiagonal matrices. The action of this subgroup on the set {ωi|gcd(i,n)=1}\{\omega^{i}\ |\ \gcd(i,n)=1\} is generated by multiplication by nonzero elements of 𝐅q{\mathbf{F}}_{q} (which are exactly the powers of ωn\omega^{n}) and by inversion. It is clear that the set {ωi| 0<i<n/2,gcd(i,n)=1}{\{\omega^{i}\ |\ 0<i<n/2,\ \gcd(i,n)=1\}} is a complete set of unique representatives for this action. The homogenized minimal polynomials of these elements are exactly the elements of the set TT given in the theorem in the case nq1n\mid q-1.

Finally we consider the set S3S_{3} of monic irreducible degree-nn homogenous polynomials ff that define places whose Frobenius divisors are equal to D3=PsD_{3}=P_{s}. Let pp be the monic homogeneous polynomial that defines the place PsP_{s}, and write p=x2+axy+by2p=x^{2}+axy+by^{2} for a,b𝐅qa,b\in{\mathbf{F}}_{q}. Now Proposition 2.6 tells us that the functions FF with Φ(F)=D3\Phi(F)=D_{3} are the functions of the form Fr\colonequals((ra)xby)/(x+ry)F_{r}\colonequals((r-a)x-by)/(x+ry) for r𝐅qr\in{\mathbf{F}}_{q}.

Given an α𝐅qn\alpha\in{\mathbf{F}}_{q^{n}} with αq=((ra)αb)/(α+r)\alpha^{q}=((r-a)\alpha-b)/(\alpha+r), set β=(sqα)/(αs)\beta=(s^{q}-\alpha)/(\alpha-s), so that β𝐅q2n\beta\in{\mathbf{F}}_{q^{2n}} and α=(sβ+sq)/(β+1)\alpha=(s\beta+s^{q})/(\beta+1). Note that then

βq=(r+sqr+s)1β,\beta^{q}=\Bigl{(}\frac{r+s^{q}}{r+s\phantom{{}^{q}}}\Bigr{)}\frac{1}{\beta}\,,

and more generally

βqi={(r+sr+sq)iβif i is even;(r+sqr+s)iβ1if i is odd.\beta^{q^{i}}=\begin{cases}\displaystyle\Bigl{(}\frac{r+s\phantom{{}^{q}}}{r+s^{q}}\Bigr{)}^{i}\beta&\text{if $i$ is even{;}}\\[10.76385pt] \displaystyle\Bigl{(}\frac{r+s^{q}}{r+s\phantom{{}^{q}}}\Bigr{)}^{i}\beta^{-1}&\text{if $i$ is odd.}\\ \end{cases} (3)

Since αqn=α\alpha^{q^{n}}=\alpha and nn is odd, we find that

sβ+sqβ+1=α=αqn=sqβqn+sβqn+1=sβqn+sqβqn+1,\frac{s\beta+s^{q}}{\beta+1}=\alpha=\alpha^{q^{n}}=\frac{s^{q}\beta^{q^{n}}+s}{\beta^{q^{n}}+1}=\frac{s\beta^{-q^{n}}+s^{q}}{\beta^{-q^{n}}+1}\,,

so that βqn=β\beta^{-q^{n}}=\beta. Then (3) shows that c\colonequals(r+sq)/(r+s)𝐅q2c\colonequals(r+s^{q})/(r+s)\in{\mathbf{F}}_{q^{2}} has order nn. It is also clear that the norm of cc from 𝐅q2{\mathbf{F}}_{q^{2}} to 𝐅q{\mathbf{F}}_{q} is 11, so its order divides q+1q+1, and we see that nq+1n\mid q+1. Since βq+1=c\beta^{q+1}=c, we see that the β\beta has order dividing n(q+1)n(q+1), so that β\beta is a power of the element ξ𝐅q2n\xi\in{\mathbf{F}}_{q^{2n}} chosen in the statement of the theorem. Furthermore, if we write β=ξi\beta=\xi^{i}, then we must have gcd(i,n)=1\gcd(i,n)=1, for otherwise βq+1\beta^{q+1} would not have order nn. On the other hand, we check that if we set α=(sξi+sq)/(ξi+1)\alpha=(s\xi^{i}+s^{q})/(\xi^{i}+1) for an integer ii with gcd(i,n)=1\gcd(i,n)=1, then we have

αq=(ra)αbx+r\alpha^{q}=\frac{(r-a)\alpha-b}{x+r}

where

r=ξq+1s+sqξq+11.r=\frac{-\xi^{q+1}s+s^{q}}{\xi^{q+1}-1}\,.

Using the fact that ξ\xi has order n(q+1)n(q+1) and that nq+1n\mid q+1 we see that ξq2+qξq+1=1\xi^{q^{2}+q}\cdot\xi^{q+1}=1, and from this we calculate that rq=rr^{q}=r, so that r𝐅qr\in{\mathbf{F}}_{q}. Thus, the place associated to this α\alpha has Frobenius divisor equal to D3D_{3}.

We calculate that the subgroup of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) that stabilizes the set S3S_{3} is generated by the classes of the matrices Mu\colonequals[uab1u]M_{u}\colonequals\bigl{[}\begin{smallmatrix}u-a&-b\\ 1&\phantom{-}u\end{smallmatrix}\bigr{]} (which fix ss and sqs^{q}) and the matrix N\colonequals[1a01]N\colonequals\bigl{[}\begin{smallmatrix}-1&-a\\ \phantom{-}0&\phantom{-}1\end{smallmatrix}\bigr{]} (which swaps ss and sqs^{q}).

Suppose α\alpha and β\beta are as above, set α\colonequalsMu(α)\alpha^{\prime}\colonequals M_{u}(\alpha), and let β=(sqα)/(αs)\beta^{\prime}=(s^{q}-\alpha^{\prime})/(\alpha^{\prime}-s). We check that β=(u+s)/(u+sq)β.\beta^{\prime}=(u+s)/(u+s^{q})\beta. Since (u+s)/(u+sq)(u+s)/(u+s^{q}) is an element of 𝐅q2{\mathbf{F}}_{q^{2}} whose norm to 𝐅q{\mathbf{F}}_{q} is 11, we see that it is a power of ξn\xi^{n}. Therefore, if we write β=ξi\beta=\xi^{i} and β=ξi\beta^{\prime}=\xi^{i^{\prime}}, then iimodni^{\prime}\equiv i\bmod n. Likewise, if we let α=N(α)\alpha^{\prime}=N(\alpha) and β=(sqα)/(αs)\beta^{\prime}=(s^{q}-\alpha^{\prime})/(\alpha^{\prime}-s), then β=1/β\beta^{\prime}=1/\beta, so if we write β=ξi\beta=\xi^{i} and β=ξi\beta^{\prime}=\xi^{i^{\prime}}, then iimodn(q+1)i^{\prime}\equiv-i\bmod n(q+1). From this we see that the set {ξi| 0<i<n/2,gcd(i,n)=1}\{\xi^{i}\ |\ 0<i<n/2,\ \gcd(i,n)=1\} is a complete set of unique representatives for the action of the stabilizer of S3S_{3} on the set of β\betas, so the set

{sξi+sqξi+1| 0<i<n/2,gcd(i,n)=1}.\biggl{\{}\frac{s\xi^{i}+s^{q}}{\xi^{i}+1}\ \Big{|}\ 0<i<n/2,\ \gcd(i,n)=1\biggr{\}}\,.

is a complete set of unique representatives for the action of the stabilizer of S3S_{3} on the set of α\alphas whose associated places have Frobenius divisor D3D_{3}. The theorem follows. ∎

Remark 2.10.

The Frobenius function of a degree-33 place has degree 11, so Theorem 2.9 gives us a complete set of unique representatives for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on the degree-33 places. Of course, we already know that the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on these places is transitive, so there is only one element in such a set of representatives. It is interesting to see how the representative provided by the theorem depends on the residue class of qq modulo 33, and to see how the shape of the Frobenius divisor also depends on this residue class.

2.4. Cross polynomials

In this subsection we review the definition and main property of “cross polynomials” from [5].

Definition 2.11 (Definition 4.1 from [5]).

Let ff be a monic irreducible homogeneous polynomial in RnR_{n} with n4n\geq 4, let α𝐅qn\alpha\in{\mathbf{F}}_{q^{n}} be a root of ff, and let χ𝐅qn\chi\in{\mathbf{F}}_{q^{n}} be the cross ratio of α\alpha, αq\alpha^{q}, αq2\alpha^{q^{2}}, and αq3\alpha^{q^{3}}; that is,

χ\colonequals(αq3αq)(αq2α)(αq3α)(αq2αq).\chi\colonequals\frac{(\alpha^{q^{3}}-\alpha^{q})(\alpha^{q^{2}}-\alpha)}{(\alpha^{q^{3}}-\alpha)(\alpha^{q^{2}}-\alpha^{q})}.

The cross polynomial Cross(f)\operatorname{Cross}(f) of ff is the characteristic polynomial of χ\chi over 𝐅q{\mathbf{F}}_{q}. If PP is a place of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$}, we let Cross(P)\operatorname{Cross}(P) be the cross polynomial of the monic irreducible polynomial whose divisor is PP.

Theorem 2.12 (Theorem 4.2 from [5]).

Two monic irreducible polynomials in RnR_{n} with n4n\geq 4 lie in the same orbit under the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) if and only if they have the same cross polynomial. ∎

2.5. Coset labels and coset representatives for PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) in PGL2(𝐅q2)\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}})

In our algorithm, we will need to have an explicit list of (right) coset representatives for PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) in PGL2(𝐅q2)\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}}), as well as an easy-to-compute invariant that determines whether two elements of PGL2(𝐅q2)\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}}) lie in the same coset of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}). We begin with the explicit list.

An element of PGL2(𝐅q2)\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}}) is determined by where it sends \infty, 0, and 11, and given any three distinct elements of 𝐏1(𝐅q2){\mathbf{P}}^{1}({\mathbf{F}}_{q^{2}}), there is an element of PGL2(𝐅q2)\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}}) that sends \infty, 0, and 11 to those three elements. Thus, as in [5], we may represent elements of PGL2(𝐅q2)\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}}) by triples (ζ,η,θ)(\zeta,\eta,\theta) of pairwise distinct elements of 𝐏2(𝐅q2){\mathbf{P}}^{2}({\mathbf{F}}_{q^{2}}), indicating the images of \infty, 0, and 11.

Proposition 2.13 (Proposition 5.1 from [5]).

Let qq be a prime power, let ω\omega be an element of 𝐅q2𝐅q{\mathbf{F}}_{q^{2}}\setminus{\mathbf{F}}_{q}, and let γ\gamma be a generator for the multiplicative group of 𝐅q2{\mathbf{F}}_{q^{2}}. Let BB be the set {(ωγi+ωq)/(γi+1)| 0i<q1}.\{(\omega\gamma^{i}+\omega^{q})/(\gamma^{i}+1)\ |\ 0\leq i<q-1\bigr{\}}. The following elements give a complete set of unique coset representatives for the left action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on PGL2(𝐅q2)\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}}):

  1. 1.

    (,0,1)(\infty,0,1);

  2. 2.

    {(,0,ω+a)|a𝐅q}\bigl{\{}(\infty,0,\omega+a)\ |\ a\in{\mathbf{F}}_{q}\bigr{\}};

  3. 3.

    {(,ω,θ)|θ𝐅q2 with θω}\bigl{\{}(\infty,\omega,\theta)\ |\ \theta\in{\mathbf{F}}_{q^{2}}\text{\ with\ }\theta\neq\omega\bigr{\}};

  4. 4.

    {(ω,ωq,θ)|θB}\bigl{\{}(\omega,\omega^{q},\theta)\ |\ \theta\in B\bigr{\}};

  5. 5.

    {(ω,η,θ)|ηB,θ𝐏1(𝐅q2) with θω and θη}\bigl{\{}(\omega,\eta,\theta)\ |\ \eta\in B,\theta\in{\mathbf{P}}^{1}({\mathbf{F}}_{q^{2}})\text{\ with\ }\theta\neq\omega\text{\ and\ }\theta\neq\eta\bigr{\}}.∎

The proof of Proposition 2.13 given in [5, §5] shows how we can determine the orbit representative attached to a given element Γ\Gamma of PGL2(𝐅q2)\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}}), and we encourage the reader to consult it. Unfortunately, determining this representative involves computing a discrete logarithm. For our main algorithm we are not allowing ourselves enough memory to keep a table of logarithms, and we will be needing to identify orbits often enough that computing discrete logarithms directly would take too much time. Therefore, we introduce an orbit invariant :PGL2(𝐅q2)𝐅q2×𝐅q2×𝐅q2{\mathcal{L}}\colon\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}})\to{\mathbf{F}}_{q^{2}}\times{\mathbf{F}}_{q^{2}}\times{\mathbf{F}}_{q^{2}} that is easier to compute.

Definition 2.14.

Given ΓPGL2(𝐅q2)\Gamma\in\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}}), represented by a triple (ζ0,η0,θ0)(\zeta_{0},\eta_{0},\theta_{0}), we define (Γ){\mathcal{L}}(\Gamma) as follows:

  1. (1)

    If ζ0\zeta_{0}, η0\eta_{0}, and θ0\theta_{0} are all elements of 𝐅q{\mathbf{F}}_{q}, we define (Γ)\colonequals(0,0,1){\mathcal{L}}(\Gamma)\colonequals(0,0,1).

  2. (2)

    If ζ0\zeta_{0} and η0\eta_{0} are elements of 𝐅q{\mathbf{F}}_{q} but θ0\theta_{0} is not, we compute the orbit representative (,0,ω+a)(\infty,0,\omega+a) of Γ\Gamma using the procedure in [5, §5] and set (Γ)\colonequals(0,0,ω+a){\mathcal{L}}(\Gamma)\colonequals(0,0,\omega+a).

  3. (3)

    If ζ0\zeta_{0} lies in 𝐅q{\mathbf{F}}_{q} but η0\eta_{0} does not, we compute the orbit representative (,ω,θ)(\infty,\omega,\theta) of Γ\Gamma using the procedure in [5, §5] and set (Γ)\colonequals(0,ω,θ){\mathcal{L}}(\Gamma)\colonequals(0,\omega,\theta).

  4. (4)

    If ζ0\zeta_{0} does not lie in 𝐅q{\mathbf{F}}_{q}, we use elements of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) to move Γ\Gamma to an element of the form (ω,η,θ)(\omega,\eta,\theta) using the procedure in [5, §5].

    1. (a)

      If η=ωq\eta=\omega^{q} then we set (Γ)\colonequals(1,0,Norm𝐅q2/𝐅q(Φ(θ))){\mathcal{L}}(\Gamma)\colonequals(1,0,\operatorname{Norm}_{{\mathbf{F}}_{q^{2}}/{\mathbf{F}}_{q}}(\Phi(\theta))), where Φ\colonequals[1ωq1ω]\Phi\colonequals\bigl{[}\begin{smallmatrix}-1&\phantom{-}\omega^{q}\\ \phantom{-}1&-\omega\phantom{{}^{q}}\end{smallmatrix}\bigr{]} is as in [5, §5]. Note that if gg is an element of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) that fixes ω\omega and ωq\omega^{q}, then Φ(gθ)\Phi(g\theta) differs from Φ(θ)\Phi(\theta) by a multiplicative factor whose norm to 𝐅q{\mathbf{F}}_{q} is equal to 11, so (Γ){\mathcal{L}}(\Gamma) is well defined.

    2. (b)

      If ηωq\eta\neq\omega^{q} then we set (Γ)\colonequals(1,Norm𝐅q2/𝐅q(Φ(η)),Φ(θ)/Φ(η)){\mathcal{L}}(\Gamma)\colonequals(1,\operatorname{Norm}_{{\mathbf{F}}_{q^{2}}/{\mathbf{F}}_{q}}(\Phi(\eta)),\Phi(\theta)/\Phi(\eta)). Again we note that if we replace η\eta and θ\theta by gηg\eta and gθg\theta for an element gg of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) that fixes ω\omega, then neither the second nor third entries of the triple (Γ){\mathcal{L}}(\Gamma) given above will change.

We call the value (Γ){\mathcal{L}}(\Gamma) the orbit label of Γ\Gamma.

Proposition 2.15.

Two elements of PGL2(𝐅q2)\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}}) lie in the same PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbit if and only if their orbit labels are equal.

Proof.

The proof of [5, Proposition 5.1] and the discussion above show that that (Γ){\mathcal{L}}(\Gamma) depends only on the orbit of Γ\Gamma. On the other hand, direct computation shows that the orbit representatives given in Proposition 2.13 have different orbit labels. ∎

2.6. Orbit labels and orbit representatives for PGL2\operatorname{PGL}_{2} acting on pairs of distinct degree-22 places

Analogously to the situation in the preceding section, for our main algorithm we will need to have orbit representatives and orbit labels for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on degree-44 effective divisors of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} that are the sum P1+P2P_{1}+P_{2} of two distinct places of degree 22. Such divisors correspond to homogenous quartics fk[x,y]f\in k[x,y] that factor into the product f1f2f_{1}f_{2} of two distinct irreducible monic quadratics, with divfi=Pi\operatorname{div}f_{i}=P_{i}. Orbit representatives for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on such quartics are provided by [5, Theorems 3.4 and 3.8], so our goal here is simply to provide an easily-computable orbit label.

Given a quartic ff that factors into the product f1f2f_{1}f_{2} of two distinct irreducible monic homogeneous quadratics, we write f1=x2+sxy+ty2f_{1}=x^{2}+sxy+ty^{2} and f2=x2+uxy+vy2f_{2}=x^{2}+uxy+vy^{2}, and we define λ(f)\lambda(f) by the formula

λ(f)\colonequals(su)(svtu)+(tv)2(s24t)(u24v).\lambda(f)\colonequals\frac{(s-u)(sv-tu)+(t-v)^{2}}{(s^{2}-4t)(u^{2}-4v)}\,.

If P1P_{1} and P2P_{2} are the divisors of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} corresponding to f1f_{1} and f2f_{2}, we also set λ(P1+P2)\colonequalsλ(f)\lambda(P_{1}+P_{2})\colonequals\lambda(f).

Lemma 2.16.

The function λ\lambda is constant on PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbits of homogeneous quartics that factor as the product of distinct monic irreducible quadratics, and it takes different values on different orbits.

Proof.

We note that in odd characteristic we have 1+4λ(f)=μ(f)1+4\lambda(f)=\mu(f), where μ\mu is the function defined in Remark 3.5 of [5]. As is observed there, the function μ\mu is constant on PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbits of homogeneous quartics of the type we are considering, and it takes different values on different orbits. Therefore the same is true of λ\lambda when qq is odd.

We let the reader verify that the function λ\lambda is constant on PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbits of such quartics even in characteristic 22. On the other hand, it is easy to verify that λ\lambda takes distinct values on the orbit representatives for such quartics provided by [5, Theorem 3.8]. Thus, the lemma also holds when qq is even. ∎

3. A note about recursion

All of the main algorithms in this paper are defined recursively: The algorithm to enumerate places of degree nn up to PGL2\operatorname{PGL}_{2} uses the algorithm to enumerate effective divisors of degree at most (n+1)/2(n+1)/2 up to PGL2\operatorname{PGL}_{2}, and the algorithm to enumerate effective divisors of degree nn up to PGL2\operatorname{PGL}_{2} uses the algorithms to enumerate places of degree at most nn up to PGL2\operatorname{PGL}_{2}. Since all of these algorithms are designed to take space O(logq)O(\log q), there is no room for saving a list of all the divisors or places of a given degree, up to PGL2\operatorname{PGL}_{2}. So we have to be specific about what we mean when, as a step in one algorithm, we say something like “for every PGL2\operatorname{PGL}_{2} orbit of effective divisors of degree dd, do…”

One easy-to-conceptualize solution to this issue is to note that every algorithm that takes time O~(qe)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{e}) and space O(logq)O(\log q) to produce a list of divisors — let’s call it CompleteList(q) — can be converted into an algorithm NextElement(D,data) that takes as input one list element DD (plus some auxiliary data) and outputs the next list element (plus some auxiliary data), and that also uses O(logq)O(\log q) space and a total time of O~(qe)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{e}) to run through the whole list one elements at a time.

The idea is simple: The steps in NextElement(D,data) are the same as in CompleteList(q), except that where CompleteList(q) would output a list element DD, the algorithm NextElement(D,data) outputs DD together with all the details of the algorithm’s internal state — the line of code it is at, together with the values of all of the internal variables — and then stops. Since CompleteList(q) is assumed to take space O(logq)O(\log q), the amount of internal state is bounded by the same amount. When NextElement(D,data) is called again, with DD and its associated data as input, it simply continues as CompleteList(q) would, until it is time to output another list element.

This means that in our algorithms we can include “for” statements like the example given at the beginning of this section, and we will do so without further comment.

4. The structure of our argument

Our algorithm is recursive, and the proof that it runs correctly and within the stated bounds on time and space is inductive. Since the various steps are described in different sections, it will be helpful to outline the structure of the induction here.

Theorems 1.1 and 3.8 of [5] show that we can enumerate a complete set of unique representatives for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on the degree-44 places of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} in time O(q)O(q) and space O(logq)O(\log q). The PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbits of places of degree less than 44 can be enumerated in time O(logq)O(\log q) and space O(logq)O(\log q), as can the PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbits of effective divisors of degree less than 44. These results form the base case for our induction.

In Section 5 we show that if, for every dd with 3dn3\leq d\leq n, we can enumerate a complete set of unique representatives for the action of PGL2(k)\operatorname{PGL}_{2}(k) on places of degree dd in time O~(qd3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{d-3}) and space O(logq)O(\log q), then we can enumerate a complete set of unique representatives for the action of PGL2(k)\operatorname{PGL}_{2}(k) on the effective divisors of degree nn in time O~(qn3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{n-3}) and space O(logq)O(\log q). Note that this is enough to prove that Corollary 1.2 follows from Theorem 1.1.

For our induction, we suppose that we can enumerate a complete set of unique representatives for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on places of degree dd in time O~(qd3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{d-3}) and space O(logq)O(\log q) for every dd with 3dn13\leq d\leq n-1. By the argument in Section 5, this means that for every such dd we can also enumerate a complete set of unique representatives for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on effective divisors of degree dd in time O~(qd3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{d-3}) and space O(logq)O(\log q).

In Section 6 we show that if nn is odd, then this induction hypothesis shows that we can enumerate orbit representatives for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on places of degree nn in time O~(qn3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{n-3}) and space O(logq)O(\log q). In Section 7 we prove the same thing for even nn. Together, the arguments in these sections provide a proof of Theorem 1.1.

5. From PGL2\operatorname{PGL}_{2} orbits of places to PGL2\operatorname{PGL}_{2} orbits of effective divisors

In this section we assume that for every dd with 3dn3\leq d\leq n, we have an algorithm that can enumerate orbit representatives for PGL2(k)\operatorname{PGL}_{2}(k) acting on the degree-dd places of 𝐏1/k{\mathbf{P}}^{1}\phantom{k}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/k$}}$} in time O~(qd3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{d-3}) and using O(logq)O(\log q) space, where q=#kq=\#k. We show that under this assumption, we can produce an algorithm that can enumerate orbit representatives for PGL2(k)\operatorname{PGL}_{2}(k) acting on the effective degree-nn divisors of 𝐏1/k{\mathbf{P}}^{1}\phantom{k}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/k$}}$} in time O~(qn3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{n-3}) and using O(logq)O(\log q) space.

Let DD be an effective divisor of 𝐏1/k{\mathbf{P}}^{1}\phantom{k}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/k$}}$} and write D=mPPD=\sum m_{P}P, where the sum is over the places 𝐏1/k{\mathbf{P}}^{1}\phantom{k}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/k$}}$}, the coefficients mPm_{P} are nonnegative integers, and all but finitely many of the mPm_{P} are zero. The support of DD is the divisor

SuppD\colonequalsP:mP0P.\operatorname{Supp}D\colonequals\sum_{P\,:\,m_{P}\neq 0}P.

The divisor DD is reduced if it is equal to its own support. We begin by showing how to enumerate reduced divisors.

5.1. Enumerating reduced effective divisors up to PGL2\operatorname{PGL}_{2}

Suppose DD is a reduced effective divisor of degree at most dd, so that D=P1+PrD=P_{1}+\cdots P_{r} for distinct places PiP_{i}, and so that if we let mim_{i} be the degree of PiP_{i}, then m1++mrdm_{1}+\cdots+m_{r}\leq d. Following [5, §7], we say that sequence (mi)i(m_{i})_{i}, listed in non-increasing order, is the Galois type of DD. The degree of a Galois type is the sum of its elements. We will enumerate orbit representatives for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on reduced effective divisors of degree at most dd by enumerating each Galois type separately.

We have three strategies that together cover all but five Galois types. The first strategy works with Galois types (mi)i(m_{i})_{i} for which m13m_{1}\geq 3. The second strategy is for Galois types with m1=m2=2m_{1}=m_{2}=2. And the third strategy is for Galois types with m12m_{1}\leq 2, m2=1m_{2}=1, and with at least three mim_{i} equal to 11. The Galois type not covered by these strategies are (1)(1), (2)(2), (1,1)(1,1), (2,1)(2,1), and (2,1,1)(2,1,1). We dispose of these small cases first.

5.1.1. Small Galois types.

Let q2q_{2} be an irreducible monic quadratic polynomial in k[x,y]k[x,y]. We leave it to the reader to verify the following:

  • There is only one PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbit of the divisors of Galois type (1)(1), which can be represented by the homogeneous polynomial yy.

  • There is only one PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbit of the divisors of Galois type (1,1)(1,1), which can be represented by the homogeneous polynomial xyxy.

  • There is only one PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbit of the divisors of Galois type (2)(2), which can be represented by the homogeneous polynomial q2q_{2}.

  • There is only one PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbit of the divisors of Galois type (2,1)(2,1), which can be represented by the homogeneous polynomial yq2yq_{2}.

  • A complete set of unique representatives for the PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbits of divisors of Galois type (2,1,1)(2,1,1) is provided by [5, Theorem 3.6].

5.1.2. Galois types with m13m_{1}\geq 3.

Choose total orderings on the set of polynomials in 𝐅q[x]{\mathbf{F}}_{q}[x] and on the set of homogeneous polynomials in 𝐅q[x,y]{\mathbf{F}}_{q}[x,y]. Having chosen these orderings, it makes sense to speak of one element of one of these sets being “smaller” than another element of the same set. The following algorithm makes use of cross polynomials, as discussed in Section 2.4.

Algorithm 5.1.

Orbit representatives for PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) acting on the reduced effective divisors of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} of Galois type M=(m1,,mr)M=(m_{1},\ldots,m_{r}), where m13m_{1}\geq 3 and the degree of MM is at most nn.

  • Input:

    A prime power qq and a Galois type M=(m1,,mr)M=(m_{1},\ldots,m_{r}) of degree dnd\leq n with m13m_{1}\geq 3.

  • Output:

    A list of monic separable homogeneous polynomials in 𝐅q[x,y]{\mathbf{F}}_{q}[x,y] of degree dd whose associated divisors form a complete set of unique representatives for PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) acting on the divisors of Galois type MM.

  • 1.

    Let MM^{\prime} be the Galois type (m2,,mr)(m_{2},\ldots,m_{r}).

  • 2.

    For every orbit representative P1P_{1} for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on the degree-m1m_{1} places of 𝐏1/𝐅q,{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$}, and for every reduced effective divisor D=P2++PrD^{\prime}=P_{2}+\cdots+P_{r} of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} of Galois type MM^{\prime} that does not contain the place P1P_{1}, do:

    1. (a)

      Set χ\colonequalsCross(P1)\chi\colonequals\operatorname{Cross}(P_{1}).

    2. (b)

      If DD^{\prime} contains a place PP of degree m1m_{1} with Cross(P)\operatorname{Cross}(P) smaller than χ\chi, continue to the next pair (P1,D)(P_{1},D^{\prime}).

    3. (c)

      Let ff be the monic degree-dd homogeneous polynomial representing the divisor D\colonequalsP1+DD\colonequals P_{1}+D^{\prime}.

    4. (d)

      Set F\colonequals{Γ(f)}F\colonequals\{\Gamma(f)\}, where Γ\Gamma ranges over the elements of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) that send some degree-m1m_{1} place of DD with cross polynomial χ\chi to P1P_{1}.

    5. (e)

      If ff is the smallest element of FF, output ff.

Remark 5.2.

Note that the Γ\Gamma considered in step 2(d) include the Γ\Gamma in the PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) stabilizer of P1P_{1}.

Proposition 5.3.

Algorithm 5.1 produces a complete set of unique representatives for the orbits of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) acting on the reduced effective divisors of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} of Galois type MM. It runs in time O~(qd3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{d-3}), measured in arithmetic operations in 𝐅q{\mathbf{F}}_{q}, and requires O(logq)O(\log q) space.

Proof.

The algorithm produces correct results, because every effective divisor DD of Galois type MM is in the same orbit as divisors of the form P1+DP_{1}+D^{\prime} where P1P_{1} is in the given set of orbit representatives and DD^{\prime} is a divisor of Galois type MM^{\prime}, none of whose constituent places has degree m1m_{1} and has cross polynomial smaller than that of P1P_{1}. Every such orbit representative will be considered in steps 2(c) and 2(d), but only one will satisfy the requirement of step 2(d) and be output.

The time it takes to process each (P1,D)(P_{1},D^{\prime}) pair is polynomial in logq\log q. The time to generate the representatives P1P_{1} is O~(qm13)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{m_{1}-3}), by the global hypotheses of this section. The time to generate all the reduced effective divisors of Galois type MM^{\prime} is O~(qdm1)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{d-m_{1}}). All told, the time required for the algorithm is therefore O~(qd3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{d-3}).

Generating the representatives P1P_{1} takes space O(logq)O(\log q) by hypothesis. Generating the effective divisors of type MM^{\prime} can also be done in this space (keep in mind that nn is fixed for the purposes of this algorithm, so any dependencies on nn can be absorbed into constant factors). And the substeps of step 2 can also be accomplished in O(logq)O(\log q) space. Thus, the whole algorithm requires only O(logq)O(\log q) space. ∎

5.1.3. Galois types with m1=m2=2m_{1}=m_{2}=2.

In the preceding subsection we “absorbed” all of the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) into a single place of degree m1m_{1}. Now we do something similar with pairs of places of degree 22.

Algorithm 5.4.

Orbit representatives for PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) acting on the reduced effective divisors of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} of Galois type M=(m1,,mr)M=(m_{1},\ldots,m_{r}), where m1=m2=2m_{1}=m_{2}=2 and the degree of MM is at most nn.

  • Input:

    A prime power qq and a Galois type M=(m1,,mr)M=(m_{1},\ldots,m_{r}) of degree dnd\leq n with m1=m2=2m_{1}=m_{2}=2.

  • Output:

    A list of monic separable homogeneous polynomials in 𝐅q[x,y]{\mathbf{F}}_{q}[x,y] of degree dd whose associated divisors form a complete set of unique representatives for PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) acting on the divisors of Galois type MM.

  • 1.

    Let MM^{\prime} be the Galois type (m3,,mr)(m_{3},\ldots,m_{r}).

  • 2.

    For every sum P1+P2P_{1}+P_{2} of degree-22 places of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} listed in Theorems 3.4 and 3.8 of [5], and for every reduced effective divisor D=P3++PrD^{\prime}=P_{3}+\cdots+P_{r} of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} of Galois type MM^{\prime} that does not contain either of the places P1P_{1} and P2P_{2}, do:

    1. (a)

      Set χ\colonequalsλ(P1+P2)\chi\colonequals\lambda(P_{1}+P_{2}), where λ\lambda is the function defined in §2.6.

    2. (b)

      If P1+P2+DP_{1}+P_{2}+D^{\prime} contains two degree-22 places Q1Q_{1} and Q2Q_{2} with λ(Q1+Q2)\lambda(Q_{1}+Q_{2}) smaller than χ\chi, continue to the next pair (P1+P2,D)(P_{1}+P_{2},D^{\prime}).

    3. (c)

      Let ff be the monic degree-dd homogeneous polynomial representing the divisor D\colonequalsP1+P2+DD\colonequals P_{1}+P_{2}+D^{\prime}.

    4. (d)

      Set F\colonequals{Γ(f)}F\colonequals\{\Gamma(f)\}, where Γ\Gamma ranges over the elements of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) that send some pair (Q1,Q2)(Q_{1},Q_{2}) of degree-22 places of DD with λ(Q1+Q2)=χ\lambda(Q_{1}+Q_{2})=\chi to P1+P2P_{1}+P_{2}.

    5. (e)

      If ff is the smallest element of FF, output ff.

Proposition 5.5.

Algorithm 5.4 produces a complete set of unique representatives for the orbits of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) acting on the reduced effective divisors of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} of Galois type MM. It runs in time O~(qd3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{d-3}), measured in arithmetic operations in 𝐅q{\mathbf{F}}_{q}, and requires O(logq)O(\log q) space.

Proof.

The proof is entirely analogous to that of Proposition 5.3. ∎

5.1.4. Galois types with m2=1m_{2}=1 and with at least three 11s

This is perhaps the most straightforward case to deal with, since we can normalize our divisors by demanding that three of their degree-11 places be \infty, 0, and 11.

Algorithm 5.6.

Orbit representatives for PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) acting on the reduced effective divisors of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} of Galois type M=(m1,,mr)M=(m_{1},\ldots,m_{r}), where m2=1m_{2}=1, at least three of the mim_{i} are equal to 11, and the degree of MM is at most nn.

  • Input:

    A prime power qq and a Galois type M=(m1,,mr)M=(m_{1},\ldots,m_{r}) of degree dnd\leq n with m2=1m_{2}=1 and with at least three mim_{i} equal to 11.

  • Output:

    A list of monic separable homogeneous polynomials in 𝐅q[x,y]{\mathbf{F}}_{q}[x,y] of degree dd whose associated divisors form a complete set of unique representatives for PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) acting on the divisors of Galois type MM.

  • 1.

    Let MM^{\prime} be the Galois type (m1,,mr3)(m_{1},\ldots,m_{r-3}).

  • 2.

    Let D0D_{0} be the degree-33 divisor consisting of the places at \infty, 0, and 11.

  • 3.

    For every reduced effective divisor D=P1++Pr3D^{\prime}=P_{1}+\cdots+P_{r-3} of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} of Galois type MM^{\prime} that is disjoint from D0D_{0}, do:

    1. (a)

      Let ff be the monic degree-dd homogeneous polynomial representing the divisor D\colonequalsD0+DD\colonequals D_{0}+D^{\prime}.

    2. (b)

      Set F\colonequals{Γ(f)}F\colonequals\{\Gamma(f)\}, where Γ\Gamma ranges over the elements of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) that send some triple (Q1,Q2,Q3)(Q_{1},Q_{2},Q_{3}) of degree-11 places of DD to D0D_{0}.

    3. (c)

      If ff is the smallest element of FF, output ff.

Proposition 5.7.

Algorithm 5.6 produces a complete set of unique representatives for the orbits of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) acting on the reduced effective divisors of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} of Galois type MM. It runs in time O~(qd3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{d-3}), measured in arithmetic operations in 𝐅q{\mathbf{F}}_{q}, and requires O(logq)O(\log q) space.

Proof.

The proof is again essentially the same as that of Propositions 5.3 and 5.5. ∎

5.2. Enumerating effective divisors up to PGL2\operatorname{PGL}_{2}

Given the results of the preceding subsection, it is a simple matter to produce a complete set of unique representatives for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on the degree-nn effective divisors of 𝐏𝐅q1{\mathbf{P}}^{1}_{\/{\mathbf{F}}_{q}}. The support of such a divisor is a reduced effective divisor of degree at most nn, and the algorithms we have given above will produce a complete set of unique representatives for these in time O~(qn3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{n-3}) and space O(logq)O(\log q).

For each divisor SS in this set, we do the following. The divisor SS is simply a collection of places PP of 𝐏1/k{\mathbf{P}}^{1}\phantom{k}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/k$}}$}, and our task consists of two steps: First, we must find all sets of positive integers {mP}PS\{m_{P}\}_{P\in S} such that PSmPdegP=n\sum_{P\in S}m_{P}\deg P=n. Each such set gives a divisor DD of degree nn. Then, we must take the list of all such DD for the given SS, check to see which DD are in the same PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbit, and then choose one element from each orbit to output.

Finding all the sets {mP}PS\{m_{P}\}_{P\in S} can be done in constant time, since nn is fixed, so we have a bounded number of degree-nn divisors associated to a given SS. The number of pairs of such divisors is also bounded in terms of nn. Comparing two such divisors to see whether they are in the same PGL2(k)\operatorname{PGL}_{2}(k) orbit can be done in time polynomial in logq\log q; the most direct method involves finding explicit isomorphisms between the residue fields of two places of the same degree, and we can accomplish this either by using a polynomial factorization algorithm, or by choosing our data structure for places of degree dd to include an explicit Galois-stable collection of dd points in a fixed copy of 𝐅qd{\mathbf{F}}_{q^{d}} (see the following section). In any case, this can be done in the required time and space.

This sketch shows that we can output a complete set of unique representatives for the action of PGL2(k)\operatorname{PGL}_{2}(k) on the set of effective divisors of degree nn in time O~(qn3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{n-3}) and using O(logq)O(\log q) space, under the assumption that we can accomplish the same task for places of degree at most nn.

6. Enumerating places of odd degree up to PGL2\operatorname{PGL}_{2}

Here we present an algorithm for enumerating representatives for the orbits of PGL2(k)\operatorname{PGL}_{2}(k) acting on the places of 𝐏1{\mathbf{P}}^{1} of odd degree nn over a finite field kk, using O(logq)O(\log q) space and O~(qn3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{n-3}) time, where q=#kq=\#k. Our hypothesis throughout this section is that we can accomplish this same task for places of every degree dd smaller than nn, and by the results of the preceding section this hypothesis implies that we can also enumerate representatives for the orbits of PGL2(k)\operatorname{PGL}_{2}(k) acting on the effective divisors of 𝐏1{\mathbf{P}}^{1} of degree less than nn.

The algorithm requires us to manipulate effective divisors of 𝐏1/k{\mathbf{P}}^{1}\phantom{k}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/k$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/k$}}$} of degree up to nn, so we need to specify the data structure we use to represent such divisors. Let q=#kq=\#k. Before we begin the algorithm proper, we compute copies of the fields 𝐅qi{\mathbf{F}}_{q^{i}} for 1<in1<i\leq n. We represent places of degree i>1i>1 by Galois-stable collections of ii elements of 𝐅qi{\mathbf{F}}_{q^{i}} that lie in no proper subfield, we represent places of degree 11 by elements of 𝐅q{\mathbf{F}}_{q} together with the symbol \infty, and we represent divisors as formal sums of such places. This representation makes it easy to check whether two divisors of the same degree are in the same orbit under the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}), without having to factor polynomials or find their roots in extension fields.

By “computing a copy of the field 𝐅qi{\mathbf{F}}_{q^{i}},” we mean computing a basis a1,,aia_{1},\ldots,a_{i} for 𝐅qi{\mathbf{F}}_{q^{i}} as a vector space over 𝐅q{\mathbf{F}}_{q} and a multiplication table for this basis. We choose our basis so that a1=1a_{1}=1.

Algorithm 6.1.

Orbit representatives for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on the degree-nn places of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$}, where n5n\geq 5 is a fixed odd integer.

  • Input:

    A prime power qq.

  • Output:

    A sequence of monic irreducible polynomials in 𝐅q[x,y]{\mathbf{F}}_{q}[x,y] of degree nn whose associated divisors form a complete set of unique representatives for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on the degree-nn places of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$}.

  • 1.

    Compute copies of 𝐅qi{\mathbf{F}}_{q^{i}} for 1in1\leq i\leq n so that we can represent divisors as described above.

  • 2.

    Choose an efficiently computable total ordering << on the set of rational functions on 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$}.

  • 3.

    Output the places listed in Theorem 2.9 for the given values of nn and qq.

  • 4.

    For every orbit representative DD for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on the effective divisors of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} of degree at least 33 and at most (n+1)/2(n+1)/2, do:

    1. (a)

      For every function FF obtained from Proposition 2.6 applied to DD, do:

      1. (i)

        For every element Γ\Gamma of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) that fixes DD, compare ΓFΓ1\Gamma\circ F\circ\Gamma^{-1} to FF in the ordering from step 2. If ΓFΓ1<F\Gamma\circ F\circ\Gamma^{-1}<F for any such Γ\Gamma, then skip to the next value of FF. (See the proof of Theorem 6.2 for more details about this step.)

      2. (ii)

        Compute the nn-fold iterate F(n)F^{(n)} of FF and set gg to be the numerator of the rational function x/yF(n)x/y-F^{(n)}.

      3. (iii)

        Set LL to be an empty list.

      4. (iv)

        For every monic irreducible degree-nn factor ff of gg, check to see whether FF is the Frobenius function for ff. If so, append the ordered pair (Crossf,f)(\operatorname{Cross}f,f) to LL.

      5. (v)

        Sort LL. For every pair (Crossf,f)(\operatorname{Cross}f,f) on the list such that Crossf\operatorname{Cross}f does not appear as the first element of an earlier pair, output the place associated to ff.

Theorem 6.2.

Algorithm 6.1 outputs a complete set of unique representatives for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on the degree-nn places of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$}. With step 4(a)(a)(i) implemented as described below, it runs in time O~(qn3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{n-3}) and requires O(logq)O(\log q) space.

Proof.

First we prove that the output is correct: We must show that every orbit of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) acting on the degree-nn places of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} has exactly one representative included in the output of the algorithm.

The orbits of places whose Frobenius divisors have degree 22 will appear in the output from step 3.

Consider an orbit 𝒫{\mathcal{P}} of places whose Frobenius divisors have degree at least 33. Among the Frobenius divisors of the polynomials representing elements of 𝒫{\mathcal{P}}, there is exactly one that appears as a divisor DD in step 4. Now consider the set SS elements of 𝒫{\mathcal{P}} whose Frobenius divisors are equal to DD, and let {\mathcal{F}} be the set of Frobenius functions of elements of SS. Exactly one element of {\mathcal{F}} satisfies the condition checked in step 4(a)(a)(i): namely, the smallest element FF of {\mathcal{F}} under the ordering chosen in step 2.

Now we narrow our consideration to the elements of 𝒫{\mathcal{P}} whose Frobenius functions are equal to this FF. Each such element is represented by a unique monic irreducible homogenous polynomial ff. Let α\alpha be a root of ff. Since FF is the Frobenius function for ff we have [αq: 1]=F([α: 1])[\alpha^{q}\,{:}\,1]=F([\alpha\,{:}\,1]), and it follows that [αqi: 1]=F(i)([α: 1])[\alpha^{q^{i}}\,{:}\,1]=F^{(i)}([\alpha\,{:}\,1]) for every ii. In particular,

[α: 1]=[αqn: 1]=F(n)([α: 1]),[\alpha\,{:}\,1]=[\alpha^{q^{n}}\,{:}\,1]=F^{(n)}([\alpha\,{:}\,1])\,,

so [α: 1][\alpha\,{:}\,1] is a fixed point of F(n)F^{(n)}, and ff must divide the numerator of the polynomial gg defined in step 4(a)(a)(ii). Therefore, ff occurs as one of the polynomials in step 4(a)(a)(iv) for which (Crossf,f)(\operatorname{Cross}f,f) is appended to LL.

We know that the algorithm will output the place associated to some polynomial ff^{\prime} with Crossf=Crossf\operatorname{Cross}f^{\prime}=\operatorname{Cross}f. From Theorem 2.12, we know that this place is in the PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbit of 𝒫{\mathcal{P}}. This shows that at least one representative from each PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbit of places is included in the output; it remains to show that no orbit is represented more than once.

Suppose ff^{\prime} is an irreducible homogenous polynomial in the same PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbit as ff, say f=Γ(f)f^{\prime}=\Gamma(f). We would like to show that if fff^{\prime}\neq f then ff^{\prime} will not appear in the output of the algorithm. To see this is the case, we let FF^{\prime} be the Frobenius function for ff^{\prime}, so that F=ΓFΓ1F^{\prime}=\Gamma\circ F\circ\Gamma^{-1} and Φ(F)=Γ(Φ(F))\Phi(F^{\prime})=\Gamma(\Phi(F)), by Lemma 2.4. If Φ(F)Φ(F)\Phi(F^{\prime})\neq\Phi(F) then ff^{\prime} will not appear in the output, because in step 4 we choose only one representative DD for each PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbit of divisors. So let us assume that Φ(F)=Φ(F)\Phi(F^{\prime})=\Phi(F); that is, we assume that Γ\Gamma fixes D\colonequalsΦ(F)D\colonequals\Phi(F).

This means that Γ\Gamma is one of the elements of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) that we consider in step 4(a)(a)(i). So in order for ff^{\prime} to appear in the output, we must have F=FF^{\prime}=F. This means that ff^{\prime} and ff will both appear on the list LL produced in steps 4(a)(a)(iii) and 4(a)(a)(iv). So after we sort LL in step 4(a)(a)(v), only the smaller of ff and ff^{\prime} will be output. This shows that no orbit is represented more than once in our output, so the output is correct.

To analyze the time and space requirements of the algorithm, we must say a little more about how step 4(a)(a)(i) can be implemented; in particular, we must specify how to compute the PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q})-stabilizer of DD. So consider an effective divisor DD of degree at least 33 and at most (n+1)/2(n+1)/2.

Let SS denote the support of the divisor DD. If the degree of SS is at least 33, then computing the stabilizer is straightforward, and its size is bounded by (n+12)!(\frac{n+1}{2})!, which means that it is O(1)O(1). So let us turn to the case where SS has degree 11 or 22. First we list the divisors we must consider.

Let PP_{\infty} be the place at infinity, let P0P_{0} be the place at 0, and let P2P_{2} be the place corresponding to an irreducible quadratic x2uxy+vy2x^{2}-uxy+vy^{2}, which we fix for the course of this discussion. If the degree of SS is 11 or 22, then we may assume that SS is either PP_{\infty}, P+P0P_{\infty}+P_{0}, or P2P_{2}. We then find that the divisors with supports of degree 11 or 22 that we must consider, and their stabilizers, are as in Table 1.

Table 1. Representative effective divisors of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$} of degree between 33 and (n+1)/2(n+1)/2 with supports of degree at most 22, together with their PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) stabilizers. Here PP_{\infty} and P0P_{0} are the places at \infty and 0, respectively, and P2P_{2} is the place corresponding to an irreducible quadratic x2uxy+vy2x^{2}-uxy+vy^{2}.
Divisor Conditions Stabilizer
mPmP_{\infty} 3mn+123\leq m\leq\frac{n+1}{2} {[ab01]|a𝐅q×,b𝐅q}\bigl{\{}\bigl{[}\begin{smallmatrix}a&b\\ 0&1\end{smallmatrix}\bigr{]}\ |\ a\in{\mathbf{F}}_{q}^{\times},b\in{\mathbf{F}}_{q}\bigr{\}}
mP+m0P0m_{\infty}P_{\infty}+m_{0}P_{0} 1m0<m1\leq m_{0}<m_{\infty} {[a001]|a𝐅q×}\bigl{\{}\bigl{[}\begin{smallmatrix}a&0\\ 0&1\end{smallmatrix}\bigr{]}\ |\ a\in{\mathbf{F}}_{q}^{\times}\bigr{\}}
m+m0n+12m_{\infty}+m_{0}\leq\frac{n+1}{2}
mP+mP0mP_{\infty}+mP_{0} 2mn+142\leq m\leq\frac{n+1}{4} {[a001]|a𝐅q×}{[0a10]|a𝐅q×}\bigl{\{}\bigl{[}\begin{smallmatrix}a&0\\ 0&1\end{smallmatrix}\bigr{]}\ |\ a\in{\mathbf{F}}_{q}^{\times}\bigr{\}}\cup\bigl{\{}\bigl{[}\begin{smallmatrix}0&a\\ 1&0\end{smallmatrix}\bigr{]}\ |\ a\in{\mathbf{F}}_{q}^{\times}\bigr{\}}
mP2mP_{2} 2mn+142\leq m\leq\frac{n+1}{4} {[abvbbu+a]|[a:b]𝐏1(𝐅q)}\bigl{\{}\bigl{[}\begin{smallmatrix}a&-bv\phantom{+a}\\ b&-bu+a\end{smallmatrix}\bigr{]}\ |\ [a\,{:}\,b]\in{\mathbf{P}}^{1}({\mathbf{F}}_{q})\bigr{\}}
      {[aau+bvba]|[a:b]𝐏1(𝐅q)}\cup\ \bigl{\{}\bigl{[}\begin{smallmatrix}a&-au+bv\\ b&-a\phantom{u+bv}\end{smallmatrix}\bigr{]}\ |\ [a\,{:}\,b]\in{\mathbf{P}}^{1}({\mathbf{F}}_{q})\bigr{\}}

Now we can analyze the time taken by the algorithm. The total time to compute the orbit representatives DD in step 4 is O~(q(n5)/2)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{(n-5)/2}), by the global hypotheses of this section, and there are O(q(n5)/2)O(q^{(n-5)/2}) such divisors. To each DD there are associated at most q(n1)/2q^{(n-1)/2} functions FF, by Corollary 2.7.

First we consider the divisors whose support has degree at least 33. There are O(q(n5)/2)O(q^{(n-5)/2}) of these divisors, and each gives rise to at most q(n1)/2q^{(n-1)/2} possible Frobenius functions FF. The total time to process all of these divisors DD is therefore O~(qn3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{n-3}).

Next we consider the divisors with support of degree 11 or 22. If DD is one of the (n3)/2(n-3)/2 divisors that appears in the first row of Table 1, there are at most q(n1)/2q^{(n-1)/2} associated functions FF, and it will take time O~(q2)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{2}) to process each one. Therefore, the total time to process all of these DD is O~(q(n+3)/2)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{(n+3)/2}).

For the O(n2)O(n^{2}) divisors from the other rows of the table, there are again at most q(n1)/2q^{(n-1)/2} associated functions FF, and it takes time O~(q)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q) to process each FF. Therefore, the total time to process all of these DD is O~(q(n+1)/2)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{(n+1)/2}).

If n9n\geq 9, then (n+3)/2n3(n+3)/2\leq n-3, so the time it takes to process these special divisors falls within our desired upper bound. For n=7n=7, the time for divisors with support of degree 22 falls within our desired upper bound, but the time for divisors with support of degree 11 does not. And for n=5n=5, even the divisors with support of degree 22 take too long for us. So we must consider the cases n=5n=5 and n=7n=7 separately, and modify our algorithm for these cases.

Suppose n=5n=5. We see that there are only two divisors we must consider, namely 3P3P_{\infty} and 2P+P02P_{\infty}+P_{0}. Let us start with D=3PD=3P_{\infty}.

From Proposition 2.6 we compute that the rational functions FF with Φ(F)=D\Phi(F)=D are the functions

F\colonequalsx2+rxy+sy2xy+ry2F\colonequals\frac{x^{2}+rxy+sy^{2}}{xy+ry^{2}}

for r𝐅qr\in{\mathbf{F}}_{q} and s𝐅q×s\in{\mathbf{F}}_{q}^{\times}. If qq is odd, pick a nonsquare ν𝐅q\nu\in{\mathbf{F}}_{q}. No matter the parity of qq, choose a𝐅q×a\in{\mathbf{F}}_{q}^{\times} so that sa2sa^{2} is either 11 or ν\nu, set b=arb=ar, and consider the element Γ=[ab01]\Gamma=\bigl{[}\begin{smallmatrix}a&b\\ 0&1\end{smallmatrix}\bigr{]} of the stabilizer of DD. We compute that

ΓFΓ1=x2+sa2y2xy.\Gamma\circ F\circ\Gamma^{-1}=\frac{x^{2}+sa^{2}y^{2}}{xy}\,.

For odd qq, it is easy to check that the two functions (x2+y2)/(xy)(x^{2}+y^{2})/(xy) and (x2+νy2)/(xy)(x^{2}+\nu y^{2})/(xy) are not in the same PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbit. Thus, to process the divisor D=3PD=3P_{\infty} we need only consider at most 22 specific functions, each one taking time O~(1)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(1) to process.

Now suppose D=2P+P0D=2P_{\infty}+P_{0}. The functions FF with Φ(F)=D\Phi(F)=D are

F\colonequalsx2+sxyxy+ry2F\colonequals\frac{x^{2}+sxy}{xy+ry^{2}}

where srs\neq r. The stabilizer of DD in PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) consists of the elements Γ=[a001]\Gamma=\bigl{[}\begin{smallmatrix}a&0\\ 0&1\end{smallmatrix}\bigr{]} with aa nonzero, and we compute that

ΓFΓ1=x2+asxyxy+ary2.\Gamma\circ F\circ\Gamma^{-1}=\frac{x^{2}+asxy}{xy+ary^{2}}\,.

Therefore, up to the stabilizer of DD, the only functions we have to consider are (x2+sxy)/(xy+y2)(x^{2}+sxy)/(xy+y^{2}) (with s1s\neq 1) and (x2+xy)/(xy)(x^{2}+xy)/(xy). The total time to process all of these functions is O~(q)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q), which is within our desired bound of O~(q2)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{2}).

Now we turn to the case n=7n=7. The divisor 3P3P_{\infty} can be treated as described above. Thus the only remaining divisor we must treat specially is D=4PD=4P_{\infty}. We leave it to the reader to show that if qq is odd, then each orbit of functions FF with Φ(F)=D\Phi(F)=D under the action of the stabilizer of DD contains exactly one element in the set

{x3+rxy2+ry3x2y+ry3|r𝐅q×}{x3+ry3x2y|rS}\Bigl{\{}\frac{x^{3}+rxy^{2}+ry^{3}}{x^{2}y+ry^{3}}\ \Big{|}\ r\in{\mathbf{F}}_{q}^{\times}\Bigr{\}}\cup\Bigl{\{}\frac{x^{3}+ry^{3}}{x^{2}y}\ \Big{|}\ r\in S\Bigr{\}}

where SS is a set of representatives for 𝐅q×/𝐅q×3{\mathbf{F}}_{q}^{\times}/{\mathbf{F}}_{q}^{\times 3}. The total time to process these functions is O~(q)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q), which is less than our goal of O~(q4)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{4}). On the other hand, if qq is even and if we choose an element ν𝐅q\nu\in{\mathbf{F}}_{q} of absolute trace 11, then then each orbit of functions FF with Φ(F)=D\Phi(F)=D under the action of the stabilizer of DD contains exactly one element in the set

{x3+x2y+rxy2+sy3x2y+xy2+ry3|r{0,ν},s𝐅q×}{x3+ry3x2y|rS}\Bigl{\{}\frac{x^{3}+x^{2}y+rxy^{2}+sy^{3}}{x^{2}y+xy^{2}+ry^{3}}\ \Big{|}\ r\in\{0,\nu\},s\in{\mathbf{F}}_{q}^{\times}\Bigr{\}}\cup\Bigl{\{}\frac{x^{3}+ry^{3}}{x^{2}y}\ \Big{|}\ r\in S\Bigr{\}}

where SS is again a set of representatives for 𝐅q×/𝐅q×3{\mathbf{F}}_{q}^{\times}/{\mathbf{F}}_{q}^{\times 3}. The total time to process these functions is again O~(q)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q).

We see that in every case, the algorithm can be implemented to take time O~(qn3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{n-3}). The fact that it requires space O(logq)O(\log q) is clear. ∎

7. Enumerating places of even degree up to PGL2\operatorname{PGL}_{2}

In this section we present an algorithm for enumerating representatives for the orbits of PGL2(k)\operatorname{PGL}_{2}(k) acting on the places of 𝐏1{\mathbf{P}}^{1} of even degree nn over a finite field kk, using O(logq)O(\log q) space and O~(qn3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{n-3}) time, where q=#kq=\#k. As in the preceding section, our hypothesis throughout this section is that we can accomplish this same task for places of every degree dd smaller than nn — but we will only need to use the case d=n/2d=n/2 of this hypothesis.

The spirit of the algorithm is similar to that of [5, Algorithm 7.12]. In that algorithm we produce a large list of orbit representatives that includes roughly two entries for each orbit, and then deduplicate the list by using cross polynomials. The main difference here is that instead we take much more care in producing the list to begin with, so that we do not have to use memory to store the list.

The algorithm makes use of the coset labeling function {\mathcal{L}} from Definition 2.14.

Algorithm 7.1.

Orbit representatives for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on the degree-nn places of 𝐏1{\mathbf{P}}^{1} over 𝐅q{\mathbf{F}}_{q}, where n6n\geq 6 is a fixed even integer.

  • Input:

    A prime power qq.

  • Output:

    A sequence of monic irreducible polynomials in 𝐅q[x,y]{\mathbf{F}}_{q}[x,y] of degree nn whose associated divisors form a complete set of unique representatives for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on the degree-nn places of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$}.

  • 1.

    Choose efficiently computable total orderings << on the set 𝐅q2×𝐅q2×𝐅q2{\mathbf{F}}_{q^{2}}\times{\mathbf{F}}_{q^{2}}\times{\mathbf{F}}_{q^{2}} and on the set of polynomials 𝐅q2[x]{\mathbf{F}}_{q^{2}}[x].

  • 2.

    For every orbit representative PP for the action of PGL2(𝐅q2)\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}}) on the places of 𝐏1/𝐅q2{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q^{2}}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q^{2}}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q^{2}}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q^{2}}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q^{2}}$}}$} of degree n/2n/2, do:

    1. (a)

      If Cross(P(q))<Cross(P)\operatorname{Cross}(P^{(q)})<\operatorname{Cross}(P) then skip to the next value of PP.

    2. (b)

      For every orbit representative Γ\Gamma from Proposition 2.13 for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on PGL2(𝐅q2)\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}}), do:

      1. (i)

        For every ΨPGL2(𝐅q2)\Psi\in\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}}) that fixes PP, compare (ΓΨ){\mathcal{L}}(\Gamma\Psi) to (Γ){\mathcal{L}}(\Gamma). If (ΓΨ)<(Γ){\mathcal{L}}(\Gamma\Psi)<{\mathcal{L}}(\Gamma) for any such Ψ\Psi, skip to the next value of Γ\Gamma.

      2. (ii)

        If Cross(P(q))=Cross(P)\operatorname{Cross}(P^{(q)})=\operatorname{Cross}(P), then for every ΨPGL2(𝐅q2)\Psi\in\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}}) that takes PP to P(q)P^{(q)}, compare (Γ(q)Ψ){\mathcal{L}}(\Gamma^{(q)}\Psi) to (Γ){\mathcal{L}}(\Gamma). If (Γ(q)Ψ)<(Γ){\mathcal{L}}(\Gamma^{(q)}\Psi)<{\mathcal{L}}(\Gamma) for any such Ψ\Psi, skip to the next value of Γ\Gamma.

      3. (iii)

        Let f𝐅q2[x,y]f\in{\mathbf{F}}_{q^{2}}[x,y] be the monic homogeneous polynomial associated to the place PP. If Γ(f)\Gamma(f) does not lie in 𝐅q[x,y]{\mathbf{F}}_{q}[x,y], output the product of Γ(f)\Gamma(f) with its conjugate Γ(q)(f(q))\Gamma^{(q)}(f^{(q)}).

Theorem 7.2.

Algorithm 7.1 outputs a complete set of unique representatives for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on the degree-nn places of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$}. It runs in time O~(qn3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{n-3}) and requires O(logq)O(\log q) space.

Proof.

Let m=n/2m=n/2. Every monic irreducible degree-nn homogeneous polynomial f𝐅q[x,y]f\in{\mathbf{F}}_{q}[x,y] factors in 𝐅q2[x,y]{\mathbf{F}}_{q^{2}}[x,y] into a product gg(q)gg^{(q)} of a monic irreducible degree-mm polynomial gg with its conjugate, and gg is unique up to conjugation over 𝐅q{\mathbf{F}}_{q}. So what we would like to do is to enumerate the set of degree-mm places of 𝐏1/𝐅q2{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q^{2}}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q^{2}}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q^{2}}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q^{2}}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q^{2}}$}}$} that are not the lifts of degree-mm places of 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$}, up to the combined action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) and Gal(𝐅q2/𝐅q)\operatorname{Gal}({\mathbf{F}}_{q^{2}}/{\mathbf{F}}_{q}).

By our induction hypothesis, we already know how to get a complete set of unique representatives for the action of PGL2(𝐅q2)\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}}) on the degree-mm places QQ of 𝐏1/𝐅q2{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q^{2}}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q^{2}}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q^{2}}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q^{2}}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q^{2}}$}}$}, so all we must do is figure out how to expand the representative QQ for a given PGL2(𝐅q2)\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}}) orbit to get representatives for the PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbits without introducing duplicates, and all up to the action of Gal(𝐅q2/𝐅q)\operatorname{Gal}({\mathbf{F}}_{q^{2}}/{\mathbf{F}}_{q}).

We will certainly obtain representatives for all of the PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbits that are in the PGL2(𝐅q2)\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}}) orbit of a place QQ if we simply consider the set of places {Γ(Q)}\{\Gamma(Q)\}, for the Γ\Gamma listed in Proposition 2.13. But when will we get multiple representatives?

We will get multiple representatives exactly when we are in the situation that Γ1(Q)=ΦΓ2(Q)\Gamma_{1}(Q)=\Phi\Gamma_{2}(Q), where Φ\Phi is a nontrivial element of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) and where Γ1\Gamma_{1} and Γ2\Gamma_{2} are elements of PGL2(𝐅q2)\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}}) such that Γ1PGL2(𝐅q)Γ2\Gamma_{1}\not\in\operatorname{PGL}_{2}({\mathbf{F}}_{q})\cdot\Gamma_{2}. We see that this can only happen when there is an element Ψ\Psi of the PGL2(𝐅q2)\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}}) stabilizer of QQ such that Γ1=ΦΓ2Ψ\Gamma_{1}=\Phi\Gamma_{2}\Psi; in other words, for a given Γ1\Gamma_{1} and Γ2\Gamma_{2} there will only be such an element Φ\Phi when there is a Ψ\Psi in the stabilizer of QQ such that Γ1\Gamma_{1} and Γ2Ψ\Gamma_{2}\Psi are in the same PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbit. We can tell whether this is the case by comparing (Γ1){\mathcal{L}}(\Gamma_{1}) with (Γ2Ψ){\mathcal{L}}(\Gamma_{2}\Psi). In step 2(b)(b)(i)of Algorithm 7.1, we compare (Γ){\mathcal{L}}(\Gamma) to (ΓΨ){\mathcal{L}}(\Gamma\Psi) for all such Ψ\Psi, and move on to the next Γ\Gamma if (Γ){\mathcal{L}}(\Gamma) is not the smallest of these orbit labels. This is enough to ensure that we are getting a complete set of unique representatives for the action of PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) on the set of degree-mm places of 𝐏1/𝐅q2{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q^{2}}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q^{2}}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q^{2}}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q^{2}}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q^{2}}$}}$}.

The only other way we may output more than one representative for the same orbit is if we have two orbit representatives P1P_{1} and P2P_{2} from step 2, and two elements Γ1\Gamma_{1} and Γ2\Gamma_{2} from step 2(b), such that the pairs (P1,Γ1)(P_{1},\Gamma_{1}) and (P2,Γ2)(P_{2},\Gamma_{2}) are not equal to one another, but such that the Galois conjugate of Γ2(P2)\Gamma_{2}(P_{2}) lies in the PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbit of Γ1(P1)\Gamma_{1}(P_{1}). This will be the case precisely when Γ1=ΦΓ2(q)Ψ\Gamma_{1}=\Phi\Gamma_{2}^{(q)}\Psi for some ΨPGL2(𝐅q2)\Psi\in\operatorname{PGL}_{2}({\mathbf{F}}_{q^{2}}) that takes P1P_{1} to P2(q)P_{2}^{(q)} and for some ΦPGL2(𝐅q)\Phi\in\operatorname{PGL}_{2}({\mathbf{F}}_{q}). Note that this can only happen if Cross(P1)=Cross(P2(q))\operatorname{Cross}(P_{1})=\operatorname{Cross}(P_{2}^{(q)}), and in fact does happen in this case. We avoid this in two ways:

First, we only consider places PP such that Cross(P)Cross(P(q))\operatorname{Cross}(P)\leq\operatorname{Cross}(P^{(q)}). By doing so, we further restrict the bad circumstance above to the case where P1=P2P_{1}=P_{2} and where Cross(P1)\operatorname{Cross}(P_{1}) lies in 𝐅q[x]{\mathbf{F}}_{q}[x]. This is accomplished by step 2(a).

Next, if we are considering a representative PP for which Cross(P)\operatorname{Cross}(P) lies in 𝐅q[x]{\mathbf{F}}_{q}[x], we want to avoid producing output for two different values of Γ\Gamma, say Γ1\Gamma_{1} and Γ2\Gamma_{2}, if Γ1=ΦΓ2(q)Ψ\Gamma_{1}=\Phi\Gamma_{2}^{(q)}\Psi for some Ψ\Psi that takes PP to P(q)P^{(q)}. Step 2(b)(b)(ii) ensures that this does not happen.

This shows that the algorithm does indeed output exactly one representative of each PGL2(𝐅q)\operatorname{PGL}_{2}({\mathbf{F}}_{q}) orbit of the divisors of degree nn on 𝐏1/𝐅q{\mathbf{P}}^{1}\phantom{{\mathbf{F}}_{q}}\hbox to0.0pt{\hss$\mathchoice{\raisebox{-1.72218pt}{$\displaystyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\textstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}{\raisebox{-1.72218pt}{$\scriptscriptstyle\scriptstyle/{\mathbf{F}}_{q}$}}$}. It is clear that the space needed is O(logq)O(\log q). All we have left to do is to show that the algorithm runs in time O~(qn3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{n-3}).

There are O((q2)m3)=O(qn6)O((q^{2})^{m-3})=O(q^{n-6}) orbit representatives PP to consider in step 2, and the total time it takes to generate these representatives is O~(qn6)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{n-6}). For each such representative PP, we need to consider the O(q3)O(q^{3}) possible values of Γ\Gamma from Proposition 2.13, and for each pair (P,Γ)(P,\Gamma) we do O~(1)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(1) work. All told, this results in O~(qn3)\mathchoice{\accentset{\displaystyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\textstyle\text{\smash{\raisebox{-6.02773pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptstyle\text{\smash{\raisebox{-4.2194pt}{$\widetildesym$}}}}{O}}{\accentset{\scriptscriptstyle\text{\smash{\raisebox{-3.01385pt}{$\widetildesym$}}}}{O}}(q^{n-3}) work, as claimed. ∎

References