Juvix imports
module arch.system.types.transaction;
import prelude open;
import arch.system.types.action open;
Transactions¶
A transaction is a term of type Transaction.
Transaction¶
type Transaction A :=
mkTransaction@{
actions : Set (Action A);
};
Arguments
CMTreeRoots- a set of valid commitment tree roots used to prove the existence of the resources being consumed in the transaction. This set is not a part of actions to avoid duplication of data
actions- a set of actions that comprise the transaction
deltaProof- balance proof. It makes sure that
transactionDeltais correctly derived from the actions' deltas and commits to the expected publicly known value, called a balancing value. There is just one delta proof per transaction
Auxiliary Juvix code: Instances
deriving instance
eqTrans {A} {{Eq A}} : Eq (Transaction A);
deriving instance
ordTrans {A} {{Ord A}} : Ord (Transaction A);
Purpose¶
Todo
Explain the purpose of transactions.
Properties¶
Todo
Explain the properties of transactions.