Este es el primero de una serie de artículos dedicados a elaborar presentaciones haciendo uso de LaTeX (más concretamente empleando la clase Beamer). Vamos a realizar un tutorial, siguiendo el que se ofrece en la “Guía de usuario de Beamer”, que está disponible en la siguiente dirección
Guía de usuario de Beamer
Además de traducir el ejemplo a nuestro idioma, partiremos la ayuda existente en varios textos, de manera que se cree una presentación básica que luego podamos ir mejorando introduciendo una serie de comandos adicionales.
Hagamos ahora un esfuerzo de abstracción y supongamos que nos transformamos en Euclides de Alejandría. Acaba de descubrir que existen infinitos números primos y desea presentar su resultado al resto de compañeros matemáticos. Como es una persona que emplea con asiduidad las nuevas tecnologías, ha decidido utilizar LaTeX para crear la presentación. Así pues, abre su editor favorito y comienza con las siguientes líneas
\documentclass{beamer}
\mode
\usepackage[spanish]{babel}
\usepackage[latin1]{inputenc}
en las que indica, en las dos primeras líneas, la clase del documento que se va a elaborar así como que estamos ante una presentación. Acto seguido, como la conferencia tendrá lugar en la Universidad de Alicante, decide cargar el paquete “babel” con la opción del idioma de nuestro país, así como una tabla de caracteres adecuada.
A continuación, Euclides decide colocar en el preámbulo del documento los datos referentes al autor (incluso con su dirección de correo electrónico), título y fecha de la conferencia, con lo que encontramos los comandos:
\title{Existencia de infinitos números primos}
\author[Euclides]{Euclides de Alejandría \\ \texttt{euclides@alejandria.edu}}
\date{$10$ de julio de $2005$}
Por último, para terminar de redactar el preámbulo, decide declararse unos cuantos entornos matemáticos que luego utilizará a lo largo de su presentación.
\newtheorem{Th}{Teorema}
\newtheorem{Ejem}{Ejemplo}
\newtheorem{Def}{Definición}
Euclides ya ha terminado de programar el preámbulo del documento, por lo que pasa a redactar el cuerpo de la presentación en si. Las primeras líneas que escribe son
\begin{document}
\begin{frame}
\titlepage
\end{frame}
que no son más que la sentencia de inicio del documento y la transparencia (que en esta clase de LaTeX se llama “frame”) que muestra los datos iniciales de la conferencia que declaró en el preámbulo.
En la siguiente transparencia va a colocar un esquema de los puntos que expondrá en su ponencia, por lo que escribe
\begin{frame}
\frametitle{Esquema}
\tableofcontents
\end{frame}
El comando \framtitle{} tiene por objeto asignar un título a la transparencia, mientras que la sentencia \tableofcontents debe resultar ya familiar a cualquier usuario de LaTeX, siendo su cometido incluir el índice del documento en el lugar donde se coloque dicha sentencia.
Ahora bien, Euclides va a dividir su presentación en dos puntos principales. El primero de ellos será una introducción y motivación al problema de referencia, mientras que en el segundo punto presentará su principal resultado. Para estructurar las distintas secciones hará uso de los comandos \section{} y \subsection{}. De esta manera, las siguientes líneas que encontramos son
\section{Motivación}
\subsection{Presentación del problema básico}
\begin{frame}
\frametitle{¿Qué son los números primos?}
\begin{Def}
Un \alert{número primo} es un número que posee exactamente dos
divisores.
\end{Def}
\begin{Ejem}
\begin{itemize}
\item $2$ es primo (dos divisores: $1$ y $2$).
\item $3$ es primo (dos divisores: $1$ y $3$).
\item $4$ no es primo (\alert{tres} divisores: $1$, $2$, y $4$).
\end{itemize}
\end{Ejem}
\end{frame}
Euclides va a utilizar únicamente una transparencia para ocuparse de la motivación del problema, que por título lleva “¿Qué son los números primos” y comienza con la definición de número primo. En ella encontramos el comando \alert{}, que es el equivalente a \emph{} pero en presentaciones, y destaca el texto que esté entre llaves. Una vez definido el concepto principal de la conferencia, Euclides ha decidido mostrar un ejemplo, que no presenta mayor sofisticación en cuanto a su escritura en LaTeX respecta.
Llega el este momento que todos los asistentes a la conferencia esperan, y no es otro que el apartado dedicado a mostrar que existen infinitos números primos. Euclides decide organizar la presentación de su resultado en una única transparencia, tal y como sigue
\section{Teorema de Euclides}
\subsection{Resultado}
\begin{frame}
\frametitle{No existe un número primo máximo}%
\framesubtitle{Demostración por \textit{reductio ad absurdum}.}
\begin{Th}
No existe un número primo máximo.
\end{Th}
\begin{proof}
\begin{enumerate}
\item Supóngase que $p$ es el mayor número primo.
\item Sea $q$ el producto de los $p$ primeros números.
\item Entonces, $q+1$ no es divisible por ninguno de ellos.
\item Así pues, $q+1$ es también primo y es mayor que $p$.\qedhere
\end{enumerate}
\end{proof}
Demostración por \textit{reductio ad absurdum}.
\end{frame}
Para terminar de asombrar a la audiencia, Euclides, como experto programador que es, decide exponer un algoritmo cuyo fin es la búsqueda de números primos, haciendo uso del método que su amigo Eratóstenes le contó hace unos meses. En ello ocupa la siguiente transparencia.
\subsection{Algoritmo de búsqueda de números primos}
\begin{frame}[fragile]
\frametitle{Un algoritmo para buscar números primos}
\begin{verbatim}
int main (void)
\{
std:: vector is_prime(100,true)
for (int i = 2; i < 100; i++)
if (is_prime[i]))
\{
std:: cout << i << " ";
for (int j = 1; j < 100;
is_prime [j] = false, j+=i);
\}
return 0;
\}
\end{verbatim}
N\'otese el uso de \texttt{std::}.
\end{frame}
Dado que desea que el código aparezca de manera agradable, se decanta por escribirlo haciendo uso del entorno “verbatim”. En Beamer es lícito el uso de dicho entorno, aunque requiere añadir el argumento opcional [fragile] al frame en cuestión donde se vaya a emplear.
Para finalizar la charla, Euclides opta por mostrar una última transparencia en la que recoge los logros alcanzados así como alguna de las cuestiones que aun quedan pendientes de resolver.
\subsection{Líneas de trabajo}
\begin{frame}
\frametitle{¿Qué debemos hacer?}
\begin{block}{Cuestiones resueltas}
¿Existe un número primo máximo? \alert{No}
\end{block}\vspace{1cm}
\begin{block}{Cuestiones abiertas}
¿Todo número impar es suma de dos primos?
\end{block}
\end{frame}
\end{document}
De esta última transparencia, simplemente queda por comentar el entorno “block”. Éste es muy similar al entorno “theorem”, pero con la salvedad de que podemos elegir el título del entorno.
Con estas líneas, Euclides da por zanjada la versión preliminar de su presentación. En próximos artículos veremos como introducir algunas modificaciones que mejoren su aspecto visual.