• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
      • Apt
      • Zfc
      • Acre
      • Milawa
      • Smtlink
      • Abnf
      • Vwsim
      • Isar
      • Wp-gen
      • Dimacs-reader
      • Pfcs
      • Legacy-defrstobj
      • Proof-checker-array
      • Soft
      • C
      • Farray
      • Rp-rewriter
      • Instant-runoff-voting
      • Imp-language
      • Sidekick
      • Leftist-trees
      • Java
      • Taspi
      • Bitcoin
      • Riscv
      • Des
      • Ethereum
      • X86isa
      • Sha-2
      • Yul
      • Zcash
      • Proof-checker-itp13
      • Regex
      • ACL2-programming-language
      • Json
      • Jfkr
      • Equational
      • Cryptography
      • Poseidon
      • Where-do-i-place-my-book
      • Axe
      • Bigmems
      • Builtins
      • Execloader
      • Aleo
        • Aleobft
          • Aleobft-static
          • Aleobft-stake2
          • Aleobft-dynamic
          • Aleobft-stake
            • Correctness
            • Definition
              • Initialization
              • Transitions
                • Transitions-create
                • Dags
                • Transitions-receive
                • Transitions-store
                • Transitions-advance
                • Elections
                • Event-next
                • Transitions-commit
                • Event-possiblep
                • Events-possiblep
                • Events-next
                • Blockchains
                • Transitions-timeout
                • Anchors
              • States
              • Events
          • Aleobft-proposals
          • Library-extensions
        • Leo
      • Solidity
      • Paco
      • Concurrent-programs
      • Bls12-377-curves
    • Debugging
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
    • Software-verification
    • Math
    • Testing-utilities
  • Definition

Transitions

Transitions of the AleoBFT labeled state transition system.

We define predicates that say which events are possible in which states, and functions that say, for such combinations of events and states, which new states the events lead to. In other words, we define the transitions of the state transition system that models AleoBFT.

Both the predicates and the functions are executable. This means that, given an initial state and a list of events, it is possible to simulate the execution of the system in ACL2 by running each event in turn, starting with the initial state. The execution is not necessarily fast, because the definition of the labeled state transition system prioritizes clarity over efficiency.

Subtopics

Transitions-create
Transitions for certificate creation.
Dags
DAGs.
Transitions-receive
Transitions for certificate receipt.
Transitions-store
Transitions for certificate storage.
Transitions-advance
Transitions for round advancement.
Elections
Leader elections.
Event-next
New state resulting from an event.
Transitions-commit
Transitions for anchor commitment.
Event-possiblep
Check if an event is possible.
Events-possiblep
Check if a sequence of events is possible.
Events-next
New state resulting from a sequence of events.
Blockchains
Blockchains.
Transitions-timeout
Transitions for timer expiration.
Anchors
Anchors.