Lookup arguments
\gdef\vec#1{\bm{#1}} \gdef\delim#1#2#3{\mathopen{}\mathclose{\left#1 #2 \right#3}} \gdef\p#1{\delim({#1})} \gdef\set#1{\mathcal{#1}} \gdef\mset#1{\mathrm{#1}} \gdef\g{\mathrm{g}} \gdef\F{\mathbb{F}} \gdef\S{\mathcal S} \gdef\X{\mathcal X} \gdef\Z{\mathrm{Z}} \gdef\β{\mathop{\huge β}\limits}
Zero polynomials
Given a multiset \mset A over π½ define the zero polynomial \Z_{\mset A} β π½[X] as
\Z_{\mset A}(X) = \prod_{a β \mset A} \p{X - a}
Alternatively using the base set \set A β π½ and multiplicities m_A: π½ β β we can collect factors
\Z_{\mset A}(X) = \prod_{a β π½} \p{X - a}^{m_A(a)}
To guarantee uniqueness we require m_A(a) < p where p is the characteristic of π½.
The logarithmic derivative of \Z_{\mset A} has the curious property that all zeros turn into pole,s perserving multiplicities:
\frac{\Z_{\mset A}'(X)}{\Z_{\mset A}(X)} = \sum_{a β \mset A} \frac{1}{X - a} = \sum_{a β \set A} \frac{m_A(a)}{X - a}
Aurora lemma
Let H β π½ be a multiplicative subgroup of size n, then for f β π½_{<n}[X]
\sum_{x β H} f(x) = n β f(0)
This follows from the non-zero elements of H being n-th roots of unity, that sum to zero for n>1.
\sum_{x β H} x^k = \begin{cases} n & k = 0 \mod \p{n - 1} \\ 0 & \text{otherwise} \end{cases}
FK lemma
Cached Quotients
Cached quotiens (EFG22) builds on a series of prior protocols H22, ZBK+22, PAK22, GK22, ZGK+22. We want to proof that some f β \F[X] evaluates to values in a certain set \S on a domain \X, i.e.
\β_{x \in \X}\quad f(x) \in \S
In H22 it is shown that this holds if and only if there exists m_s β \F such that
\sum_{x β \X} \frac{1}{X + f(x)} = \sum_{s β \S} \frac{m_s}{X + s}
This follows from the uniqueness of the fractional decomposition and the observation that the values of f on \X should differ only in multiplicities form \S, where the multiplicity can also be zero.
This rational identity can be checked by evaluating in a random x β π½. Computing polynomial commitments to either side is not a problem as they both only have |\set X| non-zero terms. The challenge is to show that the commitment to the right hand side is computed correctly.
A(X) β \p{T(X) + x} - m(X) = Q_A(X) β \Z_{\set Y}(X)
where T(X) evaluates to \set S on the domain \set Y.
Setup
Given elliptic curve pairing \mathrm{e}:πΎ_1 Γ πΎ_2 β πΎ_T with generators \g_1 β πΎ_1, \g_2 β πΎ_2, \g_T β πΎ_T.
- Pick secret s β π½ and compute \p{s^0, β¦, s^{n-1}}β \g_1 and \p{s^0, β¦, s^n}β \g_2
- Compute \Z_{\set Y}(s)β \g_2.
- Compute T(x)β \g_2 where T(X) = \sum_{i β [0,N)} s_i β \mathrm L_i(x)
$$
$$
logUp
Lasso lookups
For fixed sparse matrix \mathrm M and committed vectors \vec v and \vec a show:
\mathrm M β \vec v = \vec a
References
- H22 Ulrich HabΓΆck (2022). Multivariate lookups based on logarithmic derivatives.
- ZBK+22 Arantxa Zapico, Vitalik Buterin, Dmitry Khovratovich, Mary Maller, Anca Nitulescu, Mark Simkin (2022). Caulk: Lookup Arguments in Sublinear Time.
- PAK22 Jim Posen, Assimakis A. Kattis (2022). Caulk+: Table-independent lookup arguments.
- GK22 Ariel Gabizon, Dmitry Khovratovich (2022). flookup: Fractional decomposition-based lookups in quasi-linear time independent of table size.
- ZGK+22 Arantxa Zapico, Ariel Gabizon, Dmitry Khovratovich, Mary Maller, Carla RΓ fols (2022). Baloo: Nearly Optimal Lookup Arguments.
- EFG22 Liam Eagen, Dario Fiore, Ariel Gabizon (2022). cq: Cached quotients for fast lookups.
- FK23 Dankrad Feist, Dmitry Khovratovich (2023). Fast amortized KZG proofs.
- ABTD23 Alexandr Bulkin, Tim Dokchitser (2023). Plonkup scheme with multiple queries.
- STW23 Srinath Setty, Justin Thaler, Riad Wabby (2023). Unlocking the lookup singularity with Lasso.
- CFF+23 Matteo Campanelli , Antonio Faonio , Dario Fiore , Tianyu Li , Helger Lipmaa (2023). Lookup Arguments: Improvements, Extensions and Applications to Zero-Knowledge Decision Trees.
- PH23 Shahar Papini, Ulrich HabΓΆck (2023). Improving logarithmic derivative lookups using GKR.