diff options
Diffstat (limited to 'Master/texmf-dist/doc/latex')
-rw-r--r-- | Master/texmf-dist/doc/latex/halloweenmath/00readme.txt | 4 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/halloweenmath/Makefile | 2 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/halloweenmath/README | 4 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/halloweenmath/halloweenexample.pdf | bin | 258960 -> 0 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/halloweenmath/halloweenexample.tex | 206 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/halloweenmath/halloweenmath-doc.pdf | bin | 310944 -> 335482 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/halloweenmath/halloweenmath-man.pdf | bin | 0 -> 539864 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/halloweenmath/halloweenmath-man.tex | 1060 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/halloweenmath/manifest.txt | 6 |
9 files changed, 1068 insertions, 214 deletions
diff --git a/Master/texmf-dist/doc/latex/halloweenmath/00readme.txt b/Master/texmf-dist/doc/latex/halloweenmath/00readme.txt index bbc4103480e..f211f14107b 100644 --- a/Master/texmf-dist/doc/latex/halloweenmath/00readme.txt +++ b/Master/texmf-dist/doc/latex/halloweenmath/00readme.txt @@ -26,7 +26,7 @@ This file, after giving a brief description of the halloweenmath package, explains how to install it and how to generate its--alas, still incomplete!--documentation. -January 6, 2017 (vers. 0.01) +April 16, 2017 (vers. 0.10) @@ -137,7 +137,7 @@ input directories! :-) d) You may also choose to install the halloweenmath package inside the main texmf tree of your TeX installation (as opposed to installing it inside a directory devoted to private classes and packages). In this -case, note that the _proposed_ TDS-compliant location for the +case, note that the--now accepted--TDS-compliant location for the halloweenmath package, that is, the directory inside which you should put all the files listed in 2), is diff --git a/Master/texmf-dist/doc/latex/halloweenmath/Makefile b/Master/texmf-dist/doc/latex/halloweenmath/Makefile index 8292e7c8602..41b9f8d8035 100644 --- a/Master/texmf-dist/doc/latex/halloweenmath/Makefile +++ b/Master/texmf-dist/doc/latex/halloweenmath/Makefile @@ -1,6 +1,6 @@ # makefile # -# 2017 Jan 06 +# 2017 Apr 16 # # Macro definitions ROOT_NAME = halloweenmath diff --git a/Master/texmf-dist/doc/latex/halloweenmath/README b/Master/texmf-dist/doc/latex/halloweenmath/README index 26277efd6a5..212a09dd57e 100644 --- a/Master/texmf-dist/doc/latex/halloweenmath/README +++ b/Master/texmf-dist/doc/latex/halloweenmath/README @@ -1,4 +1,4 @@ -(Version indicator: 2017 Jan 06) +(Version indicator: 2017 Apr 16) The halloweenmath package originated from a question asked for enjoyment on TeX-LaTeX Stack Exchange <http://tex.stackexchange.com> by the user @@ -18,7 +18,7 @@ For more information, read the following files: 00readme.txt -- start by reading this file halloweenmath-doc.pdf -- overview of the halloweenmath package (PDF) -halloweenexample.pdf -- output produced by sample source file (PDF) +halloweenmath-man.pdf -- user's manual for this same package (PDF) Other files that make up the distribution are: diff --git a/Master/texmf-dist/doc/latex/halloweenmath/halloweenexample.pdf b/Master/texmf-dist/doc/latex/halloweenmath/halloweenexample.pdf Binary files differdeleted file mode 100644 index 91e55fad8b4..00000000000 --- a/Master/texmf-dist/doc/latex/halloweenmath/halloweenexample.pdf +++ /dev/null diff --git a/Master/texmf-dist/doc/latex/halloweenmath/halloweenexample.tex b/Master/texmf-dist/doc/latex/halloweenmath/halloweenexample.tex deleted file mode 100644 index d6e30050822..00000000000 --- a/Master/texmf-dist/doc/latex/halloweenmath/halloweenexample.tex +++ /dev/null @@ -1,206 +0,0 @@ -\documentclass[12pt,a4paper]{article} -\usepackage[T1]{fontenc} % not necessary, but recommended -\usepackage{halloweenmath} -\usepackage{hyperref} % just for "\hypersetup" - -\title{Sample Halloween Math} -\author{A.~U.~Thor} -\date{January~6, 2017} - -\hypersetup{ - pdftitle = {Sample Halloween Math}, - pdfauthor = {A. U. Thor}, - pdfsubject = {Sample source file for the halloweenmath package}, - pdfkeywords = {Halloween, math, scary mathematical symbols}, - pdfcreationdate = {D:20170106000000}, - pdfmoddate = {D:20170106000000} -} - - - -\begin{document} - -\maketitle - -A reduction my students are likely to make: -\[\mathwitch \frac{\sin x}{s} = x\,\mathrm{in}\] -The same reduction as an in-line formula: -\(\mathwitch \frac{\sin x}{s} = x\,\mathrm{in}\). - -Now with limits: -\[ - \mathwitch_{i=1}^{n} \frac - {\text{$i$-th magic term}} - {\text{$2^{i}$-th wizardry}} -\] -And repeated in-line: \( \mathwitch_{i=1}^{n} x_{i}y_{i} \). - -The \texttt{bold} math version is honored:\mathversion{bold} -\[ - \mathwitch* - \genfrac{<}{>}{0pt}{} - {\textbf{something terribly}}{\textbf{complicated}} - = 0 -\] -Compare it with \texttt{normal} math\mathversion{normal}: -\[ - \mathwitch* - \genfrac{<}{>}{0pt}{} - {\text{something terribly}}{\text{complicated}} - = 0 -\] -In-line math comparison: -{\boldmath $\mathwitch* f(x)$} versus $\mathwitch* f(x)$. - -There is also a left-facing witch: -\[\reversemathwitch \frac{\sin x}{s} = x\,\mathrm{in}\] -And here is the in-line version: -\(\reversemathwitch \frac{\sin x}{s} = x\,\mathrm{in}\). - -Test for \verb|\dots|: -\[ - \mathwitch_{i_{1}=1}^{n_{1}} \dots \mathwitch_{i_{p}=1}^{n_{p}} - \frac - {\text{$i_{1}$-th magic factor}} - {\text{$2^{i_{1}}$-th wizardry}} - \pumpkin\dots\pumpkin - \frac - {\text{$i_{p}$-th magic factor}} - {\text{$2^{i_{p}}$-th wizardry}} -\] -And repeated in-line: \( \mathwitch\dots\mathwitch_{i=1}^{n} x_{i}y_{i} \). - -\bigbreak - -Now the pumpkins. First the \texttt{bold} math version:\mathversion{bold}: -\[ \bigoplus_{h=1}^{m}\bigpumpkin_{k=1}^{n} P_{h,k} \] -Then the \texttt{normal} one\mathversion{normal}: -\[ \bigoplus_{h=1}^{m}\bigpumpkin_{k=1}^{n} P_{h,k} \] -In-line math comparison: -{\boldmath \( \bigpumpkin_{i=1}^{n} P_{i} \neq \bigoplus_{i=1}^{n} P_{i} \)} -versus \( \bigpumpkin_{i=1}^{n} P_{i} \neq \bigoplus_{i=1}^{n} P_{i} \). - -Close test: {\boldmath $\bigoplus$}$\bigoplus$. -And against the pumpkins: -{\boldmath $\bigpumpkin$}$\bigpumpkin\bigoplus${\boldmath $\bigoplus$}. - -In-line, but with \verb|\limits|: -\( \bigoplus\limits_{h=1}^{m}\bigpumpkin\limits_{k=1}^{n} P_{h,k} \). - -Binary: \( x\pumpkin y \neq x\oplus y \). And in display: -\[ a\pumpkin\frac{x\pumpkin y}{x\oplus y}\otimes b \] -Close test: {\boldmath $\oplus$}$\oplus$. -And with the pumpkins too: -{\boldmath $\pumpkin$}$\pumpkin\oplus${\boldmath $\oplus$}. - -In general, -\[ \bigpumpkin_{i=1}^{n} P_{i} = P_{1}\pumpkin\dots\pumpkin P_{n} \] - -\begingroup - -\bfseries\boldmath - -The same in bold: -\[ \bigpumpkin_{i=1}^{n} P_{i} = P_{1}\pumpkin\dots\pumpkin P_{n} \] - -\endgroup - -Other styles: \( \frac{x\pumpkin y}{2} \), exponent~$Z^{\pumpkin}$, -subscript~$W_{\!x\pumpkin y}$, double script \( 2^{t_{x\pumpkin y}} \). - -\bigbreak - -Clouds. A hypothetical identity: -\( \frac{\sin^{2}x + \cos^{2}x}{\cos^{2}x} = \mathcloud \). -Now the same identity set in display: -\[ \frac{\sin^{2}x + \cos^{2}x}{\cos^{2}x} = \mathcloud \] -Now in smaller size: \( \frac{\sin x+\cos x}{\mathcloud} = 1 \). - -Specular clouds, \texttt{bold}\ldots\mathversion{bold} -\[ \reversemathcloud \longleftrightarrow \mathcloud \] -\ldots and in \texttt{normal} math.\mathversion{normal} -\[ \reversemathcloud \longleftrightarrow \mathcloud \] -In-line math comparison: -{\boldmath \( \reversemathcloud \leftrightarrow \mathcloud \)} -versus \( \reversemathcloud \leftrightarrow \mathcloud \). -Abutting: {\boldmath $\mathcloud$}$\mathcloud$. - -\bigbreak - -Ghosts: \( \mathleftghost \mathghost \mathrightghost \mathghost \mathleftghost -\mathghost \mathrightghost \). Now with letters: \( H \mathghost H \mathghost h -\mathghost ab \mathghost f \mathghost wxy \mathghost \), and also \( -2\mathghost^{3} + 5\mathleftghost^{\!2}-3\mathrightghost_{i} = -12\mathrightghost_{j}^{4} \). Then, what about~$x^{2\mathghost}$ and \( -z_{\!\mathrightghost+1} = z_{\!\mathrightghost}^{2} + z_{\mathghost} \)? - -In subscripts: -\begin{align*} - F_{\mathghost+2} &= F_{\mathghost+1} + F_{\mathghost} \\ - F_{\!\mathrightghost+2} &= F_{\!\mathrightghost+1} + F_{\!\mathrightghost} -\end{align*} -Another test: \( \mathghost | \mathrightghost | \mathghost | \mathleftghost | -\mathghost | \mathrightghost | \mathghost | \mathleftghost | \mathghost \). We -should also try this: \( \mathrightghost \mathleftghost \mathrightghost -\mathleftghost \). - -Extensible arrows: -\begin{gather*} - A \xrightwitchonbroom[a\star f(t)]{x_{1}+\dots+x_{n}} B - \xrightwitchonbroom{x+z} C \xrightwitchonbroom{} D \\ - A \xrightwitchonbroom*[a\star f(t)]{x_{1}+\dots+x_{n}} B - \xrightwitchonbroom*{x+z} C \xrightwitchonbroom*{} D \\ - A \xleftwitchonbroom*[a\star f(t)]{x_{1}+\dots+x_{n}} B - \xleftwitchonbroom*{x+z} C \xleftwitchonbroom*{} D \\ - A \xleftwitchonbroom[a\star f(t)]{x_{1}+\dots+x_{n}} B - \xleftwitchonbroom{x+z} C \xleftwitchonbroom{} D -\end{gather*} -And \( \overrightwitchonbroom*{x_{1}+\dots+x_{n}}=0 \) versus \( -\overrightwitchonbroom{x_{1}+\dots+x_{n}}=0 \); or \( -\overleftwitchonbroom*{x_{1}+\dots+x_{n}}=0 \) versus \( -\overleftwitchonbroom{x_{1}+\dots+x_{n}}=0 \). - -Hovering ghosts: \( \overrightswishingghost{x_{1}+\dots+x_{n}}=0 \). You might -wonder whether there is enough space left for the swishing ghost; let's try -again: \( \overrightswishingghost{(x_{1}+\dots+x_{n})y}=0 \). As you can see, -there is enough room. Lorem ipsum dolor sit amet consectetur adipisci elit. -And \( \overrightswishingghost{\mathstrut} \) too. -\begin{gather*} - A \xrightswishingghost[a\star f(t)]{x_{1}+\dots+x_{n}} B - \xrightswishingghost{x+z} C \xrightswishingghost{} D \\ - A \xleftswishingghost[a\star f(t)]{x_{1}+\dots+x_{n}} B - \xleftswishingghost{x+z} C \xleftswishingghost{} D -\end{gather*} -Another hovering ghost: \( \overleftswishingghost{x_{1}+\dots+x_{n}}=0 \).. -Lorem ipsum dolor sit amet consectetur adipisci elit. Ulla rutrum, vel sivi sit -anismus oret, rubi sitiunt silvae. Let's see how it looks like when the ghost -hovers on a taller formula, as in \( -\overrightswishingghost{H_{1}\oplus\dots\oplus H_{k}} \). Mmmh, it's -suboptimal, to say the least.\footnote{We'd better try \( -\underleftswishingghost{y_{1}+\dots+y_{n}} \), too; well, this one looks good!} - -Under ``arrow-like'' symbols: \( \underleftswishingghost{x_{1}+\dots+x_{n}}=0 \) -and \( \underrightswishingghost{x+y+z} \). There are \( -\underleftwitchonbroom*{x_{1}+\dots+x_{n}}=0 \) and \( -\underrightwitchonbroom*{x+y+z} \) as well. - -\bigbreak - -A comparison between the ``standard'' and the ``script-style'' over\slash under -extensible arrows: -\begin{align*} - \overrightarrow{f_{1}+\dots+f_{n}} - &\neq\overscriptrightarrow{f_{1}+\dots+f_{n}} \\ - \overleftarrow{f_{1}+\dots+f_{n}} - &\neq\overscriptleftarrow{f_{1}+\dots+f_{n}} \\ - \overleftrightarrow{f_{1}+\dots+f_{n}} - &\neq\overscriptleftrightarrow{f_{1}+\dots+f_{n}} \\ - \underrightarrow{f_{1}+\dots+f_{n}} - &\neq\underscriptrightarrow{f_{1}+\dots+f_{n}} \\ - \underleftarrow{f_{1}+\dots+f_{n}} - &\neq\underscriptleftarrow{f_{1}+\dots+f_{n}} \\ - \underleftrightarrow{f_{1}+\dots+f_{n}} - &\neq\underscriptleftrightarrow{f_{1}+\dots+f_{n}} -\end{align*} - -\end{document} diff --git a/Master/texmf-dist/doc/latex/halloweenmath/halloweenmath-doc.pdf b/Master/texmf-dist/doc/latex/halloweenmath/halloweenmath-doc.pdf Binary files differindex 8bc4d0a6fa3..dedc5c23610 100644 --- a/Master/texmf-dist/doc/latex/halloweenmath/halloweenmath-doc.pdf +++ b/Master/texmf-dist/doc/latex/halloweenmath/halloweenmath-doc.pdf diff --git a/Master/texmf-dist/doc/latex/halloweenmath/halloweenmath-man.pdf b/Master/texmf-dist/doc/latex/halloweenmath/halloweenmath-man.pdf Binary files differnew file mode 100644 index 00000000000..34e554e756c --- /dev/null +++ b/Master/texmf-dist/doc/latex/halloweenmath/halloweenmath-man.pdf diff --git a/Master/texmf-dist/doc/latex/halloweenmath/halloweenmath-man.tex b/Master/texmf-dist/doc/latex/halloweenmath/halloweenmath-man.tex new file mode 100644 index 00000000000..add54e3ae43 --- /dev/null +++ b/Master/texmf-dist/doc/latex/halloweenmath/halloweenmath-man.tex @@ -0,0 +1,1060 @@ +\documentclass[a4paper]{article} +\usepackage[T1]{fontenc} +\usepackage{amsmath,amsfonts} +\usepackage{halloweenmath}[2017/04/16] +\usepackage{array} +\usepackage[bookmarksnumbered]{hyperref} + +\title{User's manual\\for the \halloweenmath\ package} +\author{G. Mezzetti} +\date{April~16, 2017} + +\hypersetup{ + pdftitle = {User's manual for the halloweenmath package}, + pdfauthor = {G. Mezzetti}, + pdfsubject = {The halloweenmath LaTeX package}, + pdfkeywords = {TeX,LaTeX,Halloween,math,math symbold}, + pdfcreationdate = {D:20170416000000}, + pdfmoddate = {D:20170416000000} +} + +\DeclareTextFontCommand{\packlass}{\normalfont\sffamily} +\DeclareTextFontCommand{\opt} {\normalfont\ttfamily} +\newcommand*{\meta}[1]{{\normalfont \(\langle\textit{#1}\rangle\)}} +\newcommand*{\halloweenmath}{\packlass{halloweenmath}} +\newcommand*{\amsmath} {\packlass{amsmath}} + +\newcommand*{\sumxn}{x_{1}+\dots+x_{n}} + +\makeatletter + +\newcolumntype{H}[3]{>{\hb@xt@ #3\bgroup#1}c<{#2\egroup}} +\newcolumntype{U}[2]{H{\hss$#1}{$\hss}{#2}@{\hspace{.5em}}} +\newcolumntype{V}[1]{H{\ttfamily}{\hss}{#1}} +\newcolumntype{W}[1]{H{}{\hss}{#1}} +\newcolumntype{O}{U{}{15\p@}} +\newcolumntype{D}{U{\displaystyle}{30\p@}} +\newcolumntype{L}{OD} +\newcolumntype{A}{U{}{40\p@}} + +\newenvironment*{@symtable}[2]{\par + \centering + \addtolength\leftskip {-80\p@}% + \addtolength\rightskip{-80\p@}% + \setlength\arraycolsep{.5em}% + \tabular{@{}*{#2}{#1}@{}}% +}{% + \endtabular + \par +} +\newenvironment{symtable}[1][\thr@@]{% + \@symtable{OV{90\p@}}{#1}% +}{% + \end@symtable +} +\newenvironment{opsymtable}[1][\tw@]{% + \def\arraystretch{\tw@}% + \@symtable{LV{120\p@}}{#1}% +}{% + \end@symtable +} +\newenvironment{xasymtable}[1][\tw@]{% + \def\arraystretch{\tw@}% + \@symtable{AW{200\p@}}{#1}% +}{% + \end@symtable +} +\newcommand*\Sym[1] {#1&\string#1} +\newcommand*\OpSym[1]{#1&\string#1} + +\makeatother + + + +\begin{document} + +\maketitle + +\tableofcontents +\listoftables + + + +\clearpage + +\section{Package loading} +\label{S:Loading} + +Load the \halloweenmath\ package as any other \LaTeXe\ package, that is, via the +usual \verb|\usepackage| declaration: +\begin{verbatim} + \usepackage{halloweenmath} +\end{verbatim} +Note that the \halloweenmath\ package requires the \amsmath\ package, and loads +it (without specifying any option) if it is not already loaded. If you want to +pass options to \amsmath, load it before \halloweenmath. + +The \halloweenmath\ package defines no options by itself; nevertheless, it does +honor the [\opt{no}]\opt{sumlimits} options from the \amsmath\ package. + + + +\section{Package usage} +\label{S:Usage} + +The \halloweenmath\ package defines a handful of commands, all of which are +intended for use \emph{in mathematical mode}, where they yield some kind of +symbol that draws from the classic Halloween-related iconography (pumpkins, +witches, ghosts, bats, and so on). Below, these symbols are grouped according +to their mathematical ``r\^{o}le'' (ordinary symbols, binary operators, +arrows\ldots). + + + +\subsection{Ordinary symbols} +\label{sS:Ordinary} + +Table~\ref{tab:ordinary} lists the ordinary symbols provided by the +\halloweenmath\ package. + +\begin{table}[t!p] + \centering + \begin{symtable}\relax + \Sym{\mathleftghost} & \Sym{\mathghost} & \Sym{\mathrightghost} \\ + \Sym{\mathleftbat} & \Sym{\mathbat} & \Sym{\mathrightbat} \\ + \end{symtable} + \caption{Ordinary symbols} + \label{tab:ordinary} +\end{table} + + + +\subsection{Binary operators} +\label{sS:Binary} + +Table~\ref{tab:binary} lists the binary operators available. Note that each +binary operator has an associated ``large'' operator (see +subsection~\ref{sS:Large}). + +\begin{table}[t!p] + \centering + \begin{symtable}[2] + \Sym{\pumpkin} & \Sym{\skull} \\ + \end{symtable} + \caption{Binary operators} + \label{tab:binary} +\end{table} + + + +\subsection{\textquotedblleft Large\textquotedblright\ operators} +\label{sS:Large} + +Table~\ref{tab:large} lists the ``large'' operators. Each of them is depicted +in two variants: the variant used for in-line math and the variant used for +displayed formulas. In the table, besides the ``large'' operators called +\verb|\bigpumpkin|\footnote{As a homage to Linus van Pelt, +\texttt{\string\greatpumpkin} is defined as synonym of +\texttt{\string\bigpumpkin}.} and \verb|\bigskull|, which are correlated to the +binary operators \verb|\pumpkin| and \verb|\skull|, repectively, we find the +commands \verb|\mathwitch| and \verb|\reversemathwitch|: note how these two last +command have a \mbox{$*$-form} that adds a black cat on the broomstick. + +\begin{table}[t!p] + \centering + \begin{opsymtable}\relax + \OpSym{\mathwitch} & \OpSym{\reversemathwitch} \\ + \OpSym{\mathwitch*} & \OpSym{\reversemathwitch*} \\ + \OpSym{\bigpumpkin}\normalfont\footnotemark[\value{footnote}] + & \OpSym{\bigskull} \\ + \end{opsymtable} + \caption{\textquotedblleft Large\textquotedblright\ operators} + \label{tab:large} +\end{table} + +All the ``large'' operators listed in table~\ref{tab:large} honor the +[\opt{no}]\opt{sumlimits} options from the \amsmath\ package. + + + +\subsection{\textquotedblleft Fraction-like\textquotedblright\ symbols} +\label{sS:Inner} + +There are also two commands, listed on table~\ref{tab:inner}, that yield symbols +that are somewhat similar to fractions, in that they grow in size when they are +typeset in display style.\footnote{Another \TeX nical aspect of these commands +is that they yield an atom of type Inner.} They are intended to denote +an unspecified subformula that appears as a part of a larger one. + +\begin{table}[t!p] + \centering + \begin{opsymtable}\relax + \OpSym{\mathcloud} & \OpSym{\reversemathcloud} \\ + \end{opsymtable} + \caption{\textquotedblleft Fraction-like\textquotedblright\ symbols} + \label{tab:inner} +\end{table} + + + +\subsection{\textquotedblleft Arrow-like\textquotedblright\ symbols} +\label{sS:Arrow} + +As we'll see in subsection~\ref{sS:XArrow}, the \halloweenmath\ package provides +a series of commands whose usage parallels that of ``extensible arrows'' like +\verb|\xrightarrow| or \verb|\xleftarrow|; but the symbols that those commands +yield when used with an empty argument turn out to be too short, and it is for +this reason that the \halloweenmath\ package also offers you the four commands +you can see in table~\ref{tab:arrow}: they produce brooms, or pitchforks, having +fixed length, which is approximately the same size of a +\verb|\longrightarrow|~($\longrightarrow$). All of these symbols are treated as +relations. + +\begin{table}[t!p] + \centering + \begin{symtable}[2] + \Sym{\leftbroom} & \Sym{\rightbroom} \\ + \Sym{\hmleftpitchfork} & \Sym{\hmrightpitchfork} \\ + \end{symtable} + \caption{\textquotedblleft Arrow-like\textquotedblright\ symbols} + \label{tab:arrow} +\end{table} + + + +\subsection{Extensible \textquotedblleft arrow-like\textquotedblright\ symbols} +\label{sS:XArrow} + +You are probably already familiar with the ``extensible arrows'' like +$\xrightarrow{abc}$ and~$\xleftarrow{abc}$; for example, you probably know that +the input +\begin{verbatim} + \[ + \bigoplus_{i=1}^{n} A_{i} \xrightarrow{f_{1}+\dots+f_{n}} B + \] +\end{verbatim} +produces this result: +\[ + \bigoplus_{i=1}^{n} A_{i} \xrightarrow{f_{1}+\dots+f_{n}} B +\] +The \halloweenmath\ package features a whole assortment of extensible symbols of +this kind, which are listed in table~\ref{tab:xarrow}. For example, you could +say +\begin{verbatim} + \[ + G \xrightswishingghost{h_{1}+\dots+h_{n}} + \bigpumpkin_{t=1}^{n} S_{t} + \] +\end{verbatim} +to get the following in print: +\[ + G \xrightswishingghost{h_{1}+\dots+h_{n}} + \bigpumpkin_{t=1}^{n} S_{t} +\] + +\begin{table}[t!p] + \centering + \begin{xasymtable}\relax + \xleftwitchonbroom{abc\dots z} + & \verb|\xleftwitchonbroom{abc\dots z}| & + \xrightwitchonbroom{abc\dots z} + & \verb|\xrightwitchonbroom{abc\dots z}| \\ + \xleftwitchonbroom*{abc\dots z} + & \verb|\xleftwitchonbroom*{abc\dots z}| & + \xrightwitchonbroom*{abc\dots z} + & \verb|\xrightwitchonbroom*{abc\dots z}| \\ + \xleftwitchonpitchfork{abc\dots z} + & \verb|\xleftwitchonpitchfork{abc\dots z}| & + \xrightwitchonpitchfork{abc\dots z} + & \verb|\xrightwitchonpitchfork{abc\dots z}| \\ + \xleftwitchonpitchfork*{abc\dots z} + & \verb|\xleftwitchonpitchfork*{abc\dots z}| & + \xrightwitchonpitchfork*{abc\dots z} + & \verb|\xrightwitchonpitchfork*{abc\dots z}| \\ + \xleftbroom{abc\dots z} + & \verb|\xleftbroom{abc\dots z}| & + \xrightbroom{abc\dots z} + & \verb|\xrightbroom{abc\dots z}| \\ + \xleftpitchfork{abc\dots z} + & \verb|\xleftpitchfork{abc\dots z}| & + \xrightpitchfork{abc\dots z} + & \verb|\xrightpitchfork{abc\dots z}| \\ + \xleftswishingghost{abc\dots z} + & \verb|\xleftswishingghost{abc\dots z}| & + \xrightswishingghost{abc\dots z} + & \verb|\xrightswishingghost{abc\dots z}| \\ + \xleftflutteringbat{abc\dots z} + & \verb|\xleftflutteringbat{abc\dots z}| & + \xrightflutteringbat{abc\dots z} + & \verb|\xrightflutteringbat{abc\dots z}| \\ + \end{xasymtable} + \caption{Extensible \textquotedblleft arrow-like\textquotedblright\ symbols} + \label{tab:xarrow} +\end{table} + +More generally, exactly as the commands \verb|\xleftarrow| and +\verb|\xrightarrow|, on which they are modeled, all the commands listed in +table~\ref{tab:xarrow} take one optional argument, in which you can specify a +subscript, and one mandatory argument, where a---possibly empty---superscript +must be indicated. For example, +\begin{verbatim} + \[ + A \xrightwitchonbroom*[abc\dots z]{f_{1}+\dots+f_{n}} B + \xrightwitchonbroom*{f_{1}+\dots+f_{n}} C + \xrightwitchonbroom*[abc\dots z]{} D + \] +\end{verbatim} +results in +\[ + A \xrightwitchonbroom*[abc\dots z]{f_{1}+\dots+f_{n}} B + \xrightwitchonbroom*{f_{1}+\dots+f_{n}} C + \xrightwitchonbroom*[abc\dots z]{} D +\] + +Note that, also in this family of symbols, the commands that involve a witch all +provide a \mbox{$*$-form} that adds a cat on the broom (or pitchfork). + +The commands listed above should not be confused with those presented in +subsection~\ref{sS:OUArrow}. + + + +\subsection{Extensible \textquotedblleft over-\protect\slash + under-arrow-like\textquotedblright\ symbols} +\label{sS:OUArrow} + +The commands dealt with in subsection~\ref{sS:XArrow} typeset an extensible +``arrow-like'' symbol having some math above or below it. But the \amsmath\ +package also provides commands that act the other way around, that is, they put +an arrow over, or under, some math, as in the case of +\begin{verbatim} + \overrightarrow{x_{1}+\dots+x_{n}} +\end{verbatim} +that yields \( \overrightarrow{x_{1}+\dots+x_{n}} \). The \halloweenmath\ +package provides a whole bunch of commands like this, which are listed in +table~\ref{tab:ouarrow}, and which all share the same syntax as the +\verb|\overrightarrow| command. + +\begin{table}[t!p] + \centering + \begin{xasymtable}\relax + \overleftwitchonbroom{abc\dots z} + & \verb|\overleftwitchonbroom{abc\dots z}| & + \overrightwitchonbroom{abc\dots z} + & \verb|\overrightwitchonbroom{abc\dots z}| \\ + \overleftwitchonbroom*{abc\dots z} + & \verb|\overleftwitchonbroom*{abc\dots z}| & + \overrightwitchonbroom*{abc\dots z} + & \verb|\overrightwitchonbroom*{abc\dots z}| \\ + \overleftwitchonpitchfork{abc\dots z} + & \verb|\overleftwitchonpitchfork{abc\dots z}| & + \overrightwitchonpitchfork{abc\dots z} + & \verb|\overrightwitchonpitchfork{abc\dots z}| \\ + \overleftwitchonpitchfork*{abc\dots z} + & \verb|\overleftwitchonpitchfork*{abc\dots z}| & + \overrightwitchonpitchfork*{abc\dots z} + & \verb|\overrightwitchonpitchfork*{abc\dots z}| \\ + \overleftbroom{abc\dots z} + & \verb|\overleftbroom{abc\dots z}| & + \overrightbroom{abc\dots z} + & \verb|\overrightbroom{abc\dots z}| \\ + \overscriptleftbroom{abc\dots z} + & \verb|\overscriptleftbroom{abc\dots z}| & + \overscriptrightbroom{abc\dots z} + & \verb|\overscriptrightbroom{abc\dots z}| \\ + \overleftpitchfork{abc\dots z} + & \verb|\overleftpitchfork{abc\dots z}| & + \overrightpitchfork{abc\dots z} + & \verb|\overrightpitchfork{abc\dots z}| \\ + \overscriptleftpitchfork{abc\dots z} + & \verb|\overscriptleftpitchfork{abc\dots z}| & + \overscriptrightpitchfork{abc\dots z} + & \verb|\overscriptrightpitchfork{abc\dots z}| \\ + \overleftswishingghost{abc\dots z} + & \verb|\overleftswishingghost{abc\dots z}| & + \overrightswishingghost{abc\dots z} + & \verb|\overrightswishingghost{abc\dots z}| \\ + \overleftflutteringbat{abc\dots z} + & \verb|\overleftflutteringbat{abc\dots z}| & + \overrightflutteringbat{abc\dots z} + & \verb|\overrightflutteringbat{abc\dots z}| \\ + \underleftwitchonbroom{abc\dots z} + & \verb|\underleftwitchonbroom{abc\dots z}| & + \underrightwitchonbroom{abc\dots z} + & \verb|\underrightwitchonbroom{abc\dots z}| \\ + \underleftwitchonbroom*{abc\dots z} + & \verb|\underleftwitchonbroom*{abc\dots z}| & + \underrightwitchonbroom*{abc\dots z} + & \verb|\underrightwitchonbroom*{abc\dots z}| \\ + \underleftwitchonpitchfork{abc\dots z} + & \verb|\underleftwitchonpitchfork{abc\dots z}| & + \underrightwitchonpitchfork{abc\dots z} + & \verb|\underrightwitchonpitchfork{abc\dots z}| \\ + \underleftwitchonpitchfork*{abc\dots z} + & \verb|\underleftwitchonpitchfork*{abc\dots z}| & + \underrightwitchonpitchfork*{abc\dots z} + & \verb|\underrightwitchonpitchfork*{abc\dots z}| \\ + \underleftbroom{abc\dots z} + & \verb|\underleftbroom{abc\dots z}| & + \underrightbroom{abc\dots z} + & \verb|\underrightbroom{abc\dots z}| \\ + \underscriptleftbroom{abc\dots z} + & \verb|\underscriptleftbroom{abc\dots z}| & + \underscriptrightbroom{abc\dots z} + & \verb|\underscriptrightbroom{abc\dots z}| \\ + \underleftpitchfork{abc\dots z} + & \verb|\underleftpitchfork{abc\dots z}| & + \underrightpitchfork{abc\dots z} + & \verb|\underrightpitchfork{abc\dots z}| \\ + \underscriptleftpitchfork{abc\dots z} + & \verb|\underscriptleftpitchfork{abc\dots z}| & + \underscriptrightpitchfork{abc\dots z} + & \verb|\underscriptrightpitchfork{abc\dots z}| \\ + \underleftswishingghost{abc\dots z} + & \verb|\underleftswishingghost{abc\dots z}| & + \underrightswishingghost{abc\dots z} + & \verb|\underrightswishingghost{abc\dots z}| \\ + \underleftflutteringbat{abc\dots z} + & \verb|\underleftflutteringbat{abc\dots z}| & + \underrightflutteringbat{abc\dots z} + & \verb|\underrightflutteringbat{abc\dots z}| \\ + \end{xasymtable} + \caption{Extensible \textquotedblleft over-\protect\slash + under-arrow-like\textquotedblright\ symbols} + \label{tab:ouarrow} +\end{table} + +Although they are not extensible, and are thus more similar to math accents, we +have chosen to include in this subsection also the commands listed in +table~\ref{tab:oubat}. They typeset a subformula either surmounted by the bat +produced by \verb|\mathbat|, or with that symbol underneath. The normal +(\emph{i.e.}, unstarred) form pretends that the bat has zero width (but some +height), whereas the starred variant takes the actual width of the bat be into +account; for example, given the input +\begin{verbatim} + \begin{align*} + &x+y+z && x+y+z \\ + &x+\overbat{y}+z && x+\overbat*{y}+z + \end{align*} +\end{verbatim} +compare the spacing you get in the two columns of the output: +\begin{align*} + &x+y+z && x+y+z \\ + &x+\overbat{y}+z && x+\overbat*{y}+z +\end{align*} + +\begin{table}[t!p] + \centering + \begin{xasymtable}\relax + \overbat{xyz} & \verb|\overbat{xyz}| & + \underbat{xyz} & \verb|\underbat{xyz}| \\ + \end{xasymtable} + \caption{Over\protect\slash under bats} + \label{tab:oubat} +\end{table} + + + +\subsection{Script-style versions of + \texorpdfstring{\amsmath}{amsmath}\textquoteright s + over\protect\slash under arrows} +\label{sS:ScriptArrow} + +The commands listed in table~\ref{tab:scriptarrow} all produce an output similar +to that of the corresponding \amsmath's command having the same name, but +stripped of the \texttt{script} substring, with the only difference that the +size of the arrow is smaller. More precisely, they use for the arrow the +relative script size of the current size (that is, of the size in which their +argument is typeset). For example, whilst \verb|\overrightarrow{x+y+z}| yields +$\overrightarrow{x+y+z}$, \verb|\overscriptrightarrow{x+y+z}| results in +$\overscriptrightarrow{x+y+z}$ (do you see the difference?), which, in the +author's humble opinion, looks \emph{much} better. + +\begin{table}[t!p] + \centering + \begin{xasymtable}\relax + \overscriptleftarrow{abc\dots z} + & \verb|\overscriptleftarrow{abc\dots z}| & + \underscriptleftarrow{abc\dots z} + & \verb|\underscriptleftarrow{abc\dots z}| \\ + \overscriptrightarrow{abc\dots z} + & \verb|\overscriptrightarrow{abc\dots z}| & + \underscriptrightarrow{abc\dots z} + & \verb|\underscriptrightarrow{abc\dots z}| \\ + \overscriptleftrightarrow{abc\dots z} + & \verb|\overscriptleftrightarrow{abc\dots z}| & + \underscriptleftrightarrow{abc\dots z} + & \verb|\underscriptleftrightarrow{abc\dots z}| \\ + \end{xasymtable} + \caption{Extensible over\protect\slash under arrows with reduced size} + \label{tab:scriptarrow} +\end{table} + + + +\clearpage + +\section{Examples of use} +\label{S:Example} + +This section illustrates the use of the commands provided by the \halloweenmath\ +package: by reading the source code for this document, you can see how the +output presented below can be obtained. + + + +\subsection{Applying black magic} + +The $\mathwitch$~symbol was invented with the intent to provide a notation for +the operation of applying black magic to a formula. Its applications range from +simple reductions sometimes made by certain undergraduate freshmen, as in +\[ + \mathwitch 2\sin\frac{x}{2} = \sin x +\] +to key steps that permit to simplify greatly the proof of an otherwise totally +impenetrable theorem, for example +\[ + \mathwitch\Bigl( + \sup\,\{\,p\in\mathbb{N}\mid \text{$p$ and $p+2$ are both prime}\,\} + \Bigr) = \infty +\] +Another way of denoting the same operation is to place the broom and the witch +\emph{over} the relevant subformula: +\[ + \overrightwitchonbroom{ + \sup\,\{\,p\in\mathbb{N}\mid \text{$p$ and $p+2$ are both prime}\,\} + } = \infty +\] + +Different types of magic, that you might want to apply to a given formula, can +be distinguished by adding a black cat on the broom: for example, a student +could claim that +\begin{align*} + \mathwitch 2x\sin x &= 2\sin x^{2}\\ + \intertext{whereas, for another student,} + \mathwitch*2x\sin x &= \sin 3x +\end{align*} + + + +\subsection{Monoids} + +Let $X$ be a non-empty set, and suppose there exists a map +\begin{equation} + X\times X\longrightarrow X,\qquad + (x,y)\longmapsto P(x,y)=x\pumpkin y + \label{eq:Pdef} +\end{equation} +Suppose furthermore that this map satisfies the \textbf{associative property} +\begin{equation} + \forall x\in X,\;\forall y\in X,\;\forall z\in X\qquad + x\pumpkin(y\pumpkin z) = (x\pumpkin y)\pumpkin z + \label{eq:Passoc} +\end{equation} +Then, the pair $(X,\pumpkin)$ is called a \textbf{semigroup}, and $\pumpkin$ +denotes its \textbf{operation}. If, in addition, there exists in~$X$ an +element~$\mathghost$ with the property that +\begin{equation} + \forall x\in X\qquad + \mathghost\pumpkin x = x = x\pumpkin\mathghost + \label{eq:Punit} +\end{equation} +the triple $(X,\pumpkin,\mathghost)$ is called a \textbf{monoid}, and the +element~$\mathghost$ is called its \textbf{unit}. It is immediate to prove that +the unit of a monoid is unique: indeed, if $\mathghost'$ is another element +of~$X$ having the property~\eqref{eq:Punit}, then +\[ + \mathghost' = \mathghost'\pumpkin\mathghost = \mathghost +\] +(the first equality holds because \( \mathghost'\in X \) and +$\mathghost$~satisfies~\eqref{eq:Punit}, and the second because \( \mathghost\in +X \) and $\mathghost'$~satisfies~\eqref{eq:Punit}). + +Let $(X,\pumpkin)$ be a monoid. Since the operation~$\pumpkin$ is associative, +we may set, for \( x,y,z\in X \), +\[ + x\pumpkin y\pumpkin z =_{\mathrm{def}} + (x\pumpkin y)\pumpkin z = x\pumpkin (y\pumpkin z) +\] +More generally, since the order in which the operations are performed doesn't +matter, given $n$~elements \( x_{1},\dots,x_{n} \in X \), with $n\ge1$, the +result of +\[ + \bigpumpkin_{i=1}^{n} x_{i} = x_{1}\pumpkin\dots\pumpkin x_{n} +\] +is unambiguously defined. + +A monoid $(X,\pumpkin)$ is said to be \textbf{commutative} if +\begin{equation} + \forall x\in X,\;\forall y\in X\qquad + x\pumpkin y = y\pumpkin x + \label{eq:Pcomm} +\end{equation} +In this case, even the order of the \emph{operands} becomes irrelevant, so that, +for any finite set~$F$, the notation \( \bigpumpkin_{i\in F} x_{i} \) also +acquires a meaning. + + + +\subsection{Applications induced on power sets} + +If $X$ is a set, we'll denote by~$\wp(X)$ the set of all subsets of~$X$, that is +\[ + \wp(X) = \{\,S:S\subseteq X\,\} +\] + +Let \( f\colon A\longrightarrow B \) a function. Starting from~$f$, we can +define two other functions \( f^{\mathrightbat} \colon \wp(A) \longrightarrow +\wp(B) \) and \( f^{\mathleftbat} \colon \wp(B) \longrightarrow \wp(A) \) in the +following way: +\begin{alignat}{2} + &\text{for $X\subseteq A$,}\quad + &f^{\mathrightbat}(X) &= \{\,f(x):x\in X\,\} \\ + &\text{for $Y\subseteq B$,}\quad + &f^{\mathleftbat}(Y) &= \{\,x\in A:f(x)\in Y\,\} +\end{alignat} +In the case of functions with long names, or with long descriptions, we'll also +use a notation like \( \overrightflutteringbat{f_{1}+\dots+f_{n}} \) to mean the +same thing as \( (f_{1}+\dots+f_{n})^{\mathrightbat} \). + +For example, +\begin{align*} + \mathop{\overrightflutteringbat{\sin}}(\mathbb{R}) &= [-1,1] \\ + \mathop{\overrightflutteringbat{\sin}}\bigl([0,\pi]\bigr) &= [0,1] \\ + \mathop{\overrightflutteringbat{\sin+\cos}}(\mathbb{R}) + &= \bigl[-\tfrac{\sqrt{2}}{2},\tfrac{\sqrt{2}}{2}\bigr] \\ + \mathop{\overleftflutteringbat{\log}}\bigl(\mathopen]-\infty,0]\bigr) + &= \mathopen]0,1] +\end{align*} + + + +\subsection{A comprehensive test} + +A comparison between the ``standard'' and the ``script'' extensible over\slash +under arrows: +\begin{align*} + \overrightarrow{f_{1}+\dots+f_{n}} + &\neq\overscriptrightarrow{f_{1}+\dots+f_{n}} \\ + \overleftarrow{f_{1}+\dots+f_{n}} + &\neq\overscriptleftarrow{f_{1}+\dots+f_{n}} \\ + \overleftrightarrow{f_{1}+\dots+f_{n}} + &\neq\overscriptleftrightarrow{f_{1}+\dots+f_{n}} \\ + \underrightarrow{f_{1}+\dots+f_{n}} + &\neq\underscriptrightarrow{f_{1}+\dots+f_{n}} \\ + \underleftarrow{f_{1}+\dots+f_{n}} + &\neq\underscriptleftarrow{f_{1}+\dots+f_{n}} \\ + \underleftrightarrow{f_{1}+\dots+f_{n}} + &\neq\underscriptleftrightarrow{f_{1}+\dots+f_{n}} +\end{align*} + +\bigbreak + +A reduction my students are likely to make: +\[\mathwitch \frac{\sin x}{s} = x\,\mathrm{in}\] +The same reduction as an in-line formula: +\(\mathwitch \frac{\sin x}{s} = x\,\mathrm{in}\). + +Now with limits: +\[ + \mathwitch_{i=1}^{n} \frac + {\text{$i$-th magic term}} + {\text{$2^{i}$-th wizardry}} +\] +And repeated in-line: \( \mathwitch_{i=1}^{n} x_{i}y_{i} \). + +The \texttt{bold} math version is honored:\mathversion{bold} +\[ + \mathwitch* + \genfrac{<}{>}{0pt}{} + {\textbf{something terribly}}{\textbf{complicated}} + = 0 +\] +Compare it with \texttt{normal} math\mathversion{normal}: +\[ + \mathwitch* + \genfrac{<}{>}{0pt}{} + {\text{something terribly}}{\text{complicated}} + = 0 +\] +In-line math comparison: +{\boldmath $\mathwitch* f(x)$} versus $\mathwitch* f(x)$. + +There is also a left-facing witch: +\[\reversemathwitch \frac{\sin x}{s} = x\,\mathrm{in}\] +And here is the in-line version: +\(\reversemathwitch \frac{\sin x}{s} = x\,\mathrm{in}\). + +Test for \verb|\dots|: +\[ + \mathwitch_{i_{1}=1}^{n_{1}} \dots \mathwitch_{i_{p}=1}^{n_{p}} + \frac + {\text{$i_{1}$-th magic factor}} + {\text{$2^{i_{1}}$-th wizardry}} + \pumpkin\dots\pumpkin + \frac + {\text{$i_{p}$-th magic factor}} + {\text{$2^{i_{p}}$-th wizardry}} +\] +And repeated in-line: \( \mathwitch\dots\mathwitch_{i=1}^{n} x_{i}y_{i} \). + +\bigbreak + +Now the pumpkins. First the \texttt{bold} math version:\mathversion{bold}: +\[ \bigoplus_{h=1}^{m}\bigpumpkin_{k=1}^{n} P_{h,k} \] +Then the \texttt{normal} one\mathversion{normal}: +\[ \bigoplus_{h=1}^{m}\bigpumpkin_{k=1}^{n} P_{h,k} \] +In-line math comparison: +{\boldmath \( \bigpumpkin_{i=1}^{n} P_{i} \neq \bigoplus_{i=1}^{n} P_{i} \)} +versus \( \bigpumpkin_{i=1}^{n} P_{i} \neq \bigoplus_{i=1}^{n} P_{i} \). + +Close test: {\boldmath $\bigoplus$}$\bigoplus$. +And against the pumpkins: +{\boldmath $\bigpumpkin$}$\bigpumpkin\bigoplus${\boldmath $\bigoplus$}. + +In-line, but with \verb|\limits|: +\( \bigoplus\limits_{h=1}^{m}\bigpumpkin\limits_{k=1}^{n} P_{h,k} \). + +Binary: \( x\pumpkin y \neq x\oplus y \). And in display: +\[ a\pumpkin\frac{x\pumpkin y}{x\oplus y}\otimes b \] +Close test: {\boldmath $\oplus$}$\oplus$. +And with the pumpkins too: +{\boldmath $\pumpkin$}$\pumpkin\oplus${\boldmath $\oplus$}. + +In general, +\[ \bigpumpkin_{i=1}^{n} P_{i} = P_{1}\pumpkin\dots\pumpkin P_{n} \] + +\begingroup + +\bfseries\boldmath + +The same in bold: +\[ \bigpumpkin_{i=1}^{n} P_{i} = P_{1}\pumpkin\dots\pumpkin P_{n} \] + +\endgroup + +Other styles: \( \frac{x\pumpkin y}{2} \), exponent~$Z^{\pumpkin}$, +subscript~$W_{\!x\pumpkin y}$, double script \( 2^{t_{x\pumpkin y}} \). + +\bigbreak + +Clouds. A hypothetical identity: +\( \frac{\sin^{2}x + \cos^{2}x}{\cos^{2}x} = \mathcloud \). +Now the same identity set in display: +\[ \frac{\sin^{2}x + \cos^{2}x}{\cos^{2}x} = \mathcloud \] +Now in smaller size: \( \frac{\sin x+\cos x}{\mathcloud} = 1 \). + +Specular clouds, \texttt{bold}\ldots\mathversion{bold} +\[ \reversemathcloud \longleftrightarrow \mathcloud \] +\ldots and in \texttt{normal} math.\mathversion{normal} +\[ \reversemathcloud \longleftrightarrow \mathcloud \] +In-line math comparison: +{\boldmath \( \reversemathcloud \leftrightarrow \mathcloud \)} +versus \( \reversemathcloud \leftrightarrow \mathcloud \). +Abutting: {\boldmath $\mathcloud$}$\mathcloud$. + +\bigbreak + +Ghosts: \( \mathleftghost \mathghost \mathrightghost \mathghost \mathleftghost +\mathghost \mathrightghost \). Now with letters: \( H \mathghost H \mathghost h +\mathghost ab \mathghost f \mathghost wxy \mathghost \), and also \( +2\mathghost^{3} + 5\mathleftghost^{\!2}-3\mathrightghost_{i} = +12\mathrightghost_{j}^{4} \). Then, what about~$x^{2\mathghost}$ and \( +z_{\!\mathrightghost+1} = z_{\!\mathrightghost}^{2} + z_{\mathghost} \)? + +In subscripts: +\begin{align*} + F_{\mathghost+2} &= F_{\mathghost+1} + F_{\mathghost} \\ + F_{\!\mathrightghost+2} &= F_{\!\mathrightghost+1} + F_{\!\mathrightghost} +\end{align*} +Another test: \( \mathghost | \mathrightghost | \mathghost | \mathleftghost | +\mathghost | \mathrightghost | \mathghost | \mathleftghost | \mathghost \). We +should also try this: \( \mathrightghost \mathleftghost \mathrightghost +\mathleftghost \). + +Let us now compare ghosts set in normal math +\( \mathrightghost \mathleftghost \mathghost \mathrightghost \mathleftghost \) +with (a few words to push the bold ghosts to the right) +{\bfseries\boldmath ghosts like these +\( \mathrightghost \mathleftghost \mathghost \mathrightghost \mathleftghost \), +which are set in bold math.} + +\bigbreak + +Extensible arrows: +\begin{gather*} + A \xrightwitchonbroom[a]{\sumxn} B \xrightwitchonbroom{x+z} + C \xrightwitchonbroom{} D \\ + A \xrightwitchonbroom*[a]{\sumxn} B \xrightwitchonbroom*{x+z} + C \xrightwitchonbroom*{} D \\ + A \xleftwitchonbroom*[a]{\sumxn} B \xleftwitchonbroom*{x+z} + C \xleftwitchonbroom*{} D \\ + A \xleftwitchonbroom[a]{\sumxn} B \xleftwitchonbroom{x+z} + C \xleftwitchonbroom{} D +\end{gather*} +And \( \overrightwitchonbroom*{\sumxn}=0 \) versus \( +\overrightwitchonbroom{\sumxn}=0 \); or \( \overleftwitchonbroom*{\sumxn}=0 \) +versus \( \overleftwitchonbroom{\sumxn}=0 \). + +\begingroup + +\bfseries \mathversion{bold} + +Now repeat in bold: +\begin{gather*} + A \xrightwitchonbroom[a]{\sumxn} B \xrightwitchonbroom{x+z} + C \xrightwitchonbroom{} D \\ + A \xrightwitchonbroom*[a]{\sumxn} B \xrightwitchonbroom*{x+z} + C \xrightwitchonbroom*{} D \\ + A \xleftwitchonbroom*[a]{\sumxn} B \xleftwitchonbroom*{x+z} + C \xleftwitchonbroom*{} D \\ + A \xleftwitchonbroom[a]{\sumxn} B \xleftwitchonbroom{x+z} + C \xleftwitchonbroom{} D +\end{gather*} +And \( \overrightwitchonbroom*{\sumxn}=0 \) versus \( +\overrightwitchonbroom{\sumxn}=0 \); or \( \overleftwitchonbroom*{\sumxn}=0 \) +versus \( \overleftwitchonbroom{\sumxn}=0 \). + +\endgroup + +Hovering ghosts: \( \overrightswishingghost{\sumxn}=0 \). I~wonder whether +there is enough space left for the swishing ghost; let's try again: +\( \overrightswishingghost{(\sumxn)y}=0 \)! Yes, it looks like there is enough +room, although, of course, we cannot help the line spacing going awry. Also try +\( \overrightswishingghost{\mathstrut} \). +\begin{gather*} + A \xrightswishingghost[a]{\sumxn} B \xrightswishingghost{x+z} C + \xrightswishingghost{} D \\ + A \xleftswishingghost[a]{\sumxn} B \xleftswishingghost{x+z} C + \xleftswishingghost{} D +\end{gather*} +Another hovering ghost: \( \overleftswishingghost{\sumxn}=0 \). +Lorem ipsum dolor sit amet consectetur adipisci elit. Ulla rutrum, vel sivi sit +anismus oret, rubi sitiunt silvae. Let's see how it looks like when the ghost +hovers on a taller formula, as in \( +\overrightswishingghost{H_{1}\oplus\dots\oplus H_{k}} \). Mmm, it's suboptimal, +to say the least.\footnote{We'd better try \( +\underleftswishingghost{y_{1}+\dots+y_{n}} \), too; well, this one looks good!} + +Under ``arrow-like'' symbols: \( \underleftswishingghost{\sumxn}=0 \) and \( +\underrightswishingghost{x+y+z} \). There are \( +\underleftwitchonbroom*{\sumxn}=0 \) and \( \underrightwitchonbroom*{x+y+z} \) +as well. + +Compare \( A\xrightswishingghost{\sumxn} B \) with (add a few words to push it +to the next line) {\bfseries\boldmath its bold version \( +A\xrightswishingghost{\sumxn} B \).} + +\bigbreak + +Bats: $\mathbat${\boldmath $\mathbat$}. We are interested in seeing whether a +bat affixed to a letter as an exponent causes the lines of a paragraph to be +further apart than usual. Therefore, we now try~$f^{\mathbat}$, also +{\bfseries\boldmath in bold~$f^{\mathbat}$,} then we type a few more words (just +enough to obtain another typeset line or two) in order to see what happens. We +need to look at the transcript file, to check the outcome of the following +tracing commands. + +Asymmetric bats: $\mathleftbat${\boldmath $\mathleftbat$}, and also +$\mathrightbat${\boldmath $\mathrightbat$}. Exponents: this is \texttt{normal} +math \( x^{\mathleftbat} \pumpkin y^{\mathrightbat} \), while +{\bfseries\boldmath this is \texttt{bold} math \( x^{\mathleftbat} \pumpkin +y^{\mathrightbat} \).} Do you note the difference? Let's try subscripts, too: +\( f_{\mathleftbat} \pumpkin g_{\mathrightbat} \) versus {\bfseries\boldmath +bold \( f_{\mathleftbat} \pumpkin g_{\mathrightbat} \).} +Now, keep on repeating some silly text, just in order to fill up the paragraph +with a sufficient number of lines. Now, keep on repeating some silly text, just +in order to fill up the paragraph with a sufficient number of lines. Now, keep +on repeating some silly text, just in order to fill up the paragraph with a +sufficient number of lines. That's enough! + +Hovering bats: \( \overrightflutteringbat{\sumxn}=0 \). I~wonder whether there +is enough space left for the swishing bat; let's try again: +\( \overrightflutteringbat{(\sumxn)y}=0 \)! Yes, it looks like there is enough +room (with the usual remark abut line spacing). Also try +\( \overrightflutteringbat{\mathstrut} \). +\begin{gather*} + A \xrightflutteringbat[a]{\sumxn} B \xrightflutteringbat{x+z} + C \xrightflutteringbat{} D \\ + A \xleftflutteringbat[a]{\sumxn} B \xleftflutteringbat{x+z} C + \xleftflutteringbat{} D +\end{gather*} +Another hovering bat: \( \overleftflutteringbat{\sumxn}=0 \). + +Under ``arrow-like'' bats: \( \underleftflutteringbat{\sumxn}=0 \) and \( +\underrightflutteringbat{x+y+z} \). + +Compare \( A\xrightflutteringbat{\sumxn} B \) with (add a few words to push it +to the next line) {\bfseries\boldmath its bold version \( +A\xrightflutteringbat{\sumxn} B \).} + +Test for checking the placement of the formulas that go over or under the +fluttering bat: +\begin{gather*} + A \xrightflutteringbat[\text{a long subscript}]{\text{a long superscript}} B + \xrightflutteringbat[\text{a long subscript}]{|} C + \xrightflutteringbat{|} D \xrightflutteringbat{} E \\ + A \xleftflutteringbat[\text{a long subscript}]{\text{a long superscript}} B + \xleftflutteringbat[\text{a long subscript}]{|} C + \xleftflutteringbat{|} D \xleftflutteringbat{} E +\end{gather*} +I'd say it's now OK\@\ldots + +\bigbreak + +Extensible arrows with pitchfork: +\begin{gather*} + A \xrightwitchonpitchfork[a]{\sumxn} B \xrightwitchonpitchfork{x+z} C + \xrightwitchonpitchfork{} D \\ + A \xrightwitchonpitchfork*[a]{\sumxn} B \xrightwitchonpitchfork*{x+z} C + \xrightwitchonpitchfork*{} D \\ + A \xleftwitchonpitchfork*[a]{\sumxn} B \xleftwitchonpitchfork*{x+z} C + \xleftwitchonpitchfork*{} D \\ + A \xleftwitchonpitchfork[a]{\sumxn} B \xleftwitchonpitchfork{x+z} C + \xleftwitchonpitchfork{} D +\end{gather*} +And \( \overrightwitchonpitchfork*{\sumxn}=0 \) versus \( +\overrightwitchonpitchfork{\sumxn}=0 \); or \( +\overleftwitchonpitchfork*{\sumxn}=0 \) versus \( +\overleftwitchonpitchfork{\sumxn}=0 \). There are \( +\underleftwitchonpitchfork*{\sumxn}=0 \) and \( +\underrightwitchonpitchfork*{x+y+z} \) as well. + +\begingroup + +\bfseries \mathversion{bold} + +Now again, but all in boldface: +\begin{gather*} + A \xrightwitchonpitchfork[a]{\sumxn} B \xrightwitchonpitchfork{x+z} C + \xrightwitchonpitchfork{} D \\ + A \xrightwitchonpitchfork*[a]{\sumxn} B \xrightwitchonpitchfork*{x+z} C + \xrightwitchonpitchfork*{} D \\ + A \xleftwitchonpitchfork*[a]{\sumxn} B \xleftwitchonpitchfork*{x+z} C + \xleftwitchonpitchfork*{} D \\ + A \xleftwitchonpitchfork[a]{\sumxn} B \xleftwitchonpitchfork{x+z} C + \xleftwitchonpitchfork{} D +\end{gather*} +And \( \overrightwitchonpitchfork*{\sumxn}=0 \) versus \( +\overrightwitchonpitchfork{\sumxn}=0 \); or \( +\overleftwitchonpitchfork*{\sumxn}=0 \) versus \( +\overleftwitchonpitchfork{\sumxn}=0 \). There are \( +\underleftwitchonpitchfork*{\sumxn}=0 \) and \( +\underrightwitchonpitchfork*{x+y+z} \) as well. + +\endgroup + +The big table of the rest: +\begin{align*} + A &\xrightbroom{\sumxn} B & + \overrightbroom {\sumxn} = 0 && + \underrightbroom{\sumxn} = 0 \\ + && + \overscriptrightbroom {\sumxn} = 0 && + \underscriptrightbroom{\sumxn} = 0 \\ + A &\xleftbroom{\sumxn} B & + \overleftbroom {\sumxn} = 0 && + \underleftbroom{\sumxn} = 0 \\ + && + \overscriptleftbroom {\sumxn} = 0 && + \underscriptleftbroom{\sumxn} = 0 \\ + A &\xrightpitchfork{\sumxn} B & + \overrightpitchfork {\sumxn} = 0 && + \underrightpitchfork{\sumxn} = 0 \\ + && + \overscriptrightpitchfork {\sumxn} = 0 && + \underscriptrightpitchfork{\sumxn} = 0 \\ + A &\xleftpitchfork{\sumxn} B & + \overleftpitchfork {\sumxn} = 0 && + \underleftpitchfork{\sumxn} = 0 \\ + && + \overscriptleftpitchfork {\sumxn} = 0 && + \underscriptleftpitchfork{\sumxn} = 0 \\ +\end{align*} + +Now in bold\ldots\space No, please, seriously, just the examples for the minimal +size: in \texttt{normal} math we show \( A \xrightbroom{} B \) and \( C +\xleftpitchfork{} D \) and \( \overscriptrightbroom{} \) and \( +\overscriptleftpitchfork{} \), which we now repeat {\bfseries\boldmath in +\texttt{bold} math \( A \xrightbroom{} B \) and \( C \xleftpitchfork{} D \) and +\( \overscriptrightbroom{} \) and \( \overscriptleftpitchfork{} \).} Mmmh, the +minimal size seems way too narrow: is it the same for the standard arrows? +Let's see: +\begin{align*} + A &\xrightarrow{} B & \overrightarrow{} && \overscriptrightarrow{} \\ + A &\xleftarrow {} B & \overleftarrow {} && \overscriptleftarrow {} \\ + A &\xrightbroom{} B & \overrightbroom{} && \overscriptrightbroom{} \\ + A &\xleftbroom {} B & \overleftbroom {} && \overscriptleftbroom {} +\end{align*} +Well, almost so, but the arrow tip is much more ``discrete''\ldots + +To cope with this problem, \verb|\rightbroom| and siblings have been introduced: +for example, \( X\rightbroom Y \). + +A comparative table follows: +\begin{align*} + A &\rightbroom B & C &\hmrightpitchfork D \\ + A &\leftbroom B & C &\hmleftpitchfork D \\ + A &\longrightarrow B & C &\Longrightarrow D \\ + A &\longleftarrow B & C &\Longleftarrow D \\ + A &\xrightwitchonbroom{} B & C &\xrightwitchonpitchfork{} D \\ + A &\xleftwitchonbroom{} B & C &\xleftwitchonpitchfork{} D \\ +\end{align*} + +Finally, \( \overbat{y} + \underbat{x} + z = 0 \) versus \( \overbat*{y} + +\underbat*{x} + z = 0 \), and also note that \( {\overbat{x}}_{2} \ne +{\overbat*{x}}_{2} \). Oh, wait, we have to check {\bfseries\boldmath the bold +version \( {\overbat{x}}_{2} \ne {\overbat*{x}}_{2} \)} too! + +\bigbreak + +We've now gotten to skulls. +\[ A \xrightswishingghost{\mspace{100mu}} B \skull C \] + +Skulls are similar to pumpkins, and thus to \verb|\oplus|: +\begin{gather*} + H_{1} \skull \dots \skull H_{n} \\ + H_{1} \oplus \dots \oplus H_{n} \\ + H_{1} \pumpkin \dots \pumpkin H_{n} +\end{gather*} +As you can see, though, the dimensions differ slightly: +\( {\skull}{\oplus}{\pumpkin} \). +Subscript: \( A_{x\skull y} \). +Now the ``large'' operator version: +\begin{align*} + \bigskull _{i=1}^{n} H_{i} &= H_{1} \skull \dots \skull H_{n} \\ + \bigoplus _{i=1}^{n} H_{i} &= H_{1} \oplus \dots \oplus H_{n} \\ + \bigpumpkin_{i=1}^{n} H_{i} &= H_{1} \pumpkin \dots \pumpkin H_{n} +\end{align*} +In-line: \( \bigskull_{i=1}^{n} H_{i} = H_{1}\skull\dots\skull H_{n} \). +Example of close comparison: \( \bigoplus\bigskull\bigpumpkin X \). +{\bfseries\boldmath Now repeat in bold: \( \bigskull_{i=1}^{n} H_{i} = +H_{1}\skull\dots\skull H_{n} \).} + +Skulls look much gloomier than pumpkins: compare \( P\pumpkin U\pumpkin M = P \) +with \( S\skull K\skull U = L\odot L \). Why did~I ever outline such a grim and +dreary picture? The ``large operator'' variant, then, is truly dreadful! How +could anybody write a formula like \( \bigskull_{i}\bigskull_{j} A_{i}\otimes +B_{j} \)? How much cheerer is \( \bigpumpkin_{i}\bigpumpkin_{j} A_{i}\otimes +B_{j} \)? And look at the displayed version: +\[ + \bigskull_{i=1}^{m}\bigskull_{j=1}^{n} A_{i}\otimes B_{j} \neq + \bigpumpkin_{i=1}^{m}\bigpumpkin_{j=1}^{n} A_{i}\otimes B_{j} +\] + +Comparison between math versions: $x\skull y$ is normal math, +{\bfseries\boldmath whereas $x\skull y$ is bold.} Similarly, \( +\bigskull_{i-1}^{n} K_{i} = L \) is normal, {\bfseries\boldmath but \( +\bigskull_{i-1}^{n} K_{i} = L \) is bold.} And now the displays: normal +\[ + \bigskull_{i=1}^{m}\bigskull_{j=1}^{n} A_{i}\otimes B_{j} \neq + \bigpumpkin_{i=1}^{m}\bigpumpkin_{j=1}^{n} A_{i}\otimes B_{j} +\] +versus {\bfseries\boldmath bold +\[ + \bigskull_{i=1}^{m}\bigskull_{j=1}^{n} A_{i}\otimes B_{j} \neq + \bigpumpkin_{i=1}^{m}\bigpumpkin_{j=1}^{n} A_{i}\otimes B_{j} +\] +math.} Back to the normal font. + +\end{document} diff --git a/Master/texmf-dist/doc/latex/halloweenmath/manifest.txt b/Master/texmf-dist/doc/latex/halloweenmath/manifest.txt index 74ae5fc5634..137e4967b8c 100644 --- a/Master/texmf-dist/doc/latex/halloweenmath/manifest.txt +++ b/Master/texmf-dist/doc/latex/halloweenmath/manifest.txt @@ -21,7 +21,7 @@ precisely, it explains how the locutions "Work" and "Compiled Work", used in the LaTeX Project Public License, are to be interpreted in the case of this work. -January 6, 2017 (vers. 0.01) +April 16, 2017 (vers. 0.10) @@ -82,8 +82,8 @@ Network (CTAN) includes also the following five files: README -- guide to directory contents halloweenmath-doc.pdf -- overview of the halloweenmath package (PDF) -halloweenexample.tex -- example LaTeX source for this package -halloweenexample.pdf -- typeset version of the preceding item (PDF) +halloweenmath-man.pdf -- user's manual for this same package (PDF) +halloweenmath-man.tex -- LaTeX source of the preceding item Makefile -- Makefile to generate code or documentation These five files are included only for convenience's sake and are _not_ |