Anton Nashatyrev
63612c1119
Fix toeplitz_coeffs_stride() for minimal sized poly ( #18 )
...
Fix an edge case in FKMulti when the chunk length was the same as the polynomial size, resulting in writing outside the return array in `toeplitz_coeffs_stride()`.
Co-authored-by: Ben Edgington <ben@benjaminion.xyz>
2021-08-20 16:07:16 +01:00
Anton Nashatyrev
350a961b90
Fix condition check ( #17 )
2021-08-11 11:13:08 +01:00
Ben Edgington
950d53c325
Nashatyrev feature/add g2 add dbl ( #16 )
...
* Add g2_add_or_dbl() function
* Add unit test
Co-authored-by: Anton Nashatyrev <anton.nashatyrev@gmail.com>
2021-08-11 10:06:32 +01:00
Ben Edgington
80f984cecd
Correct include dir info
2021-07-09 13:41:30 +01:00
Ben Edgington
b21d13684b
Consolidate header files ( #14 )
...
* Consolidate header files
User should now need only include c_kzg.h and bls12_381.h.
* Update README
2021-07-09 13:35:19 +01:00
Ben Edgington
ca1acf61d6
Fix up docs (include static functions)
2021-07-09 09:54:37 +01:00
Ben Edgington
1f2c946ce8
Merge pull request #12 from Nashatyrev/fix/double-include-guard
...
Add double header include guard for kzg_proofs.h
2021-07-09 06:26:15 +01:00
Ben Edgington
e8b140a88b
Comment end of #if
2021-07-09 06:23:35 +01:00
Ben Edgington
13d523a079
Merge pull request #13 from benjaminion/testing_refactor
...
Refactor unit testing
2021-07-09 06:19:35 +01:00
Anton Nashatyrev
1712cd83bb
Add newline at the end of file
2021-07-08 17:59:32 +03:00
Anton Nashatyrev
0c8c174a31
Add double header include guard for kzg_proofs.h
2021-07-08 17:58:15 +03:00
Ben Edgington
f6b1d0ff57
Refactor unit testing
2021-07-03 13:55:54 +01:00
Ben Edgington
144d81b2c1
Fix up documentation
2021-07-03 11:45:39 +01:00
Ben Edgington
479a9cab28
Merge pull request #11 from benjaminion/das_extension_stride_fix
...
Fix initial stride in das_fft_extension
2021-07-03 10:57:06 +01:00
Ben Edgington
27bde1aff7
Fix initial stride in das_fft_extension
2021-07-03 10:50:56 +01:00
Ben Edgington
419e28b46b
Merge pull request #9 from benjaminion/Nashatyrev-feature/add-fr-to-uints
...
Add fr_to_uints() function
2021-07-03 09:45:58 +01:00
Ben Edgington
958dc1aee7
Minor tweaks and add a unit test
2021-07-03 09:37:20 +01:00
Anton Nashatyrev
fc641a2197
Add fr_to_uint64s() function
2021-07-02 14:48:36 +03:00
Ben Edgington
ba81164330
Implements fast division for long divisors ( #7 )
2021-06-28 12:42:14 +01:00
Ben Edgington
244bfe8740
Add ASSERT macro
2021-06-24 16:22:37 +01:00
Ben Edgington
2cf8782e91
Add length check for polynomial commitment
2021-06-23 11:51:50 +01:00
Ben Edgington
37021b9653
Use Blst's multiscalar multiplication for commitments
2021-06-22 19:52:44 +01:00
Ben Edgington
18f7d8f72e
Link to jc-kzg Java wrapper
2021-06-21 16:11:03 +01:00
Anton Nashatyrev
7f8b81717d
Add KZG_CFLAGS env var to compiler options for passing additional compiler options ( #6 )
...
* Add KZG_CFLAGS env var to compiler options for passing additional compiler options
2021-06-14 13:00:17 +01:00
Ben Edgington
32becfefcf
Change the primitive root from 5 to 7 ( #5 )
2021-06-11 14:22:47 +01:00
Ben Edgington
e23d7457b6
Merge pull request #2 from Nashatyrev/fix/include
...
Specify blst include dir in Makefile
2021-06-11 11:07:49 +01:00
Anton Nashatyrev
9e4cfa4325
Move specific include dir to Makefile from .h
2021-06-10 18:52:36 +03:00
Ben Edgington
0924f243b4
Simplify reduction loop
2021-04-28 19:56:22 +01:00
Ben Edgington
f25ada5ea9
Micro-optimisation
2021-04-20 12:28:30 +01:00
Ben Edgington
e7b4e9f06d
Rename shift_poly to scale_poly
2021-03-08 12:06:25 +00:00
Ben Edgington
e9537b29a3
Fix benchmark
2021-03-06 13:17:07 +00:00
Ben Edgington
42013d27a0
Fix missing initialisation
2021-03-06 13:16:32 +00:00
Ben Edgington
5edef551f4
Test for division by zero
2021-03-06 13:15:57 +00:00
Ben Edgington
7d3d422005
Improve comments
2021-03-04 15:10:28 +00:00
Ben Edgington
9d1b622f21
Make zero poly work for large numbers of missing indices
...
Previously, like the Go code, calculating the zero polynomial would fail
for very lare numbers of missing indices. For example, 253 missing with
a domain size of 256 - this is where the number of partials flips from 4
to 5 and more working space is needed.
With this commit, the zero polynomial can be calculated right up to all
but one of the indices missing. The case with all indices missing
doesn't work as the return data is too large, but the solution is known
to be `x^width - 1` in case we need to know.
2021-03-03 21:51:32 +00:00
Ben Edgington
f09d1a70b2
Handle many missing (step 3)
2021-03-03 17:43:31 +00:00
Ben Edgington
8fbea3b3ef
Handle many missing (step 2)
2021-03-03 11:48:56 +00:00
Ben Edgington
80af76581d
Handle many missing (step 1)
2021-03-03 08:44:49 +00:00
Ben Edgington
e2cbccdc9d
Start improving the docs
2021-03-01 11:39:18 +00:00
Ben Edgington
a28860ae39
Benchmarks for recover and zero_poly
2021-02-28 17:01:00 +00:00
Ben Edgington
79a9419791
Reduce memory usage
2021-02-28 17:00:05 +00:00
Ben Edgington
52e620467a
Minor tweaks
2021-02-28 13:09:59 +00:00
Ben Edgington
0c5cd403d0
Minor update to debug info
2021-02-28 11:43:54 +00:00
Ben Edgington
f1380fb007
Update progress
2021-02-27 15:21:53 +00:00
Ben Edgington
2c22bb9dae
Implement recovery from samples
2021-02-27 15:19:46 +00:00
Ben Edgington
345a16bf8a
Remove in-place FFTs
2021-02-26 14:44:31 +00:00
Ben Edgington
a697775c4f
Implement zero polynomial - passes tests, but could be tidier
2021-02-26 14:38:04 +00:00
Ben Edgington
5cc7ea488c
Implement in-place FFTs for field elements
2021-02-22 21:36:43 +00:00
Ben Edgington
e2c74624d7
Add functions to allocate multi-dimensional arrays
2021-02-22 17:03:16 +00:00
Ben Edgington
3d6fd31610
Improve tests
2021-02-21 12:53:39 +00:00