Procesadores de texto. LaTeX

Cuando vamos a escribir cualquier texto o trabajo utilizando el ordenador, lo más común es recurrir a un procesador de textos. Entre ellos, Word de Microsoft es, posiblemente, el más utilizado desde hace mucho tiempo. Otros, como Writer o Pages, también. Todos ellos pertenecen al tipo WYSIWYG, acrónimo de What You See Is What You Get (en español, «lo que ves es lo que obtienes»). Sin embargo, cuando se trata de escribir matemáticas, la utilización de Word u otro similar, quizás no es la mejor opción. Necesitamos recurrir a un procesador más específico, tal como  \(\TeX\) o \(\LaTeX\).

La historia de \(\TeX\), la relata el propio Donald Knuth, su creador: «cuando recibió la prueba de imprenta de su obra The Art of Computer Programming, calificó el resultado como pésimo. Esto, le sugirió escribir un programa para composición de textos». La AMS (American Mathematical Society) encargó a Knuth, profesor de la Universidad de Stanford, la creación de un sistema para escribir textos científicos (especialmente matemáticos), que fuera cómodo y transportable entre plataformas. Así, en 1978, tuvo una primera versión, aunque necesitó ocho años más hasta conseguir finalizarlo en 1985.

\(\TeX\) se distribuye libremente y permite modificaciones libres, aunque con algunas condiciones, como mantener el nombre.

Su sistema de versiones se basa en los decimales de \(\pi\, (3; 3,1; 3,14; 3,141; 3,1415;…\)). El «último cambio final (hecho después de mi muerte) será cambiar el número de versión a \(\pi\), y que en ese momento todos los errores que queden sean considerados características».

Donald Knuth
Leslie Lamport

\(\LaTeX\) (su nombre viene de Leslie Lamport, su creador), es un conjunto de macros, ordenes formadas a partir de los comandos de \(\TeX\) (que son las de un lenguaje de «nivel bajo»). Esto, permite una utilización mucho más cómoda. Incorpora estilos de documento para libros, cartas, ecuaciones, etc., y añade características de referencias cruzadas y numeración automática de secciones y ecuaciones lo que hace que se haya difundido mucho (sobre todo entre la comunidad científica).

Debe pronunciarse /látej/ o /láteks/ que es como se ha difundido en castellano pues la última letra no es la x (equis) sino la letra griega \(\chi\) (ji).

Para utilizarlo, solo hace falta un editor de texto y una distribución de \(\LaTeX\) dependiendo de las disponibilidades, gustos y el sistema operativo utilizado.

Realmente, \(\TeX\) es un compilador, no un editor de textos. Esto, quizás también ha ayudado a su difusión. Los textos, se escriben en el editor (ocupando muy poco) y posteriormente, se compilan con \(\LaTeX\) obteniendo el resultado final (en los formatos DVI o PDF), y en su caso, los errores.

En la actualidad, una opción muy interesante es utilizar Overleaf v2, un \(\LaTeX\) online. Surge en 2012 como un proyecto, y fusionado con ShareLaTeX en 2013, otro proyecto similar, que ya cuenta con más de 11 millones de usuarios en el mundo (en enero de 2023), permitiendo editar, componer y colaborar con otros usuarios,  contando con todas las funcionalidades y paquetes en la web.

Si lo que queremos es escribir directamente matemáticas en HTML para mostrar en la web, entonces podemos utilizar \KaTeX que es una librería de \(\TeX\) en JavaScript conteniendo los símbolos para su renderización en la web. \KaTeX es de código abierto y su propósito es generar fórmulas matemáticas en la web de manera rápida y precisa. Fue desarrollada por Khan Academy con el objetivo de ofrecer una alternativa a otras herramientas de generación de fórmulas matemáticas. Para ello, necesitaremos el plugin o el uso directo de la librería.

Hay otras soluciones alternativas como utilizar MathJax que es otra librería para el mismo propósito.

Cajista cogiendo letras del cajetín para el componedor

\(\LaTeX\) en matemática financiera

Si lo que pretendemos es escribir matemáticas de forma seria, la composición que permita un resultado satisfactorio debe realizarse con \(\LaTeX\). Existen multitud de paquetes (además de los de la AMS) que aportan y facilitan la escritura de cualquier tipo de ecuaciones.

Si nos referimos en particular a la notación de la matemática financiera y actuarial, Actuarial Symbol, en CTAN, puede servirnos de ayuda. No obstante, hay alguno más.

En mi caso, he elaborado alguna función para poder escribir las funciones financieras con más comodidad (que pueden verse en los apuntes y presentaciones de esta página).

% finance function
\newcommand{\fin}[2]{{%
\def\arraystretch{0}%
\setlength\arraycolsep{1pt}% adjust these
\setlength\arrayrulewidth{.2pt}% two settings
\begin{array}[b]{@{}c|c}\cline{1-1}
\\[\arraycolsep]%
\scriptstyle #1 & \scriptstyle #2 %
\end{array}%
}}

Así por ejemplo, para obtener el valor actual de una renta unitaria pospagable, escribiría:

%Función financiera VA pospagable
\newcommand{\eva}[2]{%   
\textrm{$a$}_{\fin{#1} #2}
}

que utilizaría como:

\eva{n}{i} = \displaystyle\frac{1-(1+i)^{-n}}{i}

y obtendría:

\( % Funci'on financiera VA pospagable \newcommand{\eva}[2]{% \textrm{$a$}_{\fin{#1} #2} %a_{\fin{#1} #2} } % Función financiera %Variación html/MathJax \newcommand{\fin}[2]{{% #1 \mkern-8.5mu\rule[.55em]{6pt}{.85pt}\rule{.85pt}{6.5pt}\, #2 % }} \eva{n}{i} = \displaystyle\frac{1- (1+i)^{-n}}{i} \)
Hay además diferentes comunidades de usuarios (como TUG), la española CervanTeX y múltiples contribuciones que permiten diferentes funcionalidades. Entre ellas, la clase Beamer de Till Tantau, permite elaborar presentaciones como las que he utilizado en estas páginas (una modificación personal de Warsaw).