Annotated equations for increased readability and understanding of papers
twitter.com
twitter.com
Also, as yunruse mentioned in [0], and as I have done in my own videos that include math, syntax highlighting for math is very useful for absorbing new math. How acceptable would that be to practitioners already deep in their fields?
So, could annotations of this form be acceptable to both groups if they were switchable on or off in an online version of a paper?
Not necessarily. Will Crichton, a PhD student at Stanford University, has been working on a tool called Nota [0] that he's hoping might serve as a platform for online paper publication. I'd suggest checking out the initial presentation of Nota [1] to see some ideas of how syntax highlighting-type effects can be made as toggle-able capabilities that are not intrusive nor dislocated as you suggest.
Prose is just one transfer channel, and for me, not a very efficient one (though I love reading!). Mathematical notation is one more.
But that leaves out word association, color, spatial relationships, conceptual graphs, diagrams, etc. The more channels I can activate, the faster I can build intuition, and intuition facilitates practical application.
Here's an example of how I like to use color from my own modest work: https://youtu.be/iyjIVSnrPSo?t=424
Another example: https://youtu.be/iyjIVSnrPSo?t=345
In this case, each independent variable in the equation gets its own color, and that color corresponds to a label on the graph above. The imaginary unit also gets a special color, which matches the color of its definition, for those of my audience who are unfamiliar with or out of practice with complex numbers. And the syntactic elements are muted to make the shape of the equation "pop" for those whose eyes are not routinely trained to read math notation. Elsewhere in the video I use different colors to represent positive, negative, and zero frequencies.
So to restate, it's all about giving information as many paths into my brain as possible.
[0] https://cs.uwaterloo.ca/current-undergraduate-students/major...
The study's summary says that this is because conspiracy theories are communicated in a language that is understandable, while scientific communication uses language that is opaque for most people.
Which leads me to the conclusion that any effort towards making scientific communication more understandable to general public -- including the annotated equations -- is a good thing.
Well, when you remove the constraint to be truthful, you can do a lot of things to make statements that are more plausible and convincing to a layman. In other words, of course when the main requirement is just to sound good you end up with statements that are more convincing.
Did you know that 74.13% of all statistics are completely made up? It's true! I've got a report from the Institute of Data & Information Oriented Technology Studies right here!
Single letter variable names (often from different alphabets) and complex expressions that should be broken down would never make it through a code review ;-)
Not at all. Formulas in a math paper always come with at least a paragraph of text explaining them. You aren't supposed to read the formula without the explanation.
> Single letter variable names (often from different alphabets) and complex expressions that should be broken down would never make it through a code review ;-)
That's done for readability. The text explains the terms of the formula and the formula concisely summarizes the precise relationship between them.
Consider this classic, very well written paper: https://math.berkeley.edu/~nadler/atiyah.classification.pdf
The “Generalities” section has only one page and hardly any equations, author simply defines notation he uses. And yet, it requires something like 2+ years of prior education in advanced mathematics (either in strong undergrad program, or in a graduate program) to really grasp it. Author even defines his notation: “E [is] the sheaf of germs of regular sections of E, and \Gamma(E) [is] the vector space of global regular sections of E, thus \Gamma(E) = H^0(X, E).”. Sure, he doesn’t define what H^0(X,E) is, but if I told you that it’s the degree zero sheaf cohomology group of E, would that make any difference to you?
I find that this isn't true. I spent quite a few years working on number theory problems on my own, just out of interest. I developed several techniques that I just couldn't understand when other people used them, because they had really weird notations, like |x-Σbⁿdₙ|<ϵ, with no definitions for any of the letters. (Feel free to guess what that means. Hint: nothing to do with set membership.)
Sure, you can work it out if you can compare several different papers, so it's only a barrier for a few days… but it's still a barrier.
The difference is that it is much easier to websearch a concept by name than by notation. "degree zero sheaf cohomology group" is a big handle to search, discover, and learn things with, whereas "H^0(X,E)" is a deadend.
To some extent the Scheme and Haskell communities do this already, because their favored languages are compact enough to allow them to include their programs in more or less conventional math papers.
http://canonical.org/~kragen/sw/dev3/paperalgo is a notation I developed for writing procedural programs with paper and pencil, extending mathematical notation with lightweight notation for classes, methods/functions, assignment, iteration, conditionals, and pattern matching. For many years I have used it whenever I'm writing code on paper or a whiteboard, but still find it harder to read than more traditional notations like Python and Scheme.
In addition to compact code and explanation, it's often useful to have example inputs and outputs (the way spreadsheets and Jupyter notebooks or R notebooks do), as well as proofs.
I think it would be tougher to find anyone willing to read programs written like this. Requiring an explanation to understand the variables is very similar to encoding the variables names and putting a lookup table below. Why force someones eyes to dart back and forth between the program and lookup table, just to get an idea of what the variable are, rather than also including a very rough explanation of what they variables are doing, in the program itself, by giving them meaningful names?
We only have so much working memory. Giving variables names frees up a significant amount.
This, by the way, is probably the main reason math uses single letters for names (with some rules of thumb that hint at the type, like n for an integer, X for a scheme, calligraphic F for a sheaf, etc.).
This was a good lesson for me, I won't do that again and I'm far more verbose now.
My thinking is that maybe math should learn from things like that as well, perhaps expanding equations and being more verbose within the equation instead of an explanation next to it would make maths more accessible to a broader audience.
You shouldn’t really read the equations before understanding what they are about.
They are usually written down to get rid of ambiguities of the natural language.
Same reason one often sees I1 + I2+I3+I4 in estimates. For the moment you actively don't want the mental overload of all the details. You just want to know that there are four terms to be discussed, now forget about all others and let us start looking at the first one.
Similarly long notation/names just do not work well on blackboards/whiteboards.
But it can really help understand the practicalities of it, like any paper involving models, which are pretty numerous outside of pure mathematics. Unfortunately, I've seen many papers that "leave it to the reader" when it comes to equations used, with no translation between variable names and what they actually represents.
mathematics is partially a language (maybe one of the most universal ones), once you learn common conventions, it becomes easier.
Obviously it's no problem for human minds to learn huge numbers of symbols, just like some CJK languages with a large number of ideographs that have to be understood in context.
I do think auto-annotation, as well as other types of interactivity are great, though!
julia> x = 19; w = 5; y = 10x + 2.0w
200.0If I designed a new language from 0, I'd like to allow only single letter variable identifers (possibly with unicode sub-indices and modifiers).
In the nicest possible way - this is absolute madness.
The language could aid you to clarify your code. For example, by forcing each variable to be declared explicitly at the beginning of its scope, on a line all by itself. Then the compiler could put a warning if one of these declarations didn't have a comment.
I think an annotated version would be good as a supplement.
It will eventually allow us to make even more complex constructs.
Yes, in some fields certain symbols are known by tradition to mean something and older papers that were published with a limited audience in mind omitted some descriptions which is awfully annoying, but this is solved by having a section describing what your abbreviations and symbols refer to, not with highlighter spam.
I have to disagree, there’s nothing stopping readers from doing this already, I think it’s quite common
I do agree that one needs to actually read the paper to really understand the context of some equation, but honestly flipping between the abbreviation table or the dense prose of “where x is foo, y is bar, zzz” it’s just not readable. I don’t think it’s would make sense to use this style for every equation ever, but I think it has utility
Yes this is called a lookup table, and while it can seem obvious to you when you have spent 1y working on the same subject, it is not for the others.
People will anyway skim-read it, as I do, and put it aside for detailed reading, if the overall idea is good or if I found an interesting technique.
Anyway, the best papers I read were short and concise. Cf. historically Lebesgue paper about measure theory and his correspondance with Picard, compared to Borel’s theory.
The reason is probably that "it's always been like that", just like keyboard layouts. Though one could argue that coloring would be not be very disruptive and backwards-compatible, so it wouldn't hurt traditional reading much.
I've always found it interesting how video games (e.g. Legend of Zelda) will make certain key words in text a different color. It works well—but why do we only do it in video games?
I feel like these annotations go slightly overboard; the entire equation/annotation construct is visually pleasing, but hard to parse.
By analogy, Wikipedia articles have a feature where, if you mouse-over a link, it'll display a preview of the link-target (https://en.wikipedia.org/wiki/Wikipedia:Tools/Navigation_pop... ). This can be an efficient way for a reader to conveniently glance at the definition of a term while reading.
Mathematical notation varies significantly between fields, and many papers define custom symbols with their own paper-specific definitions. So this sort of feature isn't just something for math-newbies, but rather something that could significantly benefit experts too.
The same sort of annotations might be more situational in non-active documents, where there'd be more of a trade-off between helpful-annotations and clutter.
" Lap(x | mu, b) = ...
where b>0, a scalar parameter. "
What is needed is some better way to motivate the concepts behind any maths that is confusing for people who might be confused.
I'm a no-code tools developer. Yours sound like an interesting problem to solve, could you elaborate on your use case? What programming languages? What kind of information did you need to annotate? Which are your expectations on usability?
The whole "pay £1000 per extra page" by itself has been enough to reluctantly cause me to cram math inline and assume symbols are known to the field without too much explanation.
If I’m reading academic papers on a particular topic then I already know the notation the math is written in.
If I’m reading a paper outside of my field then I’m not really interested in the details of the equation but more of its application and what it means.
This is not true in my field - notation is all over the place, even for the same topic.
> differential geometry is the study of properties that are invariant under change of notation
That ought to go on a t-shirt.
This is fine, until you find the application interesting, and try to apply it. I've had to contact authors just to figure out which one of several parameters a, b, c, or d actually represented. To be fair, these came with apologies.
I can see this style of annotation it being helpful when you need to add some context or want to explain a pre-existing formula.
And I can definitely see this being used to highlight key ideas during a tricky derivation, stuff like partial integration could be a lot neater if you can point out the part of the equation that you're partially integrating.