Please find below a selection of the articles and posts that helped me to write this series of posts.

First of all, the three key posts written by Vitalik Buterin:

- Quadratic Arithmetic Programs: from Zero to Hero
- Exploring Elliptic Curve Pairings
- Zk-SNARKs: Under the Hood

Then, a series of posts that Ariel Gabizon wrote when at zCash:

- Explaining SNARKs Part I: Homomorphic Hidings
- Explaining SNARKs Part II: Blind Evaluation of Polynomials
- Explaining SNARKs Part III: The Knowledge of Coefficient Test and Assumption
- Explaining SNARKs Part IV: How to make Blind Evaluation of Polynomials Verifiable
- Explaining SNARKs Part V: From Computations to Polynomials
- Explaining SNARKs Part VI: The Pinocchio Protocol
- Explaining SNARKs Part VII: Pairings of Elliptic Curves

And then, the B appendix, pag 25, of Eli Ben-Sasson, Alessandro Chiesa, Eran Tromer, and Madars Virza 's "Succinct Non-Interactive Zero Knowledge for a von Neumann Architecture".