wborgeaud
bae3777bcd
Use max filtered degree found with the tree method in CircuitBuilder::build
2021-06-29 14:00:34 +02:00
Daniel Lubarov
7734aed62c
Performance tweaks ( #77 )
2021-06-28 08:56:36 -07:00
wborgeaud
810d1869a1
Minor improvements
2021-06-25 11:49:29 +02:00
wborgeaud
625377b4c0
Merge constant and sigma polynomials
2021-06-25 11:24:26 +02:00
wborgeaud
2e9d3f768e
Better error message when quotient hasn't correct degree
2021-06-25 09:56:15 +02:00
wborgeaud
19e7cb3942
into_iter -> into_par_iter
2021-06-24 22:32:52 +02:00
wborgeaud
35f73a505f
Clippy
2021-06-24 15:49:36 +02:00
wborgeaud
b0550979a6
Optimize evaluation of Z_H on coset.
2021-06-24 15:42:29 +02:00
wborgeaud
31f4eee367
Fix bug with shifted x
2021-06-24 14:11:47 +02:00
wborgeaud
f215dffa9d
Compute quotient directly
2021-06-24 11:45:16 +02:00
wborgeaud
4ee70e449b
Fix type errors and move copy constraints check to Witness
2021-06-24 11:00:47 +02:00
wborgeaud
ef7561fc84
Merge branch 'main' into permutation_argument
...
# Conflicts:
# src/circuit_builder.rs
# src/circuit_data.rs
# src/polynomial/commitment.rs
# src/prover.rs
# src/witness.rs
2021-06-24 10:51:18 +02:00
wborgeaud
6c864ca522
Merge branch 'main' into fix_target_partition
...
# Conflicts:
# src/witness.rs
2021-06-23 14:17:02 +02:00
wborgeaud
bc90909fa3
Add check of copy constraints after witness generation
2021-06-23 14:16:05 +02:00
wborgeaud
3bc27c65ef
Rollback to previous semantics
2021-06-23 13:46:19 +02:00
wborgeaud
ad5c18b499
Comments and Clippy
2021-06-17 16:23:15 +02:00
wborgeaud
a71909ba15
Implement compute_z and rewrite of compute_vanishing_polys
2021-06-17 15:49:21 +02:00
wborgeaud
1b99f8272f
Merge branch 'main' into permutation_argument
2021-06-17 14:00:44 +02:00
wborgeaud
bfd5f06384
Hardcode Plonk polynomials indices and blinding flags.
2021-06-17 11:54:31 +02:00
wborgeaud
5bebc746f6
PR feedback
2021-06-17 11:31:14 +02:00
wborgeaud
a6acd14dfa
Minor rewrites and optimizations
2021-06-16 17:43:41 +02:00
wborgeaud
ea6a724560
Enforce copy constraints in partial witness generation.
2021-06-14 17:02:52 +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
482b40065d
Merge with main
2021-06-01 11:26:23 +02:00
wborgeaud
e09a6179fb
Remove useless field
2021-05-31 18:21:42 +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
Daniel Lubarov
26845c5910
Compute the three quotient polys in parallel
...
Reduces that step from ~0.19s to ~0.09s on my laptop.
2021-05-23 22:21:27 -07: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
de0b382fb6
Merge pull request #39 from mir-protocol/three_zeta
...
Use num_checks zetas
2021-05-14 08:07:34 -07:00
Daniel Lubarov
7ff5496308
num_checks -> num_challenges
2021-05-14 08:07:00 -07:00
Daniel Lubarov
13fc0c2261
Merge pull request #40 from mir-protocol/move_timed
...
Move timed! and call from ListPolynomialCommitment
2021-05-14 08:04:22 -07:00
Daniel Lubarov
b14328c2df
Move timed! and call from ListPolynomialCommitment
2021-05-14 07:35:09 -07:00
Daniel Lubarov
a04bed282d
Use num_checks zetas
...
The soundness error is (degree of combined constraints)/|F|, so three zetas should be appropriate for all practical circuit sizes.
2021-05-13 21:32:08 -07:00
Daniel Lubarov
6d03dd06f5
Finish merging in old_polynomial
2021-05-13 15:35:26 -07:00
wborgeaud
cdbac76149
Fixes based on PR comments
2021-05-11 10:01:35 +02: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
wborgeaud
ed805453c3
Minor
2021-05-10 13:10:40 +02: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
6f13263d56
Minor
2021-05-07 11:32:15 +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
Daniel Lubarov
a50ba9f590
More unnecessary clones
2021-04-24 11:20:28 -07:00
Daniel Lubarov
6d164adc6a
Have the prover use the new MerkleTree API
...
Before it was storing leaf data and Merkle roots, but nothing in between, since it wasn't yet interacting with intermediate layers (but it will once we hook up the FRI code).
2021-04-24 11:15:11 -07:00
Daniel Lubarov
518470a2d7
Merge pull request #20 from mir-protocol/beta_gamma
...
Properly use the three betas and gammas
2021-04-24 10:54:32 -07:00
Daniel Lubarov
4f9aa8879b
Properly use the three betas and gammas
...
... for the three different `Z`s we use. Before I was just using the first value as a temporary thing.
2021-04-23 14:25:24 -07:00