Skip to content

Commit 98998c2

Browse files
authored
Merge pull request #2874 from ProvableHQ/improved_varuna_logging_2
Improved varuna logging
2 parents e8407cd + 568f311 commit 98998c2

File tree

28 files changed

+80
-120
lines changed

28 files changed

+80
-120
lines changed

Cargo.lock

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -138,10 +138,17 @@ package = [
138138
"dep:ureq",
139139
"dep:dotenvy"
140140
]
141-
aleo-cli = [ "snarkvm-synthesizer/aleo-cli" ]
142141
async = [ "snarkvm-ledger/async", "snarkvm-synthesizer/async" ]
143142
cuda = [ "snarkvm-algorithms/cuda" ]
144-
dev-print = [ "snarkvm-utilities/dev-print" ]
143+
dev-print = [
144+
"snarkvm-utilities/dev-print",
145+
"snarkvm-algorithms/dev-print",
146+
"snarkvm-circuit/dev-print",
147+
"snarkvm-curves/dev-print",
148+
"snarkvm-fields/dev-print",
149+
"snarkvm-parameters/dev-print",
150+
"snarkvm-synthesizer/dev-print",
151+
]
145152
save_r1cs_hashes = [ "snarkvm-circuit/save_r1cs_hashes" ]
146153
history = [ "snarkvm-synthesizer/history" ]
147154
parameters_no_std_out = [ "snarkvm-parameters/no_std_out" ]

algorithms/src/errors.rs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,6 @@ pub enum SNARKError {
4444

4545
#[error("Public input size was different from the circuit")]
4646
PublicInputSizeMismatch,
47-
48-
#[error("Circuit not found")]
49-
CircuitNotFound,
5047
}
5148

5249
impl From<AHPError> for SNARKError {

algorithms/src/snark/varuna/varuna.rs

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ use crate::{
4646
use rand::RngCore;
4747
use snarkvm_curves::PairingEngine;
4848
use snarkvm_fields::{One, PrimeField, ToConstraintField, Zero};
49-
use snarkvm_utilities::{ToBytes, to_bytes_le};
49+
use snarkvm_utilities::{ToBytes, dev_eprintln, dev_println, to_bytes_le};
5050

5151
use anyhow::{Result, anyhow, bail, ensure};
5252
use core::marker::PhantomData;
@@ -297,10 +297,10 @@ where
297297
let circuit_id = &verifying_key.id;
298298
let state = AHPForR1CS::<E::Fr, SM>::index_helper(circuit)?;
299299
if state.index_info != verifying_key.circuit_info {
300-
bail!(SNARKError::CircuitNotFound);
300+
bail!("Circuit info mismatch, expected {:?}, got {:?}", verifying_key.circuit_info, state.index_info);
301301
}
302302
if state.id != *circuit_id {
303-
bail!(SNARKError::CircuitNotFound);
303+
bail!("Circuit ID mismatch, expected {:?}, got {:?}.", circuit_id, state.id);
304304
}
305305

306306
// Make sure certificate is not hiding
@@ -376,10 +376,10 @@ where
376376
let num_unique_circuits = keys_to_constraints.len();
377377
let mut circuit_ids = Vec::with_capacity(num_unique_circuits);
378378
for pk in keys_to_constraints.keys() {
379-
let batch_size = prover_state.batch_size(&pk.circuit).ok_or(SNARKError::CircuitNotFound)?;
380-
let public_input = prover_state.public_inputs(&pk.circuit).ok_or(SNARKError::CircuitNotFound)?;
379+
let batch_size = prover_state.batch_size(&pk.circuit).ok_or(anyhow!("Batch size not found."))?;
380+
let public_input = prover_state.public_inputs(&pk.circuit).ok_or(anyhow!("Public input not found."))?;
381381
let padded_public_input =
382-
prover_state.padded_public_inputs(&pk.circuit).ok_or(SNARKError::CircuitNotFound)?;
382+
prover_state.padded_public_inputs(&pk.circuit).ok_or(anyhow!("Padded public input not found."))?;
383383
let circuit_id = pk.circuit.id;
384384
batch_sizes.insert(circuit_id, batch_size);
385385
circuit_infos.insert(circuit_id, &pk.circuit_verifying_key.circuit_info);
@@ -766,9 +766,7 @@ where
766766
let mut new_input = Vec::with_capacity(input_len);
767767
new_input.extend_from_slice(input);
768768
new_input.resize(input_len, E::Fr::zero());
769-
if cfg!(debug_assertions) {
770-
println!("Number of padded public variables: {}", new_input.len());
771-
}
769+
dev_println!("Number of padded public variables: {}", new_input.len());
772770
let unformatted = prover::ConstraintSystem::unformat_public_input(&new_input);
773771
(new_input, unformatted)
774772
})
@@ -796,7 +794,7 @@ where
796794
!proof.pc_proof.is_hiding() & comms.mask_poly.is_none()
797795
};
798796
if !proof_has_correct_zk_mode {
799-
eprintln!(
797+
dev_eprintln!(
800798
"Found `mask_poly` in the first round when not expected, or proof has incorrect hiding mode ({})",
801799
proof.pc_proof.is_hiding()
802800
);
@@ -1016,8 +1014,7 @@ where
10161014
end_timer!(pc_time);
10171015

10181016
if !evaluations_are_correct {
1019-
#[cfg(debug_assertions)]
1020-
eprintln!("SonicKZG10::Check failed using final challenge: {:?}", verifier_state.gamma);
1017+
dev_eprintln!("SonicKZG10::Check failed using final challenge: {:?}", verifier_state.gamma);
10211018
}
10221019

10231020
end_timer!(verifier_time, || format!(

circuit/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ edition = "2024"
2525

2626
[features]
2727
save_r1cs_hashes = [ "snarkvm-circuit-environment/save_r1cs_hashes" ]
28+
dev-print = ["snarkvm-circuit-environment/dev-print"]
2829

2930
[dependencies.snarkvm-circuit-account]
3031
workspace = true

synthesizer/Cargo.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ locktick = [
3131
"snarkvm-ledger-store/locktick",
3232
"snarkvm-synthesizer-process/locktick"
3333
]
34-
aleo-cli = [ ]
3534
async = [ "snarkvm-ledger-query/async", "snarkvm-synthesizer-process/async" ]
3635
cuda = [ "snarkvm-algorithms/cuda" ]
3736
history = [ "serde" ]

synthesizer/process/Cargo.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ edition = "2024"
2525

2626
[features]
2727
default = [ "indexmap/rayon", "rayon" ]
28-
aleo-cli = [ ]
2928
async = [ "snarkvm-ledger-query/async" ]
3029
locktick = [ "dep:locktick", "snarkvm-ledger-store/locktick" ]
3130
rocks = [ "snarkvm-ledger-store/rocks" ]

synthesizer/process/src/evaluate.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,7 @@ impl<N: Network> Process<N> {
2424
// Retrieve the top-level request (without popping it).
2525
let request = authorization.peek_next()?;
2626

27-
#[cfg(feature = "aleo-cli")]
28-
println!("{}", format!(" • Evaluating '{}/{}'...", request.program_id(), request.function_name()).dimmed());
27+
dev_println!("{}", format!(" • Evaluating '{}/{}'...", request.program_id(), request.function_name()));
2928

3029
// Retrieve the stack.
3130
let stack = self.get_stack(request.program_id())?;

synthesizer/process/src/execute.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,7 @@ impl<N: Network> Process<N> {
3030
// Construct the locator.
3131
let locator = Locator::new(*request.program_id(), *request.function_name());
3232

33-
#[cfg(feature = "aleo-cli")]
34-
println!("{}", format!(" • Executing '{locator}'...",).dimmed());
33+
dev_println!("{}", format!(" • Executing '{locator}'...",));
3534

3635
// The root request does not have a caller.
3736
let caller = None;

synthesizer/process/src/finalize.rs

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -224,8 +224,7 @@ fn finalize_constructor<N: Network, P: FinalizeStorage<N>>(
224224
) -> Result<Vec<FinalizeOperation<N>>> {
225225
// Retrieve the program ID.
226226
let program_id = stack.program_id();
227-
#[cfg(debug_assertions)]
228-
println!("Finalizing constructor for {}...", stack.program_id());
227+
dev_println!("Finalizing constructor for {}...", stack.program_id());
229228

230229
// Initialize a list for finalize operations.
231230
let mut finalize_operations = Vec::new();
@@ -286,8 +285,7 @@ fn finalize_transition<N: Network, P: FinalizeStorage<N>>(
286285
// Retrieve the function name.
287286
let function_name = transition.function_name();
288287

289-
#[cfg(debug_assertions)]
290-
println!("Finalizing transition for {}/{function_name}...", transition.program_id());
288+
dev_println!("Finalizing transition for {}/{function_name}...", transition.program_id());
291289
debug_assert_eq!(stack.program_id(), transition.program_id());
292290

293291
// If the last output of the transition is a future, retrieve and finalize it. Otherwise, there are no operations to finalize.

0 commit comments

Comments
 (0)