The ZX-calculus is a graphical language for reasoning about ZX-diagrams, a
type of tensor networks that can represent arbitrary linear maps between
qubits. Using the ZX-calculus, we can intuitively reason about quantum theory,
and optimise and validate quantum circuits. In this paper we introduce PyZX, an
open source library for automated reasoning with large ZX-diagrams. We give a
brief introduction to the ZX-calculus, then show how PyZX implements methods
for circuit optimisation, equality validation, and visualisation and how it can
be used in tandem with other software. We end with a set of challenges that
when solved would enhance the utility of automated diagrammatic reasoning.Comment: In Proceedings QPL 2019, arXiv:2004.1475