Skip to Main content Skip to Navigation
Preprints, Working Papers, ...

Graphical Calculus for products and convolutions

Abstract : Graphical calculus is an intuitive visual notation for manipulating tensors and index contractions. Using graphical calculus leads to simple and memorable derivations, and with a bit of practice one can learn to prove complex identities even without the need for pen and paper. This manuscript is meant as a demonstration of the power and flexibility of graphical notation and we advocate exploring the use of graphical calculus in undergraduate courses. In the first part we define the following matrix products in graphical language: dot, tensor, Kronecker, Hadamard, Kathri-Rao and Tracy-Singh. We then use our definitions to prove several known identities in an entirely graphical way. Despite ordinary proofs consist in several lines of quite involved mathematical expressions, graphical calculus is so expressive that after writing an identity in graphical form we can realise by visual inspection that it is in fact true. As an example of the intuitiveness of graphical proofs, we derive two new identities. In the second part we develop a graphical description of convolutions, which is a central ingredient of convolutional neural networks and signal processing. Our single definition includes as special cases the circular discrete convolution and the cross-correlation. We illustrate how convolution can be seen as another type of product and we derive a generalised convolution theorem. We conclude with a quick guide on implementing tensor contractions in python.
Document type :
Preprints, Working Papers, ...
Complete list of metadatas
Contributor : Filippo Miatto <>
Submitted on : Wednesday, December 18, 2019 - 8:57:48 AM
Last modification on : Wednesday, June 24, 2020 - 4:19:54 PM

Links full text


  • HAL Id : hal-02417136, version 1
  • ARXIV : 1903.01366


Filippo Miatto. Graphical Calculus for products and convolutions. 2019. ⟨hal-02417136⟩



Record views