arnaucube
arnaucube/ark-r1cs-stdPublic Self-hosted repository
Cargo fmt
howardwu howardwu@berkeley.edu
Sun, 16 Feb 2020 12:34:26 -0800
commit

02e6b32d7d8794e85ed8f34e02cc60cedb717ca0

parent

2949c0ef9d7a83214fe60d0dae61f2fbb7d39c31

1 files changed, 33 insertions(+), 11 deletions(-)

jump to
M crypto-primitives/benches/crypto_primitives/nizk.rs → crypto-primitives/benches/crypto_primitives/nizk.rs

@@ -1,11 +1,7 @@

#[macro_use] extern crate criterion; -use algebra::{ - curves::bls12_377::Bls12_377, - fields::bls12_377::Fr, - Field, -}; +use algebra::{curves::bls12_377::Bls12_377, fields::bls12_377::Fr, Field}; use crypto_primitives::nizk::*; use r1cs_core::{ConstraintSynthesizer, ConstraintSystem, SynthesisError};

@@ -15,7 +11,7 @@

type TestProofSystem = Gm17<Bls12_377, Bench<Fr>, Fr>; struct Bench<F: Field> { - inputs: Vec<Option<F>>, + inputs: Vec<Option<F>>, num_constraints: usize, }

@@ -40,8 +36,8 @@ for i in 0..self.num_constraints {

let new_entry = { let (input_1_val, input_1_var) = variables[i]; let (input_2_val, input_2_var) = variables[i + 1]; - let result_val = input_1_val - .and_then(|input_1| input_2_val.map(|input_2| input_1 * &input_2)); + let result_val = + input_1_val.and_then(|input_1| input_2_val.map(|input_2| input_1 * &input_2)); let result_var = cs.alloc( || format!("Result {}", i), || result_val.ok_or(SynthesisError::AssignmentMissing),

@@ -70,7 +66,16 @@ inputs.push(Some(rng.gen()));

} c.bench_function("gm17_setup", move |b| { - b.iter(|| TestProofSystem::setup(Bench::<Fr> { inputs: vec![None; num_inputs], num_constraints }, rng).unwrap()) + b.iter(|| { + TestProofSystem::setup( + Bench::<Fr> { + inputs: vec![None; num_inputs], + num_constraints, + }, + rng, + ) + .unwrap() + }) }); }

@@ -83,10 +88,27 @@ for _ in 0..num_inputs {

inputs.push(Some(rng.gen())); } - let params = TestProofSystem::setup(Bench::<Fr> { inputs: vec![None; num_inputs], num_constraints }, rng).unwrap(); + let params = TestProofSystem::setup( + Bench::<Fr> { + inputs: vec![None; num_inputs], + num_constraints, + }, + rng, + ) + .unwrap(); c.bench_function("gm17_prove", move |b| { - b.iter(|| TestProofSystem::prove(&params.0, Bench { inputs: inputs.clone(), num_constraints }, rng).unwrap()) + b.iter(|| { + TestProofSystem::prove( + &params.0, + Bench { + inputs: inputs.clone(), + num_constraints, + }, + rng, + ) + .unwrap() + }) }); }