UTXO DAG Description
The history of the entire ledger representing balances collateralized on a Participating Interface can be represented as a direct acyclic graph with the following properties:
every node is either a
UTXO
or aTraderIntent
a
UTXO
represents the state of an entry in the ledgera
TraderIntent
represents an action initiated by the owner of the ledger entry
a
TraderIntent
can only have vertices that connect to aUTXO
a
UTXO
must have 1 input vertices and 0 or 1 output verticesa
TraderIntent
must have 0 or more input vertices and 1 or more output verticesa
Deposit
:is a
TraderIntent
that has no input vertices and 1 output vertexmust output a
DepositUTXO
a
DepositUTXO
:has 1 input and 0 or 1 outputs
is a
UTXO
that represents a digital asset first entering the ledger of a PI through anAssetCustody
contractevery
UTXO
either is aDepositUTXO
or is a descendant of aDepositUTXO
(meaning if you follow the inputs of anyUTXO
, you will eventually reach aDepositUTXO
)no descendant of a
UTXO
can be aDepositUTXO
a
Trade
:represents a PI matching two trader-signed orders and including them in the ledger
is a
TraderIntent
that has at least 2 input vertices and 4 output vertices:each input must be either a
DepositUTXO
or anObligationUTXO
each output must be either an
ObligationUTXO
or aFeeUTXO
swaps ownership of UTXOs between two traders, creating the new ledger entries as well as entries for any fees paid
a
ObligationUTXO
:has 1 input and 0 or 1 outputs
is a
UTXO
that represents a ledger entry in the PI that is "out-of-sync" with theAssetCustody
contract. It will either continue to be transferred on the ledger as a result of aTrade
, or it will become aSettledUTXO
a
FeeUTXO
:has 1 input and 0 outputs
is a
UTXO
that represents a fee paid by a trader
Last updated