\documentclass[10pt,twoside]{article} \usepackage[lmargin=1.25in,rmargin=1.25in,tmargin=1.3in,bmargin=1.3in,headheight=20pt,headsep=10pt]{geometry} \usepackage{longtable} \usepackage{soul} \usepackage{amsfonts,amsmath,amssymb,amsthm} \usepackage{enumitem} \usepackage{dsfont} \usepackage{indentfirst} \usepackage{lastpage} \usepackage{lipsum} \usepackage{quiver} \usepackage{algorithm} \usepackage{algpseudocode} \usepackage{abstract} \usepackage{xcolor}\definecolor{Blue}{HTML}{0C4CCD}\definecolor{Black}{HTML}{000000} \usepackage[colorlinks=true,citecolor=Blue,filecolor=Blue,linkcolor=Blue,urlcolor=Blue]{hyperref} \usepackage[nameinlink]{cleveref} \usepackage{mathtools} \usepackage{titlesec} \titleformat{\section} {\centering\normalfont\normalsize\bfseries}{\normalfont{\thesection}.}{0.5em}{} \titleformat{\subsection} {\normalfont\normalsize\bfseries}{\normalfont{\thesubsection}.}{0.5em}{} \titleformat{\subsubsection} {\normalfont\small\bfseries}{\normalfont{\thesubsubsection}}{1em}{} \renewcommand{\abstractnamefont}{\centering\normalfont\normalsize\bfseries} \theoremstyle{theorem} \newtheorem{theorem}{Theorem}[section] \newtheorem{lemma}[theorem]{Lemma} \newtheorem{proposition}[theorem]{Proposition} \newtheorem{corollary}[theorem]{Corollary} \newtheorem{conjecture}[theorem]{Conjecture} \theoremstyle{definition} \newtheorem{definition}[theorem]{Definition} \newtheorem{example}[theorem]{Example} \newtheorem{remark}[theorem]{Remark} \newtheorem*{notation}{Notation} \newcommand{\parens}[1]{\left( #1 \right)} \newcommand{\T}{\mathbb{T}} \newcommand{\A}{\mathbb{A}} \newcommand{\G}{\mathbb{G}} \newcommand{\F}{\mathbb{F}} \newcommand{\C}{\mathbb{C}} \newcommand{\R}{\mathbb{R}} \newcommand{\Q}{\mathbb{Q}} \newcommand{\Z}{\mathbb{Z}} \newcommand{\N}{\mathbb{N}} \renewcommand{\P}{\mathbb{P}} \newcommand{\id}{\text{id}} \newcommand{\ev}{\text{ev}} \newcommand{\Hom}{\text{Hom}} \newcommand{\SHom}{\mathcal H\text{om}} \newcommand{\End}{\text{End}} \newcommand{\Aut}{\text{Aut}} \newcommand{\Set}{\texttt{Set}} \newcommand{\Gp}{\texttt{Gp}} \newcommand{\Ab}{\texttt{Ab}} \newcommand{\GL}{\text{GL}} \newcommand{\SL}{\textnormal{SL}} \newcommand{\lcm}{\text{lcm}} \newcommand{\im}{\text{im }} \newcommand{\coker}{\text{coker }} \newcommand{\Mat}{\text{Mat}} \newcommand{\iso}{\cong} \newcommand{\Gal}{\text{Gal}} \newcommand{\tensor}{\otimes} \newcommand{\diag}[2]{\begin{pmatrix} #1 & 0\\ 0 & #2 \end{pmatrix}} \newcommand{\xto}{\xrightarrow} \newcommand{\longto}{\longrightarrow} \newcommand{\xlongto}{\xlongrightarrow} \newcommand{\surj}{\twoheadrightarrow} \newcommand{\inj}{\hookrightarrow} \newcommand{\bij}{\xrightarrow{\sim}} \newcommand{\chart}[1]{\xhookleftarrow{#1}} \newcommand{\Deck}{\text{Deck}} \newcommand{\diam}{\text{diam}} \newcommand{\PGL}{\text{PGL}} \newcommand{\res}{\text{res}} \newcommand{\Res}{\text{ Res}} \newcommand{\Per}{\text{Per}} \newcommand{\Rh}{\text{Rh}} \newcommand{\divisor}{\text{ div}} \newcommand{\ord}{\text{ord}} \newcommand{\Pic}{\text{Pic}} \newcommand{\Sch}{\texttt{Sch}} \newcommand{\Spec}{\text{Spec}} \newcommand{\AV}{\texttt{AV}} \newcommand{\op}{\texttt{op}} \newcommand{\Ker}{\text{Ker}} \newcommand{\Cer}{\textnormal{Cer}} \newcommand{\CH}{\textnormal{CH}} \newcommand{\Sh}{\textnormal{Sh}} \newcommand{\pr}{\text{pr}} \newcommand{\AJ}{\text{AJ}} \newcommand{\Jac}{\mathrm{Jac}} \newcommand{\wit}[4]{% \begin{tabular}{@{}c c@{}} $p_1 = #1$ & $o_1 = #2$\\ $p_2 = #3$ & $o_2 = #4$ \end{tabular}} \def\fullname{Leonardo Finzi} \def\lastname{Finzi} \def\articletitle{Testing the non-vanishing of the Ceresa cycle of $X_0(N)$} \def\affiliation{Department of Mathematics, University of Pittsburgh, Pittsburgh, PA} \def\email{leonardo.finzi@pitt.edu} \title{ \textbf{\Large\articletitle} \\ } \author{\normalsize \fullname} \date{} \begin{document} \maketitle \begin{abstract} For a curve $C$ and a fixed degree-one divisor $e$ of $C$, we can embed $C$ into its Jacobian. This embedding induces an algebraic $1$-cycle on the Jacobian called the Ceresa cycle, which we denote by $\Cer(C,e)$. Although homologically trivial, Ceresa cycles of very general curves with genus $\geq 3$ are non-trivial under algebraic equivalence. It is generally unknown whether a very general curve admits a non-trivial Ceresa cycle modulo rational equivalence. In this paper, we explore the non-triviality under rational equivalence of the Ceresa cycle corresponding to the modular curve $X_0(N)$. By extending a method of Lupoian--Rawson involving computing the order of the shadow of the Atkin--Lehner involution $w_N$, we show $\Cer(X_0(kN),e)$ is non-trivial when $N = 57, 58, 77, 82, 85, 88, 91, 93, 111, 112, 115, 123, 133, 135, 141, 143, 145, 147, 155, 161$ for $k \geq 1$. Moreover, we detail an algorithm for computing the shadow of the Hecke operator $T_\ell$ for odd primes $\ell$ not dividing $N$, which can be used to determine the non-triviality of the Ceresa cycle of $X_0(N)$. \end{abstract} \section{Introduction} Let $C$ be a connected smooth projective curve defined over an algebraically closed field $K$. For a fixed degree-one divisor $e$ we get an Abel--Jacobi map $\AJ_e : C \to \Jac(C)$. We define the Ceresa cycle of $C$ to be $$\Cer(C,e) := [\AJ_e(C)] - [-1]^*[\AJ_e(C)] \in \CH_1(\Jac(C))_{\mathbb{Q}}.$$ The Ceresa cycle is always homologically trivial. Moreover, if $C$ is hyperelliptic and $e$ is a Weierstrass point, $\Cer(C,e)$ is trivial as $[-1]$ restricts to the hyperelliptic involution on $C$, and so $[\AJ_e(C)] = [-1]^*[\AJ_e(C)]$ as divisors \cite[Corollary 4.9]{modifieddiagonal}. In particular, the Ceresa cycle is always trivial for genus $\le 2$. On the other hand, by a well-known result of Ceresa \cite{cer}, for a very general curve $C$ of genus $\ge 3$, $\Cer(C,e)$ is non-trivial under algebraic equivalence. Yet, $\Cer(C,e)$ does happen to vanish in the Chow group for certain non-hyperelliptic curves, such as the Fricke--Macbeathe curve of genus $7$ \cite{QZ} (see also \cite{lS} for more examples). It is generally difficult to show that a certain Ceresa cycle is trivial or not in the Chow group. In this paper, we focus on Ceresa cycles of modular curves, that is, curves whose non-cuspidal points parametrize equivalence classes of elliptic curves with level structure, which are important objects in number theory. In particular, we will examine the Ceresa cycle $\Cer(N)$ of $X_0(N)$, which lives in $\CH_1(J_0(N))_\Q$. Although the question for determining the (non-)triviality of Ceresa cycles is very difficult in general, one can exploit the various symmetries of the modular curves to address this question. In fact, Lupoian and Rawson \cite{lupraw} recently proved that for $p$ a prime where the genus of $X_0(p)$ is at least $3$, $\Cer(p)$ is non-trivial if and only if $X_0(p)$ is not hyperelliptic. Less has been known for composite levels, with the non-triviality of $\Cer(34)$ \cite{lupraw}, $\Cer(64)$ \cite{ellenberg}, and $\Cer(74)$ \cite{lupraw} having been explicitly verified (see also \cite{KLIQY} for similar results for other modular curves). One way to access the composite levels is to use the following observation: if $N \mid M$ with $\Cer(N)$ non-trivial, then $\Cer(M)$ is non-trivial as well. Thus, the results for prime levels can be extended to more composite levels. Additionally, for primes $p$ such that $X_0(p)$ is hyperelliptic or has genus $\le 2$, Lupoian and Rawson computed the $p$-powers for which $\Cer(p^n)$ is non-trivial, i.e., $N = 2^6,3^5,5^3,7^3$, and $N=p^2$ for $$p \in \{11,13,17,19,23,29,31,37,41,47,59,71\}.$$ Extending this result to composite cases gives that at most finitely many integers $N$ give a trivial $\Cer(N)$. As of \cite{lupraw}, counting all multiples of known prime and composite cases, their work leaves $414701$ cases unchecked. In proving the result above, Lupoian and Rawson describe three methods to verify the non-triviality of specific composite levels \cite[Section 6]{lupraw}. In this paper, we extend one of their methods to new cases and discuss a new method that could be implemented in the future. We also provide an algorithm for computing shadows of certain endomorphisms of $J_0(N)$, which are cycles that witness the non-triviality of $\Cer(N)$. Our results can be summarized in the following theorem, which states the newly determined cases for which $\Cer(N)$ is non-trivial. \begin{theorem} \label{thm:result1} Let $M$ be a positive integer. If $M$ is divisible by $N$ for \begin{equation}\label{eq:result1} N \in \left\{ \begin{gathered} 57, 58, 77, 82, 85, 88, 91, 93, 111, 112, \\ 115, 123, 133, 135, 141, 143, 145, 147, 155, 161 \end{gathered} \right\}, \end{equation} then $\textnormal{Cer}(M)$ is non-zero in $\textnormal{CH}_1(J_0(M))$. \end{theorem} Adding \Cref{thm:result1} to the known cases, we get the following statement describing all levels for which $\Cer(N)$ is non-trivial. \begin{corollary} If $M$ is divisible by $N$ for \begin{enumerate} \item[\textnormal{(i)}] $N$ prime for $N > 71$ or $N \in \{43,53,61,67\}$; \item[\textnormal{(ii)}] $N = 2^6,3^5,5^3,7^2$ or $N = p^2$ for $$p \in \{11,13,17,19,23,29,31,37,41,47,59,71\}; \text{ or}$$ \item[\textnormal{(iii)}] $N \in \{34,74\}$ or is as in $\eqref{eq:result1}$, \end{enumerate} then $\Cer(M)$ is non-trivial in $\CH_1(J_0(M))$. \end{corollary} This result implies that there are only $6578$ levels of $\Cer(N)$ for which non-triviality (or triviality) is unknown (see \Cref{fig:known_cases_figure}). All \texttt{Magma} source code can be accessed at \begin{center} \href{https://github.com/leonardo-finzi/X0-N-Ceresa-Cycle-Computations}{\texttt{https://github.com/leonardo-finzi/X0-N-Ceresa-Cycle-Computations}}. \end{center} \begin{figure}[h!] \centering \resizebox{\textwidth}{!}{\input{known_cases}} \caption{Some $N$ for which $\Cer(N)$ is known, organized by $\Omega$-many prime factors. Each panel holds the 300 smallest $N$ with that many prime factors. } \label{fig:known_cases_figure} \end{figure} \begin{notation} In this paper, we mostly work with Chow groups with rational coefficients. So for a smooth projective variety $X$ over a field $K$, we will simply write $\CH(X)$ for $\CH(X)_{\mathbb{Q}}$, and use the notation $\CH(X)_{\mathbb{Z}}$ for the Chow group with $\mathbb{Z}$-coefficients in case we need it. Additionally, we define $\pr_{ij} : X^n \to X^2$ to be the projection onto the $i$-th and $j$-th factor of $X^n$ and $\pr_i : X^n \to X$ to be the projection onto the $i$-th factor. \end{notation} \section*{AI Statement} \noindent AI was used to create \Cref{fig:known_cases_figure} and format \Cref{tab:result1}. There was no other use of AI. \section*{Acknowledgments} I would like to thank Dr.\ Mohamed Moakher and Dr.\ Carl Wang-Erickson for suggesting this project, and whole heatedly supporting me through the research process and the creation of this manuscript. I would also like to thank the David C.\ Frederick Honors College at the University of Pittsburgh for their support over the summer of 2026 to conduct this research through a Brackenridge Fellowship. This research was supported in part by the University of Pittsburgh Center for Research Computing and Data, RRID:SCR\_022735, through the resources provided. Specifically, this work used the H2P cluster, which is supported by NSF award number OAC-2117681. This work was also supported in part by the NSF under grant 2401384. \section{Background} The Ceresa cycle of a connected smooth projective curve $C$ is closely related to a different cycle on $C^3$, which is called the Gross--Kudla--Shoen modified diagonal cycle. This cycle also appears in number theory, arising in special-value formulae for the derivatives of triple-product $L$-functions of Shimura curves \cite{tripleproductLseries}. It turns out that instead of working directly with Ceresa cycles, it is more convenient to work with this cycle. \begin{definition} The \emph{Gross--Kudla--Schoen modified diagonal cycle} is the cycle $\Gamma^3(C,e) \in \CH_1(C^3)$ defined as $$\Delta_C^{(3)} - (\Delta_C^{(2)} \times e) - (e \times \Delta_C^{2}) - (\pr_{13}^*(\Delta_C^{(2)}) \cdot \pr_2^*e) + (e \times e \times C) + (e \times C \times e) + (C \times e \times e),$$ % $$\Gamma^3(C,e) = \sum_{\emptyset \neq I \subset \{1,2,3\}} (-1)^{n-|I|}\parens{\pr_I^*(\Delta^{|I|}_C) \cdot \prod_{i \notin I} \pr_i^*e}$$ where $\Delta_C^{(m)}$ denotes the small diagonal in $C^m$. \end{definition} As alluded to above, the reason we may work with $\Gamma^3(C,e)$ is because its vanishing is directly related to the vanishing of $\Cer(C,e)$, as stated in the following important theorem. \begin{theorem}[{\cite[Theorem 1.5.5]{zhang}}]\label{thm:zhang} Let $e$ be any degree-$1$ divisor on $C$. Then $\Cer(C,e) = 0$ if and only if $\Gamma^3(C,e) = 0$. Additionally, this vanishing only occurs if $e = \frac{K_C}{2g-2}$, where $K_C$ is the canonical divisor on $C$. \end{theorem} This result justifies the following notation. \begin{notation} From now on, we will fix our chosen degree-$1$ divisor on any curve $C$ as $e = \frac{K_C}{2g-2}$ and will write $\Cer(C)$ for $\Cer(C,e)$. \end{notation} \subsection{Vanishing of Prime Levels} We turn our attention to Ceresa cycles corresponding to the modular curve $X_0(N)$, and begin by filtering out the low-genus and hyperelliptic cases. By the explicit formula for the genus, we know that $X_0(N)$ has genus $\le 1$ when $N \leq 21$ or $N \in \{24,25,27,32,36,49\}$. Moreover, due to Ogg, it is well-known for which levels $N$ that $X_0(N)$ is hyperelliptic. \begin{proposition}[{\cite[Theorem 2]{ogghyperellipticcurves}}] The curve $X_0(N)$ is hyperelliptic with genus $\ge 2$ if and only if $$N \in \{22,23,26,28,29,30,31,33,35,37,39,40,41,46,47,48,50,59,71\}.$$ \end{proposition} To address the non-trivial cases, it is natural to first consider the prime levels of $X_0(N)$. As it turns out, the prime levels are completely known: hyperellipticity is the only obstruction to non-vanishing. \begin{theorem}[{\cite[Theorem 1]{lupraw}}]\label{thm:lupraw1} For a prime $p$, $\Cer(p)$ is non-zero if and only if $X_0(p)$ is of genus at least $3$ and not hyperelliptic, i.e., $p > 71$ or $p \in \{43, 53, 61, 67\}$. \end{theorem} In order to propagate this result to more integers, we would like for the non-vanishing of prime levels to inform the non-vanishing of composite levels. Our first step in being able to do this is by understanding the relationship between a Ceresa cycle and the Ceresa cycles they cover. This is the subject of the following proposition. \begin{proposition}[{\cite[Proposition 25]{lupraw}}]\label{prop:covers} Suppose $C \to D$ is a cover. If $\Cer(D,d) \neq 0$ in $\CH_1(\Jac(D))$ for any choice of basepoint divisor $d$ of $D$, then $\Cer(C,c) \neq 0$ in $\CH_1(\Jac(C))$ for any choice of basepoint divisor $c$ of $C$. \end{proposition} \begin{proof} Let $\pi \colon C \to D$ be a cover. For any degree-1 basepoint divisor $c \in C$, we have that \begin{align*} \pi_\ast \Cer(C,e) &= \pi_\ast([\AJ_e(C)] - [-1]^*[\AJ_e(C)])\\ &= \pi_\ast([\AJ_e(C)]) - \pi_\ast([-1]^*[\AJ_e(C)])\\ &= \deg(\pi)[\AJ_{\pi(e)}(D)] - \deg(\pi)[-1]^*[\AJ_{\pi(e)}(D)]\\ &= \deg(\pi) \cdot ([\AJ_{\pi(e)}(D)] - [-1]^*[\AJ_{\pi(e)}(D)])\\ &= \deg(\pi) \cdot \Cer(D,\pi(e)). \end{align*} Thus, if $\Cer(D,d) \neq 0$ for any basepoint divisor $d$ of $D$, we have $\Cer(C,e) \neq 0$. \end{proof} If $k > 0$, then the inclusion $\Gamma_0(kN) \to \Gamma_0(N)$ induces a cover $X_0(kN) \to X_0(N)$. Hence by \Cref{prop:covers}, if $\Cer(N)$ is non-trivial, then $\Cer(kN)$ is non-trivial. Specifically, if $N$ is divisible by a prime $p$ such that $X_0(p)$ is not hyperelliptic, then $\Cer(N)$ is non-trivial. Moreover, Lupoian and Rawson \cite{lupraw} show that $\Cer(N)$ is non-trivial for $N = 2^6, 3^5, 5^3,7^3$ and $N = p^2$ for primes $p \in \{11,13,17,19,23,29,31,37,41,47,59,71\}$. Taking into account the above observations gives the following theorem. \begin{theorem}[{\cite[Theorem 2]{lupraw}}]\label{thm:lupraw2} There are finitely-many $N$ such that $\Cer(N)$ is trivial. In particular, if $$N > 2^5 \times 3^4 \times 5^2 \times 7^2 \times \prod_{\substack{11 \leq p \leq 71 \\ p \notin \{43,53,61,67\}}} p,$$ then $\Cer(N)$ is non-trivial. %Additionally, $\Cer(2^6)$, $\Cer(3^5)$, $\Cer(5^3)$, and $\Cer(7^3)$ are non-trivial, and for $11 \leq p \leq 71$, $\Cer(p^2)$ is non-trivial. \end{theorem} \subsection{Shadows of Hecke Operators} In order to prove \Cref{thm:lupraw1}, Lupoian and Rawson use an idea of \cite{ellenberg}, which consists of constructing new cycles, called \textit{shadows}, out of $\Gamma^3(C,e)$ and certain endomorphisms of $\Jac(C)$. We note that to an endomorphism $\phi$ of $\Jac(C)$ we can associate a correspondence $G_\phi$ on $C$ (see \cite[Theorem 3.9]{sholl}). \begin{definition}\label{def:shadow} Let $\phi$ be a non-trivial endomorphism of $\Jac(C)$, and let $G_{\phi}\in \CH_1(C^2)$ be the associated correspondence. We define the \emph{shadow} of $\phi$ to be $$\Sh(\phi) := \pr_{3,*}(\Gamma^3(C,e) \cdot \pr^*_{12}G_\phi)\in\CH_0(C)_{\mathbb{Z}}=\Jac(C)(K).$$ \end{definition} In the above, we view $\Gamma^3(C,e)$ as a correspondence $C^2 \dashrightarrow C$. The main point of this construction is that if we can show that the shadow has infinite order, this directly implies that $\Gamma^3(C,e)$ has infinite order, implying that $\Cer(C,e)$ is non-trivial by \Cref{thm:zhang}. Luckily, $J_0(N)$ has many endomorphisms we can exploit, including the Atkin--Lehner involution $w_d$ for $d \mid N$ coprime to $N/d$ and the Hecke operator $T_\ell$ for $\ell \nmid N$. The shadows of these endomorphisms can be explicitly written, making the check for the non-torsionality of $\Sh(w_d)$ and $\Sh(T_\ell)$ explicit as well. The following lemmas provide a more concrete description of the shadows of the Hecke operators mentioned above. We recall that $K_{X_0(N)}$ is a representative of the canonical divisor class of $X_0(N)$. \begin{lemma}[{\cite[p. 7]{lupraw}}]\label{lem:shadowofw} For $d \mid N$ such that $d$ is coprime to $N/d$, $$\Sh(w_d) = (2g-2)F_{w_d} - \deg(F_{w_d})K_{X_0(N)},$$ where $g$ is the genus of $X_0(N)$ and $F_{w_d}$ denotes the fixed point divisor of $w_d$. \end{lemma} \begin{lemma}[{\cite[p. 8]{lupraw}}]\label{lem:shadowTl} For a prime $\ell \nmid N$, $$\Sh(T_\ell) = (2g-2) F_{T_\ell} - \deg(F_{T_\ell})K_{X_0(N)} - 2T_\ell(K_{X_0(N)}) + 2(\ell + 1)K_{X_0(N)},$$ for $g$ the genus of $X_0(N)$ and $F_{T_\ell}$ denoting the fixed point divisor of $T_\ell$. \end{lemma} \begin{lemma}[{\cite[Proposition 16]{lupraw}}]\label{thm:fixedpointdivTl} The points in the support of the fixed point divisor $F_{T_\ell}$ of $T_\ell$ are precisely \begin{itemize} \item cusps, which have multiplicity $2$; or \item CM elliptic curves with endomorphism ring $\mathcal O$ containing an element of norm $\ell$ and an ideal $I$ such that $\mathcal O/I$ is cyclic of order $N$, whose multiplicity are the number of prime ideals above $\ell$ in $\mathcal O$. \end{itemize} \end{lemma} The final note is that $K_{X_0(N)}$ can also be explicitly computed. In order to do this, we introduce some notation as in \cite{lupraw}. \begin{notation} Let $d \geq 1$ be an integer. We write $D_d$ for the effective divisor on $X_0(N)$ supported on CM points corresponding to an order with discriminant $-d$ and multiplicity 1. If no such points exists, then we take $D_d = 0$. \end{notation} \begin{proposition}[{\cite[Proposition 12]{lupraw}}]\label{prop:canonical} For any integer $N$, the canonical divisor of $X_0(N)$ satisfies $$6K_{X_0(N)} = (P-6D) - 4D_3 - 3D_4,$$ where $P$ and $D$ are divisors supported on cusps, with components of the support of $P$ having multiplicity equal to the cusp weight of the corresponding cusp and components of the support of $D$ having multiplicity $1$. \end{proposition} \section{The Explicit Model Method}\label{sec:emm} In order to prove \Cref{thm:result1}, we will use the method outlined in \cite[Section 6.2]{lupraw}. We shall refer to this method as the \textit{Explicit Model Method}. In particular, as in \cite{lupraw}, we exploit and extend the work of \cite{galbraith} to compute an explicit model of $X_0(N)$ inside $\P^{g-1}_\C$, where $g$ is the genus of $X_0(N)$. From there, the idea is to reduce the model modulo certain primes $p_i$ and use the following theorem, the argument adapted from \cite[Section 6.2]{lupraw}. \begin{theorem}\label{thm:shadowinfiniteorder} Let $\phi$ be a non-trivial automorphism of $J_0(N)$. Let $p_1,p_2$ be distinct odd primes coprime to $N$. If $$\textnormal{ord}(\Sh(\phi)_{\F_{p_1}}) \neq \textnormal{ord}(\Sh(\phi)_{\F_{p_2}}),$$ then $\Sh(\phi)$ is of infinite order in $J_0(N)( \mathbb{Q})$. \end{theorem} \begin{proof} Suppose for the sake of contradiction that $\Sh(\phi)$ is torsion in $J_0(N)(\Q)$. By \cite[Appendix]{katz}, if $q$ is a prime of good reduction, then the reduction map $$\Phi_q : J_0(N)(\Q)_{\mathrm{tors}} \longto \mathcal J(\F_q),$$ where $\mathcal J$ denotes the special fiber of the N\'eron model of $J_0(N)$, is injective on prime-to-$q$ points. Since $p_1,p_2$ are coprime to $N$, they are of good reduction, and so $\Phi_{p_1}$ and $\Phi_{p_2}$ are injective. But then the order of $\Sh(\phi)$ is invariant under these maps, giving $\ord(\Sh(\phi)_{\F_{p_1}}) = \ord(\Sh(\phi)_{\F_{p_2}})$, which is a contradiction. \end{proof} \subsection*{\emph{Method Overview}} We now explain how the Explicit Model Method works, whose \texttt{Magma} implementation is explained as pseudo-code in \Cref{alg:EMM1} and \Cref{alg:EMM2}. The general theory and code behind this method is from \cite{lupraw}, with the core update being our generalization of the theory and code to test more cases. We implement this method into \texttt{Magma} as the function \texttt{EMM()}, which can be understood as having two goals: computing the shadow of $w_N$ and finding its order after base-changing over $\F_p$ for odd prime $p \nmid N$. The latter goal can be completed quickly in \texttt{Magma}. For the former, recall that the shadow of $w_N$ can be written as $$\Sh(w_N) = (2g-2)F_{w_N} - \deg(F_{w_N})K_{X_0(N)}.$$ Although \texttt{Magma} already has built-in functions to compute the canonical divisor $K_{X_0(N)}$, it cannot automatically compute the fixed point divisor $F_{w_N}$. To do this, we construct the canonical curve of $X_0(N)$ in $\P^{g-1}_{\C}$ from a $w_N$-invariant and anti-invariant basis of the space $S_2(N)$ of weight-$2$ holomorphic modular forms. Then we can easily determine which points on the canonical curve are fixed by $w_N$. We shall briefly discuss the construction and structure of the canonical curve of $X_0(N)$. We can identify $S_2(N)$ with the $\C$-vector space $\Omega_\text{hol}^1(X_0(N))$ of holomorphic $1$-forms on $X_0(N)$ via the map $f \mapsto fdz$. Given a basis $(f_1,\dots,f_g)$ for $S_2(N)$, the canonical map is then defined as \begin{align*} \Psi \colon X_0(N) &\longto \P_{\C}^{g-1}\\ \tau &\longmapsto [f_1(\tau) : \dots : f_g(\tau)]. \end{align*} We record the following lemma which ensures $\Psi$ is an embedding. Note that this is not specific to modular curves, and is a general result. \begin{lemma} \textnormal{\cite[Lemma 8]{galbraith}} If $X_0(N)$ is of genus $\ge 3$ and is not hyperelliptic, then $\Psi$ is injective. \end{lemma} As all levels of $X_0(N)$ we consider are not hyperelliptic nor have genus less than $3$, $\Psi$ will be an embedding. We also note that $\Psi(X_0(N))$ will generally have a nice structure as illustrated by the following theorem, which is also not specific to modular curves (see \textnormal{\cite[Theorem 3.1]{annietal}}). \begin{theorem}[Noether--Enriques--Petri Theorem]\label{thm:petri} For a non-hypellptic $X_0(N)$, the homogenous ideal defining $\Psi(X_0(N))$ in $\P_\C^{g-1}$ is generated by quadrics unless \begin{itemize} \item $g=3$, in which case $\Psi(X_0(N))$ is a smooth plane quartic; \item $g \ge 4$ and $X_0(N)$ is a trigonal curve; or \item $g = 6$ and $X_0(N)$ is a smooth plane quintic. \end{itemize} In particular, the ideal of $\Psi(X_0(N))$ is generated by monomials of degree $4$ at most. \end{theorem} In the case of $X_0(N)$, no level with genus $6$ admits a canonical model that is a smooth plane quintic (see \cite[Section 5.3]{annietal}), so we only need to consider the first two bullet points. Additionally, by \cite[Theorem 3.3]{shimura}, trigonal $X_0(N)$ only appear when $g=3,4$. We use the Noether--Enriques--Petri Theorem to expand the Explicit Model Method to test more cases that Lupoian--Rawson did not, like $N = 45,54,81$, all of which are trigonal. \subsection*{\emph{Defining the Canonical Model of $X_0(N)_{\F_p}$ in $\P^{g-1}_{\F_p}$}} We first explain how to compute $\Psi(X_0(N))$ in $\P^{g-1}_\C$. We use the method described by \cite[Section 3.1-3.2]{galbraith} and implemented in \cite[Section 6.2]{lupraw}. As we want to do computations with modular forms, we make use of the following theorem, which states that it suffices to take the $q$-expansion of forms of weight $k$ to length $m$, the Sturm bound of $S_k(N)$ (in practice, we take $m$ slightly bigger for extra computational flexibility). \begin{theorem}[Sturm's Theorem {\cite[Corollary 9.19]{stein_modular_forms}}] Let $f$ and $g$ be modular forms in $S_k(N)$, and define the \emph{Sturm bound} to be the integer $$m := \left\lfloor \frac{k\cdot \textnormal{ind}}{12} - \frac{\textnormal{ind}-1}{N} \right\rfloor,$$ where $\mathrm{ind} = [\SL_2(\Z) : \Gamma_0(N)]$. Writing $f = \sum_{n \geq 1}a_nq^n$ and $g = \sum_{n \geq 1} b_nq^n$, if $a_n = b_n$ for all $n \leq m$, then $f = g$. \end{theorem} Take a basis $\mathcal B = (f_1,\dots,f_g)$ of the $\C$-vector space $S_2(N)$ consisting of modular forms with integral $q$-expansions and that are $w_N$-eigenforms. By computing all monomials $f_1^{i_1}\cdots f_g^{i_g}$ of degree $d$ for some $d \in \Z$, we form a set $\{g_1,\dots,g_{M_d}\}$ of cusp forms in $S_{2d}(N)$. We then construct a $(m \times M_d)$-matrix $K_d$ whose $(i,j)$-entry is the $i$th coefficient of the $q$-expansion of $g_j$, and compute a basis for $\ker K_d$. We interpret this basis of $\ker K_d$ as coefficients on the degree-$d$ monomials in the basis $\mathcal{B}$, producing a set of homogeneous degree-$d$ polynomials $Q_d \subset \Q[x_1,\dots,x_g]$ that generate the ideal defining $\Psi(X_0(N))$ in $\P_\C^{g-1}$. We view $Q_d \subset \Z[x_1,\dots,x_g]$ by clearing denominators. Note that in light of the Noether--Enrique--Petri Theorem, we only need to find at most $Q_2$ and $Q_3$, as quadrics are generated by degree-2 monomials and cubics by degree-3 monomials. For this reason, we take the Sturm bound for weight $6$. To find the curve $\Psi(X_0(N))_{\F_p}$ in $\P^{g-1}_{\F_p}$, we first compute $Q_2$ and $Q_3$ as above and reduce modulo $p$ to obtain $Q_2,Q_3 \subset \F_p[x_1,\dots,x_g]$. Applying the \texttt{Scheme()} function to $Q_2$, if the dimension of \texttt{Scheme($Q_2,\P$)} is 1, then $\Psi(X_0(N))_{\F_p} = \texttt{Scheme($Q_2,\P$)}$. If the dimension is more than 1, then $X_0(N)$ is trigonal or isomorphic to a plane quintic, and so we take $$\Psi(X_0(N))_{\F_p} = \texttt{Scheme($Q_2,\P$)} \cap \texttt{Scheme($Q_3,\P$)}.$$ This computation is reflected in \Cref{alg:EMM1}. This part of the \texttt{EMM()} function differs from \cite{lupraw} in that we calculate $Q_2,Q_3$ rather than just $Q_2$, which worked for the cases they considered. \begin{algorithm}[h!] \caption{\texttt{EMM()}} \label{alg:EMM1} \begin{algorithmic}[1] \Require Level $N$, prime $p \nmid N$ \State $g \gets$ genus of $X_0(N)$ \State $m \gets$ Sturm bound on weight-$6$ cusp forms at level $N$ (plus $10$) \State $\mathcal B = \mathcal B_{+1} \cup \mathcal B_{-1} \gets$ $q$-expanded to precision-$m$ basis for $S_2(N)$, invariant or anti-invariant under $w_N$ \Comment{We compute $\mathcal B_{+1},\mathcal B_{-1}$ using \texttt{ALBasis()}} % \If{$\mathcal B_{+1} = \emptyset$ or $\mathcal B_{-1} = \emptyset$} % \State \Return FAIL % \EndIf \State \For{$d \in \{2,3,4\}$} \State $M_d \gets$ number of monomials of degree-$d$ in $\Q[x_1,\dots,x_g]$ \State $V_d \gets \Q^{M_d}$ with basis as monomials of degree-$d$ in $\Q[x_1,\dots,x_g]$ \State $W_d \gets \Q^m$ \State $h_d \gets$ $\Q$-linear map $V_d \to W_d$ taking a form to its $q$-expansion vector \State $K_d \gets$ basis for $\ker(h)$ \State $Q_d \subset \Z[x_1,\dots,x_g] \gets$ view elements of $K_d$ in the monomial basis \State $Q'_d \subset \F_p[x_1,\dots,x_g] \gets$ reduce elements in $Q_d$ modulo $p$ \State $C_d = \texttt{Scheme(}Q_d',\P\texttt{)}$ \EndFor \State \If{Dimension($C_2$) = 1} \State \Return $\Psi(X_0(N))_{\F_p} = C_2$ \Else \State Intersect $C_2$ with $C_3$ (and $C_4$ if Dimension($C_2 \cap C_3) > 1$). \State \Return $\Psi(X_0(N))_{\F_p} = C_2 \cap C_3$ (or $\Psi(X_0(N))_{\F_p} = C_2 \cap C_3 \cap C_4$) \EndIf \end{algorithmic} \end{algorithm} \subsection*{\emph{Action of $w_N$ on the Canonical Model of $X_0(N)$}} We now describe the fixed points on $\Psi(X_0(N))_{\F_p}$ under the action of $w_N$. Since we defined the canonical curve using coordinates from the basis $\mathcal B$ of $S_2(N)$, the action of $w_N$ on $\Psi(X_0(N))_{\F_p}$ is $$[x_1 : \dots : x_{n_+} : y_1 : \dots : y_{n_-}] \mapsto [x_1 : \dots : x_{n_+} : -y_1 : \dots : -y_{n_-}],$$ for $n_+,n_-$ as in \Cref{alg:EMM2}. Thus, a point on $\Psi(X_0(N))_{\F_p}$ is fixed by $w_N$ if and only if all $x_i = 0$ or all $y_j = 0$. To implement this into our code, we find the ideals where the first $n_+$-coordinates and last $n_-$-coordinates vanish. This is reflected in \Cref{alg:EMM2}. By computing the corresponding effective divisors and taking the sum of the divisors, we get $F_{w_N}$. \begin{algorithm}[h!] \caption{\texttt{EMM()} (continued)} \label{alg:EMM2} \begin{algorithmic}[1] \State $n_+ \gets$ size of $\mathcal B_{+1}$ \State $n_- \gets$ size of $\mathcal B_{-1}$ \State $I_1 \gets$ ideal generated by first $n_+$ coordinates \State $D_1 \gets$ integral, effective divisor of $I_1$ in $\text{Div}(C)$ \State $I_2 \gets$ ideal generated by last $n_-$ coordinates \State $D_2 \gets$ integral, effective divisor of $I_2$ in $\text{Div}(C)$ \State $D = D_1 + D_2$ \end{algorithmic} \end{algorithm} The code for this section differs from \cite{lupraw} in that we automate the construction of each ideal. In \cite{lupraw}, $n_+$ and $n_-$ were computed elsewhere and inputted by hand, which meant that each integer tested against had its own code block. Our code uses the computation of $\mathcal B$ to automatically define each ideal. Note that for each ideal to be defined, we need the additional condition that there are $+1$ and $-1$-eigenvectors of $w_N$. \subsection*{\emph{Computing the Order of $\Sh(w_N)$}} As \texttt{Magma} has the capability to compute a canonical divisor $K_{X_0(N)}$ of $\Phi(X_0(N))_{\F_p}$ and the group homomorphism $\psi : \text{Div}(\Phi(X_0(N)_{\F_p}) \to \Pic(\Phi(X_0(N)_{\F_p})$, we can now implement the \texttt{Order()} function to find the order of $\Sh(w_N)_{\F_p}$. For computational ease, we find the order of $(1/2)\Sh(w_N)_{\F_p}$.\\ The successful levels are listed in \Cref{tab:result1}, with the corresponding witness primes $p_i$ used and orders of $\Sh(w_N)_{\F_{p_i}}$. \begin{table}[htbp] \centering \small \setlength{\tabcolsep}{4pt} % % ---------- Left half ---------- \begin{tabular}{|c|c|c|} \hline $N = \prod p_i$ & $g(X_0(N))$ & witness $p_i$'s \& orders $o_i$\\ \hline \hline $57 = 3 \times 19$ & $5$ & \wit{5}{9}{7}{13}\\ \hline $58 = 2 \times 29$ & $6$ & \wit{5}{9}{7}{10}\\ \hline $77 = 7 \times 11$ & $7$ & \wit{5}{7}{13}{3}\\ \hline $82 = 2 \times 41$ & $9$ & \wit{5}{4}{7}{12}\\ \hline $85 = 5 \times 17$ & $7$ & \wit{7}{49}{11}{127}\\ \hline $88 = 2^3 \times 11$ & $9$ & \wit{5}{3}{7}{5}\\ \hline $91 = 7 \times 13$ & $7$ & \wit{5}{9}{11}{3}\\ \hline $93 = 3 \times 31$ & $9$ & \wit{5}{59}{7}{19}\\ \hline $111 = 3 \times 37$ & $11$ & \wit{5}{4}{7}{9}\\ \hline $112 = 2^4 \times 7$ & $11$ & \wit{5}{1}{11}{3}\\ \hline \end{tabular} \hfill % ---------- Right half ---------- \begin{tabular}{|c|c|c|} \hline $N = \prod p_i$ & $g(X_0(N))$ & witness $p_i$'s \& orders $o_i$\\ \hline \hline $115 = 5 \times 23$ & $11$ & \wit{7}{19}{11}{41}\\ \hline $123 = 3 \times 41$ & $13$ & \wit{5}{2}{7}{1}\\ \hline $133 = 7 \times 19$ & $11$ & \wit{5}{31}{11}{271}\\ \hline $135 = 3^3 \times 5$ & $13$ & \wit{7}{11}{11}{7}\\ \hline $141 = 3 \times 47$ & $15$ & \wit{5}{1}{7}{11}\\ \hline $143 = 11 \times 13$ & $13$ & \wit{5}{7}{7}{5}\\ \hline $145 = 5 \times 29$ & $13$ & \wit{7}{5}{11}{9}\\ \hline $147 = 3 \times 7^2$ & $11$ & \wit{5}{31}{11}{7}\\ \hline $155 = 5 \times 31$ & $15$ & \wit{7}{4}{11}{8}\\ \hline $161 = 7 \times 23$ & $15$ & \wit{5}{11}{11}{31}\\ \hline \end{tabular} \caption{Results of the Explicit Model Method} \label{tab:result1} \end{table} \subsection{An Example} To illustrate of this method, we will discuss an explicit example of what the output of \texttt{EMM(58,5)} looks like. As the Sturm bound of $X_0(58)$ for weight $6$ is $45$, we first compute a basis for $S_2(N)$ of $q$-expansions with length $45+10=55$, which has $6$ elements. Following the algorithm, we have that $Q_2 \subseteq \Z[x_1,\dots,x_6]$ is defined by the polynomials \[\begin{cases} x_1^2 + 3x_2x_3 + 3x_3^2 + 4x_4^2 + 3x_4x_6 + 2x_5^2 + 2x_5x_6\\ x_1x_2 + 4x_2x_3 + 2x_3^2 + 4x_4x_5 + 3x_4x_6 + 2x_5^2 + x_6^2\\ x_1x_3 + 2x_2x_3 + x_3^2 + 4x_4x_6 + 3x_6^2\\ x_1x_5 + 4x_2x_4 + x_2x_5 + x_2x_6 + 4x_3x_4 + 3x_3x_6\\ x_1x_6 + 4x_2x_6 + 4x_3x_4 + 4x_3x_5 + 3x_3x_6\\ x_2^2 + 3x_3^2 + 2x_4x_6 + 2x_5^2 + 2x_5x_6+ 4x_6^2. \end{cases}\] We find that the order of the shadow of $\Phi(X_0(58))_{\F_5}$ is $9$. Although the canonical curve of $X_0(58)$ is generated by quadrics, there are some trigonal cases we tested as well. For example, $\Phi(X_0(44))$ in $\P^3_\C$ has genus $4$, is trigonal, and is generated by quadrics and cubics. In particular, $\Phi(X_0(44))$ is generated by the polynomials $$\begin{cases} x_1^3+4x_1x_2^2+4x_1x_2x_3+x_1x_2x_4+2x_1x_3^2+x_1x_3x_4+4x_1x_4^2\\ x_1^2x_2 + 4x_2^3 + 4x_2^2x_3 + 3x_2x_3^2 + 4x_2x_3x_4 + x_3^3 + 4x_3^2x_4\\ x_1^2x_3 + 4x_2^2x_3 + 4x_2x_3^2 + x_2x_3x_4 + 2x_3^3 + x_3^2x_4 + 4x_3x_4^2\\ x_1^2x_4 + 4x_2x_3^2 + x_2x_3x_4 + 4x_3^3 + 3x_3^2x_4 + x_3x_4^2 + 4x_4^3\\ x_2^2x_4 + 4x_2x_3^2 + 2x_2x_3x_4 + 4x_2x_4^2 + 4x_3^3 + x_3^2x_4\\ x_1^2 + 4x_2^2 + 4x_2x_3 + x_2x_4 + 2x_3^2 + x_3x_4 + 4x_4^2. \end{cases}$$ We note that \cite{galbraith} also writes the polynomials defining $\Psi(X_0(58))$ and $\Psi(X_0(44))$. The above equations define curves isomorphic to the ones \cite{galbraith} defines. \subsection{Limitations of the Explicit Model Method}\label{sec:limits6.2} We now briefly discuss some considerations for the computational efficiency of the Explicit Model Method. First, the efficiency of this method depends on the genus of $X_0(N)$ chosen. Because we are working with bases of $S_2(N)$, whose size is equal to the genus of $X_0(N)$, higher genera cases take longer to compute. Low-genus cases can take a few seconds to compute, while some higher-genus cases took more than $12$ hours.\footnote{ We ran this on a single node with an AMD EPYC 9755 processor containing $256$ cores and $1.5$ TB of RAM. We only used one core and allocated $6$ GB. } Due to this, we found that a genus of at most $16$ was a reasonable genus limit to test this method on. On the other hand, lower genera cases were also problematic, as the Explicit Model Method was not decisive on those cases. The lowest genus of a new case we found was $5$. Additionally, the efficiency also depends on the primes we test against. We reduce modulo odd primes coprime to the level, and for larger primes, like 11 and 13, this can make computations take much longer. For $N = 105$, just \texttt{EMM(105,11)} took well over 120 minutes to compute. Running $N = 105$ against 11 and 13 did make a difference: for $N = 123,143,144$, $X_0(N)$ is genus $13$, and when run against 5 and 7, took a combined total of $21$ minutes. For higher genera cases, it may still be efficient to use this method, granted that the case's level is coprime to 5 and 7. As a final note, although $X_0(N)$ has good reduction outside primes dividing $N$, its explicit canonical model $\Psi(X_0(N))$ might have bad reduction at some additional primes. We refer to \cite[Section 2.4]{adzaga_et_al} for an algorithm that tests whether $\Psi(X_0(N))$ has good reduction at a fixed prime $p$ not dividing $N$. In particular, we did not test against $p=3$ when possible. As in \cite{galbraith}, we found that in some cases, base-changing the canonical model over $\F_3$ often created singular points. Filtering $p=3$ out of the check resolved this issue; in fact $X_0(112)$ had singularities after base-changing over $\F_3$, but gave a non-trivial Ceresa cycle. \section{Computing the shadow of $T_\ell$} As seen in \Cref{sec:emm}, \cite{lupraw}, \cite{ellenberg}, and \cite{grube_2026}, computing shadows of endomorphisms of $J_0(N)$ can be very useful in understanding the non-triviality of $\Cer(N)$. We will briefly discuss an algorithm for computing the shadow of the Hecke operator $T_\ell$ for odd primes $\ell \nmid N$, given some mild conditions on $T_\ell$. We also briefly describe a potential strategy for using $\Sh(T_\ell)$ to show $\Cer(N)$ is non-trivial. Recall from \Cref{lem:shadowTl}, for prime $\ell \nmid N$, $$\Sh(T_\ell) = (2g-2) F_{T_\ell} - \deg(F_{T_\ell})K_{X_0(N)} - 2T_\ell(K_{X_0(N)}) + 2(\ell + 1)K_{X_0(N)}.$$ Generally, it is difficult to compute $T_\ell(K_{X_0(N)})$ as it is necessary to determine the action of $T_\ell$ on CM curves of a fixed discriminant. We avoid this difficulty by instead ensuring that we select a representative $K_{X_0(N)}$ of the canonical class of $X_0(N)$ that is only supported on cusps. For this to hold, we need that $D_3 = D_4 = 0$, i.e., there are no CM points with discriminants $-3$ or $-4$ on $X_0(N)$. Fortunately, this is a common-enough property, as for $701$ integers less than $1000$ this property holds. Since $T_\ell$ is linear and takes cusps to cusps and non-cusps to non-cusps, we can be sure that if $K_{X_0(N)}$ is only supported on cusps, then $T_\ell(K_{X_0(N)})$ is only supported on cusps as well. Hence, we will assume that $K_{X_0(N)}$ is only supported on cusps. \begin{notation} In the algorithms in this section, we express divisors associated to a point $Q$ on $X_0(N)$ as $\langle Q,m \rangle$ where $m$ is the multiplicity. \end{notation} To compute the canonical divisor $K_{X_0(N)}$, we use \Cref{prop:canonical}. We describe the algorithm for computing this in \Cref{alg:HM1}. \begin{algorithm}[h!] \caption{\texttt{ShadowTn()} ($K_{X_0(N)}$ part)} \label{alg:HM1} \begin{algorithmic}[1] \Require $N$ integer, $\ell \nmid N$ prime \State $C$ $\gets$ list of cusp forms of $X_0(N)$ \Comment{Computable by \texttt{Cusps()} function.} \State $E \gets$ list of elliptic points of $X_0(N)$ \Comment{Computable by \texttt{EllipticPoints()} function.} \State \State Initialize $K_{\text{cusps}}$ to the empty list $[]$. \State \textbf{for} $c$ in $C$ do \begin{enumerate} \item[(a)] Compute the weight $w$ of the cusp form $c$. \item[(b)] Append $\langle c,w-6\rangle$ to $K_{\text{cusps}}$. \end{enumerate} \State Initialize $D_3$ and $D_4$ to the empty list $[]$. \State \textbf{for} $e$ in $E$ do \begin{enumerate} \item[(a)] Let $\tilde e$ be the exact value $e$ takes in its quadratic imaginary field $K$. \item[(b)] Let $\Delta = \text{disc}(f)$ for $f \in \Z[x]$ the minimal polynomial of the field extension $K/\Q$. \item[(c)] If $\Delta = -3$ then append $\langle e,-4 \rangle$ to $D_3$. If $\Delta = -4$ then append $\langle e,-3 \rangle$ to $D_4$. \end{enumerate} \State \State \Return $K_{X_0(N)} = K_{\text{cusps}} + D_3 + D_4$ \end{algorithmic} \end{algorithm} Next, we compute $F_{T_\ell}$. By \Cref{thm:fixedpointdivTl}, this requires computing the cusps of $X_0(N)$ and certain CM points on $X_0(N)$. Thankfully, finding such CM points boils down to finding discriminants of orders. \begin{proposition} Let $\mathcal O$ be an order of an imaginary quadratic field with discriminant $d$ and let $\ell \nmid d$ be an odd prime. Then $\ell$ is the norm of a principal $\mathcal O$-ideal if and only if $4\ell = t^2-v^2d$ for some $t,v \in \Z$ such that $t \neq 0 \mod \ell$. \end{proposition} \begin{proof} See \cite[Theorem 21.5]{lecturenotes} for a nice proof of this result. \end{proof} Hence, an odd prime $\ell$ is the norm of a principal $\mathcal O$-ideal if and only if $d$ is an integral solution to the norm equation and can be a discriminant of a quadratic imaginary field, i.e., $d \equiv 0,1 \mod 4$. Unfortunately, not every discriminant we find will correspond to an order with a corresponding ideal. However, this condition is equivalent to a computable condition. \begin{proposition} The set of Heegner points is non-empty if and only if there exists an order $\mathcal O$ of an imaginary quadratic field and an ideal $I \subseteq \mathcal O$ such that $\mathcal O / I \iso \Z/N\Z$. \end{proposition} \begin{proof} See \cite{sheth_2021} for a nice proof of this result. \end{proof} As Heegner points on $X_0(N)$ are CM points corresponding to an order with discriminant $d$ satisfying $d \equiv x^2 \mod 4N$, we must test this condition on the discriminants we found. We describe the algorithm for computing $F_{T_\ell}$ in \Cref{alg:HM2}. \begin{algorithm}[h!] \caption{\texttt{ShadowTn()} ($F_{T_\ell}$ part)} \label{alg:HM2} \begin{algorithmic}[1] \Require $N$ integer, $\ell \nmid N$ odd prime \State candidates $= \{-d \in [-4\ell,-1] \cap \Z : 4\ell = t^2+v^2d \text{ $\exists v,t \in \Z$ with $t \not\equiv 0 \mod \ell$ and } -d \equiv 0,1 \mod 4 \}$ \State \State Initialize $D_\infty$ to the empty list $[]$. \State \textbf{for} $c$ in $C$ as in \Cref{alg:HM1} do \begin{enumerate} \item[(a)] Append $\langle c,2 \rangle$ to $D_\infty$. \end{enumerate} \State \State Initialize $D$ to the empty list $[]$. \State \textbf{for} $-d$ in candidates do \begin{enumerate} \item[(a)] If $-d \equiv x^2 \mod 4\ell$ and there exist Heegner points of $X_0(N)$ with discriminant $-d$, then append $F_{T_\ell}$ with $\langle -d,m \rangle$, where $m = 1 + \begin{pmatrix} -d\\ \ell \end{pmatrix}$. \end{enumerate} \State \Return $F_{T_\ell} = D_\infty + D$ \end{algorithmic} \end{algorithm} \noindent To find the full shadow $\Sh(T_\ell)$, we scale and add $K_{X_0(N)}$ and $F_{T_\ell}$ as in \Cref{lem:shadowTl}. We now briefly describe a potential method for determining the non-triviality of $\Cer(N)$ using this algorithm for $\Sh(T_\ell)$, suggested by Mohamed Moakher. The idea is to explicitly write the coordinates of the image of CM points in the support of $\Sh(T_\ell)$ under $\Psi$, defining the canonical curve of $X_0(N)$ and allowing us to reuse parts of the Explicit Model Method. For $D_d$ in the support of $F_{T_\ell}$, let $\tau_d \in D_d$ be a CM point of discriminant $-d$. Generally, we will have for some basis $(f_1dz,\dots,f_gdz)$ of $\Omega_\text{hol}^1(X_0(N))$ with $f_g(\tau_d) \neq 0$, $\Psi$ will send $$\Psi(\tau_d) = [f_1(\tau_d) : \dots : f_g(\tau_d)] = \left[\dfrac{f_1}{f_g}(\tau_d) : \dots : \dfrac{f_{g-1}}{f_g}(\tau_d) : 1\right].$$ In particular, each $(f_i/f_g)(\tau_d)$ is a weight-$0$ modular form of level $\Gamma_0(N)$ and a rational function in $j(z)$ and $j(Nz)$, for local coordinate $z$. Such functions can be computed, as in \cite[Section 2.3]{adzaga_et_al} and \cite[Section 3]{ozman}. For the elliptic curve $E_d$ corresponding to $\tau_d$, we can compute its Weierstrass equation, which allows us to compute $j(E_d)$ in \texttt{Magma}. So, we can explicitly determine $\Psi(\tau_d)$. Since each $\tau_d$ is in the support of $F_{T_\ell}$, finding the image of each $\tau_d$ will give us the points on $\Psi(X_0(N))$ that are fixed by $T_\ell$, and as in the Explicit Model Method, we can find $\Sh(T_\ell)_{\F_p}$. \bibliographystyle{alpha} \bibliography{bib.bib} \vspace{0.4 in} \noindent \small \affiliation \\ \emph{Email}: \texttt{\href{email}{\email}} \end{document}