pub struct ConsistencyProof {
pub boundary_hash: Vec<u8>,
pub peak_path: Vec<ProofStep>,
pub new_peaks: Vec<Vec<u8>>,
pub split_index: usize,
}Expand description
Consistency proof: proves tree at old_size is a prefix of tree at new_size.
MMR-native (increment-proof) shape: the old tree’s rightmost peak is included
at one slot of the new tree’s frontier, and the new frontier peaks bag to the
new root. Both authenticated roots are reconstructed from these fields plus the
trusted (old_size, new_size, arity), reusing the same inclusion and peak-bag
primitives durability proves — no bespoke bisection trace, no coordinate map.
Fields§
§boundary_hash: Vec<u8>The old tree’s rightmost frontier node — its last (smallest) peak.
peak_path: Vec<ProofStep>Inclusion path lifting boundary_hash to new_peaks[split_index], the new
frontier mountain that absorbed it. Its left-siblings are the older peaks
that merged into that mountain; its right-siblings are the appended cells.
new_peaks: Vec<Vec<u8>>The new tree’s frontier peaks, left to right (frontier_for_size order).
split_index: usizeThe slot of the boundary peak’s mountain in new_peaks.
Trait Implementations§
Source§impl Clone for ConsistencyProof
impl Clone for ConsistencyProof
Source§fn clone(&self) -> ConsistencyProof
fn clone(&self) -> ConsistencyProof
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ConsistencyProof
impl Debug for ConsistencyProof
impl Eq for ConsistencyProof
Source§impl PartialEq for ConsistencyProof
impl PartialEq for ConsistencyProof
Source§fn eq(&self, other: &ConsistencyProof) -> bool
fn eq(&self, other: &ConsistencyProof) -> bool
self and other values to be equal, and is used by ==.