MCPcopy Create free account

hub / github.com/NethermindEth/latticefold / functions

Functions495 in github.com/NethermindEth/latticefold

Methodcompute_u_s
Compute CCS-linearization evaluation claims.
crates/latticefold/src/nifs/decomposition.rs:214
Methodcompute_v_s
Compute f-hat evaluation claims.
crates/latticefold/src/nifs/decomposition.rs:204
Methodcompute_x_s
Takes the concatenation `x_w || h`, performs gadget decomposition of it, decomposes the resulting `P::B`-short vector into `P::K` `P::B_SMALL`-vectors
crates/latticefold/src/nifs/decomposition.rs:172
Methodconstraint
Fetch the i'th constraint, returning the respective (A, B, C) i'th row
crates/latticefold/src/arith/r1cs.rs:61
Methodconstruct_polynomial_g
Step 2 of Fig 5: Construct polynomial $g$ and generate $\beta$ challenges.
crates/latticefold/src/nifs/linearization.rs:80
Functioncreate_sumcheck_polynomial
( log_m: usize, f_hat_mles: Vec<Vec<DenseMultilinearExtension<NTT>>>, alpha_s: &[NTT], challen
crates/latticefold/src/nifs/folding/utils.rs:200
Functiondecompose_B_vec_into_k_vec
Decompose a vector of norm B in its coefficient form into DP::K small vectors.
crates/latticefold/src/nifs/decomposition/utils.rs:45
Methoddecompose_and_commit_coeff
Takes a coefficient form witness, decomposes it vertically in radix-B, i.e. computes a preimage G_B^{-1}(w), and Ajtai commits to the result.
crates/latticefold/src/commitment/commitment_scheme.rs:90
Methoddecompose_and_commit_ntt
Takes an NTT form witness, transforms it into the coefficient form, decomposes it vertically in radix-B, i.e. computes a preimage G_B^{-1}(w), and Ajt
crates/latticefold/src/commitment/commitment_scheme.rs:106
Functiondecompose_big_vec_into_k_vec_and_compose_back
Decompose a vector of arbitrary norm in its NTT form into DP::K vectors and applies the gadget-B matrix again.
crates/latticefold/src/nifs/decomposition/utils.rs:12
Methoddecompose_witness
Decomposes a witness `wit` into `P::K` vectors norm `< P::B_SMALL` such that $$ \text{wit} = \sum\limits_{i=0}^{\text{P::K} - 1} \text{P::B\\_SMALL}^i
crates/latticefold/src/nifs/decomposition.rs:162
Methoddefault
()
crates/latticefold/src/transcript/poseidon.rs:24
Methoddefault
()
crates/latticefold/src/arith/r1cs.rs:317
Functiondraw_ring_below_bound
(rng: &mut impl Rng)
crates/latticefold/src/nifs/decomposition/utils.rs:72
Methodempty
()
crates/latticefold-plus/src/transcript.rs:20
Functionevaluate_mles
(mle_s: I, point: &[R])
crates/latticefold/src/utils/mle_helpers.rs:65
Methodextract_sum
extract sum from the proof
crates/latticefold/src/utils/sumcheck.rs:46
Functionfield_factorial
(a: usize)
crates/latticefold/src/utils/sumcheck/verifier.rs:261
Methodfmt
(&self, f: &mut ark_std::fmt::Formatter<'_>)
crates/latticefold/src/decomposition_parameters.rs:40
Methodfrom
(_: P)
crates/latticefold/src/decomposition_parameters.rs:23
Methodfrom
(arith_error: ArithErrors)
crates/latticefold/src/utils/sumcheck.rs:32
Methodfrom
(slice: &'a [R])
crates/latticefold/src/commitment/homomorphic_commitment.rs:37
Methodfrom_constraint_system
Create an R1CS from a constraint system
crates/latticefold/src/arith/r1cs.rs:56
Methodfrom_f
(f: Vec<R>, A: &Matrix<R>, decomp: &DecompParameters)
crates/latticefold-plus/src/rgchk.rs:260
Methodfrom_f
(f: Vec<NTT>)
crates/latticefold/src/arith.rs:299
Methodfrom_f_coeff
Reconstruct the original CCS witness from the Ajtai witness Assume that Ajtai witness has bound B. We can multiply by the base B gadget matrix to rec
crates/latticefold/src/arith.rs:324
Methodfrom_f_slice
(f: &[NTT])
crates/latticefold/src/arith.rs:316
Methodfrom_r1cs
Constructs a [`CCS`] instance from a [`R1CS`].
crates/latticefold/src/arith.rs:122
Methodfrom_r1cs_padded
Constructs a [`CCS`] instance from a [`R1CS`]. The CCS instance matrices rows are then padded to max { `(n - l - 1) * L`, `m` } next power of 2.
crates/latticefold/src/arith.rs:144
Methodfrom_vec_raw
(vec: Vec<R>)
crates/latticefold/src/commitment/homomorphic_commitment.rs:17
Methodfrom_w_ccs
Create a [`Witness`] from a ccs witness. The main operations that need to be done are decomposing the ccs witness. We can then construct [`f_hat`](cr
crates/latticefold/src/arith.rs:230
Functiongenerate_decomposition_args
( kappa: usize, n: usize, wit_len: usize, )
crates/latticefold/src/nifs/decomposition/tests/mod.rs:37
Functiongenerate_folding_proof
( ccs: &CCS<RqNTT>, prover_transcript: &mut PoseidonTranscript<RqNTT, CS>, lcccs: &[LCCCS<RqNTT>],
crates/latticefold/src/nifs/folding/tests/mod.rs:164
Methodgenerate_sumcheck_proof
Step 2: Run linearization sum-check protocol.
crates/latticefold/src/nifs/linearization.rs:106
Functionget_env_var
(key: &str)
crates/latticefold/benches/env.rs:5
Methodget_etas
( Mz_mles_vec: &[Vec<DenseMultilinearExtension<NTT>>], r_0: &[NTT], )
crates/latticefold/src/nifs/folding.rs:247
Methodget_fhat
Given a gadget-decomposed witness slice `f` returns the f-hat matrix from the Latticefold paper, i.e. a matrix of dimension `tau x f.len()`, where `ta
crates/latticefold/src/arith.rs:273
Methodget_one
(&self)
crates/latticefold/src/arith/r1cs.rs:591
Methodget_poseidon_config
()
crates/cyclotomic-rings/src/rings/poseidon/frog.rs:10
Methodget_poseidon_config
()
crates/cyclotomic-rings/src/rings/poseidon/stark.rs:11
Methodget_poseidon_config
()
crates/cyclotomic-rings/src/rings/poseidon/babybear.rs:8
Methodget_poseidon_config
()
crates/cyclotomic-rings/src/rings/poseidon/goldilocks.rs:8
Functionget_rhos
Generates `rho` values based on the provided transcript and decomposition parameters. This function is used within the module to extract or compute v
crates/latticefold/src/nifs/folding/utils.rs:116
Methodget_ris
(cm_i_s: &[LCCCS<NTT>])
crates/latticefold/src/nifs/folding.rs:204
Methodget_sumcheck_randomness
(sumcheck_prover_state: ProverState<NTT>)
crates/latticefold/src/nifs/folding.rs:228
Functionget_test_degree_three_ccs_padded
(W: usize, L: usize)
crates/latticefold/src/arith/ccs.rs:134
Functionget_test_degree_three_z_split
(input: usize)
crates/latticefold/src/arith/ccs.rs:82
Functionget_test_dummy_ccs
( x_len: usize, n: usize, wit_len: usize, r1cs_rows: usize, L: usize, )
crates/latticefold/benches/utils.rs:41
Functionget_test_dummy_ccs_non_scalar
( x_len: usize, n: usize, r1cs_rows: usize, L: usize, witness: &[R], )
crates/latticefold/benches/utils.rs:124
Functionget_test_dummy_degree_three_ccs_non_scalar
Given a witness, provides a satisfying degree three CCS of arbitrary size
crates/latticefold/src/arith/ccs.rs:14
Functionget_test_dummy_r1cs
Return a R1CS instance of arbitrary size, useful for benching. Only works when z vector consists of multiplicative identities.
crates/latticefold/src/arith/r1cs.rs:155
Functionget_test_dummy_r1cs_non_scalar
Return a R1CS instance of arbitrary size, useful for benching. Works for arbitrary z vector.
crates/latticefold/src/arith/r1cs.rs:170
Functionget_test_dummy_z_split
Return z vector consisting only of multiplicative identities, split into statement, constant, and witness.
crates/latticefold/src/arith/r1cs.rs:279
Functionget_test_dummy_z_split_ntt
Return z vector consisting of non scalar ring elements, split into statement, constant, and witness.
crates/latticefold/src/arith/r1cs.rs:289
Functionget_test_r1cs
()
crates/latticefold/src/arith/r1cs.rs:128
Functionget_test_z_ntt_split
Return non-scalar z vector for Vitalik's [R1CS example](https://medium.com/@VitalikButerin/quadratic-arithmetic-programs-from-zero-to-hero-f6d558cea64
crates/latticefold/src/arith/r1cs.rs:272
Functionget_test_z_split
Return scalar z vector for Vitalik's [R1CS example](https://medium.com/@VitalikButerin/quadratic-arithmetic-programs-from-zero-to-hero-f6d558cea649#81
crates/latticefold/src/arith/r1cs.rs:265
Methodget_thetas
( f_hat_mles: &[Vec<DenseMultilinearExtension<NTT>>], r_0: &[NTT], )
crates/latticefold/src/nifs/folding.rs:236
Methodgroup_name
()
crates/latticefold-plus/benches/double_commitment.rs:102
Methodgroup_name
()
crates/latticefold-plus/benches/lin.rs:125
Methodgroup_name
()
crates/latticefold-plus/benches/e2e.rs:169
Methodgroup_name
()
crates/latticefold-plus/benches/split.rs:75
Methodgroup_name
()
crates/latticefold-plus/benches/setchk.rs:98
Methodgroup_name
()
crates/latticefold-plus/benches/rgchk.rs:100
Methodgroup_name
()
crates/latticefold-plus/benches/mlin.rs:144
Methodgroup_name
()
crates/latticefold-plus/benches/cm.rs:113
Methodgroup_name
()
crates/latticefold-plus/benches/decomp.rs:150
Methodinit
Initialize
crates/latticefold-plus/src/plus.rs:55
Methodis_valid
Check if the linear combination is valid given the number of variables
crates/latticefold/src/arith/r1cs.rs:355
Functionmain
()
crates/latticefold/build.rs:7
Functionmain
()
crates/latticefold/examples/e2e.rs:97
Methodmul_assign
(&mut self, rhs: &'a R)
crates/latticefold/src/commitment/homomorphic_commitment.rs:73
Methodnew
Creates a new R1CS builder with the given parameters. # Arguments `n` - Witness size (total number of variables) `k` - Decomposition width `b` - Norm
crates/latticefold-plus/benches/utils/helpers.rs:120
Methodnew
(r1cs: R1CS<R>, z: Vec<R>, l_in: usize, b: u128, k: usize, A: &Matrix<R>)
crates/latticefold-plus/src/r1cs.rs:49
Methodnew
(config: &Self::TranscriptConfig)
crates/latticefold-plus/src/transcript.rs:28
Methodnew
(config: &Self::TranscriptConfig)
crates/latticefold/src/transcript/poseidon.rs:32
Methodnew
Create a new scheme using the provided Ajtai matrix
crates/latticefold/src/commitment/commitment_scheme.rs:23
Methodnew
Create a new empty linear combination
crates/latticefold/src/arith/r1cs.rs:324
Methodparam_label
((n, L, k, kappa): Self::Params)
crates/latticefold-plus/benches/double_commitment.rs:110
Methodparam_label
((n, k, kappa, B): Self::Params)
crates/latticefold-plus/benches/lin.rs:143
Methodparam_label
((n, L, k, kappa): Self::Params)
crates/latticefold-plus/benches/e2e.rs:177
Methodparam_label
((witness_size, k_first, kappa): Self::Params)
crates/latticefold-plus/benches/split.rs:83
Methodparam_label
((set_size, num_batches): Self::Params)
crates/latticefold-plus/benches/setchk.rs:106
Methodparam_label
((witness_size, k, kappa): Self::Params)
crates/latticefold-plus/benches/rgchk.rs:108
Methodparam_label
((L, n, k, kappa, B): Self::Params)
crates/latticefold-plus/benches/mlin.rs:156
Methodparam_label
((L, witness_size, k, kappa): Self::Params)
crates/latticefold-plus/benches/cm.rs:123
Methodparam_label
((n, k, kappa, B): Self::Params)
crates/latticefold-plus/benches/decomp.rs:161
Methodparams_to_le_bytes
(&self)
crates/latticefold/src/arith.rs:107
Functionprepare_test_vectors
( wit: &Witness<RqNTT>, cm_i: &CCCS<RqNTT>, ccs: &CCS<RqNTT>, )
crates/latticefold/src/nifs/linearization/tests/mod.rs:129
Methodprepare_verifier_output
( cm_i: &CCCS<NTT>, point_r: Vec<NTT>, proof: &LinearizationProof<NTT>, )
crates/latticefold/src/nifs/linearization.rs:245
Methodprove
( acc: &LCCCS<NTT>, w_acc: &Witness<NTT>, cm_i: &CCCS<NTT>, w_i: &Witness<NTT>
crates/latticefold/src/nifs.rs:48
Methodprove
( cm_i: &LCCCS<NTT>, wit: &Witness<NTT>, transcript: &mut impl Transcript<NTT>,
crates/latticefold/src/nifs/decomposition.rs:33
Methodprove
( cm_i: &CCCS<NTT>, wit: &Witness<NTT>, transcript: &mut impl Transcript<NTT>,
crates/latticefold/src/nifs/linearization.rs:145
Methodprove
( cm_i_s: &[LCCCS<NTT>], mut w_s: Vec<Witness<NTT>>, transcript: &mut impl TranscriptW
crates/latticefold/src/nifs/folding.rs:42
Methodprove_as_subprotocol
This function does the same thing as `prove`, but it uses cryptographic sponge as the transcript/to generate the verifier challenges. Additionally, it
crates/latticefold/src/utils/sumcheck.rs:53
Methodprove_round
receive message from verifier, generate prover message, and proceed to next round Adapted Jolt's sumcheck implementation
crates/latticefold/src/utils/sumcheck/prover.rs:56
Methodprover_init
initialize the prover to argue for the sum of polynomial over {0,1}^`num_vars`
crates/latticefold/src/utils/sumcheck/prover.rs:35
Methodrand
Generates a random witness by firstly generating a random vector of arbitrary norm and then computing the rest of the data needed for a witness. # Ar
crates/latticefold/src/arith.rs:347
Methodrand
Returns a random Ajtai commitment matrix
crates/latticefold/src/commitment/commitment_scheme.rs:30
Methodrecompose
Recomposes `s`, calculating the linear combination `b[0] * s[0][j] + b[1] * s[1][j] + ... + b[s.len() - 1] * s[s.len() - 1][j]` for each element index
crates/latticefold/src/nifs/decomposition.rs:262
← previousnext →201–300 of 495, ranked by callers