A simple LaTeX package for improving readability and accessibility in complex math equations.

By Robin Truax in Design

July 26, 2022

exparrows makes it easier for readers to understand complicated equations.

exparrows is a simple LaTeX package that allows one to easily insert customizable arrows pointing to parts of your equations. Adapted from Sibin Mohan’s examples on Twitter, exparrows can improve the readability of long equations by clarifying the role of each term in the equation with a colorful annotation. exparrows allows one to create arrows with many customization options: whether or not they point to one or two places in the code, the direction and color of the arrows, etc.

An Example

Consider the following equation, which gives a recursive definition for a logical formula that succintly (in the sense that it has polynomial length in k) checks whether or not a Turing machine reaches state d from state c in at most 2k steps:

An equation which does not use expositionary arrows.

An equation which does not use expositionary arrows.

This formula is correct, but it’s hard to understand why without spending a few minutes puzzling over why. To ease this process, one can add expositionary arrows using the exparrows package that explain the role of each term in the formula.

An equation using expositionary arrows for clarity.

An equation using expositionary arrows for clarity.

This second option is far easier to understand, improving readability and accessibility.


The documentation for exparrows is available here (and the TeX for that documentation is available here).


The code for exparrows is available here.


All credit for the idea goes to Sibin Mohan here; all I did was reorganize the code so that those less familiar with TikZ would have an easier time using his examples (and those familiar with TikZ reproduce the results more quickly and efficiently).

Posted on:
July 26, 2022
2 minute read, 273 words
See Also:
My Name Is Not Robin/Shining Lights
3,33 MIN
Topographic Map of San Francisco