A collection of useful, predefined and portable macros for typesetting common notations found in and around flowR.
- absint.sty - For Notation around Abstract Interpretation (Domains, Lattices, etc.)
The documentation and the examples are compiled from doc/absint.tex and examples/absint.tex on every push.
\usepackage{absint} % color, links, sharp, stubs, ...
\absexpr{(X, \partof, \lub, \glb, \bot, \top)} % a complete lattice
\absexpr{\abstractly{(X, \partof, \lub)}} % the same, abstract
\absexpr{\powerset(\Z) \galois \NumericDomain} % a Galois connection
\absexpr{(\lam{x}{M}) \app N \betared \subst{M}{x}{N}} % lambda calculus
\absintlegend % legend of the notation used- Scoped: outside of
\absexprand theabsintenvironment,\lorand\sqcupkeep their usual meaning. \abstractly{...}marks the operators and domains of a whole expression.- Symbols link to their
\absintlegendentry; without an entry they stay plain, so no undefined references. - Lattices, domains, semantics and lambda calculus (abstraction, reduction, substitution, typing judgements) out of the box.
\DeclareAbsintSymbol,\DeclareAbsintAliasand\DeclareAbsintCommandadd your own.
examples/ and doc/ build with latexmk; their .latexmkrc points
TEXINPUTS here, so nothing needs to be installed. The documentation
highlights its code with xlistings,
which comes as a submodule:
git clone --recurse-submodules https://github.com/flowr-analysis/tex-notations