\documentclass{report}
+% Setting hypertexnames=false forces hyperref to use a consistent
+% internal counter for proposition/equation references rather than
+% being clever, which doesn't work after we reset those counters.
+\usepackage[hypertexnames=false]{hyperref}
+\hypersetup{
+ colorlinks=true,
+ linkcolor=blue,
+ citecolor=blue
+}
+
+% We have to load this after hyperref, so that links work, but before
+% mjotex so that mjotex knows to define its glossary entries.
+\usepackage[nonumberlist]{glossaries}
+\makenoidxglossaries
+
+% If you want an index, we can do that too. You'll need to define
+% the "INDICES" variable in the GNUmakefile, though.
+\usepackage{makeidx}
+\makeindex
+
\usepackage{mjotex}
\usepackage{mathtools}
\begin{document}
+ \begin{section}{Algebra}
+ If $R$ is a \index{commutative ring}, then $\polyring{R}{X,Y,Z}$
+ is a multivariate polynomial ring with indeterminates $X$, $Y$,
+ and $Z$, and coefficients in $R$. If $R$ is a moreover an integral
+ domain, then its fraction field is $\Frac{R}$.
+ \end{section}
+
\begin{section}{Algorithm}
An example of an algorithm (bogosort) environment.
\begin{section}{Arrow}
The identity operator on $V$ is $\identity{V}$. The composition of
$f$ and $g$ is $\compose{f}{g}$. The inverse of $f$ is
- $\inverse{f}$.
+ $\inverse{f}$. If $f$ is a function and $A$ is a subset of its
+ domain, then the preimage under $f$ of $A$ is $\preimage{f}{A}$.
+ \end{section}
+
+ \begin{section}{Calculus}
+ The gradient of $f : \Rn \rightarrow \Rn[1]$ is $\gradient{f} :
+ \Rn \rightarrow \Rn$.
\end{section}
\begin{section}{Common}
The function $f$ applied to $x$ is $f\of{x}$. We can group terms
like $a + \qty{b - c}$ or $a + \qty{b - \sqty{c - d}}$. Here's a
set $\set{1,2,3} = \setc{n \in \Nn[1]}{ n \le 3 }$. Here's a pair
- of things $\pair{1}{2}$ or a triple of them
- $\triple{1}{2}{3}$. The Cartesian product of two sets $A$ and $B$
- is $\cartprod{A}{B}$; if we take the product with $C$ as well,
- then we obtain $\cartprodthree{A}{B}{C}$. The direct sum of $V$
- and $W$ is $\directsum{V}{W}$ and the factorial of the number $10$
- is $\factorial{10}$.
-
+ of things $\pair{1}{2}$ or a triple of them $\triple{1}{2}{3}$,
+ and the factorial of the number $10$ is $\factorial{10}$.
+
+ The Cartesian product of two sets $A$ and $B$ is
+ $\cartprod{A}{B}$; if we take the product with $C$ as well, then
+ we obtain $\cartprodthree{A}{B}{C}$. The direct sum of $V$ and $W$
+ is $\directsum{V}{W}$. Or three things,
+ $\directsumthree{U}{V}{W}$. How about more things? Like
+ $\directsummany{k=1}{\infty}{V_{k}} \ne
+ \cartprodmany{k=1}{\infty}{V_{k}}$. Those direct sums and
+ cartesian products adapt nicely to display equations:
+ %
+ \begin{equation*}
+ \directsummany{k=1}{\infty}{V_{k}} \ne \cartprodmany{k=1}{\infty}{V_{k}}.
+ \end{equation*}
Here are a few common tuple spaces that should not have a
superscript when that superscript would be one: $\Nn[1]$,
$\Zn[1]$, $\Qn[1]$, $\Rn[1]$, $\Cn[1]$. However, if the
\begin{equation*}
\unionmany{k=1}{\infty}{A_{k}} = \intersectmany{k=1}{\infty}{B_{k}}
\end{equation*}
+
+ Finally, we have the four standard types of intervals in $\Rn[1]$,
%
+ \begin{align*}
+ \intervaloo{a}{b} &= \setc{ x \in \Rn[1]}{ a < x < b },\\
+ \intervaloc{a}{b} &= \setc{ x \in \Rn[1]}{ a < x \le b },\\
+ \intervalco{a}{b} &= \setc{ x \in \Rn[1]}{ a \le x < b }, \text{ and }\\
+ \intervalcc{a}{b} &= \setc{ x \in \Rn[1]}{ a \le x \le b }.
+ \end{align*}
+ \end{section}
+
+ \begin{section}{Complex}
+ We sometimes want to conjugate complex numbers like
+ $\compconj{a+bi} = a - bi$.
\end{section}
\begin{section}{Cone}
The conic hull of a set $X$ is $\cone{X}$; its affine hull is
$\aff{X}$, and its convex hull is $\conv{X}$. If $K$ is a cone,
then its lineality space is $\linspace{K}$, its lineality is
- $\lin{K}$, and its extreme directions are $\Ext{K}$.
+ $\lin{K}$, and its extreme directions are $\Ext{K}$. The fact that
+ $F$ is a face of $K$ is denoted by $F \faceof K$; if $F$ is a
+ proper face, then we write $F \properfaceof K$.
+ \end{section}
+
+ \begin{section}{Euclidean Jordan algebras}
+ The Jordan product of $x$ and $y$ in some Euclidean Jordan algebra
+ is $\jp{x}{y}$.
\end{section}
\begin{section}{Font}
their tensor product is $\tp{x}{y}$. The Kronecker product of
matrices $A$ and $B$ is $\kp{A}{B}$. The adjoint of the operator
$L$ is $\adjoint{L}$, or if it's a matrix, then its transpose is
- $\transpose{L}$. Its trace is $\trace{L}$.
+ $\transpose{L}$. Its trace is $\trace{L}$. Another matrix-specific
+ concept is the Moore-Penrose pseudoinverse of $L$, denoted by
+ $\pseudoinverse{L}$.
The span of a set $X$ is $\spanof{X}$, and its codimension is
$\codim{X}$. The projection of $X$ onto $V$ is $\proj{V}{X}$. The
$\boundedops[W]{V}$. If $W = V$, then we write $\boundedops{V}$
instead.
+ If you want to solve a system of equations, try Cramer's
+ rule~\cite{ehrenborg}.
+
The direct sum of $V$ and $W$ is $\directsum{V}{W}$, of course,
but what if $W = V^{\perp}$? Then we wish to indicate that fact by
writing $\directsumperp{V}{W}$. That operator should survive a
\end{section}
\begin{section}{Listing}
- Here's an interactive sage prompt:
+ Here's an interactive SageMath prompt:
\begin{tcblisting}{listing only,
colback=codebg,
[0 0], [0 0], [1 0], [0 1]
]
\end{tcblisting}
+
+ However, the smart way to display a SageMath listing is to load it
+ from an external file (under the ``listings'' subdirectory):
+
+ \sagelisting{example}
+
+ Keeping the listings in separate files makes it easy for the build
+ system to test them.
\end{section}
\begin{section}{Miscellaneous}
fox
\end{theorem}
+ \begin{exercise}
+ jumps
+ \end{exercise}
+
\begin{definition}
quod
\end{definition}
fox
\end{theorem*}
+ \begin{exercise*}
+ jumps
+ \end{exercise*}
+
\begin{definition*}
quod
\end{definition*}
The interior of a set $X$ is $\interior{X}$. Its closure is
$\closure{X}$ and its boundary is $\boundary{X}$.
\end{section}
-
+
+ \setlength{\glslistdottedwidth}{.3\linewidth}
+ \setglossarystyle{listdotted}
+ \glsaddall
+ \printnoidxglossaries
+
+ \bibliographystyle{mjo}
+ \bibliography{local-references}
+
+ \printindex
\end{document}