1846 Commits

Author SHA1 Message Date
Daniel Lubarov
431faccbdb
Change compute_permutation_z_polys to batch permutation checks (#492)
* Change `compute_permutation_z_polys` to batch permutation checks

* feedback
2022-02-16 23:37:20 -07:00
Nicholas Ward
20fc5e2da5 merge fixes 2022-02-16 11:36:51 -08:00
Nicholas Ward
74cf5da8e0 clippy 2022-02-16 11:31:45 -08:00
Nicholas Ward
25555c15e0 fixed native GLV; fixed precompute window; other fixes 2022-02-16 11:31:43 -08:00
Nicholas Ward
8ad193db17 use windowed mul in GLV 2022-02-16 11:31:29 -08:00
Nicholas Ward
1e3743f46c fmt 2022-02-16 11:31:29 -08:00
Nicholas Ward
0140f7a3cf fixes 2022-02-16 11:31:29 -08:00
Nicholas Ward
e88564ce5e correct point subtraction 2022-02-16 11:31:29 -08:00
Nicholas Ward
f77192ef66 fmt 2022-02-16 11:31:29 -08:00
Nicholas Ward
f6f7e55191 windowed mul fixes...... 2022-02-16 11:31:26 -08:00
Nicholas Ward
a89b306cf8 fmt 2022-02-16 11:30:39 -08:00
Nicholas Ward
12d5239be6 fix 2022-02-16 11:30:39 -08:00
Nicholas Ward
f67e12ee64 fmt 2022-02-16 11:30:39 -08:00
Nicholas Ward
ad1aa4ae10 fixed is_equal 2022-02-16 11:30:39 -08:00
Nicholas Ward
3787f3be22 conditional add 2022-02-16 11:30:39 -08:00
Nicholas Ward
84edb55b63 fmt 2022-02-16 11:30:39 -08:00
Nicholas Ward
134a04220d is_equal function 2022-02-16 11:30:39 -08:00
Nicholas Ward
978e2ee974 conditional add (doesn't work yet) 2022-02-16 11:30:39 -08:00
Nicholas Ward
8bab62b83d fix 2022-02-16 11:30:39 -08:00
Nicholas Ward
23cfe91079 fix 2022-02-16 11:30:39 -08:00
Nicholas Ward
64a09616e2 fmt 2022-02-16 11:30:39 -08:00
Nicholas Ward
294a738dc9 moved to new file, and curve random access test 2022-02-16 11:30:39 -08:00
Nicholas Ward
5603816f3b fix 2022-02-16 11:30:39 -08:00
Nicholas Ward
58492a0ace fmt 2022-02-16 11:30:39 -08:00
Nicholas Ward
67b7193e82 test for split nonnative, and fixes 2022-02-16 11:30:39 -08:00
Nicholas Ward
53a2a92258 windowed multiplication in circuit 2022-02-16 11:30:32 -08:00
Nicholas Ward
dc44baa592 simpler test 2022-02-16 11:29:13 -08:00
Nicholas Ward
140f0590bc fmt 2022-02-16 11:29:13 -08:00
Nicholas Ward
5aaa5710a8 test for GLV gadget 2022-02-16 11:29:13 -08:00
Nicholas Ward
5917a09cee split out glv_mul function 2022-02-16 11:29:13 -08:00
Nicholas Ward
e92d4c25be fixed clippy 2022-02-16 11:29:13 -08:00
Nicholas Ward
c3126796c0 GLV in circuit 2022-02-16 11:29:13 -08:00
Nicholas Ward
c279c779a3 fixed clippy 2022-02-16 11:29:13 -08:00
Nicholas Ward
fd7abb35da GLV mul 2022-02-16 11:29:13 -08:00
Nicholas Ward
2f4da9b49d added native GLV compose 2022-02-16 11:29:13 -08:00
wborgeaud
56336e396d Fix 2022-02-16 14:17:14 +01:00
wborgeaud
ea9006f52e Add rate_bits 2022-02-16 13:51:10 +01:00
wborgeaud
c9185d92bb Merge branch 'main' into fix_reduction_strategy
# Conflicts:
#	starky/src/prover.rs
2022-02-16 13:38:54 +01:00
wborgeaud
b28cd55326 Fix reduction strategy 2022-02-16 13:37:01 +01:00
Daniel Lubarov
72d13d0ded
Prover code for permutation argument (#485)
* Batch multiple perm args into one Z and compute Z columnwise

It's slightly complex because we batch `constraint_degree - 1` permutation arguments into a single `Z` polynomial. This is a slight generalization of the [technique](https://zcash.github.io/halo2/design/proving-system/lookup.html) described in the Halo2 book.

Without this batching, we would simply have `num_challenges` random challenges (betas and gammas). With this batching, however, we need to use different randomness for each permutation argument within the same batch. Hence we end up generating `batch_size * num_challenges` challenges for all permutation arguments.

* Feedback + updates for recursion code
2022-02-16 01:33:59 -08:00
wborgeaud
c6f80ba59a
Merge pull request #490 from mir-protocol/batchable
Simplify batched gate code
2022-02-16 09:36:47 +01:00
wborgeaud
f8dfc3986b PR feedback 2022-02-16 09:26:16 +01:00
wborgeaud
08e255a2bb Remove params in GateInstance 2022-02-16 09:02:21 +01:00
wborgeaud
661a6b44ef Delete GMiMC files 2022-02-16 08:33:52 +01:00
Hamish Ivey-Law
f4ef692aad
Quintic extension fields (#489)
* Initial implementation of quintic extensions.

* Update to/from_biguint() methods.

* cargo fmt

* Fix call to test suite.

* Small optimisation in try_inverse().

* Replace multiplicative group generator and document requirement.
2022-02-16 10:38:24 +11:00
wborgeaud
3fd5258191 Comments 2022-02-15 18:00:53 +01:00
wborgeaud
2d4d2d21a0 Simplification 2022-02-15 17:35:12 +01:00
wborgeaud
3f7cefbc6b
Merge pull request #486 from mir-protocol/recursive_starks
Recursive STARK verifier
2022-02-15 17:24:34 +01:00
wborgeaud
d0da2fe1ad Remove debug info 2022-02-15 17:01:16 +01:00
wborgeaud
c74b0c91c8 Progress towards using generators 2022-02-15 16:59:17 +01:00