pub enum ColumnAlias {
Show 29 variants
HashIndex,
BlockIndex,
StepIndex,
Input(usize),
Output(usize),
ThetaShiftsC(usize),
ThetaDenseC(usize),
ThetaQuotientC(usize),
ThetaRemainderC(usize),
ThetaDenseRotC(usize),
ThetaExpandRotC(usize),
PiRhoShiftsE(usize),
PiRhoDenseE(usize),
PiRhoQuotientE(usize),
PiRhoRemainderE(usize),
PiRhoDenseRotE(usize),
PiRhoExpandRotE(usize),
ChiShiftsB(usize),
ChiShiftsSum(usize),
SpongeNewState(usize),
SpongeZeros(usize),
SpongeBytes(usize),
SpongeShifts(usize),
RoundNumber,
RoundConstants(usize),
PadLength,
TwoToPad,
PadSuffix(usize),
PadBytesFlags(usize),
}Expand description
Column aliases used by the Keccak circuit. The number of aliases is not necessarily equal to the actual number of columns. Each alias will be mapped to a column index depending on the step kind (Sponge or Round) that is currently being executed.
Variants§
HashIndex
Hash identifier to distinguish inside the syscalls communication channel
BlockIndex
Block index inside the hash to enumerate preimage bytes
StepIndex
Hash step identifier to distinguish inside interstep communication
Input(usize)
Output(usize)
ThetaShiftsC(usize)
ThetaDenseC(usize)
ThetaQuotientC(usize)
ThetaRemainderC(usize)
ThetaDenseRotC(usize)
ThetaExpandRotC(usize)
PiRhoShiftsE(usize)
PiRhoDenseE(usize)
PiRhoQuotientE(usize)
PiRhoRemainderE(usize)
PiRhoDenseRotE(usize)
PiRhoExpandRotE(usize)
ChiShiftsB(usize)
ChiShiftsSum(usize)
SpongeNewState(usize)
SpongeZeros(usize)
SpongeBytes(usize)
SpongeShifts(usize)
RoundNumber
RoundConstants(usize)
PadLength
TwoToPad
PadSuffix(usize)
PadBytesFlags(usize)
Trait Implementations§
Source§impl Clone for ColumnAlias
impl Clone for ColumnAlias
Source§fn clone(&self) -> ColumnAlias
fn clone(&self) -> ColumnAlias
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl ColumnIndexer<RelationColumnType> for ColumnAlias
impl ColumnIndexer<RelationColumnType> for ColumnAlias
Source§impl Debug for ColumnAlias
impl Debug for ColumnAlias
Source§impl From<ColumnAlias> for usize
impl From<ColumnAlias> for usize
Source§fn from(alias: ColumnAlias) -> usize
fn from(alias: ColumnAlias) -> usize
Returns the witness column index for the given alias
Source§impl Hash for ColumnAlias
impl Hash for ColumnAlias
Source§impl<T: Clone> Index<ColumnAlias> for KeccakWitness<T>
IMPLEMENTATIONS FOR COLUMN ALIAS
impl<T: Clone> Index<ColumnAlias> for KeccakWitness<T>
IMPLEMENTATIONS FOR COLUMN ALIAS
Source§fn index(&self, index: ColumnAlias) -> &Self::Output
fn index(&self, index: ColumnAlias) -> &Self::Output
Map the column alias to the actual column index. Note that the column index depends on the step kind (Sponge or Round). For instance, the column 800 represents PadLength in the Sponge step, while it is used by intermediary values when executing the Round step.
Source§impl<T: Clone> IndexMut<ColumnAlias> for KeccakWitness<T>
impl<T: Clone> IndexMut<ColumnAlias> for KeccakWitness<T>
Source§impl Ord for ColumnAlias
impl Ord for ColumnAlias
Source§impl PartialEq for ColumnAlias
impl PartialEq for ColumnAlias
Source§impl PartialOrd for ColumnAlias
impl PartialOrd for ColumnAlias
impl Copy for ColumnAlias
impl Eq for ColumnAlias
impl StructuralPartialEq for ColumnAlias
Auto Trait Implementations§
impl Freeze for ColumnAlias
impl RefUnwindSafe for ColumnAlias
impl Send for ColumnAlias
impl Sync for ColumnAlias
impl Unpin for ColumnAlias
impl UnwindSafe for ColumnAlias
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
clone_to_uninit)