Angus Gruen
@AngusGruen
Followers
510
Following
8
Media
1
Statuses
29
Joined August 2023
An exciting update from myself and @benediamond ( https://t.co/bKwowXYcMB). We show that the ๐ถ๐ฑ-๐ต๐ฐ-๐ค๐ข๐ฑ๐ข๐ค๐ช๐ต๐บ proximity gaps conjecture is ๐ณ๐ฎ๐น๐๐ฒ. More precisely, given any pair c, d we construct codes whose error grows faster than nแถ / (q โ
(ฯ ฮท)แต).
eprint.iacr.org
For each positive integer $c^*$, we construct an infinite sequence of ReedโSolomon codes $C \subset \mathbb{F}_q^n$, together with ball radii $z$, for which the proportion of $\mathbb{F}_q^n$...
19
95
478
Amazing results by Rohan and Venkat! In a week of negative news about proximity gaps, they show that folded RS codes, univariate multiplicity codes, random linear codes and randomly punctured RS codes have mutual CA *up to capacity*!
1
12
41
If someone entirely or partially proves the updated conjecture in the future, we could always move back and reap the benefit.
2
0
13
The bigger question is to what extent do we trust an "updated conjecture" which adjusts the conjecture down to our upper bound or should ZK move away from the conjecture back to the proven lands and just eat the higher query cost.
1
0
11
What we have shown is that the conjecture is false. In particular we give an upper bound on what ๐ป/๐ can be which is a little (though not a lot) lower than 1/2 (and corresponds to ~103 queries).
1
0
8
When the code has rate 1/2 (whatever that means), it's been proven that ๐ป/๐ = 1/4 (corresponds to ~240 queries) is possible with very small ฮต and ๐ป/๐ = (2 - โ2)/2 (~200 queries) with larger ฮต. The conjecture was that ๐ป/๐ = 1/2 (~100 queries) is possible with very small ฮต.
1
0
7
In general, when using a (๐ป/๐, ฮต)-proximity gap, then each ๐ฒ๐ถ๐ฆ๐ณ๐บ has a ๐ป/๐ probability of catching a malicious prover. Hence the larger we can make ๐ป/๐ the better.
1
0
6
In the example here, they would win if we only ever chose ๐ช = 0, 1. So, every ๐ฒ๐ถ๐ฆ๐ณ๐บ here has a 2/4 probability of catching the prover. This means we would need ~100 queries to have a < 2โปยนโฐโฐ probability of accepting this false claim.
1
0
6
Each ๐ฒ๐ถ๐ฆ๐ณ๐บ, we pick a random integer ๐ช from 0 to 3 and the prover reveals the entry in location ๐ช. So if we pick ๐ช = 0, 1 the prover reveals a 0. If we pick ๐ช = 2, 3 the prover reveals a 6 or a 1. A malicious prover wins if we accept a word which is not a code word.
1
0
6
How does this relate to proofs? Essentially at some point in the proof, we want to check if some word is equal to a particular code word. But we are only able to randomly sample its entries. In the example above, maybe we receive 0061 and the prover claims it is equal to 0000.
1
0
8
A code has a (๐ป/๐, ฮต)-proximity gap if, given two words ๐ป-far from the code, the probability that a combination of those words is less than ๐ป-far from the code is < ฮต. For applications to ZK, we usually set ฮตโ2โปยนโฐโฐ (or smaller) and then ask how large can we make ๐ป?
1
0
8
Additionally, we have some way, given a random letter from the alphabet to use it to linearly combine two words into one. It doesn't matter for us right now how this procedure works, just that it exists.
1
0
7
Given any word, the distance to the code is the minimum distance to any word in the code. E.g. 4444 has distance 0 to the code (it's already in the code), 0061 has distance 2 (it's close to 0000) and 0123 has distance 3.
1
0
7
A ๐ค๐ฐ๐ฅ๐ฆ is a special subset of all words. For example, the set of words all of whose entries are equal. So 4444 is part of the code but 0061 and 0123 are not.
1
0
7
For example our alphabet might be the numbers 0 to 7 and ๐ might be equal to 4 in which case some example words would be 4444, 0061, 0123. The distance between two words is the number of unequal entries. So 0061 and 0123 would have distance 3 as only the first entries are equal.
1
0
7
Our result concerns proximity gaps over codes so let us start with defining these. Fix an ๐ข๐ญ๐ฑ๐ฉ๐ข๐ฃ๐ฆ๐ต and an integer ๐. Then a word will contain ๐ letters each from the alphabet.
1
0
9
It's basically impossible to give a meaningful rundown of our result avoiding all mathematics so we are going to have to define some things.
1
0
8
TLDR: (0 math version) zkSNARKs relying on the conjecture have to become a little slower/larger (~1-3%). They may however want to stop relying on the conjecture which would translate to a larger increase in proof time/size. zkSNARKs not relying on the conjecture are unaffected.
2
3
14
This post got a little more traction that I was expecting. Due to this, I thought it might be useful to jump back in try to give a sense of what our results entail skipping as much of the mathematics as possible. (Warning, long thread ahead)
An exciting update from myself and @benediamond ( https://t.co/bKwowXYcMB). We show that the ๐ถ๐ฑ-๐ต๐ฐ-๐ค๐ข๐ฑ๐ข๐ค๐ช๐ต๐บ proximity gaps conjecture is ๐ณ๐ฎ๐น๐๐ฒ. More precisely, given any pair c, d we construct codes whose error grows faster than nแถ / (q โ
(ฯ ฮท)แต).
6
22
131
What will we see in the production projects using Starks going forward? double proof size for starks under provable security? 2-3% increase in proof size under new conjecture, as suggested in table 1 of the paper? No changes for now as there is not a (aiui) constructive attack on
5
4
35
In light of these results, the ZK space should seriously consider operating only in proven regimes.
2
3
80