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
use serde::{Deserialize, Serialize};
/// Operations that can be constrained inside the circuit.
#[derive(Debug, Clone, Serialize, Deserialize)]
pub enum ConstraintOpcode {
ImmV,
ImmF,
ImmE,
AddV,
AddF,
AddE,
AddEF,
SubV,
SubF,
SubE,
SubEF,
MulV,
MulF,
MulE,
MulEF,
DivF,
DivE,
DivEF,
NegV,
NegF,
NegE,
InvV,
InvF,
InvE,
AssertEqV,
AssertEqF,
AssertEqE,
Permute,
Num2BitsV,
Num2BitsF,
SelectV,
SelectF,
SelectE,
Ext2Felt,
PrintV,
PrintF,
PrintE,
WitnessV,
WitnessF,
WitnessE,
CommitVkeyHash,
CommitCommitedValuesDigest,
CircuitFelts2Ext,
PermuteBabyBear,
}