mirror of
https://github.com/serai-dex/serai.git
synced 2025-12-09 04:39:24 +00:00
Add non-transaction-chaining scheduler
This commit is contained in:
17
processor/scheduler/utxo/standard/README.md
Normal file
17
processor/scheduler/utxo/standard/README.md
Normal file
@@ -0,0 +1,17 @@
|
||||
# UTXO Scheduler
|
||||
|
||||
A scheduler of transactions for networks premised on the UTXO model.
|
||||
|
||||
### Design
|
||||
|
||||
The scheduler is designed to achieve fulfillment of all expected payments with
|
||||
an `O(1)` delay (regardless of prior scheduler state), `O(log n)` time, and
|
||||
`O(log(n) + n)` computational complexity.
|
||||
|
||||
For the time/computational complexity, we use a tree to fulfill payments.
|
||||
This quickly gives us the ability to make as many outputs as necessary
|
||||
(regardless of per-transaction output limits) and only has the latency of
|
||||
including a chain of `O(log n)` transactions on-chain. The only computational
|
||||
overhead is in creating the transactions which are branches in the tree.
|
||||
Since we split off the root of the tree from a master output, the delay to start
|
||||
fulfillment is the delay for the master output to re-appear on-chain.
|
||||
Reference in New Issue
Block a user