Perf/multisymbol 4bw#912
Conversation
|
📦 ❌ ❌ |
…nark into perf/multisymbol-4bw
|
📦 ❌ ❌ |
|
📦 ❌ ❌ |
|
📦 ❌ ❌ |
|
📦 |
| } | ||
|
|
||
| // NewCombination in the form of res = qL.a + qR.b + qM.ab + qC | ||
| func (builder *builder) NewCombination(a, b frontend.Variable, qL, qR, qM, qC int) frontend.Variable { |
There was a problem hiding this comment.
suggestion;
rename to api.EvaluatePlonkExpression + in this function, check that a, b are not constant and do the appropriate path if they are. (else this function will panic).
also add a corresponding interface so that in a circuit, one can check if _, ok := api.(...); ok and have a fail over path for R1CS for example
| "os" | ||
| ) | ||
|
|
||
| func GzWrite(outFileName string, o io.WriterTo) error { |
There was a problem hiding this comment.
why do we need to expose that exactly? if you only need it in test, put it iin _test.go files 👍 (but I don't understand from the code why we need it)
There was a problem hiding this comment.
Currently using it for code that outputs the compiled cs, which has to run as a standalone application and not a test.
| return a[0] | ||
| } | ||
|
|
||
| func Pack(api frontend.API, words []frontend.Variable, wordLen int) []frontend.Variable { |
…o perf/multisymbol-4bw
Description
This implements an LZSS based compression scheme and the means to verify its correctness in a SNARK.
Type of change