cardano-protocol-tpraos-1.2.0.0: Cardano Protocol: Transitional Praos
Safe HaskellSafe-Inferred
LanguageHaskell2010

Cardano.Protocol.TPraos.Rules.Prtcl

Synopsis

Documentation

data PRTCL c Source #

Instances

Instances details
(Crypto c, DSignable c (OCertSignable c), KESignable c (BHBody c), VRFSignable c Seed) ⇒ STS (PRTCL c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

Associated Types

type State (PRTCL c) Source #

type Signal (PRTCL c) Source #

type Environment (PRTCL c) Source #

type BaseM (PRTCL c) ∷ TypeType Source #

type Event (PRTCL c) Source #

type PredicateFailure (PRTCL c) Source #

(Crypto c, DSignable c (OCertSignable c), KESignable c (BHBody c), VRFSignable c Seed) ⇒ Embed (OVERLAY c) (PRTCL c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

(Crypto c, DSignable c (OCertSignable c), KESignable c (BHBody c), VRFSignable c Seed) ⇒ Embed (UPDN c) (PRTCL c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

type BaseM (PRTCL c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

type Environment (PRTCL c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

type Event (PRTCL c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

type Event (PRTCL c)
type PredicateFailure (PRTCL c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

type Signal (PRTCL c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

type Signal (PRTCL c) = BHeader c
type State (PRTCL c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

type State (PRTCL c) = PrtclState c

type family State a Source #

Type of the state which the system transitions between.

Instances

Instances details
type State TICKN Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Tickn

type State (AllegraUTXO era) 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

type State (AllegraUTXO era) = UTxOState era
type State (AllegraUTXOW era) 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxow

type State (AllegraUTXOW era) = UTxOState era
type State (AlonzoBBODY era) 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Bbody

type State (AlonzoLEDGER era) 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Ledger

type State (AlonzoLEDGER era) = LedgerState era
type State (AlonzoUTXO era) 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Utxo

type State (AlonzoUTXO era) = UTxOState era
type State (AlonzoUTXOS era) 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Utxos

type State (AlonzoUTXOS era) = UTxOState era
type State (AlonzoUTXOW era) 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Utxow

type State (AlonzoUTXOW era) = UTxOState era
type State (BabbageLEDGER era) 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Ledger

type State (BabbageUTXO era) 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Utxo

type State (BabbageUTXO era) = UTxOState era
type State (BabbageUTXOS era) 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Utxos

type State (BabbageUTXOS era) = UTxOState era
type State (BabbageUTXOW era) 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Utxow

type State (BabbageUTXOW era) = UTxOState era
type State (ConwayCERT era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Cert

type State (ConwayCERT era) = CertState era
type State (ConwayCERTS era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Certs

type State (ConwayCERTS era) = CertState era
type State (ConwayDELEG era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Deleg

type State (ConwayDELEG era) = DState era
type State (ConwayENACT era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Enact

type State (ConwayENACT era) = EnactState era
type State (ConwayEPOCH era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Epoch

type State (ConwayEPOCH era) = EpochState era
type State (ConwayGOV era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Gov

type State (ConwayGOV era) = Proposals era
type State (ConwayGOVCERT era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.GovCert

type State (ConwayGOVCERT era) = VState era
type State (ConwayLEDGER era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Ledger

type State (ConwayLEDGER era) = LedgerState era
type State (ConwayNEWEPOCH era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.NewEpoch

type State (ConwayRATIFY era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Ratify

type State (ConwayRATIFY era) = RatifyState era
type State (ConwayTICKF era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Tickf

type State (ConwayUTXO era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Utxo

type State (ConwayUTXO era) = UTxOState era
type State (ConwayUTXOS era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Utxos

type State (ConwayUTXOS era) = UTxOState era
type State (ConwayUTXOW era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Utxow

type State (ConwayUTXOW era) = UTxOState era
type State (ShelleyBBODY era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Bbody

type State (ShelleyDELEG era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Deleg

type State (ShelleyDELEG era) = DState era
type State (ShelleyDELEGS era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Delegs

type State (ShelleyDELEGS era) = CertState era
type State (ShelleyDELPL era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Delpl

type State (ShelleyDELPL era) = CertState era
type State (ShelleyEPOCH era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Epoch

type State (ShelleyEPOCH era) = EpochState era
type State (ShelleyLEDGER era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Ledger

type State (ShelleyLEDGERS era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Ledgers

type State (ShelleyMIR era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Mir

type State (ShelleyMIR era) = EpochState era
type State (ShelleyNEWEPOCH era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.NewEpoch

type State (ShelleyNEWPP era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Newpp

type State (ShelleyPOOL era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Pool

type State (ShelleyPOOL era) = PState era
type State (ShelleyPOOLREAP era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.PoolReap

type State (ShelleyPPUP era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Ppup

type State (ShelleyRUPD era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Rupd

type State (ShelleySNAP era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Snap

type State (ShelleyTICK era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type State (ShelleyTICKF era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type State (ShelleyUPEC era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Upec

type State (ShelleyUPEC era) = UpecState era
type State (ShelleyUTXO era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Utxo

type State (ShelleyUTXO era) = UTxOState era
type State (ShelleyUTXOW era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Utxow

type State (ShelleyUTXOW era) = UTxOState era
type State (OCERT c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.OCert

type State (OVERLAY c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Overlay

type State (PRTCL c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

type State (PRTCL c) = PrtclState c
type State (UPDN c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Updn

type State (UPDN c) = UpdnState
type State (STUB e st si f m) 
Instance details

Defined in Control.State.Transition.Extended

type State (STUB e st si f m) = st

data PrtclEnv c Source #

Instances

Instances details
Generic (PrtclEnv c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

Associated Types

type Rep (PrtclEnv c) ∷ TypeType Source #

Methods

fromPrtclEnv c → Rep (PrtclEnv c) x Source #

toRep (PrtclEnv c) x → PrtclEnv c Source #

NoThunks (PrtclEnv c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

type Rep (PrtclEnv c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

data PrtclState c Source #

Constructors

PrtclState 

Fields

Instances

Instances details
Generic (PrtclState c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

Associated Types

type Rep (PrtclState c) ∷ TypeType Source #

Methods

fromPrtclState c → Rep (PrtclState c) x Source #

toRep (PrtclState c) x → PrtclState c Source #

Show (PrtclState c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

Crypto c ⇒ FromCBOR (PrtclState c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

Crypto c ⇒ ToCBOR (PrtclState c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

Methods

toCBORPrtclState c → Encoding Source #

encodedSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy (PrtclState c) → Size Source #

encodedListSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy [PrtclState c] → Size Source #

Crypto c ⇒ DecCBOR (PrtclState c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

Crypto c ⇒ EncCBOR (PrtclState c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

Methods

encCBORPrtclState c → Encoding Source #

encodedSizeExpr ∷ (∀ t. EncCBOR t ⇒ Proxy t → Size) → Proxy (PrtclState c) → Size Source #

encodedListSizeExpr ∷ (∀ t. EncCBOR t ⇒ Proxy t → Size) → Proxy [PrtclState c] → Size Source #

Eq (PrtclState c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

Methods

(==)PrtclState c → PrtclState c → Bool Source #

(/=)PrtclState c → PrtclState c → Bool Source #

Crypto c ⇒ NoThunks (PrtclState c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

type Rep (PrtclState c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

type Rep (PrtclState c) = D1 ('MetaData "PrtclState" "Cardano.Protocol.TPraos.Rules.Prtcl" "cardano-protocol-tpraos-1.2.0.0-inplace" 'False) (C1 ('MetaCons "PrtclState" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (KeyHash 'BlockIssuer c) Word64)) :*: (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Nonce) :*: S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Nonce))))

data PrtclPredicateFailure c Source #

Instances

Instances details
Generic (PrtclPredicateFailure c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

Associated Types

type Rep (PrtclPredicateFailure c) ∷ TypeType Source #

VRFAlgorithm (VRF c) ⇒ Show (PrtclPredicateFailure c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

VRFAlgorithm (VRF c) ⇒ Eq (PrtclPredicateFailure c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

Crypto c ⇒ NoThunks (PrtclPredicateFailure c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

type Rep (PrtclPredicateFailure c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

type Rep (PrtclPredicateFailure c) = D1 ('MetaData "PrtclPredicateFailure" "Cardano.Protocol.TPraos.Rules.Prtcl" "cardano-protocol-tpraos-1.2.0.0-inplace" 'False) (C1 ('MetaCons "OverlayFailure" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PredicateFailure (OVERLAY c)))) :+: C1 ('MetaCons "UpdnFailure" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PredicateFailure (UPDN c)))))

type family PredicateFailure a Source #

Descriptive type for the possible failures which might cause a transition to fail.

As a convention, PredicateFailures which are "structural" (meaning that they are not "throwable" in practice, and are used to pass control from one transition rule to another) are prefixed with S_.

Structural PredicateFailures represent conditions between rules where the disjunction of all rules' preconditions is equal to True. That is, either one rule will throw a structural PredicateFailure and the other will succeed, or vice-versa.

Instances

Instances details
type PredicateFailure TICKN Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Tickn

type PredicateFailure (AllegraUTXO era) 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

type PredicateFailure (AllegraUTXOW era) 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxow

type PredicateFailure (AlonzoBBODY era) 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Bbody

type PredicateFailure (AlonzoLEDGER era) 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Ledger

type PredicateFailure (AlonzoUTXO era) 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Utxo

type PredicateFailure (AlonzoUTXOS era) 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Utxos

type PredicateFailure (AlonzoUTXOW era) 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Utxow

type PredicateFailure (BabbageLEDGER era) 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Ledger

type PredicateFailure (BabbageUTXO era) 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Utxo

type PredicateFailure (BabbageUTXOS era) 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Utxos

type PredicateFailure (BabbageUTXOW era) 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Utxow

type PredicateFailure (ConwayCERT era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Cert

type PredicateFailure (ConwayCERTS era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Certs

type PredicateFailure (ConwayDELEG era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Deleg

type PredicateFailure (ConwayENACT era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Enact

type PredicateFailure (ConwayEPOCH era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Epoch

type PredicateFailure (ConwayGOV era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Gov

type PredicateFailure (ConwayGOVCERT era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.GovCert

type PredicateFailure (ConwayLEDGER era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Ledger

type PredicateFailure (ConwayNEWEPOCH era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.NewEpoch

type PredicateFailure (ConwayRATIFY era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Ratify

type PredicateFailure (ConwayTICKF era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Tickf

type PredicateFailure (ConwayUTXO era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Utxo

type PredicateFailure (ConwayUTXOS era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Utxos

type PredicateFailure (ConwayUTXOW era) 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Utxow

type PredicateFailure (ShelleyBBODY era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Bbody

type PredicateFailure (ShelleyDELEG era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Deleg

type PredicateFailure (ShelleyDELEGS era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Delegs

type PredicateFailure (ShelleyDELPL era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Delpl

type PredicateFailure (ShelleyEPOCH era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Epoch

type PredicateFailure (ShelleyLEDGER era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Ledger

type PredicateFailure (ShelleyLEDGERS era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Ledgers

type PredicateFailure (ShelleyMIR era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Mir

type PredicateFailure (ShelleyNEWEPOCH era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.NewEpoch

type PredicateFailure (ShelleyNEWPP era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Newpp

type PredicateFailure (ShelleyPOOL era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Pool

type PredicateFailure (ShelleyPOOLREAP era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.PoolReap

type PredicateFailure (ShelleyPPUP era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Ppup

type PredicateFailure (ShelleyRUPD era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Rupd

type PredicateFailure (ShelleySNAP era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Snap

type PredicateFailure (ShelleyTICK era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type PredicateFailure (ShelleyTICKF era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type PredicateFailure (ShelleyUPEC era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Upec

type PredicateFailure (ShelleyUTXO era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Utxo

type PredicateFailure (ShelleyUTXOW era) 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Utxow

type PredicateFailure (OCERT c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.OCert

type PredicateFailure (OVERLAY c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Overlay

type PredicateFailure (PRTCL c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

type PredicateFailure (UPDN c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Updn

type PredicateFailure (STUB e st si f m) 
Instance details

Defined in Control.State.Transition.Extended

type PredicateFailure (STUB e st si f m) = f

data PrtlSeqFailure c Source #

Constructors

WrongSlotIntervalPrtclSeq 

Fields

WrongBlockNoPrtclSeq 

Fields

WrongBlockSequencePrtclSeq 

Fields

Instances

Instances details
Generic (PrtlSeqFailure c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

Associated Types

type Rep (PrtlSeqFailure c) ∷ TypeType Source #

Show (PrtlSeqFailure c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

Eq (PrtlSeqFailure c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

Crypto c ⇒ NoThunks (PrtlSeqFailure c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl

type Rep (PrtlSeqFailure c) Source # 
Instance details

Defined in Cardano.Protocol.TPraos.Rules.Prtcl