{-# OPTIONS --safe #-}

open import Ledger.Conway.Specification.Abstract
open import Ledger.Conway.Specification.Transaction

module Ledger.Conway.Specification.Chain.Properties.EpochStep
  (txs : _) (open TransactionStructure txs)
  (abs : AbstractFunctions txs)
  where

open import Ledger.Conway.Specification.Chain txs abs
open import Ledger.Conway.Specification.Enact govStructure
open import Ledger.Conway.Specification.Epoch txs abs
open import Ledger.Prelude
open Block


enact-change⇒newEpoch : (b : Block) {cs cs'  : ChainState}
   _  cs ⇀⦇ b ,CHAIN⦈ cs'  EnactStateOf cs  EnactStateOf cs'
   Type

enact-change⇒newEpoch b {cs} h es≢es' = epoch (b .slot)  sucᵉ (LastEpochOf cs)