1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
//! # Samaharam (സമാഹാരം)
//!
//! Scalable heterogeneous zero-knowledge proof aggregation for EVM chains.
//!
//! ## Features
//!
//! - **Heterogeneous aggregation**: Aggregate proofs from different circuits
//! - **EVM-compatible**: BN254 curve with Solidity verifier generation
//! - **Type-safe**: TypeState pattern for compile-time proof lifecycle
//! - **Scalable**: Parallel processing and batched aggregation
//!
//! ## Quick Start
//!
//! ```rust,ignore
//! use samaharam::{Aggregator, Bn254};
//!
//! let aggregator = Aggregator::<Bn254>::builder()
//! .with_srs(srs)
//! .max_batch_size(32)
//! .build()?;
//!
//! let vk_id = aggregator.register_circuit("transfer", vk);
//! let proof = Proof::new(data, public_inputs, vk_id);
//! let verified = proof.verify(&aggregator.registry())?;
//! aggregator.submit(verified)?;
//!
//! let aggregated = aggregator.aggregate()?;
//! ```
/// External proof adapters for aggregating proofs from other systems.
/// Testing utilities for generating real PLONK proofs.
// Re-exports for ergonomic API
pub use Aggregator;
pub use Bn254;
pub use AggregatorBuilder;
pub use TRANSCRIPT_VERSION;
pub use ;
pub use ;
pub use ;
pub use PairingEngine;
/// Type alias for the primary BN254-based aggregator
pub type Bn254Aggregator = ;