In this document, we try to answer the following questions:
How the Inner Product Argument (IPA) Polynoimial Commitment Scheme (PCS) works?
How are we going to use IPA PCS in Aztec 3?
How Does the IPA PCS Work?
We consider the IPA PCS described in Section 3 of the Halo paper. We don't need it to be zero-knowledge. In high level, this is because the IPA PCS will be used at the last stage of Aztec 3 (similar to the smart contract/root verifier as in Aztec connect).
Notation: We denote vectors by bold letters, group elements by capital letters, and scalars by small letters. Multiplication of a scalar $m$ with a group element $G$ i.e., $G$ added to itself $m$ times, is denoted by $[m]G$.