wborgeaud
bff763e3e7
Add distinction between (non-)wrapping constraints
2022-02-02 11:23:03 +01:00
wborgeaud
1e04f4f5a4
Comments
2022-02-01 17:34:03 +01:00
wborgeaud
8ab4f855b2
Add fri_challenges() to Challenger.
2022-02-01 17:02:11 +01:00
wborgeaud
984f44b281
Fix lde -> coset_lde bug
2022-02-01 14:41:27 +01:00
wborgeaud
9f8696ada5
Fix bug
2022-02-01 13:57:03 +01:00
wborgeaud
f2369f4fae
Test pass
2022-02-01 10:48:53 +01:00
wborgeaud
b0738c2094
Fix degree issue
2022-01-31 21:05:23 +01:00
wborgeaud
92ea4b65d1
Constraint check working
2022-01-31 18:00:07 +01:00
wborgeaud
d24d26e5c0
Add FRI challenges
2022-01-31 16:19:30 +01:00
wborgeaud
851455a26a
Eval Lagrange
2022-01-31 10:07:01 +01:00
wborgeaud
8993270f80
Progress
2022-01-29 12:49:00 +01:00
wborgeaud
20a3683e09
Merge pull request #451 from mir-protocol/start_stark_prover
...
Start of STARK prover
2022-01-28 17:13:59 +01:00
wborgeaud
dff9a40955
Batch alphas in constraint consumer
2022-01-28 17:06:40 +01:00
wborgeaud
c73f32ef2b
Remove initial values from Fibonacci STARK state
2022-01-28 13:59:43 +01:00
wborgeaud
e78630ae81
PR feedback
2022-01-28 05:02:31 +01:00
Hamish Ivey-Law
a74ffdb898
Remove GMiMC and Rescue hash functions ( #450 )
...
* Remove GMiMC and Rescue hash functions.
* rustfmt
2022-01-28 09:08:27 +11:00
wborgeaud
b6cb72b629
Comments
2022-01-27 13:27:06 +01:00
wborgeaud
1770e83c63
Clippy
2022-01-27 13:02:36 +01:00
wborgeaud
4a2681034e
Working prover
2022-01-27 12:58:56 +01:00
wborgeaud
3e0cb36063
Added test stark
2022-01-27 07:56:22 +01:00
Jakub Nabaglo
ab48cca1f3
Merkle tree optimizations ( #433 )
...
* Merkle tree optimizations
* Replace spawn with parallel iterators
Co-authored-by: Daniel Lubarov <daniel@lubarov.com>
* Missing imports
Co-authored-by: Daniel Lubarov <daniel@lubarov.com>
2022-01-26 11:54:39 -08:00
wborgeaud
d54cc9a7c8
First try
2022-01-26 16:08:04 +01:00
Daniel Lubarov
c0ac79e2e1
Beginning of STARK implementation ( #413 )
...
* Beginning of STARK implementation
* PR feedback
* minor
* Suppress warnings for now
2022-01-26 00:09:29 -08:00
Jakub Nabaglo
483799746b
Jemalloc warnings in Readme ( #448 )
2022-01-24 13:35:26 -08:00
Daniel Lubarov
2af85ccb8d
Make set_proof_target publicly accessible ( #447 )
...
* Make `set_proof_target` publicly accessible
Same code as before, except I broke it into a few functions and renamed a couple things.
* fmt
2022-01-24 11:16:38 -08:00
Daniel Lubarov
a6e64d1c7e
Replace proof_to_proof_target ( #445 )
...
* Replace `proof_to_proof_target`
With a `add_virtual_proof_with_pis` method that uses the inner circuit data, but does not require constructing a proof.
Note that this doesn't support IVC yet. For that, I think we can add a variant of `add_virtual_proof_with_pis` that takes several parameters like FRI arities, but does not involve `CommonCircuitData` (since no circuit has been build yet). It might also be best to avoid large objects like `FriParams`, and pass just the data we need.
Then there will be some nontrivial work to do recursion with "estimated" parameters (degree, arities, etc), check if the estimates were correct, and try again if not.
* PR feedback
2022-01-23 23:27:26 -08:00
Jakub Nabaglo
04fbb05d7c
Swap loops in compute_quotient_polys ( #444 )
2022-01-21 15:55:24 -08:00
Jakub Nabaglo
5f0eee1a9b
Bit-order reversal optimizations ( #442 )
...
* Bit-order in-place reversal optimizations
* optimization/simplification
* Done modulo documentation and testing on x86
* Minor type fixes on non-ARM
* Minor x86
* Transpose docs
* Docs
* Make rustfmt happy
* Bug fixes + tests
* Minor docs + lints
2022-01-21 10:44:46 -08:00
Jakub Nabaglo
86dc4c933a
Make all FFTs in-place ( #439 )
...
* Make all FFTs in-place
* Delete leftover marker
2022-01-21 10:26:43 -08:00
Daniel Lubarov
2e3a682bde
metadata
2022-01-21 10:14:44 -08:00
Daniel Lubarov
d69220e2a7
metadata
2022-01-21 10:06:40 -08:00
wborgeaud
8df9e7ec77
Merge pull request #436 from mir-protocol/fix_ldt_degree
...
Fix degree of polynomial used in LDT
2022-01-21 06:24:28 +01:00
wborgeaud
094e35b0bb
Merge pull request #440 from mir-protocol/simplify_compute_quotient
...
Remove `compute_quotient` and update division tests
2022-01-21 06:12:37 +01:00
Jakub Nabaglo
f98a6adfbf
Bit-order reversal benchmarks ( #441 )
2022-01-19 17:51:20 -08:00
wborgeaud
5255c04c70
Remove compute_quotient and update division tests
2022-01-19 12:31:20 +01:00
wborgeaud
27ebc21faf
Add comments for LDT fix in verifier
2022-01-19 11:57:46 +01:00
Daniel Lubarov
dcf63f536e
Have hash functions take references to avoid cloning ( #438 )
...
And other tweaks to `MerkleTree::new`
2022-01-18 12:51:04 -08:00
Hamish Ivey-Law
fcdcc86569
Move profile defns to root workspace toml. ( #437 )
2022-01-18 11:41:08 +11:00
wborgeaud
2bb0c4f4e7
Fix comment
2022-01-17 06:44:05 +01:00
wborgeaud
6f65620ff2
Add fix for recursive verifier.
2022-01-17 06:33:23 +01:00
wborgeaud
ec474efe12
Minor
2022-01-17 06:25:03 +01:00
Jakub Nabaglo
2aa46e148c
Optimize + test log2 functions ( #434 )
...
* Speed up log2 functions
* Move tests to `util` crate
* Trick
2022-01-16 15:15:25 -08:00
wborgeaud
fe0c232d6d
Working (not yet for recursion)
2022-01-14 07:56:06 +01:00
Sebastien La Duca
fe5a30ede1
make HashOutTarget internals public ( #430 )
2022-01-13 12:12:59 -08:00
Daniel Lubarov
0ff8365827
timing
2022-01-12 19:07:33 -08:00
Daniel Lubarov
9f09a2aace
Add Merkle tree benchmark ( #429 )
...
And one for a single Keccak hash
2022-01-12 16:25:12 -08:00
Daniel Lubarov
9ecdc4d30f
note about toolchain
2022-01-11 19:36:32 -08:00
Daniel Lubarov
6c25fb9717
wording
2022-01-09 09:53:54 -08:00
Daniel Lubarov
ac59f2bc45
readme updates
2022-01-09 09:52:19 -08:00
Daniel Lubarov
3ab0a37af3
No longer need to store number of PP polynomials ( #424 )
...
* No longer need to store number of PP polynomials
It's unused after the refactoring we did.
* PR feedback
2022-01-09 09:44:13 -08:00