* refactor: Deleted a redundant `ScalarMul` helper trait
* refactor: Refactor `to_transcript_bytes`
* refactor: refactor R1CS Shape checking in Spartan checks
- Introduced a new function `check_regular_shape` in `r1cs.rs` to enforce regularity conditions necessary for Spartan-class SNARKs.
* refactor: Refactor sumcheck.rs prove_quad_* for readability
- Extracted the calculation of evaluation points to its new function `compute_eval_points`, enhancing code reusability within `prove_quad` and `prove_quad_batch` functions.
* chore: update to ff/group 0.13 and associated dependencies
Updates:
- zkcrypto/ff, zkcrypto/group to 0.13,
- bellperson to 0.25,
- pasta_curves to 0.5.1, and removes the fil_pasta_curves fork
- pasta-msm should no longer need a fork (WIP)
Adapts source in function, mostly for const usage and API updates.
* expose the portable feature of pasta-MSM
* update pointer to pasta-msm
* Clippy
---------
Co-authored-by: François Garillot <francois@garillot.net>
* support for arbitrary arity for F
* revive MinRoot example
* revive tests
* revive ecdsa
* remove unused code
* use None instead of Some(1u32)
* revive benches
* fix clippy warning
* cleanup code
* compiles
* additional plumbing
* add padding
* Add missing file
* integrate
* add a separate test
* cleanup
* cleanup
* add checks for outer sum-check
* sum-checks pass
* sum-checks pass
* sum-checks pass
* Add polycommit checks to the end
* switch to pasta_msm
* clippy
* remove int_log
* switch to pasta_curves
* clippy
* clippy
* add a special case for bases.len() = 1
* use naive MSM to avoid SIGFE error for smaller MSMs
* add rayon parallelism to naive MSM
* update comment since we already implement it
* address clippy
* cleanup map and reduce code
* add parallelism to final SNARK creation and verification
* add par
* add par
* add par
* add par
* store padded shapes in the parameters
* Address clippy
* pass padded shape in params
* pass padded shape in params
* cargo fmt
* add par
* add par
* Add par
* cleanup with a reorg
* factor out spartan-based snark into a separate module
* create traits for RelaxedR1CSSNARK
* make CompressedSNARK parameterized by a SNARK satisfying our new trait
* fix benches
* cleanup code
* remove unused
* move code to Spartan-based SNARK
* make unused function private
* rename IPA types for clarity
* cleanup
* return error types; rename r_j to r_i
* fix duplicate code