Skip to content

Commit 665fb89

Browse files
authored
Check that collaretal inputs exist in the UTXO (#1282)
1 parent e6ba69e commit 665fb89

1 file changed

Lines changed: 3 additions & 3 deletions

File tree

src/Ledger/Dijkstra/Specification/Utxo.lagda.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -473,8 +473,8 @@ unquoteDecl SUBUTXO-premises = genPremises SUBUTXO-premises (quote SUBUTXO)
473473
1. The set of spending inputs must be nonempty. This prevents replay
474474
attacks.
475475

476-
2. The set of spending and reference inputs must exist in the UTxO _before_
477-
applying the transaction (or partially applying any part of it).
476+
2. The set of spending, reference, and collateral inputs must exist in the
477+
UTxO _before_ applying the transaction (or partially applying any part of it).
478478

479479
3. The set of spending inputs must exist in the UTXO state, which has
480480
been updated by other sub-transactions in the batch. This prevents
@@ -493,7 +493,7 @@ data _⊢_⇀⦇_,UTXO⦈_ : UTxOEnv → UTxOState → TopLevelTx → UTxOState
493493
maxBootstrapAddrSize = 64
494494
in
495495
∙ SpendInputsOf txTop ≢ ∅
496-
∙ SpendInputsOf txTop ⊆ dom (UTxOOf Γ) -- (2)
496+
∙ SpendInputsOf txTop ∪ CollateralInputsOf txTop ⊆ dom (UTxOOf Γ) -- (2)
497497
∙ ReferenceInputsOf txTop ⊆ dom (UTxOOf Γ) -- (2)
498498
∙ SpendInputsOf txTop ⊆ dom (UTxOOf s₀) -- (3)
499499
∙ inInterval (SlotOf Γ) (ValidIntervalOf txTop)

0 commit comments

Comments
 (0)