pub struct ProofParams {
pub challenge_id: [u8; 32],
pub challenge_slot: u64,
pub tensor_result_hash: [u8; 32],
pub mml_score: u64,
pub path_signature: [u8; 32],
pub path_distance: u32,
pub computation_nonce: u64,
pub computation_hash: [u8; 32],
}Expand description
Parameters for submitting and validating mining proofs. Contains cryptographic commitments and validation data for the proof.
Fields§
§challenge_id: [u8; 32]Unique challenge identifier for this mining round
challenge_slot: u64Solana slot number when the challenge was issued
tensor_result_hash: [u8; 32]Hash of the tensor computation result
mml_score: u64Merkle Merkle Linkage score derived from the proof
path_signature: [u8; 32]Signature proving path through the neural network
path_distance: u32Distance traveled in the neural path (must be <= path_distance_max)
computation_nonce: u64Nonce used in the computation
computation_hash: [u8; 32]Hash of the complete computation (verified against submitted hash)
Trait Implementations§
Source§impl BorshDeserialize for ProofParams
impl BorshDeserialize for ProofParams
fn deserialize_reader<R: Read>(reader: &mut R) -> Result<Self, Error>
Source§fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
Deserializes this instance from a given slice of bytes.
Updates the buffer to point at the remaining bytes.
Source§fn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_slice(v: &[u8]) -> Result<Self, Error>
Deserialize this instance from a slice of bytes.
fn try_from_reader<R>(reader: &mut R) -> Result<Self, Error>where
R: Read,
Source§impl BorshSerialize for ProofParams
impl BorshSerialize for ProofParams
Auto Trait Implementations§
impl Freeze for ProofParams
impl RefUnwindSafe for ProofParams
impl Send for ProofParams
impl Sync for ProofParams
impl Unpin for ProofParams
impl UnsafeUnpin for ProofParams
impl UnwindSafe for ProofParams
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more