47 Commits

Author SHA1 Message Date
wborgeaud
bfd5f06384 Hardcode Plonk polynomials indices and blinding flags. 2021-06-17 11:54:31 +02:00
wborgeaud
b44a01c975 Merge main 2021-06-15 09:20:00 +02:00
wborgeaud
19b47b5251 Clippy 2021-06-14 10:33:38 +02:00
wborgeaud
20741cfb4a Implement out-of-circuit repeated_frobenius using hardcoded constants 2021-06-11 13:45:51 +02:00
Daniel Lubarov
f929f94626
Have rustfmt group imports (#60)
* Have rustfmt group imports

See `rustfmt.toml`; the rest is automated changes.

* fmt
2021-06-10 14:10:35 -07:00
Daniel Lubarov
60f3773a23
Try to simplify open_plonk and fri_combine_initial a bit more (#59)
* Try to simplify open_plonk and fri_combine_initial a bit more

- Use `alpha.powers()` in `open_plonk` instead of the more "manual" approach
- No more "manually" reducing with `alpha_powers`; now using helper methods for that.
- Renaming & other small tweaks

* Remove type hint

* Feedback
2021-06-09 16:17:56 -07:00
wborgeaud
7f63276623 Merge branch 'main' into recursive_verifier 2021-06-09 10:04:45 +02:00
Daniel Lubarov
72c2e19bc5
Bit of verifier work (#54)
* Bit of verifier work

* Minor

* next_plonk_zs now available after William's changes
2021-06-08 21:23:52 -07:00
wborgeaud
897ec3b053 Target version of proof structs 2021-06-04 10:47:46 +02:00
wborgeaud
9eb35c3c82 Remove D=1 case 2021-06-01 22:00:46 +02:00
wborgeaud
482b40065d Merge with main 2021-06-01 11:26:23 +02:00
wborgeaud
b465bcd8be Clippy + comments 2021-06-01 11:17:54 +02:00
wborgeaud
2794cb9a95 Open wires at single point if D=1 2021-06-01 11:03:04 +02:00
wborgeaud
e09a6179fb Remove useless field 2021-05-31 18:21:42 +02:00
wborgeaud
d882283761 Working with blindings 2021-05-31 18:19:44 +02:00
wborgeaud
6ee9ceacd5 Don't check Frobenius if D=1. 2021-05-31 18:00:53 +02:00
wborgeaud
abc0ca3bf1 Rewrite LPC code to be more PLONK-specific 2021-05-31 17:49:04 +02:00
Daniel Lubarov
cb7f8c8b8c
Draw challenge points from the extension field (#51)
* Draw challenge points from the extension field

* Now building

* Misc

* Default eval_unfiltered_base

* fmt

* A few field settings

* Add to Sage

* Display tweak

* eval_filtered_base

* Quartic in bench

* Missing methods

* Fix tests

* PR feedback
2021-05-30 13:25:53 -07:00
wborgeaud
845382b472 Working base field check for (non-batch) opening 2021-05-27 17:20:26 +02:00
wborgeaud
78f71672a3 Change Field::exp to using a u64 power. 2021-05-19 12:17:43 +02:00
wborgeaud
4f6f2192ab Minor fixes 2021-05-18 16:23:44 +02:00
wborgeaud
9cd00532ce Generic tests 2021-05-18 16:06:47 +02:00
wborgeaud
adf5c2d4ec Const generics everywhere 2021-05-18 15:44:50 +02:00
wborgeaud
a2cf2c03b6 Working FRI with field extensions 2021-05-18 15:22:06 +02:00
Daniel Lubarov
b14328c2df Move timed! and call from ListPolynomialCommitment 2021-05-14 07:35:09 -07:00
Daniel Lubarov
18d59ec9de Fix minor post-merge conflicts 2021-05-12 11:26:21 -07:00
Daniel Lubarov
51114e4ef6 Missing import 2021-05-12 11:21:31 -07:00
Daniel Lubarov
b7acdb36ca Merge pull request #36 from mir-protocol/poly_port
Some cleanup related to the two polynomial APIs
2021-05-12 10:55:43 -07:00
wborgeaud
ce0507ba12 Blinding parameter can be set differently for each Merkle tree in a FRI proof. 2021-05-11 09:56:21 +02:00
Daniel Lubarov
44a5e0be1b Some cleanup related to the two polynomial APIs
Porting over some code from `old_polynomial`, and changing `ListPolynomialCommitment` to use the newer API.

There's one remaining use of `old_polynomial` for long division; I think that can eventually go away when we switch to doing values-only FRI (unless another use comes up).
2021-05-10 13:10:29 -07:00
wborgeaud
d529afcdef Minor 2021-05-07 16:49:27 +02:00
wborgeaud
6ca1b28f7c Fix bug 2021-05-07 16:22:13 +02:00
wborgeaud
1bae3a02f6 Batch open for PLONK 2021-05-07 11:30:03 +02:00
wborgeaud
ea7926bd95 Update PLONK prover. 2021-05-06 23:14:37 +02:00
wborgeaud
0bae47bedb LPC batch opening 2021-05-06 17:09:55 +02:00
wborgeaud
36dda7aae1 Remove useless challenger observation. 2021-05-06 15:26:54 +02:00
wborgeaud
41008cf421 Move Merkle root out of opening proof. 2021-05-06 15:19:06 +02:00
wborgeaud
477fe1ea4a Minor fixes 2021-05-06 15:14:43 +02:00
wborgeaud
03d761ead6 Double blinding 2021-05-06 00:00:08 +02:00
wborgeaud
5706c424f4 Fixes based on PR feedback 2021-05-05 22:58:15 +02:00
wborgeaud
5e06c014c8 Cleaning 2021-05-05 18:32:24 +02:00
wborgeaud
1f3f7d5b70 FRI reorg 2021-05-05 18:23:59 +02:00
wborgeaud
6820c1849a Working blinding in LPC 2021-05-05 17:00:47 +02:00
wborgeaud
6dbd39de80 Passing test 2021-05-04 19:56:34 +02:00
wborgeaud
eb3011b02a More work on polynomial commitments 2021-05-04 17:48:26 +02:00
wborgeaud
bb8a68e198 Progress on polynomial commitment 2021-05-03 15:17:05 +02:00
wborgeaud
0fa0942981 FRI on coset 2021-04-30 15:07:54 +02:00