Jun Zhang pfp
Jun Zhang
@junzhang
BInius: highly efficient proofs over binary fields https://vitalik.eth.limo/general/2024/04/29/binius.html
1 reply
0 recast
1 reaction

Jun Zhang pfp
Jun Zhang
@junzhang
SNARKs rely on "arithmetization": a way of converting a statement about a program into an equation involving polynomials (or sometimes vectors and matrices)
1 reply
0 recast
0 reaction

Jun Zhang pfp
Jun Zhang
@junzhang
To keep numbers within reasonable sizes, the arithmetic must be done not over regular integers, but over structures called "finite fields". Modular arithmetic is the simplest example of a finite field, but there are others.
1 reply
0 recast
0 reaction

Jun Zhang pfp
Jun Zhang
@junzhang
In a real program, most of the numbers are very small: for loop indices, True/False values, array indices, counters... If a field is large, the "extra" values that get generated during proof computation are much larger. This is a key source of inefficiency.
1 reply
0 recast
0 reaction

Jun Zhang pfp
Jun Zhang
@junzhang
Plonky2 and similar protocols reduce the field size, dropping from 256 bit to 64 or 31 bit. But it's even more efficient to go all the way to binary fields.
1 reply
0 recast
0 reaction