Mathematical diagrams are essential for learning and communication. Yet, these diagrams remain tedious and difficult to make with digital tools. Thus, I propose to build a system that tackles the general problem of converting abstract mathematical ideas into visual diagrams. In this thesis, I show how it is possible to separate the specification of a diagram from its synthesis. Organizing the diagramming process in this way enables several aspects of mathematical diagramming to be made first-class: the mathematical domain of a diagram, its mathematical content, its visual representation, and the synthesis of a concrete diagram.
I present design goals for any system that aims to convert abstract mathematical ideas into visual diagrams, and I present a system called Penrose that I demonstrate meets these design goals. This system uses language-based approaches to specifying aspects of mathematical diagramming, paired with optimization-based approaches to synthesizing concrete diagrams.
I propose to validate the usefulness of the system for domain experts in making realistic diagrams, and simultaneously do formative work with them on how the system could be improved. I also propose to study the problem of diagram layout in general and create algorithms that better support this goal.
The vision is for these designs and algorithmic techniques to lower the barrier to making beautiful and useful diagrams.
Keenan Crane (Co-Chair)
Jonathan Aldrich (Co-Chair)
Pat Hanrahan (Stanford University)
Zoom Participation. See announcement.