diff --git a/starky/Cargo.toml b/starky/Cargo.toml index a33d03cf..cdeb189a 100644 --- a/starky/Cargo.toml +++ b/starky/Cargo.toml @@ -5,14 +5,17 @@ version = "0.1.0" edition = "2021" [features] -default = ["parallel"] +default = ["parallel", "std", "timing"] parallel = ["plonky2/parallel", "maybe_rayon/parallel"] +std = ["anyhow/std", "plonky2/std"] +timing = ["plonky2/timing"] [dependencies] -anyhow = "1.0.40" -env_logger = "0.9.0" -itertools = "0.10.0" -log = "0.4.14" -maybe_rayon = { path = "../maybe_rayon" } -plonky2 = { path = "../plonky2", default-features = false, features = ["timing"] } -plonky2_util = { path = "../util" } +anyhow = { version = "1.0.40", default-features = false } +itertools = { version = "0.10.0", default-features = false } +log = { version = "0.4.14", default-features = false } +maybe_rayon = { path = "../maybe_rayon", default-features = false } +plonky2 = { path = "../plonky2", default-features = false } + +[dev-dependencies] +env_logger = { version = "0.9.0", default-features = false } diff --git a/starky/src/constraint_consumer.rs b/starky/src/constraint_consumer.rs index 4cd8c0cd..03548935 100644 --- a/starky/src/constraint_consumer.rs +++ b/starky/src/constraint_consumer.rs @@ -1,3 +1,5 @@ +use alloc::vec; +use alloc::vec::Vec; use core::marker::PhantomData; use plonky2::field::extension::Extendable; diff --git a/starky/src/fibonacci_stark.rs b/starky/src/fibonacci_stark.rs index 260e2c54..9397d6d7 100644 --- a/starky/src/fibonacci_stark.rs +++ b/starky/src/fibonacci_stark.rs @@ -1,3 +1,5 @@ +use alloc::vec; +use alloc::vec::Vec; use core::marker::PhantomData; use plonky2::field::extension::{Extendable, FieldExtension}; diff --git a/starky/src/get_challenges.rs b/starky/src/get_challenges.rs index e84f5599..2f1a9064 100644 --- a/starky/src/get_challenges.rs +++ b/starky/src/get_challenges.rs @@ -1,3 +1,5 @@ +use alloc::vec::Vec; + use plonky2::field::extension::Extendable; use plonky2::field::polynomial::PolynomialCoeffs; use plonky2::fri::proof::{FriProof, FriProofTarget}; diff --git a/starky/src/lib.rs b/starky/src/lib.rs index 4e4b2eb6..89a57d77 100644 --- a/starky/src/lib.rs +++ b/starky/src/lib.rs @@ -2,10 +2,14 @@ #![allow(clippy::too_many_arguments)] #![allow(clippy::type_complexity)] #![feature(generic_const_exprs)] +#![cfg_attr(not(feature = "std"), no_std)] + +extern crate alloc; + +mod get_challenges; pub mod config; pub mod constraint_consumer; -mod get_challenges; pub mod permutation; pub mod proof; pub mod prover; diff --git a/starky/src/permutation.rs b/starky/src/permutation.rs index 7d422171..ee4225f3 100644 --- a/starky/src/permutation.rs +++ b/starky/src/permutation.rs @@ -1,5 +1,8 @@ //! Permutation arguments. +use alloc::vec; +use alloc::vec::Vec; + use itertools::Itertools; use maybe_rayon::*; use plonky2::field::batch_util::batch_multiply_inplace; diff --git a/starky/src/proof.rs b/starky/src/proof.rs index c9900c08..86093857 100644 --- a/starky/src/proof.rs +++ b/starky/src/proof.rs @@ -1,3 +1,6 @@ +use alloc::vec; +use alloc::vec::Vec; + use itertools::Itertools; use maybe_rayon::*; use plonky2::field::extension::{Extendable, FieldExtension}; diff --git a/starky/src/prover.rs b/starky/src/prover.rs index 4d69e838..dc445f24 100644 --- a/starky/src/prover.rs +++ b/starky/src/prover.rs @@ -1,3 +1,4 @@ +use alloc::vec::Vec; use core::iter::once; use anyhow::{ensure, Result}; @@ -15,8 +16,7 @@ use plonky2::iop::challenger::Challenger; use plonky2::plonk::config::{GenericConfig, Hasher}; use plonky2::timed; use plonky2::util::timing::TimingTree; -use plonky2::util::transpose; -use plonky2_util::{log2_ceil, log2_strict}; +use plonky2::util::{log2_ceil, log2_strict, transpose}; use crate::config::StarkConfig; use crate::constraint_consumer::ConstraintConsumer; diff --git a/starky/src/recursive_verifier.rs b/starky/src/recursive_verifier.rs index be3b6bc6..d080f80f 100644 --- a/starky/src/recursive_verifier.rs +++ b/starky/src/recursive_verifier.rs @@ -1,3 +1,4 @@ +use alloc::vec::Vec; use core::iter::once; use anyhow::{ensure, Result}; diff --git a/starky/src/stark.rs b/starky/src/stark.rs index 668fc4a2..b223d107 100644 --- a/starky/src/stark.rs +++ b/starky/src/stark.rs @@ -1,3 +1,6 @@ +use alloc::vec; +use alloc::vec::Vec; + use plonky2::field::extension::{Extendable, FieldExtension}; use plonky2::field::packed::PackedField; use plonky2::fri::structure::{ @@ -7,7 +10,7 @@ use plonky2::fri::structure::{ use plonky2::hash::hash_types::RichField; use plonky2::iop::ext_target::ExtensionTarget; use plonky2::plonk::circuit_builder::CircuitBuilder; -use plonky2_util::ceil_div_usize; +use plonky2::util::ceil_div_usize; use crate::config::StarkConfig; use crate::constraint_consumer::{ConstraintConsumer, RecursiveConstraintConsumer}; diff --git a/starky/src/stark_testing.rs b/starky/src/stark_testing.rs index f9f57828..7adcacc4 100644 --- a/starky/src/stark_testing.rs +++ b/starky/src/stark_testing.rs @@ -1,3 +1,6 @@ +use alloc::vec; +use alloc::vec::Vec; + use anyhow::{ensure, Result}; use plonky2::field::extension::{Extendable, FieldExtension}; use plonky2::field::polynomial::{PolynomialCoeffs, PolynomialValues}; @@ -7,8 +10,7 @@ use plonky2::iop::witness::{PartialWitness, Witness}; use plonky2::plonk::circuit_builder::CircuitBuilder; use plonky2::plonk::circuit_data::CircuitConfig; use plonky2::plonk::config::{GenericConfig, Hasher}; -use plonky2::util::transpose; -use plonky2_util::{log2_ceil, log2_strict}; +use plonky2::util::{log2_ceil, log2_strict, transpose}; use crate::constraint_consumer::{ConstraintConsumer, RecursiveConstraintConsumer}; use crate::stark::Stark; diff --git a/starky/src/util.rs b/starky/src/util.rs index 297978ee..1adee000 100644 --- a/starky/src/util.rs +++ b/starky/src/util.rs @@ -1,3 +1,5 @@ +use alloc::vec::Vec; + use itertools::Itertools; use plonky2::field::polynomial::PolynomialValues; use plonky2::field::types::Field; diff --git a/starky/src/verifier.rs b/starky/src/verifier.rs index 78c6b63e..443fcb31 100644 --- a/starky/src/verifier.rs +++ b/starky/src/verifier.rs @@ -1,3 +1,4 @@ +use alloc::vec::Vec; use core::iter::once; use anyhow::{anyhow, ensure, Result};