@@ -19,7 +19,7 @@ private module Certs = Ledger.Conway.Specification.Certs gs
1919open Certs public
2020 hiding (DState; GState; CertState; HasCast-DState; HasCast-GState; HasCast-CertState;
2121 _⊢_⇀⦇_,DELEG⦈_; _⊢_⇀⦇_,GOVCERT⦈_;
22- _⊢_⇀⦇_,CERT⦈_; _⊢_⇀⦇_,PRE-CERT⦈_; _⊢_⇀⦇_,POST-CERT⦈_; _⊢_⇀⦇_, CERTS⦈_; ⟦_,_,_⟧ᵈ)
22+ _⊢_⇀⦇_,CERT⦈_; _⊢_⇀⦇_,PRE-CERT⦈_; _⊢_⇀⦇_,CERTS⦈_; ⟦_,_,_⟧ᵈ)
2323open RewardAddress
2424
2525record DState : Type where
@@ -105,6 +105,7 @@ private variable
105105 stᵈ stᵈ' : DState
106106 stᵍ stᵍ' : GState
107107 stᵖ stᵖ' : PState
108+ stᶜ stᶜ' : CertState
108109
109110open GovVote
110111
@@ -149,31 +150,31 @@ data _⊢_⇀⦇_,DELEG⦈_ where
149150 ⟦ vDelegs , sDelegs , rwds ∪ˡ ❴ c , 0 ❵
150151 , updateCertDeposit pp (reg c d) dep ⟧
151152
152- data _⊢_⇀⦇_,GOVCERT⦈_ : CertEnv → GState → DCert → GState → Type where
153+ data _⊢_⇀⦇_,GOVCERT⦈_ : CertEnv → CertState → DCert → CertState → Type where
153154 GOVCERT-regdrep : ∀ {pp} → let open PParams pp in
154155 ∙ (d ≡ drepDeposit × c ∉ dom dReps) ⊎ (d ≡ 0 × c ∈ dom dReps)
155156 ────────────────────────────────
156157 ⟦ e , pp , vs , wdrls , cc ⟧ ⊢
157- ⟦ dReps , ccKeys , dep ⟧
158+ ⟦ stᵈ , stᵖ , ⟦ dReps , ccKeys , dep ⟧ ⟧
158159 ⇀⦇ regdrep c d an ,GOVCERT⦈
159- ⟦ ❴ c , e + drepActivity ❵ ∪ˡ dReps , ccKeys
160- , updateCertDeposit pp (regdrep c d an ) dep ⟧
160+ ⟦ stᵈ , stᵖ , ⟦ ❴ c , e + drepActivity ❵ ∪ˡ dReps , ccKeys
161+ , updateCertDeposit pp (regdrep c d an ) dep ⟧ ⟧
161162
162163 GOVCERT-deregdrep :
163164 ∙ c ∈ dom dReps
164165 ∙ (DRepDeposit c , d) ∈ dep
165166 ────────────────────────────────
166- ⟦ e , pp , vs , wdrls , cc ⟧ ⊢ ⟦ dReps , ccKeys , dep ⟧
167+ ⟦ e , pp , vs , wdrls , cc ⟧ ⊢ ⟦ ⟦ vDelegs , sDelegs , rwds , ddep ⟧ᵈ , stᵖ , ⟦ dReps , ccKeys , dep ⟧ ⟧
167168 ⇀⦇ deregdrep c d ,GOVCERT⦈
168- ⟦ dReps ∣ ❴ c ❵ ᶜ , ccKeys , updateCertDeposit pp (deregdrep c d) dep ⟧
169+ ⟦ ⟦ vDelegs ∣^ ❴ vDelegCredential c ❵ ᶜ , sDelegs , rwds , ddep ⟧ᵈ , stᵖ , ⟦ dReps ∣ ❴ c ❵ ᶜ , ccKeys , updateCertDeposit pp (deregdrep c d) dep ⟧ ⟧
169170
170171 GOVCERT-ccreghot :
171172 ∙ (c , nothing) ∉ ccKeys
172173 ∙ c ∈ cc
173174 ────────────────────────────────
174- ⟦ e , pp , vs , wdrls , cc ⟧ ⊢ ⟦ dReps , ccKeys , dep ⟧
175+ ⟦ e , pp , vs , wdrls , cc ⟧ ⊢ ⟦ stᵈ , stᵖ , ⟦ dReps , ccKeys , dep ⟧ ⟧
175176 ⇀⦇ ccreghot c mc ,GOVCERT⦈
176- ⟦ dReps , ❴ c , mc ❵ ∪ˡ ccKeys , updateCertDeposit pp (ccreghot c mc) dep ⟧
177+ ⟦ stᵈ , stᵖ , ⟦ dReps , ❴ c , mc ❵ ∪ˡ ccKeys , updateCertDeposit pp (ccreghot c mc) dep ⟧ ⟧
177178
178179data _⊢_⇀⦇_,CERT⦈_ : CertEnv → CertState → DCert → CertState → Type where
179180 CERT-deleg :
@@ -187,9 +188,9 @@ data _⊢_⇀⦇_,CERT⦈_ : CertEnv → CertState → DCert → CertState → T
187188 ⟦ e , pp , vs , wdrls , cc ⟧ ⊢ ⟦ stᵈ , stᵖ , stᵍ ⟧ ⇀⦇ dCert ,CERT⦈ ⟦ stᵈ , stᵖ' , stᵍ ⟧
188189
189190 CERT-vdel :
190- ∙ Γ ⊢ stᵍ ⇀⦇ dCert ,GOVCERT⦈ stᵍ '
191+ ∙ Γ ⊢ stᶜ ⇀⦇ dCert ,GOVCERT⦈ stᶜ '
191192 ────────────────────────────────
192- Γ ⊢ ⟦ stᵈ , stᵖ , stᵍ ⟧ ⇀⦇ dCert ,CERT⦈ ⟦ stᵈ , stᵖ , stᵍ' ⟧
193+ Γ ⊢ stᶜ ⇀⦇ dCert ,CERT⦈ stᶜ'
193194
194195data _⊢_⇀⦇_,PRE-CERT⦈_ : CertEnv → CertState → ⊤ → CertState → Type where
195196
@@ -206,15 +207,6 @@ data _⊢_⇀⦇_,PRE-CERT⦈_ : CertEnv → CertState → ⊤ → CertState →
206207 ⇀⦇ _ ,PRE-CERT⦈
207208 ⟦ ⟦ voteDelegs , stakeDelegs , constMap wdrlCreds 0 ∪ˡ rewards , ddep ⟧ , stᵖ , ⟦ refreshedDReps , ccHotKeys , gdep ⟧ ⟧
208209
209- data _⊢_⇀⦇_,POST-CERT⦈_ : CertEnv → CertState → ⊤ → CertState → Type where
210-
211- CERT-post :
212- ⟦ e , pp , vs , wdrls , cc ⟧
213- ⊢ ⟦ ⟦ voteDelegs , stakeDelegs , rewards , ddep ⟧ , stᵖ , stᵍ ⟧
214- ⇀⦇ _ ,POST-CERT⦈
215- ⟦ ⟦ voteDelegs ∣^ (mapˢ vDelegCredential (dom (GState.dreps stᵍ)) ∪ fromList (vDelegNoConfidence ∷ vDelegAbstain ∷ []))
216- , stakeDelegs , rewards , ddep ⟧ , stᵖ , stᵍ ⟧
217-
218210_⊢_⇀⦇_,CERTS⦈_ : CertEnv → CertState → List DCert → CertState → Type
219- _⊢_⇀⦇_,CERTS⦈_ = RunTraceAfterAndThen _⊢_⇀⦇_,PRE-CERT⦈_ _⊢_⇀⦇_,CERT⦈_ _⊢_⇀⦇_,POST- CERT⦈_
211+ _⊢_⇀⦇_,CERTS⦈_ = RunTraceAfter _⊢_⇀⦇_,PRE-CERT⦈_ _⊢_⇀⦇_,CERT⦈_
220212```
0 commit comments