openvm_ecc_circuit/weierstrass_chip/
mod.rs1mod add_ne;
2mod curves;
3mod double;
4
5pub use add_ne::*;
6pub use double::*;
7
8#[cfg(test)]
9mod tests;
10
11use openvm_circuit::arch::{VmAirWrapper, VmChipWrapper};
12use openvm_mod_circuit_builder::{FieldExpressionCoreAir, FieldExpressionFiller};
13use openvm_rv32_adapters::{Rv32VecHeapAdapterAir, Rv32VecHeapAdapterFiller};
14
15pub type WeierstrassAir<const NUM_READS: usize, const BLOCKS: usize, const BLOCK_SIZE: usize> =
16 VmAirWrapper<
17 Rv32VecHeapAdapterAir<NUM_READS, BLOCKS, BLOCKS, BLOCK_SIZE, BLOCK_SIZE>,
18 FieldExpressionCoreAir,
19 >;
20
21pub type WeierstrassChip<F, const NUM_READS: usize, const BLOCKS: usize, const BLOCK_SIZE: usize> =
22 VmChipWrapper<
23 F,
24 FieldExpressionFiller<
25 Rv32VecHeapAdapterFiller<NUM_READS, BLOCKS, BLOCKS, BLOCK_SIZE, BLOCK_SIZE>,
26 >,
27 >;