\documentclass{beamer}
\usenavigationsymbolstemplate{}
\definecolor{dblackcolor}{rgb}{0.0,0.0,0.0}
\definecolor{dbluecolor}{rgb}{.01,.02,0.7}
\definecolor{dredcolor}{rgb}{0.6,0,0}
\definecolor{dgraycolor}{rgb}{0.30,0.3,0.30}
\definecolor{gray}{rgb}{0.6,0.6,0.6}
\newcommand{\dblue}{\color{dbluecolor}}
\newcommand{\dred}{\color{dredcolor}}
\newcommand{\dblack}{\color{dblackcolor}}
\newcommand{\dr}{\dred\bf}
\usepackage{soul}
\usepackage{listings} 
\lstdefinelanguage{Sage}[]{Python}
{morekeywords={True,False,sage,singular},
sensitive=true}
\lstset{frame=none,
          showtabs=False,
          showspaces=False,
          showstringspaces=False,
          commentstyle={\ttfamily\color{dredcolor}},
          keywordstyle={\ttfamily\color{dbluecolor}\bfseries},
          stringstyle ={\ttfamily\color{dgraycolor}\bfseries},
          language = Sage,
	  basicstyle={\scriptsize \ttfamily},
	  aboveskip=.3em,
	  belowskip=.1em
          }
\usepackage{url}
\usepackage{hyperref}
\hypersetup{colorlinks=true, urlcolor=blue}
\usepackage{comment}
\usepackage{colortbl}
\usepackage{fancybox}
\usepackage[utf8x]{inputenc}
\mode<presentation>
{
%  \usetheme{Rochester}
% \usetheme{Berkeley}
 \usetheme{PaloAlto}
 %\usecolortheme{crane}
% \usecolortheme{orchid}
 \usecolortheme{whale}
% \usecolortheme{lily}
 \setbeamercovered{transparent}
  % or whatever (possibly just delete it)
}
\usepackage{ngerman}

\DeclareFontEncoding{OT2}{}{} % to enable usage of cyrillic fonts
  \newcommand{\textcyr}[1]{%
    {\fontencoding{OT2}\fontfamily{wncyr}\fontseries{m}\fontshape{n}%
     \selectfont #1}}
\newcommand{\Sha}{{\mbox{\textcyr{Sh}}}}

\newcommand{\Q}{\mathbf{Q}}
\DeclareMathOperator{\ord}{ord}
\DeclareMathOperator{\rank}{rank}
\DeclareMathOperator{\Reg}{Reg}
\DeclareMathOperator{\tor}{tor}
\newtheorem{conjecture}[theorem]{Conjecture}

\title{Elliptic Curves in Sage}
\date{October 19 at ECC 2010\vspace{1em}\\
\includegraphics[width=\textwidth]{graphics/curves}\\
{\tiny Lowest (known) conductor elliptic curves of ranks 0,1,2,3,4}}
\author{William Stein}

%\newcommand{\todo}[1]{[[#1]]}
\newcommand{\todo}[1]{}

\begin{document}

\begin{frame}
\titlepage
\end{frame}

\begin{frame}{Abstract}

\begin{block}{Abstract}
  I will describe Sage, discuss features for elliptic curves, then
  demonstrate some of them.
\end{block}

\vfill
\begin{center}
\includegraphics[width=.4\textwidth]{graphics/389a-char0}
\hspace{3em}
\includegraphics[width=.4\textwidth]{graphics/389a-mod2011}
\end{center}
\vfill
\end{frame}

\section{Sage Project}

\begin{frame}{What is Sage? \hfill\includegraphics[height=2em]{graphics/sage_logo_new}}

\begin{block}{Sage}
\begin{itemize}
\item Project I started in early 2005
\item Free open source software for {\em all} mathematics: number theory,
  graph theory, combinatorics, algebra, cryptography, applied
  math, statistics, symbolic calculus, ...
\item Web site: \url{http://sagemath.org/}
\item Hundreds of contributors
\item Thousands of users
\item Graphical user interface (web-browser based)
\item Peer reviewed code
\item Main user language: Python
\end{itemize}
\end{block}
\end{frame}

\begin{frame}{Who Funds Sage?}

The Sage project has received strong encouragement through funding, which has
made it possible to support many people and run nearly {\em 30 Sage Days workshops}.

\vfill
\begin{block}{Funding}

\begin{itemize}
\item {\dr Companies:} Microsoft Research, Google, etc.
\item {\dr Government:} DOD, NSF -- three new DOD/NSF grants in place for next few years
\item {\dr Institutes:} MSRI, CMI, IPAM, IMA, AIM, etc. Europe...
\item {\dr People:} Justin Walker, and many, many others
\end{itemize}
\end{block}
\vfill

Example: Justin Walker and Microsoft Research are jointly funding
``Sage Days 26: Women in Sage'' this December.
\end{frame}


\begin{frame}{Who Contributes Code to Sage?}
\scriptsize 
Rotating release managers, etc.
Sage is structured a bit like a research journal, {\em but is totally free to everybody}
unlike vast majority of journals. 
\begin{block}{Contributors to Sage}
\includegraphics[width=.9\textwidth]{graphics/sagedevs}
\end{block}
\end{frame}


\section{Functionality}

\begin{frame}{Standard Elliptic Curves Capabilities of Sage}
\vfill
\begin{block}{What Does it mean to say ``Sage Can Do X''?}
\begin{itemize}
\item   I am only discussing {\em standard functionality}, that is,
  functionality included in every copy of Sage.

\item There are additional things Sage can do when
  coupled with all code out there that isn't yet included standard in
  Sage. (The referee and inclusion process can take a while.)
Example:
{\scriptsize\url{http://trac.sagemath.org/sage_trac/ticket/10026}}

\item Elliptic curves reference manual:\\
{\small \url{http://sagemath.org/doc/reference/plane_curves.html}}
\end{itemize}
\end{block}
\vfill
\end{frame}

\begin{frame}{The Birch and Swinnerton-Dyer Conjecture}

  {\scriptsize Much work on elliptic curves in Sage motivated by
    research into BSD by Robert Miller, Robert
    Bradshaw, Chris Wuthrich, John Cremona, and me.}

\begin{conjecture}[Birch and Swinnerton-Dyer]
Let $E$ be an elliptic curve over $\Q$.  Then
$$\ord_{s=1}L(E,s) = \rank(E(\Q)) = r$$
and
$$
 \frac{L^{(r)}(E,1)}{r!} = \frac{\prod c_p \cdot \Omega_E \cdot \Reg_E}{\#E(\Q)_{\tor}^2}\cdot \#\Sha(E).
$$
(Similar formula over number fields.)
\end{conjecture}

{\scriptsize {\bf Applications} (Robert Miller, Stein, Wuthrich, et al.): Verification of the full conjecture in many specific cases of curves of conductor up to 5000. (See the brand new paper by Robert Miller.)}

\end{frame}


\begin{frame}{Sage: Elliptic Curves over $\Q$}
\scriptsize
\begin{enumerate}
\item {\dr Invariants:} conductor, Tamagawa numbers, etc.
\item {\dr Mordell-Weil groups:} and point search (via Cremona's MWRANK, Simon's 2-descent), regulator.
\item {\dr $S$-integral points:} new code in Sage (Cremona, Nagel, Mardaus)
\item {\dr Complex $L$-series:} evaluation of any derivative anywhere, large-scale computation of zeros (Dokchitser, Rubinstein, Bradshaw)
\item {\dr $p$-adic $L$-functions and $p$-adic heights}: new code (Harvey, Stein, Wuthrich)
\item {\dr Shafarevich-Tate groups:} conjectural order, actual order in many cases  (Stein, Miller, Wuthrich)
\item {\dr Heegner points}: new algorithms and code (Stein, Bradshaw, Miller,
  Cremona); Kolyvagin's Euler system (Stein, Weinstein, Balakrishnan)
\item {\dr All curves of given conductor:} Cremona's programs that
  he used to make his tables are in Sage, though not ``exposed''
\item {\dr Isogeny class:} of curve (Cremona)
\item {\dr Division polynomials:} many variants (Stein, Cremona, Harvey)
\item {\dr Image of Galois:} partial information (Stein, Wuthrich, {\color{gray} Sutherland})
\item {\dr Isogenies and isomorphisms:} (Shumow, Bradshaw, Cremona)
\item {\dr Curves with same mod-5 representation:} (Rubin, Silverberg)
\item {\dr Plotting}
\end{enumerate}
\end{frame}

\begin{frame}{Sage: Elliptic Curves over Finite Fields}
\begin{block}{}
\scriptsize
\begin{enumerate}
\item {\dr Point counting:} and group structure using baby-step giant-step (Cremona)
\item {\dr Fast point counting:} for $p < 10^{7}$ (via PARI)
\item {\dr SEA algorithm:} Fast pointing counting for larger $p$ (via PARI)
\item {\dr Weil pairing}
\item {\dr Isogenies and isomorphisms:} (Shumow, Bradshaw, Cremona)
\item {\dr Mestre's method of graphs:} Supersingular $j$-invariants; the $p$-isogeny graph for small $p$. (Stein, Burhanuddin)
\item {\dr Eichler orders:} Fast enumeration of isogeny graphs with
  level $N$ structure using rational quaternion algebras. (Stein, Bober)
\item {\dr ECM:} Elliptic Curve Factorization (Zimmermann et al.)
\item {\dr Plotting}
\end{enumerate}
\end{block}
\end{frame}

\begin{frame}{Sage: Elliptic Curves over Number Fields}
\begin{block}{Functionality}
\begin{enumerate}
\item {\dr Tate's algorithm:} conductor,
  Tamagawa numbers, etc.  (Roe, Cremona)
\item {\dr Heights} of points (Bradshaw)
\item {\dr Mordell-Weil group} via algebraic descent (Denis Simon)
\item {\dr Periods and elliptic logs} for 
both real and complex embeddings (Cremona)
\end{enumerate}
\end{block}
\end{frame}

\section{Demo}

\begin{frame}{A Demo}
\begin{block}{Follow Along}
\begin{center}\url{http://demo.sagenb.org/home/pub/42/}
\end{center}
\end{block}
\end{frame}

\begin{frame}{Improving Sage's Elliptic Curves Functionality: Some Future Plans}
\scriptsize
\begin{block}{What is {\em or should be} in the pipeline}
\begin{enumerate}
\item Finding elliptic curves over {\dr totally real fields} via:
\begin{itemize}
\item \scriptsize {\dr Hilbert modular forms:} new implementations of the
  algorithms implemented by Dembele, Voight, and Donnelly in some
  expensive proprietary system.
\item {\dr Searching:} for curves with small discriminant (current work of
  Elkies)
\end{itemize}
\item {\dr 3-Descent and 4-Descent:} over $\Q$
\item {\dr Integral and $S$-integral points:} over number fields
\item {\dr $L$-function:} over number fields; evaluation, zeros
\item {\dr $L$-function:} over function fields (see recent work
  of Sal Baig and Chris Hall).
\item {\dr 2-Descent:} over function fields
\item {\dr Image of Galois:} for curves over $\Q$ (code of Drew
  Sutherland on trac now).
\item {\dr Massive tables:} e.g., \url{db.modform.org}, which is
  query-able over the Internet from Sage (by me).
\item {\dr Pairings over finite fields:} seems only Weil pairing included now.
\item {\dr Generic points:} points defined over the
  function field of the curve.
\item {\dr Models:} transforming between presentations for elliptic
  curves (Tanja Lange's student)
\end{enumerate}

\end{block}
\end{frame}





\section{Questions?}

\begin{frame}{Questions?}
\vfill
\begin{block}{}
\begin{center}
\Huge Questions?
\end{center}
\end{block}
\vfill
\end{frame}

\begin{frame}{Purple Sage: A New Project I Recently Started}
%\scriptsize
\begin{block}{About PSAGE}
\begin{itemize}

\item \url{http://purple.sagemath.org/}
\item Free open source software for {\em arithmetic geometry}.
\item Based on a more manageable subset of Sage; only support 64-bit Linux and OS X
\item {\bf NO} 100\% doctest policy; No API stability requirements;
  No Fortran or Lisp code (only C, C++, Python, Cython).
\item A quick place to get research oriented code out there so it can
  be used to inspire conjectures in arithmetic geometry.
\item An outlet for researchers, so that Sage itself can be a stable
  core without this causing too much frustration.
\end{itemize}
\end{block}
\begin{center}
\includegraphics[width=.5\textwidth]{graphics/purple_sage}
\end{center}
\end{frame}

\end{document}











%%% Local Variables: 
%%% mode: latex
%%% TeX-master: t
%%% End: 
