MCPcopy Create free account

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

Functions420 in github.com/ZK-Garage/plonk

↓ 433 callersMethodpush
Pushes chosen value onto the end of the Multiset
plonk-core/src/lookup/multiset.rs:82
↓ 118 callersMethodadd_input
Add Input first calls the Permutation to generate and allocate a new [`Variable`] `var`. The Composer then links the variable to the [`PrimeField`] a
plonk-core/src/constraint_system/composer.rs:261
↓ 106 callersMethodappend
(&mut self, label: &'static [u8], item: &impl CanonicalSerialize)
plonk-core/src/transcript.rs:28
↓ 57 callersMethodarithmetic_gate
Function used to generate any arithmetic gate with fan-in-2 or fan-in-3.
plonk-core/src/constraint_system/arithmetic.rs:103
↓ 57 callersMethodwitness
( &mut self, w_l: Variable, w_r: Variable, w_o: Option<Variable>, )
plonk-core/src/constraint_system/arithmetic.rs:52
↓ 44 callersMethodextend
Extendes values onto the end of the Multiset
plonk-core/src/lookup/multiset.rs:87
↓ 41 callersMethodlen
Returns the cardinality of the multiset
plonk-core/src/lookup/multiset.rs:101
↓ 34 callersMethodget
Get the evaluation of the specified label. This funtions panics if the requested label is not found
plonk-core/src/proof_system/linearisation_poly.rs:123
↓ 28 callersMethodadd
(&mut self, q_l: F, q_r: F)
plonk-core/src/constraint_system/arithmetic.rs:72
↓ 28 callersMethodchallenge_scalar
(&mut self, label: &'static [u8])
plonk-core/src/transcript.rs:34
↓ 28 callersMethodsize
Returns the length of the `LookupTable` vector.
plonk-core/src/lookup/lookup_table.rs:32
↓ 24 callersMethodadd_variables_to_map
Maps a set of [`Variable`]s (a,b,c,d) to a set of [`Wire`](WireData)s (left, right, out, fourth) with the corresponding gate index
plonk-core/src/permutation/mod.rs:70
↓ 24 callersMethodextend
Inserts all the elements of `iter` converted into constraint field elements in consecutive positions. Returns the number of field elements occupied by
plonk-core/src/proof_system/pi.rs:79
↓ 24 callersMethodmul
(&mut self, q_m: F)
plonk-core/src/constraint_system/arithmetic.rs:67
↓ 24 callersMethodzero_var
Witness representation of zero of the first variable of any circuit
plonk-core/src/constraint_system/composer.rs:252
↓ 22 callersMethodadd_input
Inserts public input data that can be converted to one or more field elements starting at a given position. Returns the number of field elements occup
plonk-core/src/proof_system/pi.rs:68
↓ 22 callersMethodnew_variable
Creates a new [`Variable`] by incrementing the index of the `variable_map`. This is correct as whenever we add a new [`Variable`] into the system It i
plonk-core/src/permutation/mod.rs:48
↓ 21 callersMethodconstrain_to_constant
Constrain a [`Variable`] to be equal to a specific constant value which is part of the circuit description and NOT** a Public Input. ie. this value wi
plonk-core/src/constraint_system/composer.rs:334
↓ 19 callersFunctionrand_poly_eval
(n: usize)
plonk-core/src/proof_system/widget/mod.rs:426
↓ 16 callersMethodinsert
Inserts a new public input value at a given position. If the value provided is zero no insertion will be made as zeros are the implicit value of empt
plonk-core/src/proof_system/pi.rs:55
↓ 15 callersMethodassert_equal
Add a constraint into the circuit description that states that two [`Variable`]s are equal.
plonk-core/src/constraint_system/composer.rs:355
↓ 15 callersMethodassert_equal_public_point
Asserts that a [`Point`] in the circuit is equal to a known public point.
plonk-core/src/constraint_system/ecc/mod.rs:110
↓ 14 callersMethodnum_rows
(&self)
plonk-hashing/src/poseidon/matrix.rs:16
↓ 14 callersMethodright_apply
return `vec @ self`, treat `vec` as a row vector.
plonk-hashing/src/poseidon/matrix.rs:153
↓ 13 callersMethodadd_variable_to_map
(&mut self, var: Variable, wire_data: WireData)
plonk-core/src/permutation/mod.rs:91
↓ 13 callersMethodcompute_permutation_lagrange
( &self, sigma_mapping: &[WireData], domain: &GeneralEvaluationDomain<F>, )
plonk-core/src/permutation/mod.rs:139
↓ 12 callersMethodconstant
(&mut self, q_c: F)
plonk-core/src/constraint_system/arithmetic.rs:82
↓ 12 callersFunctiondelta
Computes `f(f-1)(f-2)(f-3)`
plonk-core/src/proof_system/widget/logic.rs:95
↓ 11 callersMethodfixed_base_scalar_mul
Adds an elliptic curve scalar multiplication gate to the circuit description. # Note This function is optimized for fixed base ops **ONLY** and ther
plonk-core/src/constraint_system/ecc/scalar_mul/fixed_base.rs:51
↓ 9 callersMethoditer_rows
(&self)
plonk-hashing/src/poseidon/matrix.rs:34
↓ 8 callersMethodfan_in_3
(&mut self, q_4: F, w_4: Variable)
plonk-core/src/constraint_system/arithmetic.rs:62
↓ 8 callersMethodmut_cs
Returns a mutable copy of the underlying [`StandardComposer`].
plonk-core/src/proof_system/prover.rs:79
↓ 8 callersMethodnum_columns
(&self)
plonk-hashing/src/poseidon/matrix.rs:20
↓ 8 callersMethodrange_gate
Adds a range-constraint gate that checks and constrains a [`Variable`] to be inside of the range \[0,num_bits\]. This function adds `num_bits/4` gate
plonk-core/src/constraint_system/range.rs:27
↓ 7 callersFunctionappend_bits
(vec: &mut VecDeque<bool>, n: usize, from: T)
plonk-hashing/src/poseidon/round_constant.rs:76
↓ 7 callersMethodcircuit_bound
Returns the smallest power of two needed for the curcuit.
plonk-core/src/proof_system/prover.rs:84
↓ 7 callersMethodinsert_row
Insert a new row
plonk-core/src/lookup/lookup_table.rs:42
↓ 7 callersMethodpoint_addition_gate
Adds two curve points together using a curve addition gate Note that since the points are not fixed the generator is not a part of the circuit descrip
plonk-core/src/constraint_system/ecc/curve_addition/variable_base_gate.rs:24
↓ 7 callersMethodpoly_gate
Adds a width-3 poly gate. This gate gives total freedom to the end user to implement the corresponding circuits in the most optimized way possible bec
plonk-core/src/constraint_system/composer.rs:280
↓ 6 callersMethodbit
(&self, index: usize)
plonk-hashing/src/poseidon/round_constant.rs:119
↓ 6 callersMethodgroup_gen
(&self)
plonk-core/src/util.rs:67
↓ 6 callersMethodlast
Fetches last element in MultiSet. Returns None if there are no elements in the MultiSet.
plonk-core/src/lookup/multiset.rs:96
↓ 6 callersFunctionlc
Linear combination of a series of values For values [v_0, v_1,... v_k] returns: v_0 + challenge * v_1 + ... + challenge^k * v_k
plonk-core/src/util.rs:152
↓ 6 callersMethodpreprocess
This function takes in a precomputed look up table and pads it to the length of the circuit entries, as a power of 2. The function then interpolates a
plonk-core/src/lookup/preprocess.rs:42
↓ 6 callersFunctionscalar_vec_mul
(scalar: F, v: &[F])
plonk-hashing/src/poseidon/matrix.rs:394
↓ 6 callersMethodvalue_of_var
(&self, var: Variable)
plonk-core/src/constraint_system/composer.rs:869
↓ 5 callersMethodboolean_gate
Adds a boolean constraint (also known as binary constraint) where the gate eq. will enforce that the [`Variable`] received is either `0` or `1` by add
plonk-core/src/constraint_system/boolean.rs:25
↓ 5 callersMethodconditional_select
Conditionally selects a [`Variable`] based on an input bit. If: bit == 1 => choice_a, bit == 0 => choice_b, # Note The `bit` used as input which is
plonk-core/src/constraint_system/composer.rs:420
↓ 5 callersMethodgenerate_new_bit
(&mut self)
plonk-hashing/src/poseidon/round_constant.rs:107
↓ 5 callersMethodget_pi
Returns a reference to the [`PublicInputs`] stored in the [`StandardComposer`].
plonk-core/src/constraint_system/composer.rs:150
↓ 5 callersMethodinvert
(&self)
plonk-hashing/src/poseidon/matrix.rs:208
↓ 5 callersMethodmatmul
return `self @ other`
plonk-hashing/src/poseidon/matrix.rs:186
↓ 5 callersMethodxor_gate
Adds a logical XOR gate that performs the XOR between two values for the specified first `num_bits` returning a [`Variable`] holding the result. # Pa
plonk-core/src/constraint_system/logic.rs:333
↓ 4 callersMethodadd_witness_to_circuit_description
Fixes a [`Variable`] in the witness to be a part of the circuit description.
plonk-core/src/constraint_system/composer.rs:200
↓ 4 callersMethodassert_equal_point
Asserts that a point in the circuit is equal to another point in the circuit.
plonk-core/src/constraint_system/ecc/mod.rs:127
↓ 4 callersFunctioncalc_round_numbers
Returns the round numbers for a given width `t`. Here, the `security_margin` parameter does not indicate that we are calculating `R_F` and `R_P` for t
plonk-hashing/src/poseidon/round_numbers.rs:50
↓ 4 callersMethodcompute_sigma_permutations
Performs shift by one permutation and computes `sigma_1`, `sigma_2` and `sigma_3`, `sigma_4` permutations from the variable maps.
plonk-core/src/permutation/mod.rs:101
↓ 4 callersFunctiondelta
Computes `f(f-1)(f-2)(f-3)`.
plonk-core/src/proof_system/widget/range.rs:66
↓ 4 callersFunctiondummy_gadget
( n: usize, composer: &mut StandardComposer<F, P>, )
plonk-core/src/constraint_system/helper.rs:19
↓ 4 callersMethodfull_affine_transform_gate
Input 3 inputs \[w1, w2, w3\], four selectors \[q1, q2, q3, qc, qo\], constraint the following statement: ``` ignore q1 w^5 + q2 w2^5 + q3 w3^5 + q4 +
plonk-core/src/constraint_system/hash.rs:20
↓ 4 callersMethodis_zero_with_output
A gate which outputs a variable whose value is 1 if the input is 0 and whose value is 0 otherwise
plonk-core/src/constraint_system/composer.rs:371
↓ 4 callersMethodpartial_affine_transform_gate
Input 3 inputs \[w1, w2, w3\], four selectors \[q1, q2, q3, qc, qo\], constraint the following statement: ``` ignore q1 w^5 + q2 w2^5 + q3 w3^5 + q4 +
plonk-core/src/constraint_system/hash.rs:73
↓ 4 callersMethodpi
Returns a reference to the contained Public Input .
plonk-core/src/circuit.rs:60
↓ 4 callersFunctionrand_multiset
(n: usize)
plonk-core/src/proof_system/widget/mod.rs:443
↓ 4 callersMethodto_scalars
Convert variables to their actual witness values.
plonk-core/src/proof_system/prover.rs:128
↓ 4 callersFunctionvec_sub
(a: &[F], b: &[F])
plonk-hashing/src/poseidon/matrix.rs:383
↓ 3 callersMethodadd_pi
Insert data in the PI starting at the given position and stores the occupied positions as intended for public inputs.
plonk-core/src/constraint_system/composer.rs:156
↓ 3 callersMethodas_evals
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:103
↓ 3 callersMethodcheck_circuit_satisfied
(&mut self)
plonk-core/src/constraint_system/composer.rs:693
↓ 3 callersMethodcircuit_bound
Returns the smallest power of two needed for the circuit.
plonk-core/src/constraint_system/composer.rs:144
↓ 3 callersMethodcompute_linearisation
Computes the permutation term of the linearisation polynomial.
plonk-core/src/proof_system/permutation.rs:156
↓ 3 callersMethodgadget
( &mut self, composer: &mut StandardComposer<F, P>, )
plonk-core/src/circuit.rs:353
↓ 3 callersMethodinput
input one field element to Poseidon. Return the position of the element in state.
plonk-hashing/src/poseidon/zprize_constraints.rs:68
↓ 3 callersMethodinput
input one field element to Poseidon. Return the position of the element in state.
plonk-hashing/src/poseidon/poseidon_ref.rs:181
↓ 3 callersMethodinsert_multi_add
Function builds a table from more than one operation. This is denoted as 'Multiple Tables' in the paper. If, for example, we are using lookup tables f
plonk-core/src/lookup/lookup_table.rs:94
↓ 3 callersMethodinsert_multi_xor
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:128
↓ 3 callersMethodinsert_xor_row
Insert a new row for an XOR operation. This function needs to know the upper bound of the amount of XOR operations that will be done in the plookup t
plonk-core/src/lookup/lookup_table.rs:71
↓ 3 callersMethodis_empty
Returns whether or not the multiset is empty.
plonk-core/src/lookup/multiset.rs:106
↓ 3 callersMethodis_square
(&self)
plonk-hashing/src/poseidon/matrix.rs:42
↓ 3 callersMethodleft_apply
return `self @ vec`, treating `vec` as a column vector.
plonk-hashing/src/poseidon/matrix.rs:158
↓ 3 callersMethodlookup_gate
Adds a plookup gate to the circuit with its corresponding constraints.
plonk-core/src/constraint_system/lookup.rs:18
↓ 3 callersMethodminor
(&self, i: usize, j: usize)
plonk-hashing/src/poseidon/matrix.rs:220
↓ 3 callersMethodnext_byte
(&mut self, bit_count: usize)
plonk-hashing/src/poseidon/round_constant.rs:123
↓ 3 callersMethodoutput_hash
Output the hash
plonk-hashing/src/poseidon/poseidon_ref.rs:195
↓ 3 callersMethodpadded_circuit_size
(&self)
plonk-core/src/circuit.rs:387
↓ 3 callersMethodpi
(&mut self, pi: F)
plonk-core/src/constraint_system/arithmetic.rs:87
↓ 3 callersMethodprove
Proves a circuit is satisfied, then clears the witness variables If the circuit is not pre-processed, then the preprocessed circuit will also be compu
plonk-core/src/proof_system/prover.rs:659
↓ 3 callersFunctionrand_evaluations
(n: usize)
plonk-core/src/proof_system/widget/mod.rs:434
↓ 3 callersMethodupper_triangular
Performs row operations to put a matrix in upper triangular form. Each row operation is performed on `shadow` as well to keep track of their cumulativ
plonk-hashing/src/poseidon/matrix.rs:293
↓ 3 callersFunctionvec_add
(a: &[F], b: &[F])
plonk-hashing/src/poseidon/matrix.rs:372
↓ 2 callersMethodadd
(_c: &mut (), x: &Self::Field, y: &Self::Field)
plonk-hashing/src/poseidon/poseidon_ref.rs:259
↓ 2 callersMethodadd_affine
Converts an embeded curve point into a constraint system Point without constraining the values
plonk-core/src/constraint_system/ecc/mod.rs:82
↓ 2 callersMethodclear_witness
Resets the witnesses in the prover object. This function is used when the user wants to make multiple proofs with the same circuit.
plonk-core/src/proof_system/prover.rs:136
↓ 2 callersMethodcombine_split
Combines two multisets and splits them into alternating halves of the same length, subject to the ordering in the multiset calling the method (t). All
plonk-core/src/lookup/multiset.rs:131
↓ 2 callersMethodcompute_fast_permutation_poly
( &self, domain: &GeneralEvaluationDomain<F>, w_l: &[F], w_r: &[F], w_
plonk-core/src/permutation/mod.rs:406
↓ 2 callersFunctioncompute_first_lagrange_evaluation
The first lagrange polynomial has the expression: ```text L_0(X) = mul_from_1_to_(n-1) [(X - omega^i) / (1 - omega^i)] ``` with `omega` being the ge
plonk-core/src/proof_system/proof.rs:647
↓ 2 callersFunctioncompute_first_lagrange_poly_scaled
Computes the first lagrange polynomial with the given `scale` over `domain`.
plonk-core/src/proof_system/quotient_poly.rs:347
↓ 2 callersMethodcompute_permutation_poly
This can be adapted into a general product argument for any number of wires, with specific formulas defined in the numerator_irreducible and denominat
plonk-core/src/permutation/mod.rs:652
↓ 2 callersMethodcompute_quotient_i
Computes permutation term of the quotient polynomial at the `i`th domain point.
plonk-core/src/proof_system/permutation.rs:62
↓ 2 callersMethodcompute_sigma_polynomials
Computes the sigma polynomials which are used to build the permutation polynomial.
plonk-core/src/permutation/mod.rs:173
next →1–100 of 420, ranked by callers