package tezos-protocol-014-PtKathma
Slot endorsement representation for the data-availability layer.
Overview
For the data-availability layer, the layer 1 provides a list of slots at every level (see dal_slot_repr
). Slots are not posted directly onto L1 blocks. Stakeholders (via endorsements) can commit on the availability of the data.
The slot is uniformly split into shards. Each endorser commits for every slot at every level on the availability of all shards they are assigned to.
This module encapsulates the representation of this commitment that aims to be provided with endorsement operations. To avoid overloading the network, this representation should be compact.
type available_slots = t
val encoding : t Tezos_protocol_environment_014_PtKathma.Data_encoding.t
val empty : t
empty
returns an empty slot_endorsement
which commits that every slot are unavailable.
val is_available : t -> Dal_slot_repr.Index.t -> bool
is_available slot_endorsement ~index
returns true
if the slot_endorsement
commits that the slot at index
is available.
val commit : t -> Dal_slot_repr.Index.t -> t
commit slot_endorsement index
commits into slot_endorsement
that the index
is available.
val occupied_size_in_bits : t -> int
occupied_size_in_bits slot_endorsement
returns the size in bits of an endorsement.
val expected_size_in_bits : max_index:Dal_slot_repr.Index.t -> int
expected_size_in_bits ~max_index
returns the expected size (in bits) of an endorsement considering the maximum index for a slot is max_index
.
module Accountability : sig ... end
This module is used to record the various data-availability endorsements.