{-# OPTIONS --safe #-}
open import Ledger.Conway.Specification.Transaction
open import Ledger.Conway.Specification.Abstract
module Ledger.Conway.Specification.PoolReap.Properties.Computational
(txs : _) (open TransactionStructure txs)
(abs : AbstractFunctions txs) (open AbstractFunctions abs)
where
open import Ledger.Prelude
open import Ledger.Conway.Specification.PoolReap txs abs
open Computational ⦃...⦄
module _ {e : Epoch} {prs : PoolReapState} where
POOLREAP-total : ∃[ prs' ] _ ⊢ prs ⇀⦇ e ,POOLREAP⦈ prs'
POOLREAP-total = -, POOLREAP
POOLREAP-complete
: ∀ prs' → _ ⊢ prs ⇀⦇ e ,POOLREAP⦈ prs' → proj₁ POOLREAP-total ≡ prs'
POOLREAP-complete prs' POOLREAP = refl
POOLREAP-deterministic
: ∀ {prs' prs''}
→ _ ⊢ prs ⇀⦇ e ,POOLREAP⦈ prs'
→ _ ⊢ prs ⇀⦇ e ,POOLREAP⦈ prs''
→ prs' ≡ prs''
POOLREAP-deterministic POOLREAP POOLREAP = refl
POOLREAP-deterministic-≡ : ∀ {prs' prs'' e e' prs''' prs''''}
→ prs' ≡ prs''
→ e ≡ e'
→ _ ⊢ prs' ⇀⦇ e ,POOLREAP⦈ prs'''
→ _ ⊢ prs'' ⇀⦇ e' ,POOLREAP⦈ prs''''
→ prs''' ≡ prs''''
POOLREAP-deterministic-≡ refl refl = POOLREAP-deterministic