MCPcopy Create free account

hub / github.com/ZK-Garage/plonk / functions

Functions420 in github.com/ZK-Garage/plonk

↓ 2 callersMethodconditional_point_neg
Adds to the circuit description the conditional negation of a point: bit == 1 => -value, bit == 0 => value, # Note The `bit` used as input which is a
plonk-core/src/constraint_system/ecc/mod.rs:165
↓ 2 callersMethodconditional_point_select
Adds to the circuit description the conditional selection of the a point between two of them: ```text bit == 1 => point_1, bit == 0 => point_0, ```
plonk-core/src/constraint_system/ecc/mod.rs:145
↓ 2 callersMethodeliminate
Assumes matrix is partially reduced to upper triangular. `column` is the column to eliminate from all rows. Returns `None` if either: - no non-zero pi
plonk-hashing/src/poseidon/matrix.rs:247
↓ 2 callersFunctioninner_product
(a: &[F], b: &[F])
plonk-hashing/src/poseidon/matrix.rs:363
↓ 2 callersMethodis_eq_with_output
A gate which outputs a variable whose value is 1 if the two input variables have equal values and whose value is 0 otherwise.
plonk-core/src/constraint_system/composer.rs:403
↓ 2 callersMethodkey_transcript
Keys the [`Transcript`] with additional seed information Wrapper around [`Transcript::append_message`]. [`Transcript`]: merlin::Transcript [`Transcri
plonk-core/src/proof_system/prover.rs:155
↓ 2 callersMethodlogic_gate
Performs a logical AND or XOR op between the inputs provided for the specified number of bits. Each logic gate adds `(num_bits / 2) + 1` gates to the
plonk-core/src/constraint_system/logic.rs:36
↓ 2 callersFunctionn_sboxes
The number of S-boxes (also called the "cost") given by equation (14) in the Poseidon paper: `cost = t * R_F + R_P`.
plonk-hashing/src/poseidon/round_numbers.rs:15
↓ 2 callersMethodoutput_hash
Output the hash
plonk-hashing/src/poseidon/zprize_constraints.rs:82
↓ 2 callersMethodpad
Pads the circuit to the next power of two. # Note `diff` is the difference between circuit size and next power of two.
plonk-core/src/proof_system/preprocess.rs:64
↓ 2 callersFunctionpowers_of
(scalar: F)
plonk-core/src/util.rs:16
↓ 2 callersMethodpreprocess_prover
These are the parts of preprocessing that the prover must compute Although the prover does not need the verification key, he must compute the commitme
plonk-core/src/proof_system/preprocess.rs:162
↓ 2 callersMethodpreprocess_shared
FIXME: Add struct for prover side (last two tuple items).
plonk-core/src/proof_system/preprocess.rs:318
↓ 2 callersMethodpush
Pushes a row to the `LookupTable` vector.
plonk-core/src/lookup/lookup_table.rs:37
↓ 2 callersMethodreduce_to_identity
Perform row operations to reduce `self` to the identity matrix. `self` must be upper triangular. All operations are performed also on `shadow` to tra
plonk-hashing/src/poseidon/matrix.rs:324
↓ 2 callersFunctiontest_correct_permutation_poly
( n: usize, mut perm: Permutation, domain: &GeneralEvaluationDomain<F>, w_l: V
plonk-core/src/permutation/mod.rs:1243
↓ 2 callersMethodto_polynomial
Treats each element in the multiset as evaluation points Computes IFFT of the set of evaluation points and returns the coefficients as a Polynomial da
plonk-core/src/lookup/multiset.rs:194
↓ 2 callersMethodtranspose
(&self)
plonk-hashing/src/poseidon/matrix.rs:46
↓ 2 callersMethodverify
Performs the verification of a [`Proof`] returning a boolean result.
plonk-core/src/proof_system/proof.rs:123
↓ 1 callersFunctionK1
()
plonk-core/src/permutation/constants.rs:12
↓ 1 callersFunctionK2
()
plonk-core/src/permutation/constants.rs:16
↓ 1 callersFunctionK3
()
plonk-core/src/permutation/constants.rs:20
↓ 1 callersMethodadd
( c: &mut StandardComposer<F, P>, x: &Self::Field, y: &Self::Field, )
plonk-hashing/src/poseidon/zprize_constraints.rs:277
↓ 1 callersMethodadd_blinding_factors
This function is used to add a blinding factors to the witness and permutation polynomials. All gate selectors are turned off to guarantee the constra
plonk-core/src/constraint_system/composer.rs:604
↓ 1 callersMethodadd_dummy_constraints
This function adds two dummy gates to the circuit description which are guaranteed to always satisfy the gate equation. This function is only used in
plonk-core/src/constraint_system/composer.rs:509
↓ 1 callersMethodadd_dummy_lookup_table
Adds 3 dummy rows to the lookup table The first rows match the witness values used for `add_dummy_constraint` This function is only used for benchmark
plonk-core/src/constraint_system/composer.rs:577
↓ 1 callersMethodand_gate
Adds a logical AND gate that performs the bitwise AND between two values for the specified first `num_bits` returning a [`Variable`] holding the resul
plonk-core/src/constraint_system/logic.rs:349
↓ 1 callersMethodbuild
(&mut self)
plonk-core/src/constraint_system/arithmetic.rs:92
↓ 1 callersFunctioncheck_bit_consistency
Ensures that the bit is either `+1`, `-1`, or `0`.
plonk-core/src/proof_system/widget/ecc/fixed_base_scalar_mul.rs:150
↓ 1 callersMethodcheck_poly_same_len
Checks that all of the wires of the composer have the same length.
plonk-core/src/proof_system/preprocess.rs:101
↓ 1 callersMethodcircuit_domain_sep
(&mut self, n: u64)
plonk-core/src/transcript.rs:46
↓ 1 callersFunctionclassical_point_addition
Adds two curve points together using the classical point addition algorithm. This method is slower than WNAF and is just meant to be the source of tru
plonk-core/src/constraint_system/ecc/curve_addition/variable_base_gate.rs:113
↓ 1 callersMethodcompile
( &mut self, u_params: &PC::UniversalParams, )
plonk-core/src/circuit.rs:226
↓ 1 callersFunctioncompress_round_constants
- Compress constants by pushing them back through linear layers and through the identity components of partial layers. - As a result, constants need o
plonk-hashing/src/poseidon/preprocessing.rs:10
↓ 1 callersFunctioncompute_barycentric_eval
( evaluations: &[F], point: F, domain: &GeneralEvaluationDomain<F>, )
plonk-core/src/proof_system/proof.rs:660
↓ 1 callersMethodcompute_lineariser_check_is_one
Computes the lineariser check.
plonk-core/src/proof_system/permutation.rs:285
↓ 1 callersMethodcompute_lineariser_copy_range_check
Computes the following: ```text -(a_eval + beta * sigma_1 + gamma)(b_eval + beta * sigma_2 + gamma) (c_eval + beta * sigma_3 + gamma) * beta *z_eval
plonk-core/src/proof_system/permutation.rs:246
↓ 1 callersMethodcompute_lineariser_identity_range_check
Computes the following: ```text (a_eval + beta * z_challenge + gamma)(b_eval + beta * K1 * z_challenge + gamma)(c_eval + beta * K2 * z_challenge + ga
plonk-core/src/proof_system/permutation.rs:201
↓ 1 callersMethodcompute_lookup_permutation_poly
( &self, domain: &GeneralEvaluationDomain<F>, f: &[F], t: &[F], h_1: &
plonk-core/src/permutation/mod.rs:754
↓ 1 callersMethodcompute_lookup_quotient_term
Compute lookup portion of quotient polynomial
plonk-core/src/proof_system/widget/lookup.rs:42
↓ 1 callersMethodcompute_quotient_copy_range_check_i
Computes the following: ```text (a(x) + beta* Sigma1(X) + gamma) (b(X) + beta * Sigma2(X) + gamma) (c(X) + beta * Sigma3(X) + gamma)(d(X) + beta * Si
plonk-core/src/proof_system/permutation.rs:120
↓ 1 callersMethodcompute_quotient_i
Compute evals of lookup portion of quotient polynomial
plonk-core/src/proof_system/widget/lookup.rs:97
↓ 1 callersMethodcompute_quotient_identity_range_check_i
Computes the following: ```text (a(x) + beta * X + gamma) (b(X) + beta * k1 * X + gamma) (c(X) + beta k2 * X + gamma)(d(X) + beta * k3 * X + gamma)z(
plonk-core/src/proof_system/permutation.rs:92
↓ 1 callersMethodcompute_quotient_term_check_one_i
(&self, z_i: F, l1_alpha_sq: F)
plonk-core/src/proof_system/permutation.rs:151
↓ 1 callersMethodcompute_r0
( &self, domain: &GeneralEvaluationDomain<F>, pub_inputs: &[F], alpha: F,
plonk-core/src/proof_system/proof.rs:444
↓ 1 callersMethodcompute_slow_permutation_poly
( &self, domain: &GeneralEvaluationDomain<F>, w_l: I, w_r: I, w_o: I,
plonk-core/src/permutation/mod.rs:216
↓ 1 callersFunctioncompute_vanishing_poly_over_coset
Given that the domain size is `D` This function computes the `D` evaluation points for the vanishing polynomial of degree `n` over a coset
plonk-core/src/proof_system/preprocess.rs:498
↓ 1 callersFunctioncompute_wnaf_point_multiples
( base_point: TEGroupProjective<P>, )
plonk-core/src/constraint_system/ecc/scalar_mul/fixed_base.rs:19
↓ 1 callersMethodconditional_select_identity
Adds to the circuit description the conditional selection of the identity point: ```text bit == 1 => point, bit == 0 => 1, ``` # Note The `bit` use
plonk-core/src/constraint_system/ecc/mod.rs:197
↓ 1 callersMethodconditional_select_one
Adds the polynomial f(x) = 1 - x + xa to the circuit description where `x = bit`. If: bit == 1 => value, bit == 0 => 1, # Note The `bit` used as inpu
plonk-core/src/constraint_system/composer.rs:480
↓ 1 callersMethodconditional_select_zero
Adds the polynomial f(x) = x * a to the circuit description where `x = bit`. If: bit == 1 => value, bit == 0 => 0, # Note The `bit` used as input whi
plonk-core/src/constraint_system/composer.rs:460
↓ 1 callersMethodcontains
Checks if an element is in the MultiSet
plonk-core/src/lookup/multiset.rs:187
↓ 1 callersFunctiondelta_xor_and
(a: F, b: F, w: F, c: F, q_c: F)
plonk-core/src/proof_system/widget/logic.rs:114
↓ 1 callersFunctionextract_bit
Extracts the bit value from the accumulated bit.
plonk-core/src/proof_system/widget/ecc/fixed_base_scalar_mul.rs:142
↓ 1 callersFunctionfactor_to_sparse_matrixes
( base_matrix: Matrix<F>, n: usize, )
plonk-hashing/src/poseidon/mds.rs:160
↓ 1 callersMethodfixed_group_add
Fixed group addition of a point.
plonk-core/src/constraint_system/ecc/curve_addition/fixed_base_gate.rs:77
↓ 1 callersMethodfrom_wire_values
This allows the witness table to be filled directly without taking any values, or the results, from the lookup table. If the values do no exist in the
plonk-core/src/lookup/witness_table.rs:38
↓ 1 callersFunctiongenerate_constants
From the paper THe parameter describes the initial state of constant generation (80-bits) `field`: description of field. b0, b1 `sbox`: description of
plonk-hashing/src/poseidon/round_constant.rs:12
↓ 1 callersMethodget_next_bytes
(&mut self, result: &mut [u8])
plonk-hashing/src/poseidon/round_constant.rs:137
↓ 1 callersMethodgroup_gen_inv
(&self)
plonk-core/src/util.rs:75
↓ 1 callersMethodinsert_add_row
Insert a new row for an addition operation. This function needs to know the upper bound of the amount of addition operations that will be done in the
plonk-core/src/lookup/lookup_table.rs:51
↓ 1 callersMethodinsert_and_row
Insert a new row for an AND operation. This function needs to know the upper bound of the amount of AND operations that will be done in the plookup t
plonk-core/src/lookup/lookup_table.rs:81
↓ 1 callersMethodinsert_mul_row
Insert a new row for a multiplication operation. This function needs to know the upper bound of the amount of multiplication operations that will be
plonk-core/src/lookup/lookup_table.rs:61
↓ 1 callersMethodinsert_multi_mul
Function builds a table from mutiple operations. If, for example, we are using lookup tables for both XOR and mul operataions, we can create a table w
plonk-core/src/lookup/lookup_table.rs:111
↓ 1 callersMethodinto_dense_poly
Returns the public inputs as a vector of `n` evaluations. The provided `n` must be a power of 2.
plonk-core/src/proof_system/pi.rs:112
↓ 1 callersMethodis_identity
(&self)
plonk-hashing/src/poseidon/matrix.rs:92
↓ 1 callersFunctionkronecker_delta
(i: usize, j: usize)
plonk-hashing/src/poseidon/matrix.rs:404
↓ 1 callersMethodlookup
Attempts to find an output value, given two input values, by querying the lookup table. The final wire holds the index of the table. The element must
plonk-core/src/lookup/lookup_table.rs:172
↓ 1 callersMethodmul_by_scalar
(&self, scalar: F)
plonk-hashing/src/poseidon/matrix.rs:111
↓ 1 callersMethodmul_col_vec
return `self @ vec`, treating `vec` as a column vector.
plonk-hashing/src/poseidon/matrix.rs:129
↓ 1 callersMethodmul_row_vec_at_left
return `vec @ self`, treating `vec` as a row vector.
plonk-hashing/src/poseidon/matrix.rs:163
↓ 1 callersMethodout
(&mut self, q_o: F)
plonk-core/src/constraint_system/arithmetic.rs:77
↓ 1 callersMethodpad
Extends the length of the multiset to n elements The `n` will be the size of the arithmetic circuit. This will extend the vectors to the size
plonk-core/src/lookup/multiset.rs:70
↓ 1 callersMethodposition
Returns the position of the element in the Multiset. Returns None if the element is not found.
plonk-core/src/lookup/multiset.rs:112
↓ 1 callersMethodpreprocess_verifier
The verifier only requires the commitments in order to verify a [`Proof`](super::Proof) We can therefore speed up preprocessing for the verifier by sk
plonk-core/src/proof_system/preprocess.rs:299
↓ 1 callersMethodprove_with_preprocessed
Creates a [`Proof]` that demonstrates that a circuit is satisfied. # Note If you intend to construct multiple [`Proof`]s with different witnesses, aft
plonk-core/src/proof_system/prover.rs:165
↓ 1 callersFunctionround_numbers_are_secure
Returns `true` if the provided round numbers satisfy the security inequalities specified in the Poseidon paper.
plonk-hashing/src/poseidon/round_numbers.rs:82
↓ 1 callersFunctionround_numbers_base
(arity: usize)
plonk-hashing/src/poseidon/round_numbers.rs:21
↓ 1 callersMethodscalar_decomposition
( &mut self, witness_var: Variable, witness_scalar: F, )
plonk-core/src/constraint_system/ecc/scalar_mul/variable_base.rs:56
↓ 1 callersMethodseed_transcript
Adds the circuit description to the transcript.
plonk-core/src/proof_system/widget/mod.rs:258
↓ 1 callersFunctionshift_poly_by_one
shifts the polynomials by one root of unity
plonk-core/src/permutation/mod.rs:1236
↓ 1 callersMethodsize
(&self)
plonk-hashing/src/poseidon/mds.rs:141
↓ 1 callersMethodsize_inv
(&self)
plonk-core/src/util.rs:59
↓ 1 callersMethodsplit_tx_poly
NOTE: This is an ok type for internal use.
plonk-core/src/proof_system/prover.rs:107
↓ 1 callersFunctiontest_mds_matrices_creation_aux
(width: usize)
plonk-hashing/src/poseidon/mds.rs:193
↓ 1 callersFunctiontest_swapping_aux
(width: usize)
plonk-hashing/src/poseidon/mds.rs:225
↓ 1 callersMethodtotal_size
Returns the length of the circuit that can accommodate the lookup table.
plonk-core/src/constraint_system/composer.rs:139
↓ 1 callersMethodv_h_coset_8n
(&self)
plonk-core/src/proof_system/widget/mod.rs:343
↓ 1 callersMethodvariable_base_scalar_mul
Adds a variable-base scalar multiplication to the circuit description. # Note If you're planning to multiply always by the generator of the scalar f
plonk-core/src/constraint_system/ecc/scalar_mul/variable_base.rs:27
↓ 1 callersMethodvec_to_multiset
Takes in a table, which is a vector of slices containing 4 elements, and turns them into 4 distinct multisets for a, b, c and d.
plonk-core/src/lookup/lookup_table.rs:157
Function_multiset_compression_input
TODO Delete if not used
plonk-core/src/lookup/multiset.rs:394
Methodadd
Add evaluation of poly at point if the label is not already in the set of evaluations
plonk-core/src/proof_system/linearisation_poly.rs:133
Methodadd
(self, other: Self)
plonk-core/src/lookup/multiset.rs:246
Methodadd_affine_to_circuit_description
Add the provided affine point as a circuit description and return its constrained witness value
plonk-core/src/constraint_system/ecc/mod.rs:97
Methodadd_public_affine
Converts an embeded curve point into a constraint system Point without constraining the values
plonk-core/src/constraint_system/ecc/mod.rs:88
Methodadd_round_constants
( c: &mut COM, state: &mut [Self::Field; WIDTH], constants: &PoseidonConstants<Self::P
plonk-hashing/src/poseidon/poseidon_ref.rs:59
Methodadd_table
Creates an addition table for addends from the lower bound up to the upper bound 2^n
plonk-core/src/lookup/lookup_table.rs:184
Methodaddi
( c: &mut StandardComposer<F, P>, a: &Self::Field, b: &Self::ParameterField, )
plonk-hashing/src/poseidon/zprize_constraints.rs:285
Methodaddi
( _c: &mut (), a: &Self::Field, b: &Self::ParameterField, )
plonk-hashing/src/poseidon/poseidon_ref.rs:263
Functionaggregate_polynomials
Aggregate polynomials
plonk-core/src/commitment.rs:119
← previousnext →101–200 of 420, ranked by callers