openvm_pairing_guest/
lib.rs#![no_std]
use strum_macros::FromRepr;
pub const OPCODE: u8 = 0x2b;
pub const PAIRING_FUNCT3: u8 = 0b011;
#[derive(Debug, Copy, Clone, PartialEq, Eq, FromRepr)]
#[repr(u8)]
pub enum PairingBaseFunct7 {
MillerDoubleStep = 0,
MillerDoubleAndAddStep,
Fp12Mul,
EvaluateLine,
Mul013By013,
MulBy01234,
Mul023By023,
MulBy02345,
HintFinalExp,
}
impl PairingBaseFunct7 {
pub const PAIRING_MAX_KINDS: u8 = 16;
}
extern crate alloc;
extern crate self as openvm_ecc;
#[cfg(feature = "halo2curves")]
pub use halo2curves_axiom as halo2curves;
pub use openvm_algebra_guest as algebra;
pub mod affine_point;
#[cfg(all(feature = "halo2curves", not(target_os = "zkvm")))]
pub mod halo2curves_shims;
pub mod pairing;
#[cfg(feature = "bls12_381")]
pub mod bls12_381;
#[cfg(feature = "bn254")]
pub mod bn254;