package octez-protocol-alpha-libs
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=55ea1fb8bb3273a7fc270ca8f650d45c56449665619482aad9bc12f3ea736b7e
sha512=fec850fc2d17d7490bbabd5147d62aad13b3aaed8774270f8a38ab419670ed03e0fd30cf8642a97984eca5c2446726fe590ad99c015f7ec50919dc7652f25053
doc/octez-protocol-alpha-libs.test-helpers/Tezos_alpha_test_helpers/Liquidity_baking_machine/ValidationMachine/index.html
Module Liquidity_baking_machine.ValidationMachineSource
The state of the ValidationMachine.
A collections of functions to introspect the symbolic part of the ValidationMachine state.
A collections of functions to introspect the concrete part of the ValidationMachine state.
val build :
?invariant:
(Tezos_protocol_alpha.Protocol.Alpha_context.Contract.t env ->
t ->
bool Tezos_base.TzPervasives.tzresult Lwt.t) ->
?subsidy:xtz ->
specs ->
(t * Tezos_protocol_alpha.Protocol.Alpha_context.Contract.t env)
Tezos_base.TzPervasives.tzresult
Lwt.tbuild specs asynchronously computes (1) an initial state for the ValidationMachine, and (2) the environment associated to this state.
The machine enforces the resulting state is consistent with the specs given as inputs, and raises an Assert_failure exception if it does not. It also enforces that the machines used underneath remain in sync.
One can use the optional argument subsidy to set the subsidy amount to a given value (by default, we use the same as the main chain). Additionally, the invariant optional argument can be used to verify that a given invariant holds at the end of the initialization.
val step :
?invariant:
(Tezos_protocol_alpha.Protocol.Alpha_context.Contract.t env ->
t ->
bool Tezos_base.TzPervasives.tzresult Lwt.t) ->
Tezos_protocol_alpha.Protocol.Alpha_context.Contract.t step ->
Tezos_protocol_alpha.Protocol.Alpha_context.Contract.t env ->
t ->
t Tezos_base.TzPervasives.tzresult Lwt.tstep s env state asynchronously executes a single step s from state.
The invariant optional argument can be used to verify that a given invariant holds after each baked block.
val run :
?invariant:
(Tezos_protocol_alpha.Protocol.Alpha_context.Contract.t env ->
t ->
bool Tezos_base.TzPervasives.tzresult Lwt.t) ->
contract_id step list ->
Tezos_protocol_alpha.Protocol.Alpha_context.Contract.t env ->
t ->
t Tezos_base.TzPervasives.tzresult Lwt.trun lss env state asynchronously executes a list of steps from state.
The invariant optional argument can be used to verify that a given invariant holds after each baked block.