This also removes references to the "extended matrix" in favor of just "matrix"
which I think is better. It's not an extended matrix, it's a matrix of extended
blobs. Technically it's just a matrix of cells/proofs.
* Rename column_index to cell_index in KZG spec
* Fix table of contents
* Replace list(set()) with set()
* Change coset_evals to cell_indices in some places
* Remove punctuation in table description
* Remove "row" from comments & improve docstring
* Replace unique with deduplicated
Here we assume uniform random selection without replacement.
If other methods are used, the target false positive threshold
is the main rule to follow.
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
* Recover cells and proofs & matrix clean up
* Fix table of contents
* Update reference tests generator
* Update test format
* Remove unused imports
* Fix some minor nits
* Rename MatrixEntry's proof to kzg_proof
* Move RowIndex & ColumnIndex to das-core
Importing scipy is not preferred. This is a self-contained
version. Eventually an import of math and use of math.comb
makes it simpler.
Solving other formatting issues as well.
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
While the technique was introduced as LossyDAS, we don't need the name
in the specification itself.
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
Clarify that what matters is the false positive threshold, allowing
different sampling strategies as protocol compliant behavior.
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
* Add CellBytes type
* Use ByteVector, not Vector
* Fix tests
* Replace b"" with []
* Apply suggestions for bytes_to_cell
* Add/integrate new CosetEvals type
* Remove accidental new line
* Fix recover_all_cells
* Fix recover_matrix
* fix CosetEvals abstraction leak
* Introduce internal Coset type for `coset_for_cell()`
* Use CosetEvals in compute_kzg_proof_multi_impl()
* update test
* satisfy linter
* Fix two nits I noticed
---------
Co-authored-by: Kevaundray Wedderburn <kevtheappdev@gmail.com>
Co-authored-by: George Kadianakis <desnacked@riseup.net>