From 12bb3a0cde6f0bb776a01a527da36e6b095ef3d0 Mon Sep 17 00:00:00 2001 From: parazyd Date: Sat, 18 Jun 2022 14:34:05 +0200 Subject: [PATCH] zk: Move zk gadgets to separate gadget module. --- example/gt.rs | 2 +- src/zk/circuit/lead_contract.rs | 4 ++-- src/zk/{arith_chip.rs => gadget/arithmetic.rs} | 0 src/zk/{ => gadget}/even_bits.rs | 0 src/zk/{ => gadget}/greater_than.rs | 0 src/zk/gadget/mod.rs | 8 ++++++++ src/zk/mod.rs | 9 +++------ src/zk/vm.rs | 4 ++-- 8 files changed, 16 insertions(+), 11 deletions(-) rename src/zk/{arith_chip.rs => gadget/arithmetic.rs} (100%) rename src/zk/{ => gadget}/even_bits.rs (100%) rename src/zk/{ => gadget}/greater_than.rs (100%) create mode 100644 src/zk/gadget/mod.rs diff --git a/example/gt.rs b/example/gt.rs index fc1d198a6..8cd04bfe4 100644 --- a/example/gt.rs +++ b/example/gt.rs @@ -1,4 +1,4 @@ -use darkfi::zk::{ +use darkfi::zk::gadget::{ arith_chip::{ArithChip, ArithConfig, ArithInstruction}, even_bits::{EvenBitsChip, EvenBitsConfig, EvenBitsLookup}, greater_than::{GreaterThanChip, GreaterThanConfig, GreaterThanInstruction}, diff --git a/src/zk/circuit/lead_contract.rs b/src/zk/circuit/lead_contract.rs index c1eb3f48d..8b1cc12cc 100644 --- a/src/zk/circuit/lead_contract.rs +++ b/src/zk/circuit/lead_contract.rs @@ -30,8 +30,8 @@ use crate::crypto::{ merkle_node::MerkleNode, }; -use crate::zk::{ - arith_chip::{ArithChip, ArithConfig, ArithInstruction}, +use crate::zk::gadget::{ + arithmetic::{ArithChip, ArithConfig, ArithInstruction}, even_bits::{EvenBitsChip, EvenBitsConfig, EvenBitsLookup}, greater_than::{GreaterThanChip, GreaterThanConfig, GreaterThanInstruction}, }; diff --git a/src/zk/arith_chip.rs b/src/zk/gadget/arithmetic.rs similarity index 100% rename from src/zk/arith_chip.rs rename to src/zk/gadget/arithmetic.rs diff --git a/src/zk/even_bits.rs b/src/zk/gadget/even_bits.rs similarity index 100% rename from src/zk/even_bits.rs rename to src/zk/gadget/even_bits.rs diff --git a/src/zk/greater_than.rs b/src/zk/gadget/greater_than.rs similarity index 100% rename from src/zk/greater_than.rs rename to src/zk/gadget/greater_than.rs diff --git a/src/zk/gadget/mod.rs b/src/zk/gadget/mod.rs new file mode 100644 index 000000000..25d69179b --- /dev/null +++ b/src/zk/gadget/mod.rs @@ -0,0 +1,8 @@ +/// Scalar arithmetic +pub mod arithmetic; + +/// Even-bits lookup table +pub mod even_bits; + +/// Greater than comparison gadget; +pub mod greater_than; diff --git a/src/zk/mod.rs b/src/zk/mod.rs index 25372e00c..9c3b4b3fa 100644 --- a/src/zk/mod.rs +++ b/src/zk/mod.rs @@ -1,14 +1,11 @@ -/// Halo2 arithmetic chip -pub mod arith_chip; -/// Even bits lookup table -pub mod even_bits; -/// Greather than gadget -pub mod greater_than; +/// ZK gadget implementations +pub mod gadget; /// Halo2 zkas virtual machine pub mod vm; pub mod vm_stack; +/// ZK circuits pub mod circuit; use halo2_proofs::{ diff --git a/src/zk/vm.rs b/src/zk/vm.rs index 2b287a84f..8993fadc5 100644 --- a/src/zk/vm.rs +++ b/src/zk/vm.rs @@ -24,8 +24,8 @@ use halo2_proofs::{ use log::debug; use pasta_curves::{group::Curve, pallas, Fp}; -use super::{ - arith_chip::{ArithChip, ArithConfig, ArithInstruction}, +use super::gadget::{ + arithmetic::{ArithChip, ArithConfig, ArithInstruction}, even_bits::{EvenBitsChip, EvenBitsConfig, EvenBitsLookup}, greater_than::{GreaterThanChip, GreaterThanConfig, GreaterThanInstruction}, };