# Cyclic Isogenies for Abelian Varieties with Real Multiplication

Alina Dudeanu, Dimitar Jetchev, Damien Robert, Marius Vuille

► To cite this version:

Alina Dudeanu, Dimitar Jetchev, Damien Robert, Marius Vuille. Cyclic Isogenies for Abelian Varieties with Real Multiplication. Moscow Mathematical Journal, 2022, 22 (4), pp.613-655. hal-01629829

HAL Id: hal-01629829

https://inria.hal.science/hal-01629829

Submitted on 6 Nov 2017

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# Cyclic Isogenies for Abelian Varieties with Real Multiplication

Alina Dudeanu, Dimitar Jetchev, Damien Robert and Marius Vuille

## ABSTRACT

We study quotients of principally polarized abelian varieties with real multiplication by Galois-stable finite subgroups and describe when these quotients are principally polarizable. We use this characterization to provide an algorithm to compute explicit cyclic isogenies from kernel for abelian varieties with real multiplication over finite fields. Our algorithm is polynomial in the size of the finite field as well as in the degree of the isogeny and is based on Mumford's theory of theta functions and theta embeddings. Recently, the algorithm has been successfully applied to obtain new results on the discrete logarithm problem in genus 2 as well as to study the discrete logarithm problem in genus 3.

## 1. Introduction

### 1.1 Motivation

Let $f: A \to B$ be a separable isogeny of non-polarized abelian varieties of dimension $g \ge 1$ over a field $k$ and suppose that $G = \ker(f)$ is a cyclic subgroup defined over $k$ (as a group scheme, not necessarily pointwise). Let us denote by $t$ a generator of $G$. Suppose that $A$ is equipped with a principal polarization $\lambda_A$ (an algebraic equivalence class of ample line bundles on $A$). The polarization isogeny $\lambda_A: A \to A^\vee$ (where $A^\vee$ is the dual abelian variety of $A$) determines a Rosati involution $\dagger: \mathrm{End}(A) \to \mathrm{End}(A)$ defined by $\varphi \mapsto \varphi^\dagger = \lambda_A^{-1} \circ \varphi^\vee \circ \lambda_A$. Suppose further that the endomorphism algebras $\mathrm{End}^0(A) = \mathrm{End}(A) \otimes_{\mathbb{Z}} \mathbb{Q}$ and $\mathrm{End}^0(B) = \mathrm{End}(B) \otimes_{\mathbb{Z}} \mathbb{Q}$ both contain a totally imaginary extension $K$ of a totally real number field $K_0/\mathbb{Q}$ with $[K_0 : \mathbb{Q}] = g$ in such a way that complex conjugation of $K$ corresponds to the Rosati involution.

In this paper, we study when the target abelian variety $B$ is principally polarizable and if so, whether one can explicitly compute $B$ as well as evaluate the isogeny $f$ on points. The latter needs a clarification as it is not even clear how the abelian varieties are represented. If $g = 1$ (elliptic curves) then it amounts to computing a Weierstrass equation for $B$ and providing an algorithm to compute images of points under $f$ [Vél71]. The problem is much more challenging for $g > 1$. One way to represent a principally polarized abelian variety which is a Jacobian of an algebraic curve is via degree zero divisor classes. This assumes that one knows an explicit model of the curve which need not always be the case. Even worse, there is no reason that the non-polarized abelian variety $B = A/G$ even admits a principal polarization, so working with linear equivalence classes of divisors of degree zero is not a suitable option.

A different approach is via Mumford's theory of projective embeddings of abelian varieties via theta functions. The latter allows us to compute explicit coordinates for $B$ (theta null points) on a certain projective model of the moduli space of principally polarized abelian varieties out of the data for $A$. In a series of papers [Mum66, Mum67a, Mum67b] (see also [Mum84]), Mumford defines a group associated to an invertible sheaf on an abelian variety (Mumford's theta group).
ALINA DUDEANU, DIMITAR JETCHEV, DAMIEN ROBERT AND MARIUS VUILLE

This group has a natural action on the space of global sections of the sheaf, thus yielding a natural linear representation. As Mumford's theta group is abstractly non-canonically isomorphic to a finite analogue of the Heisenberg group, a finite analogue of Stone-von Neuman's theorem then yields that such a representation is unique. Fixing a choice of such an isomorphism between the Heisenberg group and Mumford's theta group then yields a system of canonical projective coordinates for the abelian variety. It is these coordinates for the target abelian variety and the target point that one may try to compute explicitly.

## 1.2 Main results

We first give a criterion when the target abelian variety $B = A/G$ admits a principal polarization. Let $\text{End}(A)^+ \subset \text{End}(A)$ be the subset of symmetric endomorphisms of $A$, that is, endomorphisms $\varphi \in \text{End}(A)$ for which $\varphi^\dagger = \varphi$. Furthermore, let $\text{End}(A)^{++} \subset \text{End}(A)^+$ be the subset of all symmetric endomorphisms that are totally positive (i.e. if for $\varphi \in \text{End}(A)^+$ one considers the induced endomorphism $\varphi_\ell: T_\ell A \to T_\ell A$ on the $\ell$-adic Tate-module of $A$, for $\ell$ different from the residue characteristic of the ground field of $A$, then $\varphi$ is said to be totally positive if all the $2g$ roots of the characteristic polynomial of $\varphi_\ell$ are positive real numbers). If $\mathcal{L}$ is an ample line bundle on $A$ (which by abuse of notation we will henceforth also call a polarization) and $\beta \in \text{End}(A)^{++}$, one defines a polarization via the composition $\varphi_{\mathcal{L}} \circ \beta: A \to A^\vee$. One can show [Mil86, Prop.13.6] that this composition arises as the polarization isogeny of an ample line bundle on $A$ that we denote by $\mathcal{L}^\beta$.

Let $K(\mathcal{L}^\beta)$ be the kernel of the polarization isogeny $\varphi_{\mathcal{L}^\beta}: A \to A^\vee$. Associated to the polarization $\mathcal{L}^\beta$ is an alternating bilinear pairing (the commutator pairing) $e_{\mathcal{L}^\beta}: K(\mathcal{L}^\beta) \times K(\mathcal{L}^\beta) \to k^\times$ (see Section 3.1.2 for the precise definition).

**THEOREM 1.1** (Principal polarizability of $B$). Let $\mathcal{L}_0$ be a principal polarization on $A$. The a priori non-polarized abelian variety $B = A/G$ admits a principal polarization $\mathcal{M}_0$ if and only if there exists a totally positive real endomorphism $\beta \in \text{End}(A)^{++}$ such that $G \subset \text{ker}(\beta) = K(\mathcal{L}_0^\beta)$ and $G$ is a maximal isotropic subgroup for the commutator pairing $e_{\mathcal{L}_0^\beta}$.

**DEFINITION 1.2.** Let $(A, \mathcal{L})$ and $(B, \mathcal{M})$ be polarized abelian varieties. An isogeny $f: A \to B$ is called $\beta$-cyclic if $\text{ker}(f)$ is a cyclic subgroup of $A$ and if there exists a totally positive real endomorphism $\beta \in \text{End}(A)^{++}$ such that $f^*\mathcal{M}$ is algebraically equivalent to $\mathcal{L}^\beta$.

Suppose from now on that $f: (A, \mathcal{L}^\beta) \to (B, \mathcal{M})$ is a $\beta$-cyclic isogeny of polarized abelian varieties for some $\beta \in \text{End}(A)^{++}$. Given a projective embedding $A \hookrightarrow \mathbf{P}(\Gamma(A, \mathcal{L}^\beta))$, we will be interested in computing a projective embedding of $B \hookrightarrow \mathbf{P}(\Gamma(B, \mathcal{M}))$. Yet, the data of an abelian variety together with a very ample line bundle does not determine a canonical projective embedding in the space of global sections. In addition, one needs to make precise the notion of projective embeddings being compatible under isogeny. Mumford [Mum66] resolved these questions by introducing the notion of theta structures (see Section 3 for details). Fixing a theta structure $\Theta_\mathcal{L}$ associated to a polarized abelian variety $(A, \mathcal{L})$ yields canonical projective coordinates for the variety. In addition, one can descend the data of a polarized abelian variety with theta structure under isogeny (see Theorem 3.2). Our main theorem provides an algorithm that can compute the theta coordinates of the image of a geometric point under $f$ for a suitable theta structure on $(B, \mathcal{M})$ from the theta coordinates of the original point on the source.

**THEOREM 1.3** (Computing $\beta$-cyclic isogenies). Let $(A, \mathcal{L}_0)$ be a principally polarized simple abelian variety of dimension $g$ over the finite field $k$ and let $\Theta_\mathcal{L}$ be a symmetric theta structure (see Section 3.1.3) for the polarization $\mathcal{L} = \mathcal{L}_0^{\otimes 2}$. Let $\ell$ be a prime different from the characteristic of $k$ and
let $G \subset A(\bar{k})$ be a Gal$(\bar{k}/k)$-stable cyclic subgroup of prime order $\ell$. Denote by $\pi$ the Frobenius endomorphism $\pi: A \to A$. Assume the following hypotheses:

H.1 The prime $\ell$ is either split or ramified in $O_{K_0}$ and one of the primes above $\ell$ is principal, generated by a totally positive element $\beta$ that satisfies $G \subset A[\beta]$.

H.2 The abelian variety $A$ has maximal local real endomorphism ring at $\ell$, i.e. $\text{End}(A)^+ \otimes_Z Z_\ell$ is isomorphic to $O_{K_0} \otimes_Z Z_\ell$.

H.3 The conductor gap $[O_{K_0}: Z[\pi + \pi^\dagger]]$ is coprime to $2\ell$.

H.4 There exists an algorithm RM$(\alpha, y)$ that computes the action of a real multiplication (RM) endomorphism $\alpha \in \text{End}(A)^+$ on a 4-torsion point $y \in A[4]$.

(i) Given the theta null point of $(A, \mathcal{L})$ with respect to $\Theta_{\mathcal{L}}$, there exists an algorithm polynomial in $\log q$ and $\ell$ that computes the theta null point of $(B, \mathcal{M})$ for some theta structure $\Theta_{\mathcal{M}}$.

(ii) Given a point $x \in A(k)$ whose order is coprime to $\ell$, there exists an algorithm that computes the canonical theta coordinates of $f(x)$ with respect to $\Theta_{\mathcal{M}}$ in time polynomial in $\log q$ and $\ell$ where $\Theta_{\mathcal{M}}$ is the theta structure from (i).

*Remark 1.* If $k$ is an arbitrary field (not necessarily finite), Theorem 1.3(i) provides an algorithm to compute the theta null point of $(B, \mathcal{M})$ for some theta structure $\Theta_{\mathcal{M}}$, and Theorem 1.3(ii) provides an algorithm to evaluate a cyclic isogeny on points $x$ whose order is finite and coprime to the degree $\ell$, provided $\text{End}^+(A)$ acts on $x$ by scalar multiplication.

*Remark 2.* In genus 2 and 3, knowing the theta null point associated to $(B, \mathcal{M}, \Theta_{\mathcal{M}})$ is enough for determining the equation of the underlying curve of $B$. For the case of a hyperelliptic Jacobian, see [CR11] and for the case of a Jacobian of a smooth plane quartic, see [Fio16].

*Remark 3.* For all applications that we will consider, hypothesis H.4 is not too restrictive. In the case where $A$ is the Jacobian of a curve, one can use Mumford's representation to compute this action (e.g., in this case, we know that the 2-torsion points are coming from the Weierstrass points on the curve). For $g=2$, a more general method for RM is based on computing $\sqrt{D_0}$ as a $(D_0, D_0)$-isogeny (using the method of [CR11]) where $D_0$ is the discriminant of the real quadratic field.

*Remark 4.* A natural question is to what extent is the theta structure $\Theta_{\mathcal{M}}$ uniquely determined by the theta structure $\Theta_{\mathcal{L}}$. As we will discuss in more detail in Section 4, this theta structure need not be unique.

## 1.3 Known results and applications of the main theorem

Computing isogenies in higher dimensions has been of considerable interest. The idea of using theta coordinates to compute isogenies from kernel is certainly not new and already appears in several prior works [Rob10], [CR11], [LR12b], [CE15]. Other more geometric methods have been considered as well [Ric37], [DL08], [Smi09], [BFT14] and [Fly15].

Yet, in all of these works, the computed isogenies are special in the sense that the target abelian variety is naturally principally polarized (in other words, these are isogenies that are preserving the principal polarization of the source abelian variety). In the case of cyclic isogenies, the target abelian variety need not even be principally polarizable, so the problem requires much more careful analysis and novel ideas.

Computing explicit isogenies have been fundamentally important in both computational number theory and mathematical cryptology. The basic point-counting algorithm of Schoof–Elkies–Atkin (SEA) relies heavily on isogeny computations (see [FM02]). Kohel's algorithm for computing the endomorphism ring of an elliptic curve over a finite field [Koh96] as well as the analogous algorithm
for genus 2 due to Bisson [Bis11] critically used isogenies. On a more practical cryptographic level, computing isogenies from kernel was the key idea behind the post-quantum cryptographic system proposed by de Feo, Jao and Plut [dFJP14]. Isogenies received considerable attention in computing Hilbert class polynomials and the CM method [LR12a], modular polynomials in genus 2 [Mil15] and [MR17] as well as pairings [LR15].

Theorem 1.3 has already been applied to prove a worst case to average case reduction in isogeny
classes for the discrete logarithm problem for Jacobians of curves of genus 2 [JW15]. In addition, it
enabled improvements to existing *going-up* algorithms that appear crucial in the CM method in
genus 2 for computing Hilbert class polynomials [BJW17].

It is expected that Theorem 1.3 can be used to efficiently reduce the discrete logarithm problem in genus 3 from the Jacobian of a hyperelliptic curve to the Jacobian of a quartic curve, thus generalizing the arguments of Smith [Smi09]. Since the problem on Jacobians of quartic curves is known to be solvable faster than the generic Pollard’s rho method, this could allow us to show that the problem is also easier on Jacobians of hyperelliptic curves of genus 3. The latter is an on-going project that is part of the doctoral thesis of the fourth mentioned author.

**1.4 Overview and organization of the paper**

We establish the criterion for polarizability of the target abelian variety in Section 2 (see Proposition 2.3). Section 3 reviews basic notions from Mumford’s theta theory such as theta groups, theta structures, symmetric and totally symmetric line bundles as well as the main tool for transferring data under isogeny - the isogeny theorem (Theorem 3.2). We apply the theory in Section 4 to first compute the theta null point of the target variety for a suitably chosen totally symmetric line bundle and symmetric theta structure on the target variety. This section requires several novel ideas: first of all, in order to apply the isogeny theorem, one needs to work on an *r*-fold product *B*^r of the target variety *B* for some suitable *r* > 1. One can thus only get the theta coordinates for some theta structure on *B*^r that is not an *r*-fold product theta structure (i.e., that comes from a single copy of *B*). To remedy this, in Section 4.3 we apply a metaplectic isomorphism to modify appropriately the theta structure and extract theta coordinates for a single copy of *B*. Section 5 explains how to evaluate the isogeny on points. Section 6 analyzes the complexity of the two algorithms. Finally, we provide an explicit example and discuss our implementation of the algorithm in Section 7.

2. Polarizability

Let $X$ be an abelian variety over a field $k$ of dimension $g$.

**2.1 Principal polarization on an abelian variety**

The Picard group Pic($X$) of $X$ is the group of isomorphism classes of line bundles $\mathcal{L}_X$ on $X$ under the tensor product $\otimes$. In the sequel we will write $\mathcal{L}_X^n$ instead of $\mathcal{L}_X^{\otimes n}$ for the $n$th tensor power. Every line bundle $\mathcal{L}_X$ on $X$ induces a map $\varphi_{\mathcal{L}_X}: X(\bar{k}) \to \text{Pic}(X)$, $x \mapsto t_x^*\mathcal{L}_X \otimes \mathcal{L}_X^{-1}$ which is a homomorphism by the theorem of the square. The latter also implies that the image of $\varphi_{\mathcal{L}_X}$ is in $\text{Pic}^0(X)$, the subgroup of isomorphism classes of line bundles $\mathcal{L}_X \in \text{Pic}(X)$ of degree zero. If $\mathcal{L}_X$ is ample then $\mathcal{L}_X$ yields an isogeny $\varphi_{\mathcal{L}_X}: X \to X^\vee$ where $X^\vee$ is the dual abelian variety. Recall that two isomorphism classes of line bundles $\mathcal{L}_1$ and $\mathcal{L}_2$ on $X$ are *algebraically equivalent* if there exists an isomorphism class $\mathcal{L}^0 \in \text{Pic}^0(X)$ such that $\mathcal{L}_2 \cong \mathcal{L}_1 \otimes \mathcal{L}^0$. If $\mathcal{L}_1$ is ample, this is equivalent to saying that $\mathcal{L}_2 \cong t_x^*\mathcal{L}_1$ for some $x \in X(\bar{k})$ (indeed $\mathcal{L}_1$ is ample, hence $\varphi_{\mathcal{L}_1}: X \to X^\vee$ is an isogeny, so the line bundle $\mathcal{L}^0$ from above can be written as $t_x^*\mathcal{L}_1 \otimes \mathcal{L}_1^{-1}$ for some $x \in X(\bar{k})$). Note that the isogeny $\varphi_{\mathcal{L}_X}: X \to X^\vee$ depends only on the algebraic equivalence class of $\mathcal{L}_X$. Since $\otimes$ respects algebraic equivalence, the algebraic equivalence classes of line bundles on $X$ form a group, the Néron-Severi
group $\mathbf{NS}(X)$. We may thus consider the elements of $\mathbf{NS}(X)$ as either equivalence classes or as isogenies $X \to X^\vee$. However, not every isogeny $X \to X^\vee$ is of the form $\varphi_{\mathcal{L}_X}$ for some $\mathcal{L}_X \in \mathrm{Pic}(X)$. For a criterion, see [Mil86, Prop.13.6].

A *polarization* $\lambda$ on $X$ is the algebraic equivalence class of an ample line bundle. The polarization is called *principal* if the induced isogeny $X \to X^\vee$, also denoted by $\lambda$, is an isomorphism.

If $\lambda$ is a principal polarization then $\lambda$ determines a Rosati involution $\dagger$ on $\mathrm{End}(X)$ defined by
$\varphi \mapsto \varphi^\dagger := \lambda^{-1} \circ \varphi^\vee \circ \lambda$. Again consider the subset $\mathrm{End}(X)^+ \subset \mathrm{End}(X)$ of endomorphisms of $X$
stable under $\dagger$. If $\mathrm{End}(X)^+ \otimes \mathbf{Q}$ is a totally real field $K_0/\mathbf{Q}$ of degree $g$ (the dimension of $X$), we
say that $X$ has real multiplication.

2.1.1 *Principal polarizations and totally positive real endomorphisms.* Suppose that $X$ has real multiplication by $K_0/\mathbf{Q}$ and let $\lambda$ be a principal polarization on $X$. If $\ell$ is a prime different from the residue characteristic of $k$, let $e_\ell: T_\ell X \times T_\ell X^\vee \to \mu_{\ell\infty}$ be the Weil pairing. Given any isogeny $\phi: X \to X^\vee$, define $e_\ell^\phi: T_\ell X \times T_\ell X \to \mu_{\ell\infty}$ as $e_\ell^\phi(x,y) = e_\ell(x,\phi y)$. Note that $\phi$ is an isogeny arising from a polarization on $X$ if and only if $e_\ell^\phi$ is alternating [Mil86, Prop.13.6]. The following result describes all polarizations on $X$ up to algebraic equivalence in terms of the subring $\mathrm{End}(X)^+ \subset \mathrm{End}(X)$.

**PROPOSITION 2.1.** The map $\mathcal{L}_X \mapsto \lambda^{-1} \circ \varphi_{\mathcal{L}_X}$ yields an isomorphism $\Phi_\lambda : \mathbf{NS}(X) \xrightarrow{\sim} \mathrm{End}(X)^+$. This isomorphism induces a bijection between the polarizations on $X$ and the set $\mathrm{End}(X)^{++} \subset \mathrm{End}(X)^+$ of symmetric (for the Rosati involution) totally positive endomorphisms of $X$. Under this bijection, the polarizations of degree $d$ correspond to the totally positive symmetric endomorphisms whose analytic norm is $d$. In particular, if $d=1$ then principal polarizations on $X$ correspond to totally positive units in $\mathrm{End}(X)^+$.

*Proof.* For the proof for abelian varieties over $\mathbb{C}$, we refer to [BL04, Prop.5.2.1 and Thm.5.2.4]. For the case of ordinary abelian varieties over a finite field $k$, we prove the proposition by considering the canonical lift (to the ring of Witt vectors), embedding the fraction field of the ring of Witt vectors (in any way) to $\mathbb{C}$ and then reducing the problem to a complex abelian variety. $\square$

**COROLLARY 2.2.** If $\alpha$ is an endomorphism of $X$, then $\alpha^*\mathcal{L}$ is algebraically equivalent to $\mathcal{L}^{\alpha^\dagger\alpha}$.

*Remark 5.* Proposition 2.1 shows that if $(X, \lambda)$ is a principally polarized abelian variety with $\mathrm{End}(X) = \mathbb{Z}$ (the generic case over an algebraically closed field), then $\mathbf{NS}(X)$ is equal to $\mathbb{Z}$. In particular, all polarizations are equivalent to $\mathcal{L}_0^n$ for some $n \in \mathbb{Z}_{>0}$. We will see that in this case, there is no cyclic isogeny between $X$ and a principally polarized abelian variety when $\dim X \ge 2$.

*Remark 6.* Proposition 2.1 is not quite strong since often we will need to rigidify the line bundles up to isomorphism (linear equivalence) rather than up to algebraic equivalence. But this rigidification will actually be automatic, since we will be working with symmetric theta structures on totally symmetric line bundles (see Section 3.1.3). A line bundle is *totally symmetric* if and only if it is the square of a symmetric line bundle, so there is at most one totally symmetric line bundle in its algebraic equivalence class. In particular, if there is an isogeny $f: (A, \mathcal{L}) \to (B, \mathcal{M})$ such that $f^*\mathcal{M}$ is algebraically equivalent to $\mathcal{L}$ and both $\mathcal{L}$ and $\mathcal{M}$ are totally symmetric, then $f^*\mathcal{M}$ (which is totally symmetric) is linearly equivalent to $\mathcal{L}$.

**2.2 Principal polarizability via isogenies**

Let $f: A \to B$ be an isogeny of abelian varieties whose kernel is $\ker(f) = G \subset A(\bar{k})$. Proposition 2.1 can be used to decide whether $B \cong A/G$ is principally polarizable. Assuming that there exists a principal polarization $\mathcal{M}_0$ on $B$, we would like to compute the theta null point of $\mathcal{M} = \mathcal{M}_0^n$ for some
$n$ and for a suitably chosen theta structure on $(B, \mathcal{M})$. The exact criterion for deciding principal polarizability is summarized in the following lemma valid over any field $k$.

**PROPOSITION 2.3.** Let $(A, \mathcal{L}_0)$ be a principally polarized abelian variety defined over a field $k$. Let $G \subset A(\bar{k})$ be a finite subgroup, and $f: A \to B = A/G$ be the corresponding isogeny. Then $B$ admits a principal polarization if and only if there exists a totally positive real endomorphism $\beta \in \text{End}(A)^{++}$ such that $G$ is a maximal isotropic subgroup for the commutator pairing $e_{\mathcal{L}_0^\beta}$.

*Proof.* If $B$ admits a principal polarization $\mathcal{M}_0$, we apply the proposition to $f^*\mathcal{M}_0$, so there exists an endomorphism $\beta$ making the following diagram commute:

$$ \begin{tikzcd} A \arrow[r, "\beta"] \arrow[d, "\varphi_{\mathcal{L}_0}"] & A \arrow[r, "f"] \arrow[d, "\varphi_{f^*\mathcal{M}_0}"] & B \arrow[d, "f^\vee"] \\ A^\vee \arrow[r, "f^\vee"] & B^\vee. \arrow[d, "\varphi_{\mathcal{M}_0}"] \end{tikzcd} \quad (1) $$

It is easy to check that $\beta$ is symmetric, it is positive because $\mathcal{L}_0^\beta \cong f^*\mathcal{M}_0$ is ample (see Proposition 2.1), and $G$ is maximal isotropic inside $\text{ker}(\phi_{\mathcal{L}_0})$ for degree reasons.

Conversely, given an endomorphism $\beta$ satisfying the conditions of the lemma, let $\mathcal{L}_0^\beta$ be an element of the algebraic equivalence class representing the polarization associated to $\beta$. Then $\mathcal{L}_0^\beta$ descends under $f$ into a polarization $\mathcal{M}_0$ by descent theory [Rob10, Prop.2.4.7], and the following diagram is commutative

$$ \begin{tikzcd} A \arrow[r, "\beta"] \arrow[d, "\varphi_{\mathcal{L}_0}"] & A \arrow[r, "f"] \arrow[d, "\varphi_{\mathcal{L}_0^\beta}"] & B \arrow[d, "f^\vee"] \\ A^\vee \arrow[r, "f^\vee"] & B^\vee. \arrow[d, "\varphi_{\mathcal{M}_0}"] \end{tikzcd} \quad (2) $$

So $f^*(\mathcal{M}_0)$ is algebraically equivalent to $\mathcal{L}_0^\beta$; moreover since the degree of $\beta$ is equal to $\text{deg} f \cdot \text{deg} f^\vee = (\text{deg} f)^2$, then the degree of $\varphi_{\mathcal{M}_0}$ is 1 and hence, $\mathcal{M}_0$ is a principal polarization. $\square$

**Remark 7.** If $G$ is cyclic of order $\ell$, we will apply the above lemma to elements $\beta \in \text{End}(A)^{++}$ that are real endomorphisms of degree $\ell^2$. Then $G$ is automatically a maximal isotropic subgroup for the commutator pairing $e_{\mathcal{L}_0^\beta}$.

In dimension 2, we have that $\text{End}(A)^+^+$ is a real quadratic order. Again, for $G$ cyclic of prime order $\ell$, there is a principal polarization on $A/G$ if and only if there exists a totally positive real endomorphism $\beta \in \text{End}(A)^{++}$ of $K_0/\mathbb{Q}$-norm $\ell$ such that $G \subset A[\beta]$ (which is then automatically maximally isotropic for $e_{\mathcal{L}_0^\beta}$). In particular, $(\ell)$ splits into $(\beta)(\beta^c)$ in $\text{End}(A)^+$ (where $\beta^c$ is the real conjugate of $\beta$), and it is easy to see that this can happen only if $\text{End}(A)^+$ is maximal locally at $\ell$. In particular, unless the real multiplication is locally maximal at $\ell$, there is no cyclic isogeny of degree $\ell$ between $A$ and another principally polarized abelian variety.

We remark that while an isogeny between (non-polarized) abelian varieties can always be written as the composition of cyclic isogenies of prime degrees, Proposition 2.3 shows that this is not true if we require the abelian varieties to be principally polarized.

### 3. Theta Coordinates and Theta Structures

An abelian variety $X$ together with a polarization $\mathcal{L}_X$ is not sufficient to get a canonical projective embedding of $X$. One needs to add more data in order to single out canonical coordinates. In this section, we recall the notion of a theta structure and explain how it yields canonical theta coordinates. We discuss symmetric theta structures and recall how canonical theta coordinates are related under
isogenies (the isogeny theorem). Finally, we explain how to choose an appropriate symmetric theta structure on the original abelian variety given to our algorithm.

## 3.1 The theta group and theta structures

Following [Mum66], let $\mathcal{L}_X$ be an ample line bundle on an abelian variety $X$ and let $K(\mathcal{L}_X)$ be the kernel of the polarization isogeny $\varphi_{\mathcal{L}_X}: X \to X^\vee$, $x \mapsto t_x^*\mathcal{L}_X \otimes \mathcal{L}_X^{-1}$. For any element $x$ of $K(\mathcal{L}_X)$, the line bundles $\mathcal{L}_X$ and $t_x^*\mathcal{L}_X$ are isomorphic, but not necessarily in a unique way.

### 3.1.1 Mumford's theta group.
The Mumford theta group is

$$ \mathcal{G}(\mathcal{L}_X) = \{(x, \phi_x) : x \in K(\mathcal{L}_X), \phi_x : \mathcal{L}_X \xrightarrow{\sim} t_x^*\mathcal{L}_X\}, $$

under the group law $(x, \phi_x) \cdot (y, \phi_y) = (x + y, t_x^*\phi_y \circ \phi_x)$ for $(x, \phi_x), (y, \phi_y) \in \mathcal{G}(\mathcal{L}_X)$. The inverse of $(x, \phi_x)$ under this group law is $(-x, t_{-x}^*\phi_x^{-1})$. We have an exact sequence

$$ 0 \to k^\times \to \mathcal{G}(\mathcal{L}_X) \to K(\mathcal{L}_X) \to 0, $$

where $\alpha \in k^\times \mapsto (0, \alpha) \in \mathcal{G}(\mathcal{L}_X)$ (here, $\alpha: \mathcal{L}_X \xrightarrow{\sim} t_0^*\mathcal{L}_X = \mathcal{L}_X$ is the multiplication-by-$\alpha$ automorphism of $\mathcal{L}_X$) and $\mathcal{G}(\mathcal{L}_X) \to K(\mathcal{L}_X)$ is the forgetful map $(x, \phi_x) \mapsto x$.

### 3.1.2 Theta structures.
The ample line bundle $\mathcal{L}_X$ on $X$ gives rise to a non-degenerate symplectic form $e_{\mathcal{L}_X}$ on $K(\mathcal{L}_X)$ defined as follows: for any $x, y \in K(\mathcal{L}_X)$, let $\tilde{x}, \tilde{y} \in \mathcal{G}(\mathcal{L}_X)$ be arbitrary lifts and set $e_{\mathcal{L}_X}(x, y) := \tilde{x}\tilde{y}\tilde{x}^{-1}\tilde{y}^{-1}$. As lifts of elements of $K(\mathcal{L}_X)$ are defined up to scalars, and since $k^\times$ is the center of $\mathcal{G}(\mathcal{L}_X)$, the form $e_{\mathcal{L}_X}$ is well defined. Moreover, $\tilde{x}\tilde{y}\tilde{x}^{-1}\tilde{y}^{-1}$ being in the kernel of $\mathcal{G}(\mathcal{L}_X) \to K(\mathcal{L}_X)$, we can see $e_{\mathcal{L}_X}(x, y)$ as a scalar in $k^\times$. We call $e_{\mathcal{L}_X}$ the commutator pairing. If $K(\mathcal{L}_X) = K_1(\mathcal{L}_X) \oplus K_2(\mathcal{L}_X)$ is a symplectic decomposition of $K(\mathcal{L}_X)$ with respect to the commutator pairing $e_{\mathcal{L}_X}$ (here, $K_i(\mathcal{L}_X)$ are maximal isotropic subspaces of $K(\mathcal{L}_X)$), then $K_1(\mathcal{L}_X) \cong \mathbf{Z}(\delta) := \bigoplus_{i=1}^g \mathbf{Z}/\delta_i\mathbf{Z}$ where $\delta_1 | \cdots | \delta_g$ are the elementary divisors of $K_1(\mathcal{L}_X)$. We then say that the polarization (ample line bundle) $\mathcal{L}_X$ is of type $\delta = (\delta_1, \dots, \delta_g)$.

Given a tuple $\delta = (\delta_1, \dots, \delta_g) \in \mathbf{Z}^g$ with $\delta_1 | \cdots | \delta_g$, let $K(\delta) = \mathbf{Z}(\delta) \oplus \hat{\mathbf{Z}}(\delta)$ where $\hat{\mathbf{Z}}(\delta) = \text{Hom}(\mathbf{Z}(\delta), k^\times)$. Then $K(\delta)$ is equipped with the standard pairing $e_\delta$ coming from the duality, i.e.,

$$ e_\delta((x_1, y_1), (x_2, y_2)) = \frac{y_2(x_1)}{y_1(x_2)} \in k^\times. $$

Moreover, let $\mathcal{H}(\delta)$ be the Heisenberg group, that is, the group whose underlying set is $k^\times \times K(\delta)$ and whose group law is

$$ (\alpha_1, x_1, y_1) \cdot (\alpha_2, x_2, y_2) = (\alpha_1\alpha_2 y_2(x_1), x_1 + x_2, y_1 + y_2), \quad \forall \alpha_i \in k^\times, x_i \in \mathbf{Z}(\delta), y_i \in \hat{\mathbf{Z}}(\delta). \quad (3) $$

Note that the Heisenberg group fits into the exact sequence

$$ 0 \to k^\times \to \mathcal{H}(\delta) \to K(\delta) \to 0, $$

where $\alpha \in k^\times \mapsto (\alpha, 0, 0)$ and $(\alpha, x, y) \in \mathcal{H}(\delta) \mapsto (x, y)$. Also, note that the inverse of $(\alpha, x, y) \in \mathcal{H}(\delta)$ is given by $(\alpha^{-1}y(x), -x, -y)$.

A theta structure $\Theta_{\mathcal{L}_X}$ of type $\delta$ is an isomorphism of central extensions

$$ \Theta_{\mathcal{L}_X}: \mathcal{H}(\delta) \xrightarrow{\sim} \mathcal{G}(\mathcal{L}_X). $$

One can show that the pairing $e_\delta$ on $K(\delta)$ is induced from the commutator pairing on $\mathcal{H}(\delta)$ and thus,
the induced isomorphism $\bar{\Theta}_{\mathcal{L}_X} : K(\delta) \xrightarrow{\sim} K(\mathcal{L}_X)$ which makes the following diagram commutative

<figure><img src="image_2.png" /></figure>

is a symplectic isomorphism since $\Theta_{\mathcal{L}_X}$ pulls back commutators. There is a canonical map (of sets) $s_\delta: K(\delta) \to \mathcal{H}(\delta)$ given by $(x, y) \mapsto (1, x, y)$ that is a homomorphism of groups when restricted to $K_1(\delta) := \mathbb{Z}(\delta)$ and $K_2(\delta) := \hat{\mathbb{Z}}(\delta)$. Via the theta structure, these homomorphisms yield two sections $s_{K_1(\mathcal{L}_X)}: K_1(\mathcal{L}_X) \to \mathcal{G}(\mathcal{L}_X)$ and $s_{K_2(\mathcal{L}_X)}: K_2(\mathcal{L}_X) \to \mathcal{G}(\mathcal{L}_X)$, where $K_i(\mathcal{L}_X) := \bar{\Theta}_{\mathcal{L}_X}(K_i(\delta))$ for $i = 1, 2$. Conversely [Rob10, Prop. 3.3.3], given a symplectic isomorphism $\bar{\Theta}_{\mathcal{L}_X} : K(\delta) \to K(\mathcal{L}_X)$ together with two (group) sections $s_{K_1(\mathcal{L}_X)}$, $s_{K_2(\mathcal{L}_X)}$ we get a unique theta structure $\Theta_{\mathcal{L}_X}$ above $\bar{\Theta}_{\mathcal{L}_X}$ inducing these two sections. In particular, for any symplectic isomorphism $\bar{\Theta}_{\mathcal{L}_X} : K(\delta) \to K(\mathcal{L}_X)$ (equivalently, a Witt basis for $K(\mathcal{L}_X)$ with respect to $e_{\mathcal{L}_X}$), there is a theta structure $\Theta_{\mathcal{L}_X}$ above that isomorphism. This follows from [Rob10, Prop. 3.2.6] : the projection $\mathcal{G}(\mathcal{L}_X) \to K(\mathcal{L}_X)$ admits a section above $K \subset K(\mathcal{L}_X)$ if and only if $K$ is isotropic for the pairing $e_{\mathcal{L}_X}$.

### 3.1.3 Totally symmetric line bundles and symmetric theta structures.
Let $(X, \mathcal{L}_X)$ be a polarized abelian variety. A priori, there is no way to fix a particular choice of a representative in the algebraic equivalence class of $\mathcal{L}_X$. One way to do that is to introduce the notions of symmetric and totally symmetric line bundles. A line bundle $\mathcal{L}_X$ on $X$ is called symmetric if $[-1]^*\mathcal{L}_X \cong \mathcal{L}_X$.

Suppose now that $\mathcal{L}_X$ is a symmetric line bundle and fix an isomorphism $\psi: \mathcal{L}_X \xrightarrow{\sim} [-1]^*\mathcal{L}_X$ (such an isomorphism is unique up to a scalar in $k^\times$). This means that we have isomorphisms on fibers $\psi(x): \mathcal{L}_X(x) \xrightarrow{\sim} [-1]^*\mathcal{L}_X(x) = \mathcal{L}_X(-x)$. We assume that $\psi$ is normalized in the sense that $\psi(0): \mathcal{L}_X(0) \xrightarrow{\sim} \mathcal{L}_X(0)$ is the identity map (otherwise rescale $\psi$). If $x \in X[2]$ then $\mathcal{L}_X(-x) = \mathcal{L}_X(x)$ and hence, $\psi$ is given on $\mathcal{L}_X(x)$ by multiplication by a scalar $e_{\mathcal{L}_X}^x(x) \in k^\times$. Note that $e_{\mathcal{L}_X}^x(x) = \pm 1$ for all $x \in X[2]$. We call the line bundle $\mathcal{L}_X$ totally symmetric if $e_{\mathcal{L}_X}^x(x) = 1$ for all $x \in X[2]$. The notion of totally symmetric line bundles is useful for making a canonical choice of an isomorphism class of line bundles within an algebraic equivalence class. More precisely, if $2 | \delta_1, \dots, \delta_q$ where $\delta = (\delta_1, \dots, \delta_q)$ is the type of $\mathcal{L}_X$, then there exists a unique totally symmetric line bundle in the algebraic equivalence class of $\mathcal{L}_X$ [Rob10, Prop.4.2.4].

Suppose now that $\mathcal{L}_X$ is symmetric and let $\psi: \mathcal{L}_X \xrightarrow{\sim} [-1]^*\mathcal{L}_X$ be the isomorphism of $\mathcal{L}_X$ with $[-1]^*\mathcal{L}_X$. Assume that $\psi$ is normalized, i.e. the restriction of $\psi$ to the fiber $\mathcal{L}_X(0)$ of 0 is the identity. We then have an automorphism $\gamma_{-1}: \mathcal{G}(\mathcal{L}_X) \to \mathcal{G}(\mathcal{L}_X)$ given by

$$ \gamma_{-1}(x, \phi) = (-x, (t_{-x}^*\psi)^{-1} \circ (-1)^*\phi) \circ \psi. $$

In addition, we have a metaplectic automorphism $\gamma_{-1}: \mathcal{H}(\delta) \to \mathcal{H}(\delta)$ of the Heisenberg group given by $\gamma_{-1}(\alpha, x, y) = (\alpha, -x, -y)$. A theta structure $\Theta_{\mathcal{L}_X}$ on $(X, \mathcal{L}_X)$ is called symmetric if $\gamma_{-1} \circ \Theta_{\mathcal{L}_X} = \Theta_{\mathcal{L}_X} \circ \gamma_{-1}$. Suppose $\mathcal{L}_X$ is a totally symmetric line bundle on $X$ of type $\delta$. Then, according to [Mum66, Remark 2, p.318], every symplectic isomorphism $\bar{\Theta}: K(\delta) \to K(\mathcal{L}_X)$ is induced by a symmetric theta structure $\Theta_{\mathcal{L}_X}: \mathcal{H}(\delta) \to \mathcal{G}(\mathcal{L}_X)$.

The reason why this notion will be useful (see the key application in Section 4.3.2) is the following result proved in [Rob10, Prop.4.3.1]:

**PROPOSITION 3.1.** Let $\mathcal{L}_X$ be a totally symmetric line bundle on $X$ of type $\delta$. Let $\bar{\Theta}: K(\delta) \to K(\mathcal{L}_X)$ be a symplectic isomorphism. In order to fix a symmetric theta structure on $(X, \mathcal{L}_X)$ that induces $\bar{\Theta}$ it suffices to fix a symplectic isomorphism $K(2\delta) \to K(\mathcal{L}_X^2)$ that restricts to $\bar{\Theta}$ on $K(\delta)$.

Note that for the above proposition, we identified $K(\delta)$ with a subgroup of $K(2\delta)$ in the following
way. The elements $(x_1, \dots, x_g) \in \mathbb{Z}(\delta) \subset K(\delta)$ are sent to $(2x_1, \dots, 2x_g) \in \mathbb{Z}(2\delta)$, whereas for each $y \in \hat{\mathbb{Z}}(\delta) \subset K(\delta)$ there exists a unique $y' \in \hat{\mathbb{Z}}(2\delta)$ such that $y'(x) = y(2x)$ for all $x \in K(2\delta)$.

## 3.2 Theta coordinates

Assume now that the line bundle $\mathcal{L}_X$ on $X$ is very ample. This means that each $k$-basis of the space of global sections $\Gamma(X, \mathcal{L}_X)$ yields a projective embedding $X \hookrightarrow \mathbf{P}_k^{d-1}$, where $d = \deg \mathcal{L}_X$. This embedding is only defined up to the action of $\mathbf{PGL}_d(k)$. In order to fix an embedding, we need to fix canonical coordinates on $X$ (i.e. a canonical basis for $\Gamma(X, \mathcal{L}_X)$). This choice will come precisely from the choice of a theta structure. Once we have fixed a theta structure $\Theta_{\mathcal{L}_X}$ on $(X, \mathcal{L}_X)$, one gets canonical theta functions $\{\theta_i^{\Theta_{\mathcal{L}_X}}\}_{i \in K_1(\delta)}$ forming a basis for the space of global sections $\Gamma(X, \mathcal{L}_X)$ and a canonical theta null point $(\theta_i^{\Theta_{\mathcal{L}_X}}(0))_{i \in K_1(\delta)}$ of $(X, \mathcal{L}_X)$. We will get this canonical basis via the representation theory of the Heisenberg group $\mathcal{H}(\delta)$.

Recall that the Heisenberg group $\mathcal{H}(\delta)$ has a natural irreducible representation on the space $V(\delta)$ of $k$-valued functions on $K_1(\delta)$ that is given by

$$((\alpha, x, y) \cdot f)(z) = \alpha y(z) f(z + x).$$

One can show that any representation $V$ of $\mathcal{H}(\delta)$ with a natural action of $k^\times$ (as in [Mum66, Prop.2]) is a direct sum of $r$ copies of $V(\delta)$ where $r = \dim_k V^K$, for $\tilde{K} \subset \mathcal{H}(\delta)$ any maximal level subgroup. To explain why the theta structure yields a canonical embedding, note that the Mumford theta group $\mathcal{G}(\mathcal{L}_X)$ acts on the space $V = \Gamma(X, \mathcal{L}_X)$, where the action is given by

$$(x, \phi) \cdot s = t_{-x}^* \phi(s).$$

One can show that this action is irreducible [Rob10, Prop.3.4.3], and one easily sees that $k^\times \hookrightarrow \mathcal{G}(\mathcal{L}_X)$ acts in the natural way. It follows that the theta structure $\Theta_{\mathcal{L}_X}$ determines a unique (up to a scalar multiple) $\mathcal{H}(\delta)$-equivariant isomorphism $\varphi: V(\delta) \to \Gamma(X, \mathcal{L}_X)$. Since $V(\delta)$ has a canonical basis $\{\gamma_i\}_{i \in K_1(\delta)}$ given by

$$K_1(\delta) \ni j \mapsto \gamma_i(j) = \begin{cases} 1 & \text{if } i = j, \\ 0 & \text{otherwise,} \end{cases}$$

the theta structure $\Theta_{\mathcal{L}_X}$ yields a canonical basis $\{\theta_i^{\Theta_{\mathcal{L}_X}} := \varphi(\gamma_i) \mid i \in K_1(\delta)\}$ for $\Gamma(X, \mathcal{L}_X)$, up to scalar multiples.

If we summarise the above we get: Let $(X, \mathcal{L}_X, \Theta_{\mathcal{L}_X})$ be a polarized abelian variety with theta structure and suppose $\mathcal{L}_X$ is very ample and of type $\delta = (\delta_1, \dots, \delta_g)$. Let $\{\theta_i^{\Theta_{\mathcal{L}_X}} = \varphi(\gamma_i) \mid i \in K_1(\delta)\}$ be the basis of $\Gamma(X, \mathcal{L}_X)$ induced by the theta structure $\Theta_{\mathcal{L}_X}$ and fix once and for all an ordering $a_1, \dots, a_d$ of the elements of $K_1(\delta)$, where $d = \#K_1(\delta) = \delta_1 \cdots \delta_g$. This ordering determines an ordering $\theta_1^{\Theta_{\mathcal{L}_X}}, \dots, \theta_d^{\Theta_{\mathcal{L}_X}}$ of the theta functions, which then yields an embedding

$$X \hookrightarrow \mathbf{P}_k^{d-1}, \quad x \mapsto (\theta_1^{\Theta_{\mathcal{L}_X}}(x) : \dots : \theta_d^{\Theta_{\mathcal{L}_X}}(x)).$$

Since we always keep the same ordering of the elements of $K_1(\delta)$, we will subsequently write the embedding as $x \mapsto (\theta_i^{\Theta_{\mathcal{L}_X}}(x))_{i \in K_1(\delta)}$. Moreover, via the symplectic isomorphism $\bar{\Theta}_{\mathcal{L}_X}$, we may consider indexing the theta functions $\theta_i^{\Theta_{\mathcal{L}_X}}$ by $K_1(\mathcal{L}_X)$.

### 3.2.1 The isogeny theorem.
We now recall a theorem (see [Rob10, §3.6] or [BL04, §6.5]) that relates theta coordinates on two isogenous polarized abelian varieties with theta structure. Suppose that $(X, \mathcal{L}_X)$ and $(Y, \mathcal{L}_Y)$ are two polarized abelian varieties over a field $k$ and let $f: (X, \mathcal{L}_X) \to (Y, \mathcal{L}_Y)$ be a separable $k$-isogeny of polarized abelian varieties, i.e. $f^*\mathcal{L}_Y$ is linearly equivalent to $\mathcal{L}_X$. Let
$G \subset X$ be the finite kernel of $f$ so that $Y \cong X/G$. It is explained in [Rob10, §3.6] what it means for two theta structures $\Theta_{\mathcal{L}_X}$ and $\Theta_{\mathcal{L}_Y}$ to be compatible with respect to the isogeny $f$. One condition is that the symplectic decomposition on $K(\mathcal{L}_X)$ induced by $\Theta_{\mathcal{L}_X}$ is $f$-compatible with the symplectic decomposition on $K(\mathcal{L}_Y)$ induced by $\Theta_{\mathcal{L}_Y}$ in the sense that $K_i(\mathcal{L}_Y) = f(K_i(\mathcal{L}_X)) \cap K(\mathcal{L}_Y)$ for $i = 1, 2$.

The polarized abelian varieties with theta structure $(X, \mathcal{L}_X, \Theta_{\mathcal{L}_X})$ and $(Y, \mathcal{L}_Y, \Theta_{\mathcal{L}_Y})$ yield canonical embeddings of the varieties $X$ and $Y$ respectively into projective space. The following theorem tells us how to compute the canonical theta coordinates of $f(x)$ out of the canonical theta coordinates of $x$ for $x \in X(\bar{k})$.

**THEOREM 3.2.** Let $f: (X, \mathcal{L}_X, \Theta_{\mathcal{L}_X}) \to (Y, \mathcal{L}_Y, \Theta_{\mathcal{L}_Y})$ be an isogeny of polarized abelian varieties with theta structure. There exists $\lambda \in \bar{k}^\times$ such that for all $i \in K_1(\mathcal{L}_Y)$ and $x \in X(\bar{k})$, we have

$$ \theta_i^{\Theta_{\mathcal{L}_Y}}(f(x)) = \lambda \cdot \sum_{\substack{j \in K_1(\mathcal{L}_X) \\ f(j)=i}} \theta_j^{\Theta_{\mathcal{L}_X}}(x). \quad (4) $$

In addition, we can state an affine version of the isogeny theorem as follows: suppose that we have fixed affine coordinates on both $\tilde{X}$ and $\tilde{Y}$ (i.e. we chose $f$-compatible very ample line bundles and theta structures on $X$ and $Y$ respectively and see the closed points via the canonical embeddings). Then there exists a lifting $\tilde{f}: \tilde{X} \to \tilde{Y}$ such that the following diagram is commutative:

<figure><img src="image_3.png" /></figure>

**3.2.2 The action of the Heisenberg group on theta coordinates.** Suppose we are given $(X, \mathcal{L}_X, \Theta_{\mathcal{L}_X})$ as above, which determines the embedding $X \hookrightarrow \mathbf{P}_k^{d-1}$, $x \mapsto (\theta_i^{\Theta_{\mathcal{L}_X}}(x))_{i \in K_1(\delta)}$. Let $p: \mathbf{A}_k^d \setminus \{0\} \to \mathbf{P}_k^{d-1}$ be the natural projection map and consider the affine cone $\tilde{X} = p^{-1}(X)$. The action of $\mathcal{G}(\mathcal{L}_X)$ on $\Gamma(X, \mathcal{L}_X)$ induces an action of $\mathcal{G}(\mathcal{L}_X)$ on $X$ in terms of theta coordinates, which is above the translation by elements of $K(\mathcal{L}_X)$. To be more precise, given $x \in X$ and $\tilde{x} \in \mathbf{A}^d(\bar{k})$ above $(\theta_i^{\Theta_{\mathcal{L}_X}}(x))_{i \in K_1(\delta)} \in \mathbf{P}^{d-1}(\bar{k})$, then for $(w, \phi_w) \in \mathcal{G}(\mathcal{L}_X)$, the element $(w, \phi_w) \cdot \tilde{x}$ is an affine lift of $x+w$.

Let us give a description of this action for $\mathcal{H}(\delta)$ (via the theta structure $\Theta_{\mathcal{L}_X}$). Let $(\alpha, x, y) \in \mathcal{H}(\delta)$ and suppose it is mapped to $(w, \phi_w)$ via $\Theta_{\mathcal{L}_X}$. Consider $\theta_i^{\Theta_{\mathcal{L}_X}}$ for $i \in K_1(\delta)$. [BL04, Prop.6.4.2.] describes the action of $(\alpha, x, y)$ on $\theta_i^{\Theta_{\mathcal{L}_X}}$ above the translation by $-w$, and by the slight adaption $(\alpha, x, y) \leftrightarrow (\alpha, -x, -y)$ we obtain an action above the translation by $w$, which is given by

$$ (\alpha, x, y) \cdot \theta_i^{\Theta_{\mathcal{L}_X}} = \alpha e_{\delta}((i+x, 0), (0, -y)) \theta_{i+x}^{\Theta_{\mathcal{L}_X}} = \alpha y(-i-x) \theta_{i+x}^{\Theta_{\mathcal{L}_X}}. \quad (5) $$

Hence we see that translation by an element of $K_1(\mathcal{L}_X)$ acts on $\tilde{X}$ as permutation of the theta coordinates, whereas translation by an element of $K_2(\mathcal{L}_X)$ acts on $\tilde{X}$ as dilatation of the theta coordinates. This proves the following.

**LEMMA 3.3.** A choice of an affine lift $\tilde{x}$ of an element $x = (\theta_i^{\Theta_{\mathcal{L}_X}}(x))_{i \in K_1(\delta)}$ gives a section of the projection $\tilde{X} \to X$ above $x+K(\mathcal{L}_X)$. That is to say, once an affine lift $\tilde{x}$ of $x$ is fixed, the action of the Heisenberg group $\mathcal{H}(\delta)$ on $\tilde{X}$ determines a lift above each $x+w$, for $w \in K(\mathcal{L}_X)$.

Note that for the above lemma, we used the canonical embedding of $K_i(\delta) \hookrightarrow \mathcal{H}(\delta)$, for $i = 1, 2$.
### 3.2.3 Product line bundles and product theta structures.
Let $(X, \mathcal{L}_X, \Theta_{\mathcal{L}_X})$ be a polarized abelian variety of type $\delta = (\delta_1, \dots, \delta_g)$ with theta structure, and let $r \ge 1$ be a nonnegative integer. There is a natural polarization $\mathcal{L}_X^{*r}$ on $X^r$ defined by

$$ \mathcal{L}_X^{*r} = p_1^* \mathcal{L}_X \otimes \cdots \otimes p_r^* \mathcal{L}_X, $$

where $p_i: X^r \to X$ is the projection of the $i$th factor of $X^r$ for $i = 1, \dots, r$. A polarization (or ample line bundle) $\mathcal{L}$ on the variety $X^r$ is called a product polarization if $\mathcal{L}$ is isomorphic to $p_1^* \mathcal{L}_X \otimes \cdots \otimes p_r^* \mathcal{L}_X$ for some polarization $\mathcal{L}_X$ on $X$. According to [Mum66, Lem.1, p.323] we have

$$ \mathcal{G}(\mathcal{L}_X^{*r}) \cong \mathcal{G}(\mathcal{L}_X)^{\times r} / \{(\alpha_1, \dots, \alpha_r) : \alpha_i \in k^\times \subset \mathcal{G}(\mathcal{L}_X), \alpha_1 \cdots \alpha_r = 1\}, $$

where $((x_1, \varphi_1 : \mathcal{L}_X \xrightarrow{\sim} t_{x_1}^* \mathcal{L}_X), \dots, (x_r, \varphi_r : \mathcal{L}_X \xrightarrow{\sim} t_{x_r}^* \mathcal{L}_X))$ is mapped to $((x_1, \dots, x_r), p_1^* \varphi_1 \otimes \cdots \otimes p_r^* \varphi_r : \mathcal{L}_X^{*r} \xrightarrow{\sim} t_{(x_1, \dots, x_r)}^* \mathcal{L}_X^{*r})$.

The type $\delta^{*r}$ of $\mathcal{L}_X^{*r}$ is easily seen to be

$$ \delta^{*r} = \left( \underbrace{\delta_1, \dots, \delta_1}_{r}, \underbrace{\delta_2, \dots, \delta_2}_{r}, \dots, \underbrace{\delta_g, \dots, \delta_g}_{r} \right) \in \mathbb{Z}^{gr}, $$

since $\mathbb{Z}(\delta^{*r}) \cong \mathbb{Z}(\delta)^r$, and $K(\delta^{*r}) \cong K(\delta)^r$ is equipped with the symplectic pairing

$$ e_{\delta^{*r}}((z_1, \dots, z_r), (z'_1, \dots, z'_r)) = e_{\delta}(z_1, z'_1) \cdots e_{\delta}(z_r, z'_r) \in k^\times. $$

The Heisenberg group $\mathcal{H}(\delta^{*r})$ is then defined as in (3). The theta structure $\Theta_{\mathcal{L}_X} : \mathcal{H}(\delta) \to \mathcal{G}(\mathcal{L}_X)$ induces in a natural way a $k^\times$-isomorphism

$$ \Theta_{\mathcal{L}_X^{*r}} : \mathcal{H}(\delta^{*r}) \to \mathcal{G}(\mathcal{L}_X^{*r}), $$

given by

$$ (\alpha, (x_1, y_1), \dots, (x_r, y_r)) \mapsto (\alpha \cdot \Theta_{\mathcal{L}_X}(1, x_1, y_1), \dots, \Theta_{\mathcal{L}_X}(1, x_r, y_r)) $$

(actually, we can put the scalar $\alpha$ in any coordinate). The canonical coordinates for the $r$-fold product theta structure $\Theta_{\mathcal{L}_X^{*r}}$ are simply given by

$$ \theta_{\mathbf{i}}^{\Theta_{\mathcal{L}_X^{*r}}}(\mathbf{x}) = \theta_{i_1}^{\Theta_{\mathcal{L}_X}}(x_1) \cdots \theta_{i_r}^{\Theta_{\mathcal{L}_X}}(x_r), \qquad (6) $$

where $\mathbf{i} = (i_1, \dots, i_r) \in K_1(\mathcal{L}_X)^r = K_1(\mathcal{L}_X^{*r})$ and $\mathbf{x} = (x_1, \dots, x_r) \in X^r(\bar{k})$.

We call a theta structure on $(X^r, \mathcal{L}_X^{*r})$ an $r$-fold product theta structure if it arises via the above construction for some polarization $\mathcal{L}_X$ on $X$. Note that $r$-fold product theta structures are key for our algorithm as they will allow us to deduce data about the polarized abelian variety $(B, \mathcal{M})$ from data about the polarized abelian $r$-fold product abelian variety $(B^r, \mathcal{M}^{*r})$. The following lemma will be useful in the sequel.

**LEMMA 3.4.** A theta structure $\Theta^{*r} : \mathcal{H}(\delta^{*r}) \to \mathcal{G}(\mathcal{L}_X^{*r})$ is of product form if and only if the induced symplectic isomorphism $\bar{\Theta}^{*r} : K(\delta^{*r}) \to K(\mathcal{L}_X^{*r})$ is of product form.

*Proof.* Let $\Theta^{*r} : \mathcal{H}(\delta^{*r}) \to \mathcal{G}(\mathcal{L}_X^{*r})$ be a theta structure such that the induced symplectic isomorphism $\bar{\Theta}^{*r} : K(\delta^{*r}) \to K(\mathcal{L}_X^{*r})$ is of product form. Denote by $\bar{\Theta} : K(\delta) \to K(\mathcal{L}_X)$ the restriction of $\bar{\Theta}^{*r}$ to a single factor and suppose $(x, y) \in K(\delta)$ is mapped via $\bar{\Theta}$ to $z \in K(\mathcal{L}_X)$. Then $\Theta^{*r}$ must send

$$ (1, (x, y), \dots, (x, y)) \mapsto ((z, \varphi_1), \dots, (z, \varphi_r)), $$

where the isomorphisms $\varphi_1, \dots, \varphi_r$ satisfy $\varphi_2 = \alpha_2 \cdot \varphi_1, \dots, \varphi_r = \alpha_r \cdot \varphi_1$, with $\alpha_2, \dots, \alpha_r \in k^\times$. Define $\Theta : \mathcal{H}(\delta) \to \mathcal{G}(\mathcal{L}_X)$ pointwise by

$$ (1, x, y) \mapsto (z, \sqrt[r]{\alpha_2} \cdots \sqrt[r]{\alpha_r} \cdot \varphi_1). $$

One carefully checks that $\Theta$ is a $k^\times$-isomorphism and that $\Theta^{*r}$ is equal to the $r$-fold product of $\Theta$. $\square$
## 4. Computing a Theta Null Point for the Target Abelian Variety

We now compute a theta null point for the target abelian variety ($B = A/G, \mathcal{M}_0$) where $\mathcal{M}_0$ is the induced principal polarization on $B$ from Section 2.2. To do that, we apply Theorem 3.2 to the $\beta$-contragredient isogeny $\hat{f}: (B, \mathcal{M}^{\beta}) \to (A, \mathcal{L})$ to express the canonical coordinates of $(B, \mathcal{M}^{\beta})$ (with respect to a compatible theta structure) in terms of the canonical coordinates of $(A, \mathcal{L}, \Theta_{\mathcal{L}})$ and then use one more time the isogeny theorem for a suitably chosen isogeny of polarized abelian varieties with theta structures

$$F: (B^r, (\mathcal{M}^{\beta})^{*r}, \Theta_{(\mathcal{M}^{\beta})^{*r}}) \to (B^r, \mathcal{M}^{*r}, \tilde{\Theta}_{\mathcal{M}^{*r}})$$

to obtain the canonical coordinates of $(B^r, \mathcal{M}^{*r}, \tilde{\Theta}_{\mathcal{M}^{*r}})$. Since the target theta structure $\tilde{\Theta}_{\mathcal{M}^{*r}}$ is not necessarily a product theta structure, we cannot a priori use it to recover a theta null point for $(B, \mathcal{M})$. We thus convert it first to a theta structure of the form $\Theta_{\mathcal{M}} \star \Theta_{\mathcal{M}^{*}(r-1)}$ for a theta structure $\Theta_{\mathcal{M}}$ on $(B, \mathcal{M})$ via a suitable choice of a metaplectic automorphism (an automorphism of the corresponding Heisenberg group) and then use a transformation formula for the theta constants to recover the theta null point for $(B, \mathcal{M}, \Theta_{\mathcal{M}})$.

### 4.1 Applications of the isogeny theorem

Let $(A, \mathcal{L}_0)$ be a principally polarized abelian $g$-fold over $k$. For what follows we set $n = 2$ or $n = 4$. Let $\mathcal{L}$ be the totally symmetric line bundle in the algebraic equivalence class of $\mathcal{L}_0^n$. Starting from Theorem 3.2, we wish to use the theta null point of $A$ for the symmetric theta structure $\Theta_{\mathcal{L}}$ on $(A, \mathcal{L})$ to compute the theta null point of $B$ for a suitably chosen symmetric theta structure $\Theta_{\mathcal{M}}$ on $(B, \mathcal{M})$, where $\mathcal{M}$ is the totally symmetric line bundle algebraically equivalent to $\mathcal{M}_0^n$. One possible way is to first compute the theta null point of $A$ for a symmetric theta structure $\Theta_{\mathcal{L}^{\beta}}$ on $(A, \mathcal{L}^{\beta})$ in order to apply the isogeny theorem to $f: (A, \mathcal{L}^{\beta}) \to (B, \mathcal{M})$ which will give us the theta null point of $B$ for a symmetric theta structure $\Theta_{\mathcal{M}}$ compatible with $\Theta_{\mathcal{L}^{\beta}}$ (via $f$). There are two major problems with this approach:

i) There is no obvious isogeny of polarized abelian varieties between $(A, \mathcal{L}^{\beta})$ and $(A, \mathcal{L})$ available<fnref n="1" />.

ii) Even if one knows such an isogeny, the isogeny theorem applied to $(A, \mathcal{L}^{\beta}) \to (A, \mathcal{L})$ expresses the theta coordinates for $\Theta_{\mathcal{L}}$ as polynomials in the theta coordinates for $\Theta_{\mathcal{L}^{\beta}}$, thus requiring one to solve a polynomial system which may be expensive in practice.

#### 4.1.1 Addressing i).
To address i), one may try to express $\beta$ as $u\bar{u}$ for some $u \in \text{End}(A)$, where $\bar{u}$ is the $K/K_0$-conjugate of $u$, and then apply the isogeny theorem for $u: A \to A$ instead. In this case, $u^*\mathcal{L}$ will be algebraically equivalent to $\mathcal{L}^{\beta}$ and hence, we will have an isogeny $u: (A, \mathcal{L}^{\beta}) \to (A, \mathcal{L})$ of polarized abelian varieties. The problem is that $\beta$ need not be in the image of the norm map $N_{K/K_0}: \mathcal{O}_K \to \mathcal{O}_{K_0}$ and even if it were (i.e. $\beta = u\bar{u}$ for some $u \in \mathcal{O}_K$), such a $u$ need not be an easily computable endomorphism of $A$.

Instead, we use an idea appearing in [CR11] and motivated by Zahrin's trick [Mil86, Thm.13.12] used to show that for any abelian variety $X$, the abelian variety $(X \times X^{\vee})^4$ is principally polarizable. Note that for any integer $r \ge 1$, $\beta$ induces an endomorphism $\beta^r: A^r \to A^r$ of the $r$-fold product $A^r$. Choosing $r > 1$ allows us to search for a matrix $F \in M_r(\text{End}(A))$ that satisfies $\beta^r = \bar{F}F$. If for example $r = 4$, one knows that any totally positive element of $\mathcal{O}_{K_0}$ is a sum of 4 algebraic numbers in the same field, i.e. there exist $\alpha_1, \dots, \alpha_4 \in K_0$ such that $\beta = \alpha_1^2 + \dots + \alpha_4^2$. In general, the $\alpha_i$'s need not be integral and hence, need not be in $\text{End}(A)^+$. Yet, assuming that they yield endomorphisms of the $\beta$-torsion and the $n$-torsion points (i.e. the denominators are coprime to $n\ell$),

<footnote n="1">¹One might misleadingly think that $\beta: A \to A$ is such an isogeny. Yet, the degree of $\beta^*\mathcal{L}$ is $n^g \deg(\beta) = n^g \ell^2$ whereas the degree of $\mathcal{L}^{\beta}$ is $n^g \ell$, so $\beta^*\mathcal{L}$ is not isomorphic to $\mathcal{L}^{\beta}$</footnote>
one can take $F$ to be the matrix corresponding to multiplication by $\alpha_1 + \alpha_2 i + \alpha_3 j + \alpha_4 k$ on the Hamilton quaternions over $K_0$ and observe that $F^t F = \bar{F}F = \beta I_4$. By looking at the corresponding isogeny $F: A^4 \to A^4$, we see that $F^* \mathcal{L}^{*4}$ is algebraically equivalent to $(\mathcal{L}^\beta)^{*4}$ and hence, one can apply the isogeny theorem for $F: (A^4, (\mathcal{L}^\beta)^{*4}) \to (A^4, \mathcal{L}^{*4})$. But this reduces to the same problem as in ii).

### 4.1.2 Addressing ii).
We can avoid solving a polynomial system by using the $\beta$-contragredient isogeny $\hat{f}: B \to A$ in an appropriate way, as we will see in the next section. Therefore we first consider the following lemma.

**LEMMA 4.1.** Let $M_0$ be the (induced) principal polarization on $B$ defined in Section 2.2 and let $M_0^\beta$ be the ample line bundle on $B$ whose polarization isogeny $\varphi_{M_0^\beta}$ is $\varphi_{M_0} \circ \beta: B \to B^\vee$. Then $\hat{f}^*\mathcal{L}_0$ is algebraically equivalent to $M_0^\beta$.

*Proof.* By Proposition 2.1 applied to $(B, M_0)$, there exists $\gamma \in \text{End}(B)^{++}$ such that $\hat{f}^*\mathcal{L}_0$ is algebraically equivalent to $M_0^\gamma$. Now, we have the following algebraic equivalences $f^*M_0^\gamma \sim \mathcal{L}_0^{\beta\gamma}$ and $\mathcal{L}_0^{\beta\gamma} \sim (f \circ \hat{f})^*\mathcal{L}_0 = \beta^*\mathcal{L}_0 \sim \mathcal{L}_0^{\beta^2}$ where the last equivalence comes from Corollary 2.2 and the fact that $\beta$ is a real endomorphism. By applying Proposition 2.1 again, we get that $\beta = \gamma$. $\square$

**Remark 8.** The line bundles satisfy $(\hat{f}^*\mathcal{L}_0)^n \sim \hat{f}^*\mathcal{L}_0^n \sim \hat{f}^*\mathcal{L}$, as $n \nmid l$, and $(M_0^\beta)^n \sim M^\beta$. Therefore, $\hat{f}^*\mathcal{L}$ is algebraically equivalent to $M^\beta$. But then, both line bundles being totally symmetric implies that $\hat{f}^*\mathcal{L}$ is linearly equivalent to $M^\beta$.

Using Lemma 4.1 we can recover the theta coordinates for $(B, M^\beta)$ with respect to a suitably chosen theta structure $\Theta_{M^\beta}$ without solving systems of polynomial equations. Then using the same idea as in i) applied to $F: (B^4, (M^\beta)^{*4}) \to (B^4, M^{*4})$, we compute the theta null point for $(B^4, M^{*4})$ for some compatible theta structure $\tilde{\Theta}_{M^{*4}}$. In general, we can recover the theta null point for a single polarized factor $(B, M)$ only after a symplectic transformation of the theta coordinates (induced by a metaplectic automorphism turning $\tilde{\Theta}_{M^{*4}}$ into a product structure), as explained in Section 4.3.

Note that in some cases $\beta$ can be written as the sum of 2 squares of real algebraic integers, therefore in the sequel we will consider $F$ as a real endomorphism of $B^r$ for $r=2$ or $r=4$.

### 4.1.3 Isogeny theorem for $\hat{f}$.
Lemma 4.1 shows that $\hat{f}: (B, M^\beta) \to (A, \mathcal{L})$ is an isogeny of polarized abelian varieties. Let $\Theta_{M^\beta}$ be a theta structure on $(B, M^\beta)$ compatible with the theta structure $\Theta_{\mathcal{L}}$, i.e. such that the isogeny $\hat{f}: (B, M^\beta, \Theta_{M^\beta}) \to (A, \mathcal{L}, \Theta_{\mathcal{L}})$ is an isogeny of polarized abelian varieties with theta structures. Then $\Theta_{M^\beta}$ induces a symplectic decomposition $K(M^\beta) = K_1(M^\beta) \oplus K_2(M^\beta)$. Since $K_i(M^\beta) = K_i(M^\beta)[\beta] \oplus K_i(M^\beta)[n]$, we have a symplectic decomposition $K_1(M^\beta)[n] \oplus K_2(M^\beta)[n]$ of $B[n]$ which yields (via $\hat{f}$) the symplectic decomposition on $K(\mathcal{L}) = A[n]$ determined by the theta structure $\Theta_{\mathcal{L}}$. If we assume that the kernel $\hat{G}$ of $\hat{f}$ is contained in $K_2(M^\beta)[\beta]$ (which we can always do since the compatibility requirement on $\Theta_{M^\beta}$ is only on the $n$-torsion and not on the $\beta$-torsion points), the kernel $G$ of $f$ coincides with $\hat{f}(K_1(M^\beta)[\beta])$. Moreover, the isogeny $\hat{f}$ induces an isomorphism between $K_1(M^\beta)[n]$ and $K_1(\mathcal{L})$ and significantly simplifies the formula appearing in the isogeny theorem when applied to $\hat{f}$. Indeed, there exists a constant $\lambda \in \bar{k}^\times$ such that for all points $y \in B(\bar{k})$ and all $i \in K_1(\mathcal{L})$,

$$ \theta_i^{\Theta_{\mathcal{L}}}(\hat{f}(y)) = \lambda \cdot \theta_j^{\Theta_{M^\beta}}(y), \qquad (7) $$

where $j \in K_1(M^\beta)[n]$ is the unique preimage of $i$ via $\hat{f}$. Specializing to $y=0_B$, we obtain

$$ \theta_i^{\Theta_{\mathcal{L}}}(0_A) = \lambda \cdot \theta_j^{\Theta_{M^\beta}}(0_B). \qquad (8) $$
### 4.1.4 Isogeny theorem for F.
Let $F: B^r \to B^r$ be as in Section 4.1.2. We first prove the following:

**LEMMA 4.2.** *The line bundles $F^*M_0^{\beta}$ and $(M_0^\beta)^{\star r}$ are algebraically equivalent.*

*Proof.* From Corollary 2.2, $F^*M_0^{\star r}$ is algebraically equivalent to $(M_0^{\star r})^{F^\dagger F}$. Here $F^\dagger$ denotes the action of the Rosati involution on $\text{End}(B^r)$, which is given component wise as the Rosati involution (of $\text{End}(B)$) on the coefficients of the transpose of $F$. Since $F$ is composed of totally real endomorphisms, we have that $F^\dagger = F^t$, so that $F^t F = \beta \text{Id}_r$. Furthermore, comparing polarization isogenies we have that $(M_0^{\star r})^{\beta \text{Id}_r}$ is algebraically equivalent to $(M_0^\beta)^{\star r}$. $\square$

As $F^*M_0^{\star r}$ is algebraically equivalent to $(M_0^\beta)^{\star r}$ and as $M^{\star r}$ and $(M^\beta)^{\star r}$ are both totally symmetric, we have that $F^*M^{\star r}$ is linearly equivalent to $(M^\beta)^{\star r}$.

Consider the $r$-fold product theta structure $\Theta_{(M^\beta)^{\star r}}$ on $(B^r, (M^\beta)^{\star r})$ (determined by $\Theta_{M^\beta}$) and let $\tilde{\Theta}_{M^{\star r}}$ be a compatible (for the isogeny $F$) theta structure on $(B, M^{\star r})$. According to Theorem 3.2 applied to

$$F: (B^r, (M^\beta)^{\star r}, \Theta_{(M^\beta)^{\star r}}) \to (B^r, M^{\star r}, \tilde{\Theta}_{M^{\star r}}),$$

there exists $\lambda \in \bar{k}^\times$ such that for every $\mathbf{y} = (y_1, \dots, y_r) \in B^r(\bar{k})$ and $\mathbf{k} \in K_1(M^{\star r})$,

$$\theta_{\mathbf{k}}^{\tilde{\Theta}_{M^{\star r}}}(F(\mathbf{y})) = \lambda \cdot \sum_{\substack{\mathbf{t} \in K_1((M^\beta)^{\star r})[\beta] \\ F(\mathbf{t})=0}} \theta_{\mathbf{j}+\mathbf{t}}^{\Theta_{(M^\beta)^{\star r}}}(\mathbf{y}) = \lambda \cdot \sum_{\substack{\mathbf{t} \in K_1((M^\beta)^{\star r})[\beta] \\ F(\mathbf{t})=0}} \prod_{s=1}^{r} \theta_{\mathbf{j}_s+\mathbf{t}_s}^{\Theta_{M^\beta}}(y_s). \quad (9)$$

Here, we are using the decomposition $K_1((M^\beta)^{\star r}) = K_1((M^\beta)^{\star r})[n] \oplus K_1((M^\beta)^{\star r})[\beta]$, with $\mathbf{j} = (j_1, \dots, j_r)$ being the unique element in $K_1((M^\beta)^{\star r})[n]$ that satisfies $F(\mathbf{j}) = \mathbf{k}$, and $\mathbf{t} = (t_1, \dots, t_r)$ is in the kernel of $F$. Specializing to $\mathbf{y} = 0$, we obtain

$$\theta_{\mathbf{k}}^{\tilde{\Theta}_{M^{\star r}}}(0_{B^r}) = \lambda \cdot \sum_{\substack{\mathbf{t} \in K_1((M^\beta)^{\star r})[\beta] \\ F(\mathbf{t})=0}} \prod_{s=1}^{r} \theta_{\mathbf{j}_s+\mathbf{t}_s}^{\Theta_{M^\beta}}(0_B). \quad (10)$$

## 4.2 Computing the theta null point $(\theta_{\mathbf{k}}^{\tilde{\Theta}_{M^{\star r}}}(0_{B^r}))_{\mathbf{k} \in K_1(M^{\star r})}$ of $B^r$

To evaluate the right-hand side of (10), we need to know the theta null point $(\theta_j^{\Theta_{M^\beta}}(0_B))_{j \in K_1(M^\beta)}$. The input of the algorithm only provides us with the (projective) theta null point $(\theta_i^{\Theta_{\mathcal{L}}}(0_A))_{i \in K_1(\mathcal{L})}$ and the (projective) theta coordinates $(\theta_i^{\Theta_{\mathcal{L}}}(t))_{i \in K_1(\mathcal{L})}$, where $t$ is a generator of the kernel of $f$.

Equation (8) will recover some, but not all of the projective theta coordinates for the theta null point $(\theta_j^{\Theta_{M^\beta}}(0_B))_{j \in K_1(M^\beta)}$. More precisely, we will recover $\{\theta_j^{\Theta_{M^\beta}}(0_B)\}_{j \in K_1(M^\beta)[n]}$ up to a projective factor. To recover the rest of the coordinates, we are hoping to use the action of the Heisenberg group $\mathcal{H}(\delta_{M^\beta})$ on the affine cone $\tilde{B}$ (as described in Section 3.2.2), which implies that for each $t'' \in K_1(M^\beta)[\beta]$ we have

$$\theta_{j+t''}^{\Theta_{M^\beta}}(0_B) = \lambda_{t''} \cdot \theta_j^{\Theta_{M^\beta}}(t''), \quad \forall j \in K_1(M^\beta)[n] \quad (11)$$

up to a projective factor $\lambda_{t''} \in \bar{k}^\times$. This shows that one can recover the missing projective coordinates by using the theta coordinates of all the $\ell$-torsion points $t'' \in K_1(M^\beta)[\beta]$. Letting $t' \in K_1(M^\beta)[\beta]$ be the unique preimage in $K_1(M^\beta)[\beta]$ of $t$ under $\tilde{f}$, we can compute (up to projective factors) the coordinates

$$\{\theta_j^{\Theta_{M^\beta}}(t')\}_{j \in K_1(M^\beta)[n]}, \{\theta_j^{\Theta_{M^\beta}}(2t')\}_{j \in K_1(M^\beta)[n]}, \dots, \{\theta_j^{\Theta_{M^\beta}}((\ell-1)t')\}_{j \in K_1(M^\beta)[n]}$$

using (7) as

$$\theta_j^{\Theta_{M^\beta}}(ut') = \lambda_u \cdot \theta_{\tilde{f}(j)}^{\Theta_{\mathcal{L}}}(ut), \text{ for } 1 \le u \le \ell-1. \quad (12)$$
The latter can be computed by computing the point $ut$ in Mumford coordinates and then converting to theta coordinates $(\theta_i^{\Theta_L}(ut))_{i \in K_1(\mathcal{L})}$ for $(A, \mathcal{L}, \Theta_\mathcal{L})$. The problem is that we cannot simply patch the projective coordinates $(\theta_i^{\Theta_L}(0_A))_{i \in K_1(\mathcal{L})}$, $(\theta_i^{\Theta_L}(t))_{i \in K_1(\mathcal{L})}$, ..., $(\theta_i^{\Theta_L}((\ell-1)t))_{i \in K_1(\mathcal{L})}$ together and obtain the theta null point of $B$ for $\Theta_{\mathcal{M}^\beta}$. That is, knowing $\ell$ projective points in $\mathbb{P}^{n^2-1}$, there is no natural map

$$ \underbrace{\mathbb{P}^{n^2-1} \times \dots \times \mathbb{P}^{n^2-1}}_{\ell \text{ times}} \to \mathbb{P}^{\ell n^2-1} $$

giving a projective point in $\mathbb{P}^{\ell n^2-1}$. Hence, for computing the right-hand side of (10) we cannot simply substitute the theta coordinates of $0_A, t, \dots, (\ell-1)t$ in the product $\prod_{s=1}^r \theta_{j_s+t_s''}^{\Theta_{\mathcal{M}^\beta}}(0_B)$. Still we would like to make use of Equations (11) and (12) to compute the right-hand side of (10). To do so, we will have to work with affine lifts $\tilde{0}_B \in \mathbb{A}^{\ell n^2}(\bar{k})$ and $\tilde{0}_A, \tilde{t}, \dots, (\tilde{\ell}-1)t \in \mathbb{A}^{n^2}(\bar{k})$ of the points $0_B$ and $0_A, t, \dots, (\ell-1)t$ respectively.

**Notation 1.** Let $(X, \mathcal{N}, \Theta_\mathcal{N})$ be a polarized abelian variety with a theta structure. Let $x \in X(\bar{k})$ be a point on $X$ with projective theta coordinates $(\theta_i^{\Theta_\mathcal{N}}(x))_{i \in K_1(\mathcal{N})}$. Let $\tilde{x}$ be an affine lift of the theta coordinates of $x$. Then we write $\theta_i^{\Theta_\mathcal{N}}(\tilde{x})$ for the $i$th coordinate of $\tilde{x}$.

Equations (11) and (12) are equalities between coordinates of projective points. This means, knowing the coordinates of one projective point, we know the coordinates of the second one up to a projective factor. For (11), fixing an affine lift $\tilde{0}_B$ of $0_B$, we can set the projective factor $\lambda_{t''} = 1$, which determines an affine lift of $t''$. And for (12), writing $ut' = t''$, an affine lift of $ut'$ for $\Theta_{\mathcal{M}^\beta}$ determines an affine lift of $ut$ for $\Theta_\mathcal{L}$ by setting $\lambda_u = 1$. Combining (11) and (12), if we were given an affine lift $\tilde{0}_B = (\theta_j^{\Theta_\mathcal{M}^\beta}(\tilde{0}_B))_{j \in K_1(\mathcal{M}^\beta)}$ of the theta null point of $B$ for $\Theta_{\mathcal{M}^\beta}$, we could define affine lifts

$$ \tilde{0}_A = (\theta_i^{\Theta_L}(\tilde{0}_A))_{i \in K_1(\mathcal{L})}, \quad \tilde{t} = (\theta_i^{\Theta_L}(\tilde{t}))_{i \in K_1(\mathcal{L})}, \dots, (\tilde{\ell}-1)t = (\theta_i^{\Theta_L}((\tilde{\ell}-1)t))_{i \in K_1(\mathcal{L})} $$

of $0_A, t, \dots, (\ell-1)t$ as

$$ \begin{align} \theta_i^{\Theta_L}(\tilde{0}_A) &:= \theta_j^{\Theta_\mathcal{M}^\beta}(\tilde{0}_B), \nonumber \\ \theta_i^{\Theta_L}(\tilde{t}) &:= \theta_{j+t'}^{\Theta_\mathcal{M}^\beta}(\tilde{0}_B), \tag{13} \\ \vdots \nonumber \\ \theta_i^{\Theta_L}((\tilde{\ell}-1)t) &:= \theta_{j+(\ell-1)t'}^{\Theta_\mathcal{M}^\beta}(\tilde{0}_B), \nonumber \end{align} $$

where $i$ runs over $K_1(\mathcal{L})$ and $j = \tilde{f}^{-1}(i)$ runs over $K_1(\mathcal{M}^\beta)[n]$. Unfortunately, the input of the algorithm only provides us with an affine lift $\tilde{0}_A$ of $0_A$ and not with an affine lift of $0_B$. However, by the affine version of (12) where we set the scalar to 1, a choice of lift $\tilde{0}_A$ determines a lift of $0_B$, which in return determines lifts of $t, \dots, (\ell-1)t$ as in (13). If now out of all the possible lifts of $t, \dots, (\ell-1)t$ we were able to determine precisely the ones induced in this way, we could patch their coordinates together and obtain an affine lift of $0_B$ for $\Theta_{\mathcal{M}^\beta}$, and then using (10) we can compute an affine lift of the theta null point of $B^r$ with respect to $\Theta_{\mathcal{M}^{\star r}}$. Of course we cannot take arbitrary lifts of $t, \dots, (\ell-1)t$ and hope they correspond to the ones induced by the fixed lift $\tilde{0}_A$, but we will show that the induced lifts satisfy some compatibility condition, and that we can compute them up to $\ell$th roots of unity.
### 4.2.1 Affine lifts of $\tilde{f}$.
The isogeny theorem applied to the isogeny of polarized abelian varieties

$$ \tilde{f}: (B, \mathcal{M}^{\beta}, \Theta_{\mathcal{M}^{\beta}}) \to (A, \mathcal{L}, \Theta_{\mathcal{L}}) $$

implies that there exists $\lambda \in \bar{k}^{\times}$ such that for all $i \in K_1(\mathcal{L})$ and for all $y \in B(\bar{k})$,

$$ \theta_i^{\Theta_{\mathcal{L}}}(\tilde{f}(y)) = \lambda \cdot \theta_j^{\Theta_{\mathcal{M}^{\beta}}}(y), $$

where $j \in K_1(\mathcal{M}^{\beta})[n]$ is the unique index such that $\tilde{f}(j) = i$. The scalar $\lambda$ is just a projective factor of the projective point $\tilde{f}(y) \in A(\bar{k})$, meaning that replacing $\lambda$ by any $\lambda' \in \bar{k}^{\times}$, the statement of the isogeny theorem remains true. We can lift the isogeny $\tilde{f}$ to an “affine” isogeny

$$ \tilde{f}_{\lambda}: \tilde{B} \to \tilde{A}, \tilde{y} \mapsto \tilde{f}(\tilde{y}), $$

where the $i$th coordinate of $\tilde{f}(\tilde{y})$ (for $i \in K_1(\mathcal{L})$) is given by

$$ \theta_i^{\Theta_{\mathcal{L}}}(\tilde{f}_{\lambda}(\tilde{y})) = \lambda \cdot \theta_{\tilde{f}^{-1}(i)}^{\Theta_{\mathcal{M}^{\beta}}}(\tilde{y}). $$

Moreover, every choice of $\lambda \in \bar{k}^{\times}$ determines an affine lift $\tilde{f}_{\lambda}$ of $\tilde{f}$ by the above. For now, fix $\tilde{f} = \tilde{f}_1$ the affine lift of $\tilde{f}$ where we set $\lambda = 1$. Then $\tilde{f}$ satisfies

$$ \tilde{f}(\xi \cdot \tilde{y}) = \xi \cdot \tilde{f}(\tilde{y}) \text{ for } \tilde{y} \in \tilde{B} \text{ and } \xi \in \bar{k}^{\times}. \qquad (14) $$

Note that a choice of affine lift $\tilde{0}_A$ of $0_A$ determines an affine lift $\tilde{0}_B$ of $0_B$ by the relation

$$ \tilde{0}_B = \tilde{f}(\tilde{0}_A). $$

### 4.2.2 The action of the Heisenberg group on $\tilde{B}$.
Let $\delta_{\mathcal{M}^{\beta}} = (n, \dots, n, \ell n) \in \mathbb{Z}^g$ be the type of $\mathcal{M}^{\beta}$ and consider the Heisenberg group $\mathcal{H}(\delta_{\mathcal{M}^{\beta}})$, whose underlying set is given by $k^{\times} \times \mathbb{Z}(\delta_{\mathcal{M}^{\beta}}) \times \tilde{\mathbb{Z}}(\delta_{\mathcal{M}^{\beta}})$, where $\mathbb{Z}(\delta_{\mathcal{M}^{\beta}}) = (\mathbb{Z}/n\mathbb{Z})^{g-1} \times \mathbb{Z}/\ell n\mathbb{Z}$. By (5) we know that $\mathcal{H}(\delta_{\mathcal{M}^{\beta}})$ acts on $\tilde{B}$ as

$$ (\alpha, i, k) \cdot \theta_j^{\Theta_{\mathcal{M}^{\beta}}} = \alpha k(-j - i) \theta_{j+i}^{\Theta_{\mathcal{M}^{\beta}}} $$

and that $(1, i, k) \cdot \tilde{y}$ is a lift of $y + z$, where $z = \bar{\Theta}_{\mathcal{M}^{\beta}}((i, k))$.

Let $i_{t'} \in \mathbb{Z}(\delta_{\mathcal{M}^{\beta}})$ be the unique preimage of $t' \in K_1(\mathcal{M}^{\beta})[\beta]$ under $\bar{\Theta}_{\mathcal{M}^{\beta}}$. Note that $ui_{t'} = i_{ut'}$, so that $\ell i_{t'} = 0$. The action of $\mathcal{H}(\delta_{\mathcal{M}^{\beta}})$ on $\tilde{B}$ determines affine lifts $\tilde{t}', 2\tilde{t}', \dots, (\tilde{\ell} - 1)\tilde{t}'$ of $t', 2t', \dots, (\tilde{\ell} - 1)\tilde{t}'$ as follows

$$ \tilde{u}t' = (1, ui_{t'}, 0) \cdot \tilde{0}_B, \text{ for } 1 \le u \le \tilde{\ell} - 1. $$

This means that we have equality between the coordinates

$$ \theta_j^{\Theta_{\mathcal{M}^{\beta}}}(\tilde{u}t') = \theta_j^{\Theta_{\mathcal{M}^{\beta}}}((1, ui_{t'}, 0) \cdot \tilde{0}_B) = \theta_{j+ut'}^{\Theta_{\mathcal{M}^{\beta}}}(\tilde{0}_B). $$

Therefore, fixing a lift $\tilde{0}_A$ of $0_A$, which determines a lift $\tilde{0}_B$ of $0_B$ by the relation $\tilde{0}_B = \tilde{f}(\tilde{0}_A)$, the lifts $\tilde{t}', \dots, (\tilde{\ell} - 1)\tilde{t}'$ of (13) satisfy

$$ \tilde{t} = \tilde{f}((1, i_{t'}, 0) \cdot \tilde{0}_B), \dots, (\tilde{\ell} - 1)\tilde{t} = \tilde{f}((1, (\tilde{\ell} - 1)i_{t'}, 0) \cdot \tilde{0}_B). $$

**DEFINITION 4.3.** Let $\tilde{0}_A$ be a fixed affine lift of $0_A$. Let $\tilde{0}_B$ be the lift induced by $\tilde{f}$ and $\tilde{0}_A$. For $1 \le u \le \tilde{\ell} - 1$, the induced lift

$$ \tilde{f}((1, ui_{t'}, 0) \cdot \tilde{0}_B) $$

is called **right** lift of $ut$, and is denoted by $\tilde{u}t_{\text{right}}$.
The terminology comes from the following: knowing $\tilde{0}_A$ and the **right** lifts $\tilde{t}_{\text{right}}, \dots, (\tilde{\ell}-1)t_{\text{right}}$, we can patch their coordinates together and obtain an affine lift $\tilde{0}_B$ of $0_B$ for $\Theta_{\mathcal{M}^\beta}$, from which we can compute an affine lift of the theta null point of $B^r$ for $\tilde{\Theta}_{\mathcal{M}^{*r}}$. In general we cannot hope finding the **right** lifts, but as we will see, the **right** lifts satisfy some compatibility conditions, so that we can compute them up to $\ell$th roots of unity.

### 4.2.3 Excellent lifts.
We will show that the **right** lifts are excellent lifts, following the definition of [Rob10, §7.4]. We will therefore briefly recall the notion of the pseudo-operations **chain_add**, **chain_multadd** and **chain_mult** on the affine cone of an abelian variety. For more details we refer to [Rob10, §4.4]. Let $(A, \mathcal{L}, \Theta_{\mathcal{L}})$ be a polarized abelian variety with theta structure and let $\tilde{A}$ be the affine cone associated to the projective embedding induced by $\Theta_{\mathcal{L}}$. Let $\tilde{0}_A \in \tilde{A}$ be a fixed lift of $0_A$. Then,

- given affine lifts $\tilde{x}, \tilde{y}, \tilde{x-y} \in \tilde{A}$ of $x, y, x-y \in A$,

$$ \text{chain\_add}(\tilde{x}, \tilde{y}, \tilde{x-y}) $$

is an algorithm that computes the affine lift $\tilde{x}+\tilde{y}$ of $x+y$ so that $\tilde{0}_A, \tilde{x}, \tilde{y}, \tilde{x}+\tilde{y}, \tilde{x}-\tilde{y}$ satisfy the Riemann relations [Rob10, Thm.4.4.6.].

- given an integer $m \ge 1$ and affine lifts $\tilde{x}, \tilde{y}, \tilde{x}+\tilde{y} \in \tilde{A}$,

$$ \text{chain\_multadd}(m, \tilde{x}+\tilde{y}, \tilde{x}, \tilde{y}) $$

is an algorithm that computes an affine lift of $mx + y$. It is defined by recursive calls of **chain_add**. If $m < 0$ we set

$$ \text{chain\_multadd}(m, \tilde{x}+\tilde{y}, \tilde{x}, \tilde{y}) := \text{chain\_multadd}(-m, -\tilde{x}+\tilde{y}, -\tilde{x}, -\tilde{y}). $$

- given an affine lift $\tilde{x} \in \tilde{A}$,

$$ \text{chain\_mult}(m, \tilde{x}) := \text{chain\_multadd}(m, \tilde{x}, \tilde{x}, \tilde{0}_A) $$

is an algorithm that computes an affine lift of $mx$.

**DEFINITION 4.4.** Suppose that $\tilde{0}_A$ is a fixed affine lift of the theta null point of $A$ for $\Theta_{\mathcal{L}}$. We call an affine lift $\tilde{t}_e$ of $t \in G$ excellent with respect to $(A, \mathcal{L}, \Theta_{\mathcal{L}}, \tilde{0}_A)$ if

$$ \text{chain\_mult}(m+1, \tilde{t}_e) = -\text{chain\_mult}(m, \tilde{t}_e), \qquad (15) $$

where $\ell = 2m + 1$.

Throughout this section, suppose that we have fixed a lift $\tilde{0}_A$ of $0_A$. To compute an excellent lift of $t$, take any affine lift $\tilde{t}$ and look for a scalar $\lambda_t \in \bar{k}^\times$ such that $\tilde{t}_e = \lambda_t \cdot \tilde{t}$ is excellent. Here, $\lambda_t \cdot \tilde{t}$ is the affine point with $i$th coordinate equal to $\lambda_t \cdot \theta_i^{\Theta_{\mathcal{L}}}(\tilde{t})$. Indeed, using that

$$ \text{chain\_mult}(m+1, \lambda_t \cdot \tilde{t}) = \lambda_t^{(m+1)^2} \cdot \text{chain\_mult}(m+1, \tilde{t}) $$

and

$$ \text{chain\_mult}(m, \lambda_t \cdot \tilde{t}) = \lambda_t^{m^2} \cdot \text{chain\_mult}(m, \tilde{t}), $$

we obtain that $\tilde{t}_e = \lambda_t \cdot \tilde{t}$ will be excellent if

$$ \lambda_t^\ell \cdot \text{chain\_mult}(m+1, \tilde{t}) = -\text{chain\_mult}(m, \tilde{t}). $$

This determines $\lambda_t^\ell$ precisely; yet, one still has to take an $\ell$th root of unity, thus introducing some ambiguity in the choice of the affine lift.

We will show that if we fix a lift $\tilde{0}_A$, then the **right** lift $\tilde{t}_{\text{right}}$ is an excellent lift, and for all $u = 2, \dots, \ell-1$, we have $\tilde{u}t_{\text{right}} = \text{chain\_mult}(u, \tilde{t}_{\text{right}})$.
4.2.4 The right lifts are excellent. Let us first prove the following lemma about the compatibility of chain operations with the action of the Heisenberg group. Suppose that we have fixed an affine lift $\tilde{0}_B$ of $0_B$.

LEMMA 4.5. Let $i \in \mathbb{Z}(\delta_{\mathcal{M}^\beta})$ and $k \in \hat{\mathbb{Z}}(\delta_{\mathcal{M}^\beta})$ and let $m \in \mathbb{Z}_{\ge 0}$. Then, for $\tilde{y} \in \tilde{B}$ we have

$$ \mathrm{chain\_mult}(m, (1, i, k) \cdot \tilde{y}) = (1, mi, mk) \cdot \mathrm{chain\_mult}(m, \tilde{y}). $$

Moreover, for $\tilde{y}' \in \tilde{B}$

$$ \mathrm{chain\_multadd}(m, (1, i, k) \cdot \tilde{y} + \tilde{y}', (1, i, k) \cdot \tilde{y}', \tilde{y}) = (1, mi, mk) \cdot \mathrm{chain\_multadd}(m, \tilde{y} + \tilde{y}', \tilde{y}', \tilde{y}). $$

*Proof.* We first recall the following: for $n \in \mathbb{Z}_{\ge 0}$ and $\tilde{x} \in \tilde{B}$, by definition

$$ \mathrm{chain\_mult}(n, \tilde{x}) := \mathrm{chain\_multadd}(n, \tilde{x}, \tilde{x}, \tilde{0}_B) $$

and we compute $\mathrm{chain\_multadd}(n, \tilde{x}, \tilde{x}, \tilde{0}_B)$ recursively as

$$ \mathrm{chain\_multadd}(n, \tilde{x}, \tilde{x}, \tilde{0}_B) := \mathrm{chain\_add}(\mathrm{chain\_multadd}(n-1, \tilde{x}, \tilde{x}, \tilde{0}_B), \tilde{x}, \mathrm{chain\_multadd}(n-2, \tilde{x}, \tilde{x}, \tilde{0}_B)). $$

It follows that

$$ \mathrm{chain\_mult}(n, \tilde{x}) = \mathrm{chain\_add}(\mathrm{chain\_mult}(n-1, \tilde{x}), \tilde{x}, \mathrm{chain\_mult}(n-2, \tilde{x})). $$

The proof is by induction on $m$. For $m=1$ the statement is precisely [LR12b, Prop.3.11]. Assume that the statement is true for all $n \le m$ and write

$$ \mathrm{chain\_mult}(m + 1, (1, i, k) \cdot \tilde{y}) $$

$$ \begin{align*} \text{by def.} &:= \mathrm{chain\_add}(\mathrm{chain\_mult}(m, (1, i, k) \cdot \tilde{y}), (1, i, k) \cdot \tilde{y}, \mathrm{chain\_mult}(m-1, (1, i, k) \cdot \tilde{y})) \\ &:= \mathrm{chain\_add}((1, mi, mk) \cdot \mathrm{chain\_mult}(m, \tilde{y}), (1, i, k) \cdot \tilde{y}, (1, (m-1)i, (m-1)k) \cdot \mathrm{chain\_mult}(m-1, \tilde{y})) \end{align*} $$

$$ \begin{align*} \text{[LR12b,3.11]} &:= (1, (m+1)i, (m+1)k) \cdot \mathrm{chain\_add}(\mathrm{chain\_mult}(m, \tilde{y}), \tilde{y}, \mathrm{chain\_mult}(m-1, \tilde{y})) \\ &:= (1, (m+1)i, (m+1)k) \cdot \mathrm{chain\_mult}(m+1, \tilde{y}). \end{align*} $$

This proves the induction hypothesis. The proof for $\mathrm{chain\_multadd}$ is similar except that we use

$$ \begin{align*} \mathrm{chain\_multadd}(m + 1, \tilde{y} + \tilde{y}', \tilde{y}', \tilde{y}) &= \mathrm{chain\_add}(\mathrm{chain\_multadd}(m, \tilde{y} + \tilde{y}', \tilde{y}', \tilde{y}), \tilde{y}', \mathrm{chain\_multadd}(m-1, \tilde{y} + \tilde{y}', \tilde{y}', \tilde{y})). \end{align*} $$

□

Now, using Lemma 4.5 from above, and Lemma 3.9 and Corollary 3.17 of [LR12b], we can show the following key result.

PROPOSITION 4.6. Let $\tilde{0}_A$ be a fixed affine lift of $0_A$. Then the right lift $\tilde{t}_{\mathrm{right}}$ is an excellent lift of $t$, and for $2 \le u \le \ell - 1$ we have

$$ \tilde{u}_{\mathrm{right}} = \mathrm{chain\_mult}(u, \tilde{t}_{\mathrm{right}}). $$

It follows that $2\tilde{t}_{\mathrm{right}}, \dots, (\ell-1)\tilde{t}_{\mathrm{right}}$ are excellent lifts too.

*Proof.* Let $\tilde{0}_B$ be the lift of $0_B$ induced by $\tilde{0}_A$ and $\tilde{f}$ (c.f. Section 4.2.1). Let

$$ \tilde{t}' = (1, i_{t'}, 0) \cdot \tilde{0}_B, \dots, (\ell-1)\tilde{t}' = (1, (\ell-1)i_{t'}, 0) \cdot \tilde{0}_B $$

be the lifts of $t', \dots, (\ell-1)t'$ induced by the action of the Heisenberg group on $\tilde{B}$. Let $\ell = 2m + 1$. Observe that $(1, (m+1)i_{t'}, 0) \cdot \tilde{0}_B = (1, -mi_{t'}, 0) \cdot \tilde{0}_B$, which follows from $\ell i_{t'} = 0$. Now,
$$
\begin{align*}
\mathbf{chain\_mult}(m + 1, \tilde{t}_{\text{right}}) &= \mathbf{chain\_mult}(m + 1, \tilde{f}(\tilde{t}')) \\
&= \tilde{f}(\mathbf{chain\_mult}(m + 1, \tilde{t}')) \quad \text{by [LR12b, 3.17]} \\
&= \tilde{f}(\mathbf{chain\_mult}(m + 1, (1, i_{t'}, 0) \cdot \tilde{0}_B)) \\
&= \tilde{f}((1, (m + 1)i_{t'}, 0) \cdot \mathbf{chain\_mult}(m + 1, \tilde{0}_B)) \quad \text{by Lemma 4.5} \\
&= \tilde{f}((1, -mi_{t'}, 0) \cdot \tilde{0}_B) \\
&= \tilde{f}(-\mathbf{chain\_mult}(m, (1, i_{t'}, 0) \cdot \tilde{0}_B)) \quad \text{by Lemma 4.5} \\
&= \tilde{f}(-\mathbf{chain\_mult}(m, \tilde{t}')) \\
&= -\mathbf{chain\_mult}(m, \tilde{f}(\tilde{t}')) \quad \text{by [LR12b, 3.9] and [LR12b, 3.17]} \\
&= -\mathbf{chain\_mult}(m, \tilde{t}_{\text{right}}),
\end{align*}
$$

and therefore $\tilde{t}_{\text{right}}$ is an excellent lift. The equality $\tilde{u}_{\text{right}} = \mathbf{chain\_mult}(u, \tilde{t}_{\text{right}})$ is shown in a similar way, using that $\tilde{u}_{\text{right}} = \tilde{f}((1, u i_{t'}, 0), \tilde{0}_B)$. $\square$

Given the input $(\theta_i^{\Theta_L}(0_A))_{i \in K_1(L)}$ and $(\theta_i^{\Theta_L}(t))_{i \in K_1(L)}$ of the algorithm, when fixing an affine lift $\tilde{0}_A$ of $0_A$, we can compute an excellent lift $\tilde{t}$ of $t$ for $\tilde{0}_A$. This lift will differ from $\tilde{t}_{\text{right}}$ by an $\ell$th root of unity $\zeta_t$, i.e., $\tilde{t} = \zeta_t \cdot \tilde{t}_{\text{right}}$. By Proposition 4.6, the lift $\tilde{u} = \mathbf{chain\_mult}(u, \tilde{t})$ of $ut$, for $2 \le u \le \ell - 1$, will differ from the **right** lift of $ut$ by $\zeta_t^{u^2}$. When fixing an excellent lift of $t$ we commit an error of an $\ell$th root of unity, compared to fixing the **right** lift. We will show that this ambiguity does not affect the computation of the theta null point of $B^r$ for $\tilde{\Theta}_{M^{\star r}}$.

4.2.5 *Independence of the choice of an excellent lift of t.* We prove the case $r = 4$. The case $r = 2$ is easier and can be proven in a similar way.

It is not hard to show that

$$
\ker(F) \cap G^4 = \{F^t(t_1, t_2, 0, 0) : t_1, t_2 \in G\}, \quad (16)
$$

where the endomorphism $F^t$ is represented by the matrix

$$
F^t = \begin{pmatrix}
\alpha_1 & -\alpha_2 & -\alpha_3 & -\alpha_4 \\
\alpha_2 & \alpha_1 & \alpha_4 & -\alpha_3 \\
\alpha_3 & -\alpha_4 & \alpha_1 & \alpha_2 \\
\alpha_4 & \alpha_3 & -\alpha_2 & \alpha_1
\end{pmatrix}.
$$

Fix a lift $\tilde{0}_A$ of $0_A$ and fix an excellent lift $\tilde{t}$ of $t$ that differs from the **right** lift by an $\ell$th root of unity $\zeta_t$. Fix lifts $\tilde{2t} = \mathbf{chain\_mult}(2, \tilde{t})$, ..., $(\tilde{\ell}-1)t = \mathbf{chain\_mult}(\tilde{\ell}-1, \tilde{t})$ of $2t$, ..., $(\tilde{\ell}-1)t$. As we have seen, these lifts differ from the **right** lifts by $\zeta_t^{2^2}$, ..., $\zeta_t^{(\tilde{\ell}-1)^2}$ respectively. Fix $\mathbf{k} \in K_1(\mathcal{M}^{\star 4})$ and consider the sum

$$
\sum_{\substack{\mathbf{t}'' \in K_1((\mathcal{M}^{\beta})^{\star 4})[\beta] \\ F(\mathbf{t}'')=0}} \prod_{s=1}^{4} \theta_{j_s + t_s''}^{\Theta_{\mathcal{M}^{\beta}}}(0_B), \qquad (17)
$$

where $\mathbf{j} \in K_1((\mathcal{M}^{\beta})^{\star 4})[n]$ is the unique index such that $F(\mathbf{j}) = \mathbf{k}$.
In order to evaluate the above sum, we have to make sense of the terms we substitute for each
$\theta_{js+t''}^{\Theta_{M^\beta}}(0_B)$. Let $t' \in K_1(M^\beta)[\beta] \subset B$ be the unique preimage of $t$ under $\hat{f}$. Let $u_s$ be such that
$t_s'' = u_s t'$, then we evaluate (17) by substituting $\theta_{\hat{f}(j_s)}^{\Theta_{M^\beta}}(\tilde{u}_s t)$ for $\theta_{js+u_st'}^{\Theta_{M^\beta}}(0_B)$.

Note that since $\tilde{t}$ is an excellent lift, we have that $\tilde{0}_A = \mathbf{chain\_mult}(\ell, \tilde{t})$, so that the lifts $\tilde{0}t$ and $\tilde{0}_A$ are the same.

Recall that the kernel $\hat{G}$ of $\hat{f}$ equals $K_2(M^\beta)[\beta]$, so that $\hat{f}$ induces an isomorphism of $K_1(M^\beta)[\beta]$ onto $\hat{f}(K_1(M^\beta)[\beta]) = G$, the kernel of $f$. Hence, looping over $\mathbf{t}'' = (t_1'', \dots, t_4'') \in K_1((M^\beta)^{\star4})[\beta] \cap \ker(F)$ for computing $\prod_{s=1}^4 \theta_{js+u_st'}^{\Theta_{M^\beta}}(0_B) = \prod_{s=1}^4 \theta_{\hat{f}(j_s)}^{\Theta_{M^\beta}}(\tilde{u}_s t)$ (again, writing $t_s'' = u_st'$) is equivalent to looping over $\mathbf{t} = (t_1, \dots, t_4) \in G^4 \cap \ker(F)$ and computing $\prod_{s=1}^4 \theta_{\hat{f}(j_s)}^{\Theta_{M^\beta}}(\tilde{t}_s)$. Therefore, using (16), the sum (17) becomes

$$
\sum_{t_1, t_2 \in G} \theta_{i_1}^{\Theta_{\mathcal{L}}} (\alpha_1 \widetilde{t_1} - \alpha_2 t_2) \theta_{i_2}^{\Theta_{\mathcal{L}}} (\alpha_2 \widetilde{t_1} + \alpha_1 t_2) \theta_{i_3}^{\Theta_{\mathcal{L}}} (\alpha_3 \widetilde{t_1} - \alpha_4 t_2) \theta_{i_4}^{\Theta_{\mathcal{L}}} (\alpha_4 \widetilde{t_1} + \alpha_3 t_2), \quad (18)
$$

where $i_s = \hat{f}(j_s) \in K_1(\mathcal{L})$. Writing the action of $\alpha_i$ on $t$ as multiplication by the scalar $a_i$ (considered modulo $\ell$) and writing $t_1 = u_1 t$ and $t_2 = u_2 t$, with $0 \le u_1, u_2 \le \ell - 1$, we are reduced to compute the sum

$$
\sum_{0 \le u_1, u_2 \le \ell - 1} \theta_{i_1}^{\Theta_{\mathcal{L}}}((a_1 u_1 - a_2 u_2)t) \theta_{i_2}^{\Theta_{\mathcal{L}}}((a_2 u_1 + a_1 u_2)t) \theta_{i_3}^{\Theta_{\mathcal{L}}}((a_3 u_1 - a_4 u_2)t) \theta_{i_4}^{\Theta_{\mathcal{L}}}((a_4 u_1 + a_3 u_2)t). \quad (19)
$$

We know that if we compute (17) as

$$
\sum_{0 \le u_1, u_2 \le \ell-1} \theta_{i_1}^{\Theta_{\mathcal{L}}}((a_1 u_1 - a_2 u_2) t_{\text{right}}) \theta_{i_2}^{\Theta_{\mathcal{L}}}((a_2 u_1 + a_1 u_2) t_{\text{right}}) \theta_{i_3}^{\Theta_{\mathcal{L}}}((a_3 u_1 - a_4 u_2) t_{\text{right}}) \theta_{i_4}^{\Theta_{\mathcal{L}}}((a_4 u_1 + a_3 u_2) t_{\text{right}}), \quad (20)
$$

then we compute the theta null point of $B^4$ for $\tilde{\Theta}_{M^{\star4}}$ correctly. We will show that with our choice of lifts of $t, \dots, (\ell-1)t$, the sums (19) and (20) are the same.

LEMMA 4.7. Fix $u_1, u_2 \in \{0, \dots, \ell-1\}$. Then the terms

$$
\theta_{i_1}^{\Theta_{\mathcal{L}}}((a_1 \widetilde{u_1} - a_2 \widetilde{u_2})t) \theta_{i_2}^{\Theta_{\mathcal{L}}}((a_2 \widetilde{u_1} + a_1 \widetilde{u_2})t) \theta_{i_3}^{\Theta_{\mathcal{L}}}((a_3 \widetilde{u_1} - a_4 \widetilde{u_2})t) \theta_{i_4}^{\Theta_{\mathcal{L}}}((a_4 \widetilde{u_1} + a_3 \widetilde{u_2})t) \text{ and}
$$

$$
\theta_{i_1}^{\Theta_{\mathcal{L}}}((a_1 \widetilde{u_1} - a_2 \widetilde{u_2})t_{\text{right}}) \theta_{i_2}^{\Theta_{\mathcal{L}}}((a_2 \widetilde{u_1} + a_1 \widetilde{u_2})t_{\text{right}}) \theta_{i_3}^{\Theta_{\mathcal{L}}}((a_3 \widetilde{u_1} - a_4 \widetilde{u_2})t_{\text{right}}) \theta_{i_4}^{\Theta_{\mathcal{L}}}((a_4 \widetilde{u_1} + a_3 \widetilde{u_2})t_{\text{right}})
$$

are the same. That is to say, fixing an excellent lift $\tilde{t}$ of $t$ and substituting the coordinates of $\tilde{0}_A, \tilde{t}, \tilde{2t} = \mathbf{chain\_mult}(2, \tilde{t}), \dots, (\ell-1)t = \mathbf{chain\_mult}(\ell-1, \tilde{t})$ in the formula (17), we correctly compute an affine lift of the theta null point of $B^4$ for $\tilde{\Theta}_{M^{\star4}}$.

*Proof.* The two terms differ by

$$
\zeta_t^{(a_1 u_1 - a_2 u_2)^2 + (a_2 u_1 + a_1 u_2)^2 + (a_3 u_1 - a_4 u_2)^2 + (a_4 u_1 + a_3 u_2)^2}.
$$

But

$$
(a_1 u_1 - a_2 u_2)^2 + (a_2 u_1 + a_1 u_2)^2 + (a_3 u_1 - a_4 u_2)^2 + (a_4 u_1 + a_3 u_2)^2 = (a_1^2 + \cdots + a_4^2)(u_1^2 + u_2^2)
$$

and $(a_1^2 + \cdots + a_4^2)$ is a multiple of $\ell$, since it is given by the scalar of the action of $\beta = \alpha_1^2 + \cdots + \alpha_4^2$
on $t$. $\square$
### 4.3 Modification of $\tilde{\Theta}_{M^{*r}}$ on $(B^r, M^{*r})$ via a metaplectic isomorphism

The theta null point for the symmetric theta structure $\tilde{\Theta}_{M^{*r}}$ on $M^{*r}$ from Section 4.2 does not automatically recover the theta null point for $(B, \mathcal{M})$. It would do so if $\tilde{\Theta}_{M^{*r}}$ were of the form $\Theta_M \star \Theta_{M^{*(r-1)}}$ for theta structures $\Theta_M$ and $\Theta_{M^{*(r-1)}}$ on $(B, \mathcal{M})$ and $(B^{r-1}, \mathcal{M}^{*(r-1)})$ respectively.

In order to obtain information about a single polarized factor $(B, \mathcal{M})$, we need to modify $\tilde{\Theta}_{M^{*r}}$ via a suitably chosen metaplectic automorphism (an automorphism of the corresponding Heisenberg group) so that it has the above form. We explain how to do that now.

#### 4.3.1 Transforming $\tilde{\Theta}_{M^{*r}}$ to a product theta structure via a metaplectic automorphism.

**LEMMA 4.8.** There exists a metaplectic automorphism $M \in \mathrm{Aut}_{k^\times}(\mathcal{H}(\delta_M^{*r}))$ such that the theta structure $\tilde{\Theta}_{M^{*r}} \circ M$ is a product theta structure.

*Proof.* There exists a symmetric theta structure $\Theta_M$ on $(B, \mathcal{M})$. We can then form the (r-fold) product theta structure $\Theta_{M^{*r}} = \Theta_M \star \cdots \star \Theta_M$ on $(B^r, \mathcal{M}^{*r})$. Define $M := \tilde{\Theta}_{M^{*r}}^{-1} \circ \Theta_{M^{*r}}$, which is clearly an element of $\mathrm{Aut}_{k^\times}(\mathcal{H}(\delta_M^{*r}))$ and satisfies the above property. $\square$

#### 4.3.2 Explicit computation of a metaplectic automorphism $M$.
Lemma 4.8 shows that $\tilde{\Theta}_{M^{*r}}$ can be transformed into a product theta structure via an automorphism $M \in \mathrm{Aut}_{k^\times}(\mathcal{H}(\delta_M^{*r}))$, but does not provide such an $M$. We will look for an automorphism $M$ that transforms $\tilde{\Theta}_{M^{*r}}$ into a theta structure of the form $\Theta_M \star \cdots \star \Theta_M$. By Proposition 3.1, to give a symmetric theta structure $\mathcal{H}(\delta_M^{*r}) \to \mathcal{G}(\mathcal{M}^{*r})$ it suffices to give a symplectic isomorphism $K(2(\delta_M^{*r})) \to K((\mathcal{M}^{*r})^2)$. Observe that $K(2(\delta_M^{*r})) = K((2\delta_M)^{*r}) = K(2\delta_M) \times \cdots \times K(2\delta_M)$ and that $K((\mathcal{M}^{*r})^2) = K((\mathcal{M}^2)^{*r}) = K(\mathcal{M}^2) \times \cdots \times K(\mathcal{M}^2)$. We have the following proposition.

**PROPOSITION 4.9.** Suppose that a symplectic isomorphism $K(2(\delta_M^{*r})) \to K((\mathcal{M}^{*r})^2)$ is of product form. Then the induced symmetric theta structure $\mathcal{H}(\delta_M^{*r}) \to \mathcal{G}(\mathcal{M}^{*r})$ is also of product form.

*Proof.* Observe that the induced symplectic isomorphism $K(\delta_M^{*r}) \to K(\mathcal{M}^{*r})$ is of product form, then use Lemma 3.4. $\square$

We will now explain how to find the symplectic isomorphism $K(2(\delta_M^{*r})) \to K((\mathcal{M}^{*r})^2)$ that turns $\tilde{\Theta}_{M^{*r}}$ into a product theta structure. We will therefore work on $A^r$ instead.

Let $\Theta_{\mathcal{L}}$ be as in Section 4.1 and let $\Theta_{\mathcal{L}^2}$ be a symmetric theta structure on $(A, \mathcal{L}^2)$ such that $(\Theta_{\mathcal{L}}, \Theta_{\mathcal{L}^2})$ is a compatible pair of symmetric theta structures for $(\mathcal{L}, \mathcal{L}^2)$, as defined in [Mum66, p.317]. Consider the r-fold product symplectic basis $\{e'_i, e''_i\}_{i=1}^{gr}$ for the 2n-torsion points of $(A^r, (\mathcal{L}^2)^{*r})$ determined by (the r-fold product of) the theta structure $\Theta_{\mathcal{L}^2}$. Let $\{x'_i, x''_i\}_{i=1}^{gr}$ be the r-fold product basis on $K((\mathcal{M}^{2\beta})^{*r})[2n]$ corresponding to the r-fold product theta structure $\Theta_{(\mathcal{M}^{2\beta})^{*r}}$. We know that $\hat{f}^{*r}(x'_i) = e'_i$ (and same for $x''_i$). Let $y'_i = F(x'_i)$ and $y''_i = F(x''_i)$. The basis $\{y'_i, y''_i\}_{i=1}^{gr}$ is not of product form, but is symplectic for the Weil pairing on $B^r[2n]$. Define $f'_i = (f^{*r})^{-1}(y'_i)$ and $f''_i = (f^{*r})^{-1}(y''_i)$ where we use the fact that $f^{*r}|_{K((\mathcal{L}^{2\beta})^{*r})[2n]}$ is invertible. Note that $\{f'_i, f''_i\}_{i=1}^{gr}$ is a non r-fold symplectic basis for $K((\mathcal{L}^2)^{*r})$. The following diagram might be helpful. Note that $\{e'_i, e''_i\}$ and $\{f'_i, f''_i\}$ are bases of $A^r[2n]$, whereas $\{x'_i, x''_i\}$ and $\{y'_i, y''_i\}$ are bases of $B^r[2n]$.

$$ \begin{array}{ccc} \{e'_i, e''_i\}: \text{r-fold, symplectic for } e_{(\mathcal{L}^2)^{*r}} & \xleftarrow{\hat{f}^{*r}} & \{x'_i, x''_i\}: \text{r-fold, symplectic for } e_{(\mathcal{M}^{2\beta})^{*r}} \\ \begin{tikzpicture}[baseline=(current bounding box.center), scale=0.7] \draw (-0.5,0) -- (0.5,0); \node[below=0.2em] at (-0.5,0) {$F\beta^{-1}$}; \node[above=0.2em] at (0.5,0) {$\mathbb{1}$}; \node[left=0.2em] at (-0.5,0) {$\mathbb{V}$}; \node[right=0.2em] at (0.5,0) {$\mathbb{V}$}; \end{tikzpicture} & & \begin{tikzpicture}[baseline=(current bounding box.center), scale=0.7] \draw (-0.5,0) -- (0.5,0); \node[below=0.2em] at (-0.5,0) {$F$}; \node[above=0.2em] at (0.5,0) {$\mathbb{1}$}; \node[left=0.2em] at (-0.5,0) {$\mathbb{V}$}; \node[right=0.2em] at (0.5,0) {$\mathbb{V}$}; \end{tikzpicture} \\ \{f'_i, f''_i\}: \text{non r-fold, symplectic for } e_{(\mathcal{L}^{2\beta})^{*r}} & \xrightarrow{f^{*r}} & \{y'_i, y''_i\}: \text{non r-fold, symplectic for } e_{(\mathcal{M}^2)^{*r}} \end{array} $$

$$ \{f'_i, f''_i\}: \text{non r-fold, symplectic for } e_{(\mathcal{L}^{2\beta})^{*r}} \xrightarrow{f^{*r}} \{y'_i, y''_i\}: \text{non r-fold, symplectic for } e_{(\mathcal{M}^2)^{*r}} $$

A simple diagram chasing shows that indeed $F\beta^{-1}(e'_i) = f'_i$ and $F\beta^{-1}(e''_i) = f''_i$, so the non r-fold basis $\{f'_i, f''_i\}$ of $A^r[2n]$ can be computed from the basis $\{e'_i, e''_i\}$.
LEMMA 4.10. Suppose that $\bar{S}_A \in \mathbf{Sp}(A^r[2n])$ is a symplectic automorphism (for the pairing $e_{(\mathcal{L}^{2\beta})^{*r}}$ restricted to $A^r[2n]$) such that the basis $\{\bar{S}_A(f'_i), \bar{S}_A(f''_i)\}_{i=1}^{gr}$ is an $r$-fold product basis. Then the basis $\{\bar{S}_B(y'_i), \bar{S}_B(y''_i)\}_{i=1}^{gr}$ is an $r$-fold product symplectic basis of $K((\mathcal{M}^2)^{*r})$ for $e_{(\mathcal{M}^2)^{*r}}$, where $\bar{S}_B = f^{*r} \circ \bar{S}_A \circ (f^{*r})^{-1} \in \mathbf{Sp}(B^r[2n])$.

*Proof.* Write

$$ \bar{S}_B(y'_i) = f^{*r}(\bar{S}_A(f'_i)) \quad \text{and} \quad \bar{S}_B(y''_i) = f^{*r}(\bar{S}_A(f''_i)). $$

Since $\{\bar{S}_A(f'_i), \bar{S}_A(f''_i)\}$ is an $r$-fold product basis, so is $\{\bar{S}_B(y'_i), \bar{S}_B(y''_i)\}$. $\square$

<figure><img src="image_4.png" /></figure>

To compute such an $\bar{S}_A \in \mathbf{Sp}(A^r[2n])$ in practice, we do the following:

- Let $M_{F\beta^{-1}} \in \mathbf{GL}_{2gr}(\mathbf{Z}/2n\mathbf{Z})$ be the matrix corresponding to the action of $F\beta^{-1}$ on $\{e'_i, e''_i\}_{i=1}^{gr}$ (i.e. the one corresponding to the change of basis from $\{e'_i, e''_i\}_{i=1}^{gr}$ to $\{f'_i, f''_i\}_{i=1}^{gr}$).

- For each $N \in \mathbf{GL}_{2g}(\mathbf{Z}/2n\mathbf{Z})$ let $\Delta(N)$ be the image of $N$ under the standard diagonal embedding $\Delta: \mathbf{GL}_{2g}(\mathbf{Z}/2n\mathbf{Z}) \hookrightarrow \mathbf{GL}_{2gr}(\mathbf{Z}/2n\mathbf{Z})$.

Then test whether $\bar{S}_A = \Delta(N)M_{F\beta^{-1}}^{-1} \in \mathbf{Sp}_{2gr}(\mathbf{Z}/2n\mathbf{Z})$ where the symplectic group $\mathbf{Sp}_{2gr}(\mathbf{Z}/2n\mathbf{Z}) \subset \mathbf{GL}_{2gr}(\mathbf{Z}/2n\mathbf{Z})$ is defined with respect to the pairing $(-I_{gr} \quad I_{gr})$ for the standard basis of $(\mathbf{Z}/2n\mathbf{Z})^{2gr}$.

The complexity of the computation depends on $g = \dim A$, $r$ and $n$ and has no dependency in $q$ and $l$. In practice we will have $n = 2$ and for most cases $r = 4$.

## 4.4 Transforming theta coordinates under metaplectic automorphisms

In this section we explain how to transform canonical theta coordinates under metaplectic automorphisms. We first treat the case where $(X, \mathcal{L}_X)$ is a $g$-dimensional abelian variety over a field $k$ with a totally symmetric ample line bundle $\mathcal{L}_X$ of type $\delta_X = (4, \dots, 4) \in \mathbf{Z}^g$, i.e. $\mathcal{L}_X$ is algebraically equivalent to the 4th tensor power of a principal polarization. Let $\Theta_{\mathcal{L}_X}$ and $\Theta'_{\mathcal{L}_X}$ be two symmetric theta structures on $(X, \mathcal{L}_X)$. We will explain how to compute the theta null point of $X$ with respect to $\Theta'_{\mathcal{L}_X}$ from the theta null point of $X$ with respect to $\Theta_{\mathcal{L}_X}$. More generally, for a geometric point $x \in X(\bar{k})$, we will explain how to express the canonical theta coordinates of $x$ with respect to $\Theta'_{\mathcal{L}_X}$ out of the canonical theta coordinates of $x$ with respect to $\Theta_{\mathcal{L}_X}$. Then we will stick to the case $(X, \mathcal{L}_X)$ where $\mathcal{L}_X$ is totally symmetric of type $(2, \dots, 2)$ and see how to relate theta coordinates on $X$ with respect to different symmetric theta structures, using the transformation law developed for $\mathcal{L}_X^2$ (i.e. the one for totally symmetric line bundles of type $(4, \dots, 4)$).

### 4.4.1 Analytic transformation formula of Igusa for totally symmetric line bundles of type (4, ..., 4).
Here we restrict to the case $k = \mathbf{C}$. Let $(X = \mathbf{C}^g/\Lambda, \mathcal{L}_X)$ be a complex abelian variety of dimension $g$ with a totally symmetric line bundle $\mathcal{L}_X$ on $X$ of type $\delta_X = (4, \dots, 4)$ and let $\Theta_{\mathcal{L}_X}$ and $\Theta'_{\mathcal{L}_X}$ be two symmetric theta structures on $(X, \mathcal{L}_X)$. The theta structures $\Theta_{\mathcal{L}_X}$ and $\Theta'_{\mathcal{L}_X}$ induce level $\delta_X$-structures on $(X, \mathcal{L}_X)$ (see [BL04, Ch.8.3]), which in return are induced by period matrices $\Omega \in \mathcal{H}_g$ and $\Omega' \in \mathcal{H}_g$ respectively. According to [Cos11, Prop.3.1.6] there exist bases $\{\theta[\begin{bmatrix} a \\ b \end{bmatrix}]\}$ and $\{\theta'[\begin{bmatrix} a \\ b \end{bmatrix}]\}$ of $\Gamma(X, \mathcal{L}_X)$ determined by $\Omega$ and $\Omega'$ respectively, with indices $a = (a_1, \dots, a_g)$, $b = (b_1, \dots, b_g) \in \frac{1}{2}\mathbf{Z}^g$ that run over all representatives of elements of $(\frac{1}{2}\mathbf{Z}/\mathbf{Z})^g$. We want to see how these bases are related. Recall that $\mathbf{Sp}_{2g}(\mathbf{Z})$ acts on $\mathbf{C}^g \times \mathcal{H}_g$ via

$$ S \cdot (z, \Omega) = (S_{\Omega} \cdot z, S \cdot \Omega), \qquad (21) $$
where $S_Ω \cdot z = {}^t(CΩ + D)^{-1}z$ and $S \cdot Ω = (AΩ + B)(CΩ + D)^{-1}$. Igusa [Igu72, §5, Thm.2] proved that for any $(z, Ω) \in C^g \times \mathcal{H}_g$ the following relation holds:

$$ \theta \begin{bmatrix} \mathbf{a}' \\ \mathbf{b}' \end{bmatrix} (S_Ω \cdot z, S \cdot Ω) = \xi_S \cdot \xi_{z,S} \cdot \xi_{\mathbf{a},\mathbf{b}} \cdot \sqrt{\det(CΩ + D)} \cdot \theta \begin{bmatrix} \mathbf{a} \\ \mathbf{b} \end{bmatrix} (z, Ω), \quad (22) $$

where

- $\xi_S$ is an 8th root of unity,

- $\xi_{z,S} = \exp(\pi i z^t (CΩ + D)^{-1}Cz)$ and is 1 for the case of $z = 0$.

- $\xi_{\mathbf{a},\mathbf{b}} = \exp(-\pi i (\mathbf{a}^t A B^t \mathbf{a} + \mathbf{b}^t C D^t \mathbf{b}) - 2\pi i (A^t \mathbf{a} + C^t \mathbf{b} + \mathbf{e}')^t \mathbf{e}' - 2\pi i \mathbf{a}^t B C^t \mathbf{b})$

- $\begin{pmatrix} \mathbf{a}' \\ \mathbf{b}' \end{pmatrix} := (S^t)^{-1} \cdot \begin{pmatrix} \mathbf{a} - \mathbf{e}' \\ \mathbf{b} - \mathbf{e}'' \end{pmatrix}$, where $\mathbf{e}' = \frac{1}{2} \text{diag}(A^t C)$ and $\mathbf{e}'' = \frac{1}{2} (D^t B)$.

Now consider the metaplectic automorphism $M := \Theta_{\mathcal{L}_X}^{-1} \circ \Theta'_{\mathcal{L}_X} \in \text{Aut}_{\mathbb{C}^\times}(\mathcal{H}(\delta_X))$. Let $\bar{S} \in \text{Sp}(K(\delta_X))$ be the induced symplectic automorphism. With respect to the standard symplectic basis of $K(\delta_X)$, the automorphism $\bar{S}$ can be expressed as a $2g$-by-$2g$ symplectic matrix with coefficients in $\mathbb{Z}/4\mathbb{Z}$. Lift $\bar{S}$ to a symplectic matrix $S = \begin{pmatrix} A & B \\ C & D \end{pmatrix} \in \text{Sp}_{2g}(\mathbb{Z})$ in order that $\Omega' = S \cdot Ω$. Then the canonical bases are related as

$$ \theta' \begin{bmatrix} \mathbf{a}' \\ \mathbf{b}' \end{bmatrix} (S_Ω \cdot z) = \xi_S \cdot \xi_{z,S} \cdot \xi_{\mathbf{a},\mathbf{b}} \cdot \sqrt{\det(CΩ + D)} \cdot \theta \begin{bmatrix} \mathbf{a} \\ \mathbf{b} \end{bmatrix} (z). \quad (23) $$

The important point is that the factor $\lambda = \xi_S \cdot \xi_{z,S} \cdot \sqrt{\det(CΩ + D)}$ is independent of $\mathbf{a}$ and $\mathbf{b}$, so it gets absorbed when working with projective coordinates.

### 4.4.2 Algebraic transformation formula for totally symmetric line bundles of type $(2, \dots, 2)$.
We now want to give a transformation law for canonical bases on $(X, \mathcal{L}_X)$, where $\mathcal{L}_X$ is totally symmetric of type $\delta_X = (2, \dots, 2)$. Suppose we have fixed two pairs of compatible symmetric theta structures $(\Theta_{\mathcal{L}_X}, \Theta_{\mathcal{L}_X}^2)$ and $(\Theta'_{\mathcal{L}_X}, \Theta'_{\mathcal{L}_X}^2)$ for $(\mathcal{L}_X, \mathcal{L}_X^2)$ (as defined in [Mum66, p.317]). Note that by [Mum66, §2, Prop.7] every symmetric theta structure $\Theta_{\mathcal{L}_X}$ on $(X, \mathcal{L}_X)$ can be extended to a compatible pair of symmetric theta structures $(\Theta_{\mathcal{L}_X}, \Theta_{\mathcal{L}_X}^2)$ on $(\mathcal{L}_X, \mathcal{L}_X^2)$. Let $\bar{S} \in \text{Sp}(K(\delta_X))$ and $\bar{S}_2 \in \text{Sp}(K(2\delta_X))$ be the symplectic automorphisms induced by the metaplectic automorphisms $\Theta_{\mathcal{L}_X}^{-1} \circ \Theta'_{\mathcal{L}_X}$ and $\Theta_{\mathcal{L}_X}^{-1} \circ \Theta'_{\mathcal{L}_X}$ respectively. Then $\bar{S}_2$ restricts to $\bar{S}$ on $K(\delta_X)$. Denote by $S_2$ an arbitrary lift of $\bar{S}_2$ to $\text{Sp}_{2g}(\mathbb{Z})$.

Given the theta coordinates of a point $z$ with respect to the theta structure $\Theta_{\mathcal{L}_X}$, we will explain how to compute the theta coordinates of the point $z' = S_Ω \cdot z$ with respect to the theta structure $\Theta'_{\mathcal{L}_X}$. First note that the theta structures $\Theta_{\mathcal{L}_X}$ and $\Theta'_{\mathcal{L}_X}$ determine the squares of the theta coordinates for the compatible theta structures $\Theta_{\mathcal{L}_X^2}$ and $\Theta'_{\mathcal{L}_X^2}$ respectively. Hence, we write the analogue of (23) for the squares of the algebraic theta coordinates for $\Theta_{\mathcal{L}_X^2}$ and $\Theta'_{\mathcal{L}_X^2}$. There exists a constant $\lambda$ such that for every $\mathbf{a}, \mathbf{b}, \mathbf{a}', \mathbf{b}' \in \text{Rpr}(\frac{1}{2}\mathbb{Z}/\mathbb{Z})^g$, with $\begin{pmatrix} \mathbf{a}' \\ \mathbf{b}' \end{pmatrix} = (S_2^t)^{-1} \cdot \begin{pmatrix} \mathbf{a} - \mathbf{e}' \\ \mathbf{b} - \mathbf{e}'' \end{pmatrix}$,

$$ \left( \theta_{\mathbf{a}', \mathbf{b}'}^{\mathcal{L}_X^2}(z') \right)^2 = \lambda \cdot \xi_{\mathbf{a}, \mathbf{b}}^2 \cdot \left( \theta_{\mathbf{a}, \mathbf{b}}^{\mathcal{L}_X^2}(z) \right)^2. \quad (24) $$

The theta coordinates of any point $z$ of $(X, \mathcal{L}_X, \Theta_{\mathcal{L}_X})$ and indexed by $\mathbf{i}$ are transformed into squares of type $2\delta_X$ theta coordinates, denoted by $\theta_{\mathbf{a},\mathbf{b}}^{\Theta_{\mathcal{L}_X}^2}(z)$ with indices $\mathbf{a}, \mathbf{b} \in \text{Rpr}(\frac{1}{2}\mathbb{Z}/\mathbb{Z})^g$, via
[Cos11, eq.(3.13)]:

$$ \left( \theta_{\mathbf{a},\mathbf{b}}^{\Theta_{\mathcal{L}_X^2}}(z) \right)^2 = \frac{1}{2g} \sum_{\mathbf{i} \in (\frac{1}{2}\mathbf{Z}/\mathbf{Z})^g} \exp(4\pi i \mathbf{a}^t \mathbf{i}) \theta_{\mathbf{b}+\mathbf{i}}^{\Theta_{\mathcal{L}_X}}(z) \theta_{\mathbf{i}}^{\Theta_{\mathcal{L}_X}}(0). \quad (25) $$

Then apply (24) with $\begin{pmatrix} \mathbf{a}' \\ \mathbf{b}' \end{pmatrix} = (S_2^t)^{-1} \cdot \begin{pmatrix} \mathbf{a} - \mathbf{e}' \\ \mathbf{b} - \mathbf{e}'' \end{pmatrix}$ for given indices $\mathbf{a}, \mathbf{b} \in \mathrm{Rpr} \left(\frac{1}{2}\mathbf{Z}/\mathbf{Z}\right)^g$. Finally we use [Cos11, eq.(3.12)] to go back to theta coordinates for $\Theta'_{\mathcal{L}_X}$ and deduce:

$$ \begin{aligned} \theta_{\mathbf{b}'}^{\Theta'_{\mathcal{L}_X}(z')} \theta_{\mathbf{0}}^{\Theta'_{\mathcal{L}_X}(0)} &= \sum_{\mathbf{a}' \in (\frac{1}{2}\mathbf{Z}/\mathbf{Z})^g} \left( \theta_{\mathbf{a}',\mathbf{b}'}^{\Theta'_{\mathcal{L}_X}(z')} \right)^2 \\ &= \sum_{\mathbf{a} \in (\frac{1}{2}\mathbf{Z}/\mathbf{Z})^g} \lambda \xi_{\mathbf{a},\mathbf{b}}^2 \left( \theta_{\mathbf{a},\mathbf{b}}^{\Theta_{\mathcal{L}_X}^2}(z) \right)^2 \quad (26) \\ &= \frac{\lambda}{2g} \sum_{\mathbf{a} \in (\frac{1}{2}\mathbf{Z}/\mathbf{Z})^g} \xi_{\mathbf{a},\mathbf{b}}^2 \sum_{\mathbf{i} \in (\frac{1}{2}\mathbf{Z}/\mathbf{Z})^g} \exp(4\pi i \mathbf{a}^t \mathbf{i}) \theta_{\mathbf{b}+\mathbf{i}}^{\Theta_{\mathcal{L}_X}}(z) \theta_{\mathbf{i}}^{\Theta_{\mathcal{L}_X}(0)}. \end{aligned} $$

We summarise the above in the following proposition.

**PROPOSITION 4.11.** Let $(X, \mathcal{L}_X)$ be a polarized abelian variety of dimension $g$ with a totally symmetric line bundle $\mathcal{L}_X$ of type $(2, \dots, 2)$. Let $(\Theta_{\mathcal{L}_X}, \Theta_{\mathcal{L}_X^2})$ and $(\Theta'_{\mathcal{L}_X}, \Theta'_{\mathcal{L}_X^2})$ be two pairs of compatible symmetric theta structures for $(\mathcal{L}_X, \mathcal{L}_X^2)$. Let $\bar{S} \in \mathrm{Sp}(\mathbf{Z}/4\mathbf{Z})$ be the symplectic automorphism induced by $\Theta_{\mathcal{L}_X^2}^{-1} \circ \Theta_{\mathcal{L}_X^2}'$ and let $S = \begin{pmatrix} A & B \\ C & D \end{pmatrix} \in \mathrm{Sp}_{2g}(\mathbf{Z})$ be an arbitrary lift of $\bar{S}$. Let $\mathbf{e}' = \frac{1}{2} \mathrm{diag}(A^t C)$ and $\mathbf{e}'' = \frac{1}{2} \mathrm{diag}(D^t B)$. Then there exists a constant $\lambda$ such that

$$ \theta_{\mathbf{b}'}^{\Theta'_{\mathcal{L}_X}(z')} \theta_{\mathbf{0}}^{\Theta'_{\mathcal{L}_X}(0)} = \frac{\lambda}{2g} \sum_{\mathbf{a} \in (\frac{1}{2}\mathbf{Z}/\mathbf{Z})^g} \xi_{\mathbf{a},\mathbf{b}}^2 \sum_{\mathbf{i} \in (\frac{1}{2}\mathbf{Z}/\mathbf{Z})^g} \exp(4\pi i \mathbf{a}^t \mathbf{i}) \theta_{\mathbf{b}+\mathbf{i}}^{\Theta_{\mathcal{L}_X}}(z) \theta_{\mathbf{i}}^{\Theta_{\mathcal{L}_X}(0)}, \quad (27) $$

where $\mathbf{a}, \mathbf{b}, \mathbf{a}', \mathbf{b}' \in \mathrm{Rpr} \left(\frac{1}{2}\mathbf{Z}/\mathbf{Z}\right)^g$ satisfy $\begin{pmatrix} \mathbf{a}' \\ \mathbf{b}' \end{pmatrix} = (S^t)^{-1} \cdot \begin{pmatrix} \mathbf{a} - \mathbf{e}' \\ \mathbf{b} - \mathbf{e}'' \end{pmatrix}$.

### 4.5 Computing the theta null point of $(B, \mathcal{M}, \Theta_{\mathcal{M}})$

Let $(A, \mathcal{L})$ be a polarized abelian $g$-fold with $\mathcal{L}$ totally symmetric of type $\delta = (2, \dots, 2)$. Suppose we have fixed a compatible pair of symmetric theta structures $(\Theta_{\mathcal{L}}, \Theta_{\mathcal{L}^2})$ for $(\mathcal{L}, \mathcal{L}^2)$. Let $\bar{S}_A \in \mathrm{Sp}(A^r[4])$ be computed as in Section 4.3.2, where the symplectic pairing on $A^r[4]$ is the restriction of $e_{(\mathcal{L}^{2\beta})^{\star r}}$ to $A^r[4]$. Via $\tilde{\Theta}_{(\mathcal{L}^{2\beta})^{\star r}}$ we might see $\bar{S}_A$ as a matrix $\bar{S} \in \mathrm{Sp}_{2gr}(\mathbf{Z}/4\mathbf{Z})$.

On the other hand, $(\Theta_{\mathcal{L}}, \Theta_{\mathcal{L}^2})$ induces the compatible pair of symmetric theta structures $(\Theta_{\mathcal{M}}, \Theta_{\mathcal{M}^2})$ for the totally symmetric line bundles $(\mathcal{M}, \mathcal{M}^2)$ on $B$. According to [Mum66, Rem.2, p.318] there exists a symmetric theta structure $\tilde{\Theta}_{(\mathcal{M}^2)^{\star r}}$ above $\tilde{\Theta}_{\mathcal{M}^{\star r}}$ such that the symplectic automorphism induced by $\tilde{\Theta}_{(\mathcal{M}^2)^{\star r}}^{-1} \circ \Theta_{(\mathcal{M}^2)^{\star r}}$ (when expressed in the canonical symplectic basis of $K(2\delta^{\star r})$) equals $\bar{S}$.

Now suppose we are given the theta null point $(\theta_{\mathbf{b}}^{\tilde{\Theta}_{\mathcal{M}^{\star r}}}(0_{B^r}))_{b \in K_1(\mathcal{M}^{\star r})}$ of $(B^r, \mathcal{M}^{\star r}, \tilde{\Theta}_{\mathcal{M}^{\star r}})$. If we apply Proposition 4.11 to $(B^r, \mathcal{M}^{\star r})$ and the two pairs of compatible symmetric theta structures $(\tilde{\Theta}_{\mathcal{M}^{\star r}}, \tilde{\Theta}_{(\mathcal{M}^2)^{\star r}})$ and $(\Theta_{\mathcal{M}^{\star r}}, \Theta_{(\mathcal{M}^2)^{\star r}})$, then we can compute the theta null point for the product theta structure $\Theta_{\mathcal{M}^{\star r}}$ by (27). Let $S = \begin{pmatrix} A & B \\ C & D \end{pmatrix} \in \mathrm{Sp}_{2gr}(\mathbf{Z})$ be an arbitrary lift of $\bar{S}$. Let
$e' = \frac{1}{2} \mathrm{diag}(A^t C)$ and $e'' = \frac{1}{2} \mathrm{diag}(D^t B)$. Then there exists a constant $\lambda$ (containing the factor $\theta_0^{\Theta_{\mathcal{M}^{\star r}}}(0_{B^r})$) for which the new theta coordinates are

$$ \theta_{\mathbf{b}'}^{\Theta_{\mathcal{M}^{\star r}}}(0_{B^r}) = \frac{\lambda}{2^{2r}} \sum_{\mathbf{a} \in (\frac{1}{2}\mathbf{Z}^g/\mathbf{Z}^g)^r} \xi_{\mathbf{a},\mathbf{b}}^2 \sum_{\mathbf{i} \in (\frac{1}{2}\mathbf{Z}^g/\mathbf{Z}^g)^r} \exp(4\pi i \mathbf{a}^t \mathbf{i}) \theta_{\mathbf{b}+\mathbf{i}}^{\Theta_{\mathcal{M}^{\star r}}}(0_{B^r}) \theta_{\mathbf{i}}^{\Theta_{\mathcal{M}^{\star r}}}(0_{B^r}), \quad (28) $$

where $\mathbf{a}, \mathbf{b}, \mathbf{a}', \mathbf{b}' \in \mathrm{Rpr}(\frac{1}{2}\mathbf{Z}^g/\mathbf{Z}^g)^r$ are related by $\begin{pmatrix} \mathbf{a}' \\ \mathbf{b}' \end{pmatrix} = \begin{pmatrix} D & -C \\ -B & A \end{pmatrix} \cdot \begin{pmatrix} \mathbf{a} - \mathbf{e}' \\ \mathbf{b} - \mathbf{e}'' \end{pmatrix}$, and

$$ \xi_{\mathbf{a},\mathbf{b}} = \exp \left( -\pi i (\mathbf{a}^t A B^t \mathbf{a} + \mathbf{b}^t C D^t \mathbf{b}) - 2\pi i (A^t \mathbf{a} + C^t \mathbf{b} + \mathbf{e}')^t \mathbf{e}'' - 2\pi i \mathbf{a}^t B C^t \mathbf{b} \right). $$

Finally, we have that for any $\mathbf{k} = (k_1, \dots, k_r) \in \mathrm{Rpr}(\frac{1}{2}\mathbf{Z}^g/\mathbf{Z}^g)^r$

$$ \theta_{\mathbf{k}}^{\Theta_{\mathcal{M}^{\star r}}}(0_{B^r}) = \theta_{k_1}^{\Theta_{\mathcal{M}}}(0_B) \cdot \theta_{(k_2, \dots, k_r)}^{\Theta_{\mathcal{M}^{\star (r-1)}}}(0_{B^{r-1}}). $$

Fixing $(k_2, \dots, k_r) \in \mathrm{Rpr}(\frac{1}{2}\mathbf{Z}^g/\mathbf{Z}^g)^{r-1}$ such that $\theta_{(k_2, \dots, k_r)}^{\Theta_{\mathcal{M}^{\star (r-1)}}}(0_{B^{r-1}}) \neq 0$, we obtain the projective theta null point $(\theta_k^{\Theta_{\mathcal{M}}}(0_B))_{k \in K_1(\mathcal{M})}$ for $(B, \mathcal{M}, \Theta_{\mathcal{M}})$.

**Remark 9.** In order to apply Lemma 4.10 and Proposition 4.11, and hence to compute the theta null point of $(B, \mathcal{M}, \Theta_{\mathcal{M}})$, it is important to note that we need not only a symmetric theta structure $\Theta_{\mathcal{L}}$ for $(A, \mathcal{L})$, where $\mathcal{L}$ is totally symmetric and of type $(2, \dots, 2)$, but also a compatible symmetric theta structure $\Theta_{\mathcal{L}^2}$ for $(A, \mathcal{L}^2)$. In the case where $A$ is the Jacobian variety of a hyperelliptic curve $H$ of genus $g$, Thomae's formula [Mum84, Theorem 8.1.] gives a way to fix such a pair of compatible symmetric theta structures $(\Theta_{\mathcal{L}}, \Theta_{\mathcal{L}^2})$, and hence to apply the above algorithm.

# 5. Evaluating the Isogeny on Points

Let $x \in A(k)$ be a point of order $N$ coprime to $\ell$. We want to express the theta coordinates of $y = f(x) \in B(k)$ with respect to the theta structure $\Theta_{\mathcal{M}}$ in terms of the theta coordinates of $x$ with respect to the theta structure $\Theta_{\mathcal{L}}$.

## 5.1 The preimage of $(y, 0, \dots, 0)$ under $F$

Consider the following subgroup of $A^r(k)$:

$$ X = \{(a_1 x, \dots, a_r x) : (a_1, \dots, a_r) \in \mathbf{Z}^r\}. $$

As $\beta = F \circ F^t$ is an automorphism of $X$, then both $F$ and $F^t$ are automorphisms of $X$.

**LEMMA 5.1.** Let $(x_1, \dots, x_r) = F^t(x, 0, \dots, 0) \in X$ and let $(x'_1, \dots, x'_r) = F^{-1}(x, 0, \dots, 0) \in X$. If $y_i = f(x'_i) \in B$ then,

$$ (f(x), 0, \dots, 0) = F(y_1, \dots, y_r) \text{ and } \tilde{f}^{\star r}(y_1, \dots, y_r) = (x_1, \dots, x_r). $$

*Proof.* Let $(y'_1, \dots, y'_r) = F^t(y, 0, \dots, 0)$. Then it follows:

$$ \begin{array}{lclcl} (x'_1, \dots, x'_r) & \in & A^r(k) & \xrightarrow{f^{\star r}} & B^r(k) \\ & \searrow & & \searrow & F \\ (x, 0, \dots, 0) & \in & A^r(k) & \xrightarrow{f^{\star r}} & B^r(k) \\ & \searrow & & \searrow & F^t \\ (x_1, \dots, x_r) & \in & A^r(k) & \xrightarrow{f^{\star r}} & B^r(k) \end{array} \quad \exists \quad (y_1, \dots, y_r) \quad (y, 0, \dots, 0) \quad (y'_1, \dots, y'_r). $$
and consequently

$$F(y_1, \dots, y_r) = (y, 0, \dots, 0)$$

and

$$(x_1, \dots, x_r) = \beta(x'_1, \dots, x'_r) = \hat{f}^{*r}(f^{*r}(x'_1, \dots, x'_r)) = \hat{f}^{*r}(y_1, \dots, y_r).$$

□

## 5.2 Computing the point $(\theta_{\mathbf{k}}^{\tilde{\Theta}_{\mathcal{M}^{*r}}}(y, 0, \dots, 0))_{\mathbf{k} \in K_1(\mathcal{M}^{*r})}$

5.2.1 The isogeny theorem for $F$. Similarly to the computation of the theta null point of $B^r$ with respect to $\tilde{\Theta}_{\mathcal{M}^{*r}}$, we use the isogeny of polarized abelian varieties

$$F: (B^r, (\mathcal{M}^\beta)^{*r}, \Theta_{(\mathcal{M}^\beta)^{*r}}) \to (B^r, \mathcal{M}^{*r}, \tilde{\Theta}_{\mathcal{M}^{*r}})$$

to compute the coordinates of $(y, 0, \dots, 0)$ with respect to $\tilde{\Theta}_{\mathcal{M}^{*r}}$. Equation (9) implies that up to a projective factor $\lambda \in \bar{k}^\times$, one has that for every $\mathbf{k} \in K_1(\mathcal{M}^{*r})$,

$$\theta_{\mathbf{k}}^{\tilde{\Theta}_{\mathcal{M}^{*r}}}(y, 0, \dots, 0) = \lambda \cdot \sum_{\substack{t'' \in K_1((\mathcal{M}^\beta)^{*r})[\beta] \\ F(t'')=0}} \prod_{s=1}^{r} \theta_{js+t''s}^{\Theta_{\mathcal{M}^\beta}}(y_s), \quad (29)$$

where $j \in K_1((\mathcal{M}^\beta)^{*r})[n]$ is the unique index for which $F(j) = \mathbf{k}$.

We encounter the same difficulty as in Section 4.2. That is, the input of the algorithm only provides us with the theta coordinates $(\theta_i^{\Theta_{\mathcal{L}}}(0_A))_{i \in K_1(\mathcal{L})}$ of $0_A$, the theta coordinates $(\theta_i^{\Theta_{\mathcal{L}}}(t))_{i \in K_1(\mathcal{L})}$ of $t$ (a generator of the kernel of $f$) and the theta coordinates $(\theta_i^{\Theta_{\mathcal{L}}}(x))_{i \in K_1(\mathcal{L})}$ of $x$. As in the computation of the theta null point of $B^r$ with respect to $\tilde{\Theta}_{\mathcal{M}^{*r}}$, we would like to use a combination of the isogeny theorem for $F$ and of the isogeny theorem for $\hat{f}$. Following Lemma 5.1, we consider $x_1 = \alpha_1 x, \dots, x_r = \alpha_r x$ which satisfy $x_1 = \hat{f}(y_1), \dots, x_r = \hat{f}(y_r)$, where $(y_1, \dots, y_r) \in B^r(k)$ is the unique point such that $(y, 0, \dots, 0) = F(y_1, \dots, y_r)$. As before, we would like to compute (29) by making substitutions

$$\theta_{js+u_st'}^{\Theta_{\mathcal{M}^\beta}}(y_s) = \theta_{is}^{\Theta_{\mathcal{L}}}(x_s + u_st),$$

where $i_s = \hat{f}(j_s)$ and where we write $u_st'$ for $t''_s$, but we have to carefully work this out. One of the major difference in computing $\prod_{s=1}^r \theta_{js+t''s}^{\Theta_{\mathcal{M}^\beta}}(y_s)$ compared to computing $\prod_{s=1}^r \theta_{js+t''s}^{\Theta_{\mathcal{M}^\beta}}(0_B)$ is that we have to substitute affine coordinates not only of one point $\tilde{0}_B$ but of $r$ points $\tilde{y}_1, \dots, \tilde{y}_r$. Now this might look like a restriction, but it turns out to actually simplify things, since we are free to choose affine lifts of $y_1, \dots, y_r$, a priori without any relation amongst them.

5.2.2 Right lifts and suitable lifts. Let $\tilde{f}$ be the affine lift of $\hat{f}$ of Section 4.2.1. Fixing lifts $\tilde{x}_1, \dots, \tilde{x}_r$ of $x_1, \dots, x_r$ determines lifts $\tilde{y}_1, \dots, \tilde{y}_r$ of $y_1, \dots, y_r$ by the relation

$$\tilde{x}_1 = \tilde{f}(\tilde{y}_1), \dots, \tilde{x}_r = \tilde{f}(\tilde{y}_r).$$

If we were able to compute the lifts $\tilde{y}_1, \dots, \tilde{y}_r$, then we could substitute their coordinates in (29) and compute an affine lift of $(y, 0, \dots, 0)$ for $\tilde{\Theta}_{\mathcal{M}^{*r}}$. Unfortunately we cannot directly compute those from the input.

We make the following crucial observation. The lifts $\tilde{y}_1, \dots, \tilde{y}_r$ determine lifts of $x_1 + u_1t, \dots, x_r +
$u_r t$, where $1 \le u_1, \dots, u_r \le \ell - 1$, as

$$x_s + u_s t = \tilde{f}((1, u_s i_{t'}, 0) \cdot \tilde{y}_s).$$

These lifts will play an important role in the sequel.

**DEFINITION 5.2.** Let $\tilde{0}_A$ and $\tilde{x}_1, \dots, \tilde{x}_r$ be fixed affine lifts of $0_A$ and $x_1, \dots, x_r$ respectively. Let $\tilde{0}_B$ and $\tilde{y}_1, \dots, \tilde{y}_r$ be the lifts induced by $\tilde{f}$ and $\tilde{0}_A, \tilde{x}_1, \dots, \tilde{x}_r$. For $s = 1, \dots, r$ and $1 \le u, u_s \le \ell - 1$, the induced lifts

$$\tilde{f}((1, u_s i_{t'}, 0) \cdot \tilde{y}_s) \text{ and } \tilde{f}((1, u_i t', 0) \cdot \tilde{0}_B)$$

are called **right** lifts of $x_s + u_s t$ and $ut$ respectively, and are denoted by

$$x_s + u_s t_{\text{right}} \text{ and } \tilde{u} t_{\text{right}}.$$

The terminology is motivated by the following: fixing lifts $\tilde{0}_A$ and $\tilde{x}_1, \dots, \tilde{x}_r$, if we knew the **right** lifts of all the points $x_s + u_s t$ (with respect to $\tilde{x}_1, \dots, \tilde{x}_r$), we could patch their affine coordinates together and recover affine lifts of $\tilde{y}_1, \dots, \tilde{y}_r$. Surely we do not know the **right** lift, since when we convert the point $x_s + u_s t$ from Mumford to theta coordinates, we do an arbitrary choice of affine lift. Hence, the lift differs from the **right** lift by a scalar $\lambda_{x_s+u_s t} \in \bar{k}^\times$.

But we can show, similar to the notion of excellent lifts from Section 4.2.3, that the **right** lifts of $\{x_s + u_s t : s = 1, \dots, r \text{ and } u_s = 1, \dots, \ell - 1\}$ satisfy some compatibility conditions, reducing the ambiguity when fixing a lift to a choice of an $\ell$th root of unity.

**DEFINITION 5.3 (suitable lifts).** Let $x \in A(k)$ (not necessarily the input of the algorithm) and let $\tilde{x}$ be a fixed affine lift of $x$. Let $\tilde{t}$ be an affine lift of $t \in G$ (we can assume that $\tilde{t}$ is excellent). We call an affine lift $\tilde{x} + t$ of $x + t$ suitable for $\tilde{t}$ and $\tilde{x}$ if

$$\text{chain\_multadd}(\ell, \tilde{x} + t, \tilde{t}, \tilde{x}) = \tilde{x}.$$

For the algorithms `chain_mult` and `chain_multadd`, see Section 4.2.3. The computation of a suitable lift of $x + t$ is similar to the computation of excellent lifts in the previous section: we take any lift $\tilde{x} + t$ and search for a scalar $\lambda_{x+t} \in \bar{k}^\times$ such that $\lambda_{x+t} \cdot \tilde{x} + t$ is suitable. Using [LR12b, Lem.4.8], we obtain that in order for $\lambda_{x+t} \cdot \tilde{x} + t$ to be suitable, we need

$$\tilde{x} = \lambda_{x+t}^{\ell} \cdot \text{chain\_multadd}(\ell, \tilde{x} + t, \tilde{t}, \tilde{x}).$$

The latter determines $\lambda_{x+t}^{\ell}$ uniquely (since `chain_multadd(\ell, \tilde{x} + t, \tilde{t}, \tilde{x})` can be computed using [LR12b, Alg.4.6]). This determines $\lambda_{x+t}$ up to an $\ell$th root of unity.

We will now show that the notion of suitable lift is the correct notion.

**PROPOSITION 5.4.** Let $\tilde{0}_A$ and $\tilde{x}_1, \dots, \tilde{x}_r$ be fixed affine lifts of $0_A$ and $x_1, \dots, x_r$ respectively. Then, the **right** lift $\tilde{t}_{\text{right}}$ is an excellent lift of $t$ and for $2 \le u \le \ell - 1$,

$$\tilde{u} t_{\text{right}} = \text{chain\_mult}(u, \tilde{t}_{\text{right}}).$$

Moreover, for $s = 1, \dots, r$, the **right** lift $\tilde{x}_s + t_{\text{right}}$ of $x_s + t$ is suitable for $\tilde{t}_{\text{right}}$ and we have

$$\tilde{x}_s + u_s t_{\text{right}} = \text{chain\_multadd}(u_s, \tilde{x}_s + t_{\text{right}}, \tilde{t}_{\text{right}}, \tilde{x}_s), \text{ for } u_s = 2, \dots, \ell - 1.$$

*Proof.* We proved in Proposition 4.6 that $\tilde{t}_{\text{right}}$ is an excellent lift of $t$ and that $\tilde{u} t_{\text{right}} = \text{chain\_mult}(u, \tilde{t}_{\text{right}})$ for $u = 2, \dots, \ell - 1$. Let $\tilde{0}_B$ and $\tilde{y}_1, \dots, \tilde{y}_r$ be the lifts of $0_B$ and $y_1, \dots, y_r$ induced by $\tilde{f}$ and
$\tilde{0}_A, \tilde{x}_1, \dots, \tilde{x}_r$ respectively. Then,

$$
\begin{align*}
\text{chain\_multadd}(u_s, \widetilde{x_s + t_{\text{right}}, \tilde{t}_{\text{right}}, \tilde{x_s}}) \\
&= \text{chain\_multadd}(u_s, \widetilde{f((1, i_{t'}, 0) \cdot \tilde{y}_s)}, \widetilde{f((1, i_{t'}, 0) \cdot \tilde{0}_B)}, \widetilde{f(\tilde{y}_s)}) \\
&= \widetilde{f}(\text{chain\_multadd}(u_s, (1, i_{t'}, 0) \cdot \tilde{y}_s, (1, i_{t'}, 0) \cdot \tilde{0}_B, \tilde{y}_s)) \\
&= \widetilde{f((1, u_s i_{t'}, 0) \cdot \text{chain\_multadd}(u_s, \tilde{y}_s, \tilde{0}_B, \tilde{y}_s)}) \\
&= \widetilde{f((1, u_s i_{t'}, 0) \cdot \tilde{y}_s)} \\
&= \widetilde{x_s + u_s t_{\text{right}}.}
\end{align*}
$$

□

Given the input $(\theta_i^{\Theta_L}(0_A))_{i \in K_1(\mathcal{L})}$, $(\theta_i^{\Theta_L}(t))_{i \in K_1(\mathcal{L})}$ and $(\theta_i^{\Theta_L}(x))_{i \in K_1(\mathcal{L})}$ of the algorithm, when fixing an affine lift $\tilde{0}_A$ of $0_A$, we can compute an excellent lift $\tilde{t}$ of $t$ for $\tilde{0}_A$. This lift will differ from $\tilde{t}_{\text{right}}$ by an $\ell$th root of unity $\zeta_t$, i.e. $\tilde{t} = \zeta_t \cdot \tilde{t}_{\text{right}}$.

LEMMA 5.5. Let $\tilde{t}$ (not necessarily excellent) and $\tilde{x}$ be fixed affine lifts of $t$ and $x$ respectively. Let $\widetilde{x}+t$ be an affine lift of $x+t$. Then, $\widetilde{x}+t$ is suitable for $\tilde{t}$ and $\tilde{x}$ if and only if $\widetilde{x}+t$ is suitable for $\zeta \cdot \tilde{t}$ and $\tilde{x}$ for any $\ell$th root of unity $\zeta$.

*Proof.* This is a direct consequence of [LR12b, Lem.3.10], saying that

$$ \text{chain\_multadd}(\ell, \widetilde{x}+t, \zeta \cdot \tilde{t}, \tilde{x}) = \zeta^{\ell(\ell-1)} \cdot \text{chain\_multadd}(\ell, \widetilde{x}+t, \tilde{t}, \tilde{x}). $$

□

Fix arbitrary affine lifts $\tilde{x}_1, \dots, \tilde{x}_r$ of $x_1, \dots, x_r$ (for example by computing $\alpha_1 x, \dots, \alpha_r x$ in Mumford coordinates and then convert to theta coordinates). By Lemma 5.5, computing suitable lifts of $x_1+t, \dots, x_r+t$ for $\tilde{t}_{\text{right}}$ and $\tilde{x}_1, \dots, \tilde{x}_r$ is equivalent to computing suitable lifts of $x_1+t, \dots, x_r+t$ for $\tilde{t} (= \zeta_t \cdot \tilde{t}_{\text{right}})$ and $\tilde{x}_1, \dots, \tilde{x}_r$. We cannot perform the former computation since we do not know $\tilde{t}_{\text{right}}$, but we can perform the latter computation. This means that we can compute suitable lifts $\widetilde{x}_1+t, \dots, \widetilde{x}_r+t$ of $x_1+t, \dots, x_r+t$ for $\tilde{t}_{\text{right}}$ and $\tilde{x}_1, \dots, \tilde{x}_r$ respectively, that differ from the **right** lifts of $x_1+t, \dots, x_r+t$ by $\ell$th roots of unity $\zeta_{x_1+t}, \dots, \zeta_{x_r+t}$. Moreover, if we compute lifts of $x_s+u_st$ as

$$ \widetilde{x_s + u_s t} := \text{chain\_multadd}(u_s, \widetilde{x_s + t}, \tilde{t}, \tilde{x_s}), $$

then they differ from the **right** lifts of $x_s + u_st$ by a factor $\zeta_{x_s+t}^{u_s}$, meaning that

$$ \widetilde{x_s + u_s t} = \zeta_{x_s+t}^{u_s} \cdot \widetilde{x_s + u_s t_{\text{right}}}. $$

5.2.3 *Choice of lifts of $x_s + u_st$.* We use a different approach based on the Chinese Remainder Theorem and the fact that the order $N$ of $x$ is coprime to $\ell$. Suppose that we have fixed a lift $\tilde{0}_A$ of $0_A$ and that we have computed a lift $\tilde{x}$ of $x$ that satisfies $\text{chain\_mult}(N, \tilde{x}) = \tilde{0}_A$. This, via $\widetilde{f}$, determines lifts $\tilde{0}_B$ and $\tilde{y}$ of $0_B$ and $y$, respectively, satisfying $\text{chain\_mult}(N, \tilde{y}) = \tilde{0}_B$. The lift $\tilde{0}_B$ then determines **right** lifts $\tilde{t}_{\text{right}}$ and $\widetilde{x}+t_{\text{right}}$. We first compute an excellent lift $\tilde{t}$ of $t$. We have $\tilde{t} = \zeta_t \cdot \tilde{t}_{\text{right}}$ for an $\ell$th root of unity $\zeta_t$. We then compute a suitable lift $\widetilde{x}+t$ of $x+t$ for $\tilde{t}$ (hence for $\tilde{t}_{\text{right}}$) and $\tilde{x}$. We have $\widetilde{x}+t = \zeta_{x+t} \cdot \widetilde{x}+t_{\text{right}}$ for $\zeta_{x+t}$ an $\ell$th root of unity. Let $\widetilde{y}+t'$ be the lift of $y+t'$ induced by $\widetilde{f}$ and $\widetilde{x}+t$. It is not hard to see that

$$ \widetilde{y+t'} = \zeta_{x+t'} \cdot (1, i_{t'}, 0) \cdot \tilde{y}. \qquad (30) $$
Suppose $e$ and $f$ satisfy $eN + f\ell = 1$. Consider the isomorphism

$$c_{[\cdot, \cdot]} : \mathbb{Z}/N\mathbb{Z} \times \mathbb{Z}/\ell\mathbb{Z} \to \mathbb{Z}/N\ell\mathbb{Z}, (a, u) \mapsto c_{[a, u]} = ueN + af\ell.$$

For $s = 1, \dots, r$ let $a_s \mod N$ be the integer such that $x_s = \alpha_s x = a_s x$.

Define lifts of $x_1, \dots, x_r$ as

$$\tilde{x}_s := \text{chain\_mult}(c_{[a_s, 0]}, \widetilde{x+t}) \text{ for } s=1, \dots, r. \qquad (31)$$

The lifts $\tilde{x}_1, \dots, \tilde{x}_r$ induce lifts $\tilde{y}_1, \dots, \tilde{y}_r$ of $y_1, \dots, y_r$ and using the compatibility of the affine isogeny $\tilde{f}$ with $\text{chain\_mult}$, it is not hard to see that

$$\tilde{y}_s = \text{chain\_mult}(c_{[a_s, 0]}, \widetilde{y+t}) \text{ for } s=1, \dots, r. \qquad (32)$$

The lifts $\tilde{x}_1, \dots, \tilde{x}_r$ also induce **right** lifts

$$\{\widetilde{x_s + u_s t_{\text{right}} : s = 1, \dots, r, u_s = 1, \dots, \ell - 1}\},$$

which are given by

$$\widetilde{x_s + u_s t_{\text{right}}} = \widetilde{\tilde{f}}((1, u_s i_{t'}, 0) \cdot \tilde{y}_s) = \widetilde{\tilde{f}}((1, u_s i_{t'}, 0) \cdot \text{chain\_mult}(c_{[a_s, 0]}, \widetilde{y+t})). \qquad (33)$$

Again, there is no chance we can determine the **right** lift of $x_s + u_s t$. But we can prove the following.

**PROPOSITION 5.6.** Let $\widetilde{0}_A$ and $\tilde{x}$ be fixed affine lifts of $0_A$ and $x$ respectively. Let $\widetilde{t}$ be a fixed excellent lift of $t$, that differs from the **right** lift of $t$ by an $\ell$th root of unity $\zeta_t$. Let $\widetilde{x} + t$ be a fixed suitable lift of $x + t$ for $\widetilde{t}$ and $\tilde{x}$, and suppose $\widetilde{x} + t$ differs from the **right** lift of $x + t$ by an $\ell$th root of unity $\zeta_{x+t}$. Let $\tilde{x}_1, \dots, \tilde{x}_r$ be lifts of $x_1, \dots, x_r$ defined as in (31). For $s = 1, \dots, r$ and $u_s = 1, \dots, \ell - 1$, define a lift of $x_s + u_s t$ as

$$\widetilde{x_s + u_s t} := \text{chain\_mult}(c_{[a_s, u_s]}, \widetilde{x+t}). \qquad (34)$$

Then, we have that

$$\widetilde{x_s + u_s t} = \zeta_{x+t}^{u_s^2} \cdot \widetilde{x_s + u_s t_{\text{right}}},$$

where the **right** lift of $x_s + u_s t$ is as in (33).

*Proof.* Observe that

$$\begin{align*}
\tilde{y}_s &= \text{chain\_mult}(c_{[a_s, 0]}, \widetilde{y+t'}) = \text{chain\_mult}(c_{[a_s, 0]}, \zeta_{x+t} \cdot (1, i_{t'}, 0) \cdot \tilde{y}) \\
&= \text{chain\_mult}(c_{[a_s, 0]}, (1, i_{t'}, 0) \cdot \tilde{y}) \\
&\quad \text{(by Lemma 3.10 of [LR12b] and the fact that } c_{[a_s, 0]} \text{ is congruent to 0 mod } \ell \text{)} \\
&= \text{chain\_mult}(c_{[a_s, 0]}, \tilde{y}) \text{ by Lemma 4.5}
\end{align*}$$
Now,

$$
\begin{align*}
\widetilde{x_s + u_s t} &= \mathbf{chain\_mult}(c_{[as, u_s]}, \widetilde{x + t}) \\
&= \mathbf{chain\_mult}(c_{[as, u_s]}, \widetilde{f}(\widetilde{y + t}')) \\
&= \widetilde{f}(\mathbf{chain\_mult}(c_{[as, u_s]}, \widetilde{y + t}')) \\
&= \widetilde{f}(\mathbf{chain\_mult}(c_{[as, u_s]}, \zeta_{x+t} \cdot (1, i_{t'}, 0) \cdot \tilde{y})) \\
&= \widetilde{f}(\zeta_{x+t}^{c_{[as, u_s]}^2} \cdot \mathbf{chain\_mult}(c_{[as, u_s]}, (1, i_{t'}, 0) \cdot \tilde{y})) \\
&= \widetilde{f}(\zeta_{x+t}^{u_s^2} \cdot (1, u_s i_{t'}, 0) \cdot \mathbf{chain\_mult}(c_{[as, u_s]}, \tilde{y})) \\
&\quad (\text{since } c_{[as, u_s]} \text{ congruent to } u_s \text{ mod } \ell \text{ and Lemma 4.5}) \\
&= \zeta_{x+t}^{u_s^2} \cdot \widetilde{f}((1, u_s i_{t'}, 0) \cdot \mathbf{chain\_mult}(c_{[as, 0]}, \tilde{y})) \\
&\quad (\text{since } \mathbf{chain\_mult}(N, \tilde{y}) = \tilde{0}_B) \\
&= \zeta_{x+t}^{u_s^2} \cdot \widetilde{f}((1, u_s i_{t'}, 0) \cdot \tilde{y}_s) \\
&\quad (\text{by the above}) \\
&= \zeta_{x+t}^{u_s^2} \cdot \widetilde{x_s + u_s t}_{\text{right}}.
\end{align*}
$$

□

5.2.4 Independence of the choice of a suitable lift of $x+t$. We prove the case $r=4$. The case $r=2$ is easier and can be proven in a similar way.

Fix $\mathbf{k} \in K_1(\mathcal{M}^{*4})$ and consider the sum

$$ \sum_{\substack{\mathbf{t}'' \in K_1((\mathcal{M}^{\beta})^{*4})[\beta] \\ F(\mathbf{t}'')=0}} \prod_{s=1}^{4} \theta_{j_s + t_s''}^{\Theta_{\mathcal{M}^{\beta}}} (y_s), \qquad (35) $$

where $\mathbf{j} \in K_1((\mathcal{M}^{\beta})^{*4})[n]$ is the unique index such that $F(\mathbf{j}) = \mathbf{k}$. Let $t' \in K_1(\mathcal{M}^{\beta})[\beta]$ be the unique preimage of $t$ under $\widetilde{f}$.

Fix a lift $\tilde{0}_A$ of $0_A$ and fix a lift $\tilde{x}$ of $x$ that satisfies $\mathbf{chain\_mult}(N, \tilde{x}) = \tilde{0}_A$, where $N$ is the order of $x$ which is coprime to $\ell$. Compute an excellent lift $\tilde{t}$ of $t$, that differs from $\tilde{t}_{\text{right}}$ by an $\ell$th root of unity $\zeta_t$, and compute a suitable lift $\tilde{x} + t$ of $x + t$ for $\tilde{t}$ (hence for $\tilde{t}_{\text{right}}$) and $\tilde{x}$, that differs from $\tilde{x} + \tilde{t}_{\text{right}}$ by an $\ell$th root of unity $\zeta_{x+t}$. For $s = 1, \dots, 4$ and $u_s = 0, \dots, \ell - 1$, define a lift of $x_s + u_s t$ as

$$ \widetilde{x_s + u_s t} := \mathbf{chain\_mult}(c_{[as, u_s]}, \widetilde{x + t}). \qquad (36) $$

Proposition 5.6 tells us that for $s = 1, \dots, 4$ and $u_s = 1, \dots, \ell - 1$, the lift $\widetilde{x_s + u_s t}$ differs from the **right** lift of $x_s + u_s t$ by $\zeta_{x+t}^{u_s^2}$, i.e.,

$$ \widetilde{x_s + u_s t} = \zeta_{x+t}^{u_s^2} \cdot \widetilde{x_s + u_s t}_{\text{right}}. $$

Here, **right** lift of $x_s + u_s t$ means with respect to the lift $\widetilde{x_s} = \mathbf{chain\_mult}(c_{[as, 0]}, \widetilde{x + t})$ of $x_s$. We want to evaluate (35) by making the substitution

$$ \theta_{j_s + t_s''}^{\Theta_{\mathcal{M}^{\beta}}} (y_s) = \theta_{\widetilde{f}(j_s)}^{\Theta_{\mathcal{L}}} (\widetilde{x_s + u_s t}), $$

where $u_s$ is such that $t_s'' = u_s t'$. If we knew the **right** lifts

$$ \{\widetilde{x_s + u_s t}_{\text{right}} : s = 1, \dots, 4 \text{ and } u_s = 0, \dots, \ell - 1\}, $$
where $\tilde{x}_s + 0t_{\text{right}}$ is just $\tilde{x}_s$, then, by making the substitutions

$$ \theta_{j_s+t_s''}^{\Theta_{\mathcal{M}^\beta}}(y_s) = \theta_{\tilde{f}(j_s)}^{\Theta_{\mathcal{L}}}(\tilde{x}_s + u_s t_{\text{right}}), $$

we could compute (35) correctly.

Proceeding as in Section 4.2.5, we compute

$$ \sum_{\substack{\mathbf{t}'' \in K_1((\mathcal{M}^\beta)^{\star 4})[\beta] \\ F(\mathbf{t}'')=0}} \prod_{s=1}^{4} \theta_{j_s+t_s''}^{\Theta_{\mathcal{M}^\beta}}(y_s) $$

by computing

$$ \sum_{t_1, t_2 \in G} \theta_{i_1}^{\Theta_{\mathcal{L}}}(x_1 + \widetilde{\alpha_1 t_1} - \alpha_2 t_2) \theta_{i_2}^{\Theta_{\mathcal{L}}}(x_2 + \widetilde{\alpha_2 t_1} + \alpha_1 t_2) \theta_{i_3}^{\Theta_{\mathcal{L}}}(x_3 + \widetilde{\alpha_3 t_1} - \alpha_4 t_2) \theta_{i_4}^{\Theta_{\mathcal{L}}}(x_4 + \widetilde{\alpha_4 t_1} + \alpha_3 t_2), \quad (37) $$

where $i_s = \tilde{f}(j_s) \in K_1(\mathcal{L})$. For $s = 1, \dots, 4$, let $a_{s,t} \bmod \ell$ be the integer such that $\alpha_{st} = a_{s,t}t$. Writing $t_1 = u_{1,t}$ and $t_2 = u_{2,t}$, with $0 \le u_{1,t}, u_{2,t} \le \ell - 1$, we define integers

$$ -u_1 = a_{1,t}u_{1,t} - a_{2,t}u_{2,t} \bmod \ell, \quad u_2 = a_{2,t}u_{1,t} + a_{1,t}u_{2,t} \bmod \ell, $$

$$ -u_3 = a_{3,t}u_{1,t} - a_{4,t}u_{2,t} \bmod \ell, \quad u_4 = a_{4,t}u_{1,t} - a_{3,t}u_{2,t} \bmod \ell. $$

Then, we are reduced to computing

$$ \sum_{0 \le u_{1,t}, u_{2,t} \le \ell-1} \theta_{i_1}^{\Theta_{\mathcal{L}}}(x_1 + \widetilde{u_1 t}) \theta_{i_2}^{\Theta_{\mathcal{L}}}(x_2 + \widetilde{u_2 t}) \theta_{i_3}^{\Theta_{\mathcal{L}}}(x_3 + \widetilde{u_3 t}) \theta_{i_4}^{\Theta_{\mathcal{L}}}(x_4 + \widetilde{u_4 t}). \quad (38) $$

**LEMMA 5.7.** Fix $u_{1,t}, u_{2,t} \in \{0, \dots, \ell-1\}$. Then we have equality between the terms

$$ \theta_{i_1}^{\Theta_{\mathcal{L}}}(x_1 + \widetilde{u_1 t}) \theta_{i_2}^{\Theta_{\mathcal{L}}}(x_2 + \widetilde{u_2 t}) \theta_{i_3}^{\Theta_{\mathcal{L}}}(x_3 + \widetilde{u_3 t}) \theta_{i_4}^{\Theta_{\mathcal{L}}}(x_4 + \widetilde{u_4 t}) \text{ and} $$

$$ \theta_{i_1}^{\Theta_{\mathcal{L}}}(x_1 + \widetilde{u_1 t_{\text{right}}}) \theta_{i_2}^{\Theta_{\mathcal{L}}}(x_2 + \widetilde{u_2 t_{\text{right}}}) \theta_{i_3}^{\Theta_{\mathcal{L}}}(x_3 + \widetilde{u_3 t_{\text{right}}}) \theta_{i_4}^{\Theta_{\mathcal{L}}}(x_4 + \widetilde{u_4 t_{\text{right}}}). $$

That is to say, evaluating (35) by substituting the lifts $\{x_s + u_s t : s = 1, \dots, 4 \text{ and } u_s = 0, \dots, \ell-1\}$ as defined in (36), we correctly compute an affine lift of $(y, 0, \dots, 0) \in B^4(k)$ with respect to $\tilde{\Theta}_{\mathcal{M}^{\star 4}}$.

**Proof.** By Proposition 5.6, the term

$$ \theta_{i_1}^{\Theta_{\mathcal{L}}}(x_1 + \widetilde{u_1 t}) \theta_{i_2}^{\Theta_{\mathcal{L}}}(x_2 + \widetilde{u_2 t}) \theta_{i_3}^{\Theta_{\mathcal{L}}}(x_3 + \widetilde{u_3 t}) \theta_{i_4}^{\Theta_{\mathcal{L}}}(x_4 + \widetilde{u_4 t}) $$

differs from

$$ \theta_{i_1}^{\Theta_{\mathcal{L}}}(x_1 + \widetilde{u_1 t_{\text{right}}}) \theta_{i_2}^{\Theta_{\mathcal{L}}}(x_2 + \widetilde{u_2 t_{\text{right}}}) \theta_{i_3}^{\Theta_{\mathcal{L}}}(x_3 + \widetilde{u_3 t_{\text{right}}}) \theta_{i_4}^{\Theta_{\mathcal{L}}}(x_4 + \widetilde{u_4 t_{\text{right}}}) $$

by $\zeta_{x+t}^{u_1^2+\cdots+u_4^2}$. But

$$ u_1^2 + \cdots + u_4^2 = (a_{1,t}^2 + \cdots + a_{4,t}^2)(u_{1,t}^2 + u_{2,t}^2) $$

which is a multiple of $\ell$, since $a_{1,t}^2 + \cdots + a_{4,t}^2$ is given by the action of $\beta$ on $t$. $\square$

## 5.3 Theta coordinates for $(B, \mathcal{M}, \Theta_{\mathcal{M}})$

In Section 5.2 we computed the theta point $(\theta_{\mathbf{k}}^{\tilde{\Theta}_{\mathcal{M}^{\star r}}}(f(x), 0, \dots, 0))_{\mathbf{k} \in K_1(\mathcal{M}^{\star r})}$ for $x \in A(k)$. Analogous to Section 4.3 this does not allow us to recover the theta coordinates of $f(x)$ for $(B, \mathcal{M})$. The same metaplectic automorphism from Section 4.3.2 turns $\tilde{\Theta}_{\mathcal{M}^{\star r}}$ into a product theta structure and the transformation law for the theta coordinates from Proposition 4.11 applies. Let $S = \begin{pmatrix} A & B \\ C & D \end{pmatrix} \in \mathbf{Sp}_{2gr}(\mathbb{Z})$
be as in Proposition 4.11 and let $\mathbf{e}' = \frac{1}{2}\mathrm{diag}(A^tC)$ and $\mathbf{e}'' = \frac{1}{2}\mathrm{diag}(D^tB)$. Then there exists a constant $\lambda \in \bar{k}^\times$ such that for all $\mathbf{b}' = (b'_1, \dots, b'_r) \in \mathrm{Rpr}(\frac{1}{2}\mathbf{Z}^g/\mathbf{Z}^g)^r$ we have

$$ \theta_{b'_1}^{\Theta_M}(f(x)) \cdot \theta_{(b'_2, \dots, b'_r)}^{\Theta_{M^{*\star(r-1)}}}(0_{B^{r-1}}) = \theta_{\mathbf{b}'}^{\Theta_{M^{*\star r}}}((f(x), 0, \dots, 0)) \quad (39) \\ = \frac{\lambda}{2^{2r}} \sum_{\mathbf{a} \in (\frac{1}{2}\mathbf{Z}^g/\mathbf{Z}^g)^r} \xi_{\mathbf{a}, \mathbf{b}}^2 \sum_{\mathbf{i} \in (\frac{1}{2}\mathbf{Z}^g/\mathbf{Z}^g)^r} \exp(4\pi i \mathbf{a}^t \mathbf{i}) \theta_{\mathbf{b}+\mathbf{i}}^{\tilde{\Theta}_{M^{*\star r}}}((f(x), 0, \dots, 0)) \theta_{\mathbf{i}}^{\tilde{\Theta}_{M^{*\star r}}}(0_{B^r}), $$

where $\mathbf{a}, \mathbf{b}, \mathbf{a}', \mathbf{b}' \in \mathrm{Rpr}(\frac{1}{2}\mathbf{Z}^g/\mathbf{Z}^g)^r$ are related by $\begin{pmatrix} \mathbf{a}' \\ \mathbf{b}' \end{pmatrix} = \begin{pmatrix} D & -C \\ -B & A \end{pmatrix} \begin{pmatrix} \mathbf{a} - \mathbf{e}' \\ \mathbf{b} - \mathbf{e}'' \end{pmatrix}$, and

$$ \xi_{\mathbf{a},\mathbf{b}} = \exp \left( -\pi i (\mathbf{a}^t A B^t \mathbf{a} + \mathbf{b}^t C D^t \mathbf{b}) - 2\pi i (A^t \mathbf{a} + C^t \mathbf{b} + \mathbf{e}')^t \mathbf{e}'' - 2\pi i \mathbf{a}^t B C^t \mathbf{b} \right). $$

We finally compute the projective point

$$ (\theta_k^{\Theta_M}(f(x)))_{k \in K_1(\mathcal{M})}. $$

# 6. Complexity Analysis

The algorithms from Sections 4 and 5 depend on the following parameters:

- the size $q$ of the finite field $\mathbf{F}_q$,

- the order $\ell$ of the kernel of the isogeny,

- the level $n$ of the theta functions that we use in the computation,

- the dimension $g$ of the abelian variety,

- the parameter $r$ (typically, $r$ is either 2 or 4),

- the order $N$ of the point $x \in A(\mathbf{F}_q)$ (for the algorithm of Section 5).

For the moment, we assume that the matrix $F$ is precomputed and that the (affine) theta null point $(\theta_i^{\Theta_L}(\tilde{0}_A))_{i \in K_1(\mathcal{L})}$ as well as the (affine) theta points $(\theta_i^{\Theta_L}(\tilde{t}))_{i \in K_1(\mathcal{L})}$ and $(\theta_i^{\Theta_L}(\tilde{x}))_{i \in K_1(\mathcal{L})}$ are provided as input to the algorithm. We fix the following notations:

- $k_0$ denotes the field of definition of the affine theta coordinates of $0_A$,

- $k_t$ denotes the field of definition of the affine theta coordinates of $t$,

- $k_x$ denotes the field of definition of the affine theta coordinates of $x$,

- $k_{x+t}$ denotes the field of definition of the affine theta coordinates of $x+t$.

It will follow from Section 6.2.1 that $k_{x+t}$ is the composite field of $k_x$ and $k_t$.

In the case where $A$ is the Jacobian variety of a hyperelliptic curve $H$ defined over $\mathbf{F}_q$, we can explicitly determine the fields $k_0, k_t$ and $k_x$. Suppose that the Weierstrass points of $H$ have coordinates in $\mathbf{F}_{q^d}$. Then $k_0$ equals $\mathbf{F}_{q^{2d}}$. In general, if $z \in A(\mathbf{F}_{q^{d'}})$ is any point on the Jacobian of $H$, then the theta coordinates of $z$ will be defined over the composite field of $\mathbf{F}_{q^{2d}}$ and $\mathbf{F}_{q^{d'}}$. Since $x$ is $\mathbf{F}_q$-rational we have that $k_x = k_0$, and if $d'$ is the smallest integer such that $A[\ell] \subset A(\mathbf{F}_{q^{d'}})$, then $k_t$ is the composite field of $\mathbf{F}_{q^{2d}}$ and $\mathbf{F}_{q^{d'}}$.

## 6.1 Computing the theta null point for B

We first analyse the complexity of the algorithm from Section 4.

6.1.1 Compute an excellent affine lift for $t \in G$. To compute an excellent affine lift of $t$, we follow the procedure in Section 4.2.3, that is, we take any affine lift $\tilde{t}$ and compute $\mathrm{chain\_mult}(m+1, \tilde{t}, \tilde{0}_A)$ as well as $-\mathrm{chain\_mult}(m, \tilde{t}, \tilde{0}_A)$ and then solve an equation $\lambda_t^\ell = c$ to determine $\lambda_t$.
As discussed in [LR12b, p.1494], a multiplication chain requires $O(\log m)$ chain additions (in the worst case, $3 \log m$). The complexity of each chain addition has been analyzed in [LR12b, §3.2] and has complexity

$$4(4\ell n)^g \mathbf{M}(k_t) + (4\ell n)^g \mathbf{A}(k_t) + (\ell n)^g \mathbf{D}(k_t)$$

where, $\mathbf{M}(k_t)$, $\mathbf{A}(k_t)$ and $\mathbf{D}(k_t)$ are the costs of multiplication, addition and division in the field $k_t$ respectively.

Once we have obtained $\tilde{t}_e$, we need to compute the excellent lifts $\tilde{t}_e, \tilde{2t}_e, \dots, (\widetilde{m+1})t_e$. These then automatically yield lifts for $(\widetilde{m+1})t_e, \dots, (\widetilde{\ell-1})t_e$ (so we do not need to compute those) and hence, for all the points in $G$. In the case where $A$ is a hyperelliptic Jacobian, we have $A[\ell] \subset A(k_t)$, and since the $\ell$th roots of unity $\mu_\ell$ form a subgroup of $k_t^\times$, the excellent lift $\tilde{t}_e$ has affine coordinates in $k_t$.

### 6.1.2 Evaluating the right-hand side of equation (19).
For a given $\mathbf{k} \in K_1(M^{\star r})$, computing the right-hand side of (19) requires $\ell^{r/2}$ times $(r-1)$ multiplications and one addition in the field $k_t$ as the theta coordinates of the suitable lifts of the points in the kernel have been computed in the previous step. There are $n^{gr}$ indices $\mathbf{k}$ for which we need to do this computation, thus leading to $n^{gr}\ell^{r/2}(r-1)$ multiplications and $n^{gr}\ell^{r/2}$ additions in $k_t$ with a total cost of

$$n^{gr}\ell^{r/2}((r-1)\mathbf{M}(k_t) + \mathbf{A}(k_t)).$$

### 6.1.3 Computing the symplectic transformation $\bar{S}$.
The complexity depends only on $n$, $g$ and $r$. In practice, this can be speeded up if one finds a faster method for a symplectic transformation of a $2gr$-by-$2gr$ matrix with entries in $\mathbf{Z}/2n\mathbf{Z}$ into a block-diagonal form (we only need to have a $2g$-by-$2g$ block that will then correspond to the single copy $(B, M, \Theta_M)$ in the product $(B \times B^{r-1}, M \star M^{\star(r-1)}, \Theta_{M \star M^{\star(r-1)}})$. The brute-force method presented in Section 4.3.2 requires testing $(2n)^{4g^2}$ matrices.

### 6.1.4 Applying the transformation formula.
The main cost is given by the number of multiplications and additions needed to compute the right-hand side of (28). For each element in $K_1(M^{\star r})$, one needs $\#K_1(M^{\star r}) \cdot \#K_1(M^{\star r}) = n^{2gr}$ multiplications and $n^{2gr}$ additions in the field $k_t$. Thus, the total cost of the coordinate transformation is $n^{3gr}(\mathbf{M}(k_t) + \mathbf{A}(k_t))$.

## 6.2 Computing the theta coordinates for $f(x)$

For a point $x \in A(\mathbf{F}_q)$, suppose that we want to compute the coordinates of $f(x)$ with respect to the theta structure $\Theta_M$ on $(B, M)$, assuming that we are given the theta coordinates of $x$ for the theta structure $\Theta_\mathcal{L}$ on $(A, \mathcal{L})$.

### 6.2.1 Computing a lift of $x+t$ using normal additions.
Recall that the type of $\mathcal{L}$ is $\delta = (n, \dots, n)$. Given affine lifts $(\theta_i^{\Theta_\mathcal{L}}(\tilde{t}))_{i \in K_1(\mathcal{L})}$ and $(\theta_i^{\Theta_\mathcal{L}}(\tilde{x}))_{i \in K_1(\mathcal{L})}$ of $t$ and $x$ respectively, we explain how to compute (affine) theta coordinates for $x+t$. We do that by using normal additions. That is, we compute for each $i \in K_1(\mathcal{L})$ the product $\theta_i^{\Theta_\mathcal{L}}(\widetilde{x}+t)\theta_0^{\Theta_\mathcal{L}}(\widetilde{x}-t)$ as in [Rob10, p.81]: if we write $i = 2u$ where $u \in \mathbf{Z}(2\delta)$ then

$$\theta_i^{\Theta_\mathcal{L}}(\widetilde{x}+t)\theta_0^{\Theta_\mathcal{L}}(\widetilde{x}-t) = \theta_{u+u}^{\Theta_\mathcal{L}}(\widetilde{x}+t)\theta_{u-u}^{\Theta_\mathcal{L}}(\widetilde{x}-t) = \frac{1}{2g} \sum_{\chi \in \hat{\mathbf{Z}}(\delta)} U_{\chi,u}^{\mathcal{L}^2}(\tilde{x})U_{\chi,u}^{\mathcal{L}^2}(\tilde{t}), \quad (40)$$
where

$$ U_{\chi,u}^{\mathcal{L}^2}(\tilde{x}) U_{\chi,u}^{\mathcal{L}^2}(\tilde{t}) = \frac{1}{U_{\chi,u}^{\mathcal{L}^2}(\tilde{0}_A)^2} \left( \sum_{s \in \mathbf{Z}(\delta)} \chi(s) \theta_{i+s}^{\Theta_{\mathcal{L}}}(\tilde{x}) \theta_s^{\Theta_{\mathcal{L}}}(\tilde{x}) \right) \left( \sum_{s \in \mathbf{Z}(\delta)} \chi(s) \theta_{i+s}^{\Theta_{\mathcal{L}}}(\tilde{t}) \theta_s^{\Theta_{\mathcal{L}}}(\tilde{t}) \right). \quad (41) $$

$$ \text{Here, } U_{\chi,u}^{\mathcal{L}^2}(\tilde{0}_A)^2 = \sum_{s \in \mathbf{Z}(\delta)} \chi(s) \theta_{i+s}^{\Theta_{\mathcal{L}}}(\tilde{0}_A) \theta_s^{\Theta_{\mathcal{L}}}(\tilde{0}_A). $$

*Remark 10.* As explained in [Rob10, p.81], one has to be a bit careful with the required non-vanishing of the denominator on the right-hand side of (41). Yet, according to [Rob10, Thm.4.4.4], there will always be $u' \in \mathbf{Z}(2\delta)$ with $2u' = i$ for which the denominator will not vanish.

Assuming that $\theta_0^{\Theta_{\mathcal{L}}}(\tilde{x} - \tilde{t}) \neq 0$, we obtain projective theta coordinates for $x + t$. For fixed $i \in \mathbf{Z}(\delta)$ and fixed $\chi \in \hat{\mathbf{Z}}(\delta)$, the computation of $U_{\chi,u}^{\mathcal{L}^2}(\tilde{x}) U_{\chi,u}^{\mathcal{L}^2}(\tilde{t})$ has a cost of $2n^g(\mathbf{M}(k_{x+t}) + \mathbf{A}(k_{x+t})) + \mathbf{M}(k_{x+t}) + \mathbf{D}(k_{x+t})$, and hence the computation of $\theta_i^{\Theta_{\mathcal{L}}}(\tilde{x} + \tilde{t})$ has a cost of $n^g(2n^g(\mathbf{M}(k_{x+t}) + \mathbf{A}(k_{x+t}))) + \mathbf{M}(k_{x+t}) + \mathbf{D}(k_{x+t}) + \mathbf{A}(k_{x+t})$. Finally, we compute the projective theta coordinates $x + t$ at a cost of

$$ n^{2g}(2n^g(\mathbf{M}(k_{x+t}) + \mathbf{A}(k_{x+t})) + \mathbf{M}(k_{x+t}) + \mathbf{D}(k_{x+t}) + \mathbf{A}(k_{x+t})). $$

### 6.2.2 Computing affine lifts from Section 5.2.3.
Suppose we are given an excellent lift $(\theta_i^{\Theta_{\mathcal{L}}}(\tilde{t}))_{i \in K_1(\mathcal{L})}$ of $t$ from the computation of the theta null point of $B$. Let $\tilde{x} + t$ be an arbitrary affine lift of $x + t$ computed using the normal additions in the previous section. Compute a lift $\tilde{x}$ of $x$ satisfying $\text{chain\_mult}(N, \tilde{x}) = \tilde{0}_A$. This requires $\log N$ chain additions in the field $k_x$. As before, the cost is

$$ 3 \log N (4(4\ell n)^g \mathbf{M}(k_x) + (4\ell n)^g \mathbf{A}(k_x) + (\ell n)^g \mathbf{D}(k_x)). $$

Next, compute a suitable lift of $x + t$ for $\tilde{t}$ and $\tilde{x}$ (which we need to compute out of the arbitrary affine lift of $x + t$). This requires a multiplication chain involving $\log \ell$ addition chains each with complexity $4(4\ell n)^g \mathbf{M}(k_{x+t}) + (4\ell n)^g \mathbf{A}(k_{x+t}) + (\ell n)^g \mathbf{D}(k_{x+t})$, hence a total number of

$$ 3 \log \ell (4(4\ell n)^g \mathbf{M}(k_{x+t}) + (4\ell n)^g \mathbf{A}(k_{x+t}) + (\ell n)^g \mathbf{D}(k_{x+t})) $$

operations in the field $k_{x+t}$. Finally, the cost of computing each of the affine lifts $x_s + u_s t$ defined in Proposition 5.6 is at most

$$ 3 \log(N\ell) (4(4\ell n)^g \mathbf{M}(k_{x+t}) + (4\ell n)^g \mathbf{A}(k_{x+t}) + (\ell n)^g \mathbf{D}(k_{x+t})), $$

since the scalar $c_{[a_s, u_s]}$ is at most $N\ell$.

### 6.2.3 Computing the right-hand side of (38).
To evaluate the sum in (38), we need to loop over all indices $\mathbf{k} \in K_1(\mathcal{M}^{*r})$ (a total of $n^{gr}$ indices) and for each index, evaluate each of the $\ell^{r/2}$ summands. Each summand then requires $(r-1)$ multiplications in the field $k_{x+t}$ as well as one addition, a total cost of

$$ n^{gr} \ell^{r/2} ((r-1)\mathbf{M}(k_{x+t}) + \mathbf{A}(k_{x+t})) $$

operations.

### 6.2.4 Applying the transformation formula.
As for the computation of the theta null point for $B$, this step requires $n^{3gr}$ multiplications and additions in the field $k_{x+t}$, i.e. has a total cost of

$$ n^{3gr}(\mathbf{M}(k_{x+t}) + \mathbf{A}(k_{x+t})) $$

operations.
## 7. Computational Examples

We have implemented the algorithm from Section 4 in Magma and used that implementation to compute the following example of isogenous abelian surfaces. Consider the curve

$$H : y^2 = x^5 + x^4 + 3x^3 + 22x^2 + 19x$$

over $\mathbf{F}_{23}$ and its Jacobian $J = \mathrm{Jac}(H)$. Then $J$ is ordinary and simple and the (irreducible) characteristic polynomial of the Frobenius endomorphism $\pi$ is given by $\chi_{\pi}(z) = z^4 + 14z^2 + 529$. The endomorphism algebra $\mathrm{End}^0(J) = \mathrm{End}(J) \otimes_{\mathbb{Z}} \mathbb{Q}$ is isomorphic to the quartic CM-field $K = \mathbb{Q}(\pi) = \mathbb{Q}[z]/(\chi_{\pi})$, and the totally real subfield $K_0$, consisting of the symmetric endomorphisms $\mathrm{End}^+(J) \otimes_{\mathbb{Z}} \mathbb{Q}$, is generated over $\mathbb{Q}$ by $\pi + \pi^\dagger$. Hence we have $\mathbb{Z}[\pi + \pi^\dagger] \subset \mathrm{End}^+(J) \subset \mathcal{O}_{K_0}$. The real endomorphism $\beta = -38(\pi + \pi^\dagger) + 215$ is totally positive and of real norm 17 (i.e. of degree $17^2$). Consider the 17-torsion point $t = (x^2 + u_1x + u_0, v_1x + v_0) \in J(\mathbf{F}_{23^{16}})$, where

$$u_1 = 10a^{15} + 9a^{14} + 17a^{13} + 5a^{12} + 14a^{11} + 19a^{10} + 14a^9 + 14a^8 + 5a^7 + 22a^6 + a^5 + 19a^4 + 13a^3 + 2a^2 + 15a + 7,$$

$$u_0 = 6a^{15} + 11a^{14} + 17a^{13} + 19a^{12} + 10a^{11} + a^{10} + 21a^9 + 15a^8 + 18a^7 + 21a^6 + 5a^5 + 18a^4 + 4a^3 + 6a^2 + 3a + 19,$$

$$v_1 = 19a^{15} + 11a^{14} + 18a^{13} + 3a^{12} + 20a^{11} + 11a^{10} + 8a^9 + a^8 + 19a^7 + 5a^6 + 14a^5 + 3a^4 + 4a^3 + 10a^2 + 22a + 22,$$

$$v_0 = a^{15} + 10a^{14} + 11a^{13} + 22a^{12} + 3a^{11} + 14a^{10} + 21a^9 + 5a^8 + 9a^7 + 17a^5 + 20a^4 + 6a^3 + 8a^2 + 13a + 5$$

and $a$ satisfies $a^{16} + 19a^7 + 19a^6 + 16a^5 + 13a^4 + a^3 + 14a^2 + 17a + 5 = 0$. The subgroup $G = \langle t \rangle$ is Galois-stable, since $\pi(t) = [6]t$, and moreover we have $G \subset \ker(\beta)$.

The algorithm outputs the hyperelliptic curve $H'$ over $\mathbf{F}_{23}$ with affine model

$$H' : y^2 = 5x^6 + 18x^5 + 18x^4 + 8x^3 + 20x,$$

whose Jacobian variety $J' = \mathrm{Jac}(H')$ is isomorphic (as a principally polarized abelian surface) to the quotient $J/G$. Hence $J$ and $J'$ are $\beta$-isogenous over $\mathbf{F}_{23}$ and the isogeny is given by

$$J \to J/G = J'$$

Indeed, the characteristic polynomial of the Frobenius endomorphism $\pi': J' \to J'$ equals $\chi_{\pi}$, but $H$ and $H'$ have Cardona-Quer-Nart-Pujola invariants (c.f. [CNP05] and [CQ05]) given by [16, 12, 17] and [18, 5, 0] respectively, and hence the Jacobians $J$ and $J'$ are non isomorphic (as principally polarized abelian surfaces). The computation took 1.72 seconds on a 2.3 GHz Intel Core i7 CPU with 8 GB memory.

## ACKNOWLEDGEMENTS

We are grateful to Ernest H. Brooks and Enea Milio for carefully reading the draft of this paper and for suggesting various improvements. We thank Gaetan Bisson, Pierrick Gaudry, Arjen Lenstra, Chloe Martindale, Philippe Michel, Chris Skinner, Ben Smith, Marco Streng, Nike Vatsal, Ben Wesolowski and Alexey Zykin for helpful discussions.

## REFERENCES

* BFT14 N. Bruin, E. V. Flynn, and D. Testa, Descent via (3,3)-isogeny on Jacobians of genus 2 curves, Acta Arith. 165 (2014), no. 3, 201–223.

* Bis11 G. Bisson, Endomorphism rings in cryptography, Ph.D. thesis, Loria, Nancy, 2011.

* BJW17 E. Brooks, D. Jetchev, and B. Wesolowski, Isogeny graphs of ordinary abelian varieties, available at http://arxiv.org/pdf/1609.09793v1.pdf (2017).

* BL04 C. Birkenhake and H. Lange, Complex abelian varieties, second ed., Grundlehren der Mathematischen Wissenschaften [Fundamental Principles of Mathematical Sciences], vol. 302, Springer-Verlag, Berlin, 2004.
CE15 J.-M. Couveignes and T. Ezome, *Computing functions on Jacobians and their quotients*, LMS J. Comput. Math. **18** (2015), no. 1, 555-577.

CNP05 G. Cardona, E. Nart, and J. Pujolas, *Curves of genus two over fields of even characteristic*, Mathematische Zeitschrift, 250:177-201 (2005).

Cos11 R. Cosset, *Applications des fonctions theta a la cryptographie sur courbes hyperelliptiques*, Ph.D. thesis, Loria, Nancy, 2011.

CQ05 G. Cardona and J. Quer, *Field of moduli and field of definition for curves of genus 2*, Lecture Notes Ser. Comput., 13:71-83 (2005).

CR11 R. Cosset and D. Robert, *Computing (ℓ, l)-isogenies in polynomial time on jacobians of genus 2 curves*, http://eprint.iacr.org/2011/143, 2011.

dFJP14 L. de Feo, D. Jao, and J. Plut, *Towards quantum-resistant cryptosystems from supersingular elliptic curve isogenies*, J. Mathematical Cryptology **8** (2014), no. 3, 209-247.

DL08 I. Dolgachev and D. Lehavi, *On isogenous principally polarized abelian surfaces*, Curves and abelian varieties, Contemp. Math., vol. 465, Amer. Math. Soc., Providence, RI, 2008, pp. 51-69.

Fio16 A. Fiorentino, *Weber's formula for the bitangents of a smooth plane quartic*, https://arxiv.org/abs/1612.02049 (2016).

Fly15 E. V. Flynn, *Descent via (5,5)-isogeny on Jacobians of genus 2 curves*, J. Number Theory **153** (2015), 270-282.

FM02 M. Fouquet and F. Morain, *Isogeny volcanoes and the SEA algorithm*, Algorithmic number theory (Sydney, 2002), Lecture Notes in Comput. Sci., vol. 2369, Springer, Berlin, 2002, pp. 276-291.

Igu72 J.-I. Igusa, *Theta functions*, Grundlehren der mathematischen Wissenschaften, vol. 194, Springer, 1972.

JW15 D. Jetchev and B. Wesolowski, *On graphs of isogenies of principally polarizable abelian surfaces and the discrete logarithm problem*, http://arxiv.org/abs/1506.00522 (2015).

Koh96 D. Kohel, *Endomorphism rings of elliptic curves over finite fields*, PhD thesis, University of California, Berkeley (1996).

LR12a K. Lauter and D. Robert, *Improved crt algorithm for class polynomials in genus 2*, IACR Cryptology ePrint Archive **2012** (2012), 443.

LR12b D. Lubicz and D. Robert, *Computing isogenies between abelian varieties*, Compos. Math. **148** (2012), no. 5, 1483-1515.

LR15 —, *A generalisation of Miller's algorithm and applications to pairing computations on abelian varieties*, J. Symbolic Comput. **67** (2015), 68-92.

Mil86 J. S. Milne, *Abelian varieties*, Arithmetic geometry (Storrs, Conn., 1984), Springer, New York, 1986, pp. 103-150.

Mil15 Enea Milio, *A quasi-linear time algorithm for computing modular polynomials in dimension 2*, LMS Journal of Computation and Mathematics **18** (2015), 603-632.

MR17 Enea Milio and Damien Robert, *Modular polynomials on Hilbert surfaces*, working paper or preprint, September 2017.

Mum66 D. Mumford, *On the equations defining abelian varieties. I*, Invent. Math. **1** (1966), 287-354.

Mum67a —, *On the equations defining abelian varieties. II*, Invent. Math. **3** (1967), 75-135.

Mum67b —, *On the equations defining abelian varieties. III*, Invent. Math. **3** (1967), 215-244.

Mum84 D. Mumford, *Tata lectures on theta ii. jacobian theta functions and differential equations, with the collaboration of c. musili, m. nori, e. previato, m. stillman and h. umemura*, Progress in Mathematics, vol. 43, Boston, MA : Birkhäuser Boston Inc., 1984.

Ric37 F. Richelot, *De transformatione integralium Abelianorum primi ordinis commentatio*, J. Reine Angew. Math. **16** (1837), 221-284.

Rob10 D. Robert, *Fonctions thêta et applications à la cryptologie*, PhD thesis, Université Henri Poincaré - Nancy I (2010).

Smi09 B. Smith, *Isogenies and the discrete logarithm problem in jacobians of genus 3 hyperelliptic curves*, J. Cryptology **22** (2009), no. 4, 505-529.
Vél71 J. Vélu, *Isogénies entre courbes elliptiques*, C. R. Acad. Sci. Paris Sér. A-B **273** (1971), A238-A241.

Alina Dudeanu alina.dudeanu@epfl.ch

Ecole Polytechnique Fédérale de Lausanne, Switzerland

Dimitar Jetchev dimitar.jetchev@epfl.ch

Ecole Polytechnique Fédérale de Lausanne, Switzerland

Damien Robert damien.robert@inria.fr

Université de Bordeaux, France

Marius Vuille marius.vuille@epfl.ch

Ecole Polytechnique Fédérale de Lausanne, Switzerland