@@ -3,46 +3,159 @@ source_branch: master
33source_path : src/Ledger/Conway/Specification.lagda.md
44---
55
6+ This is the formal specification of the Cardano ledger for the Conway era.
7+
8+ The Agda source code which formalizes the ledger specification in the Conway era
9+ consists of the modules listed below. How these modules fit together to form a
10+ collection of interdependent state transition systems is illustrated by the
11+ [ STS Diagram] [ ] in the [ Introduction] [ ] section.
12+
13+ <!--
614```agda
715{-# OPTIONS --safe #-}
816module Ledger.Conway.Specification where
17+ ```
18+ -->
919
20+ ## <span class =" AgdaModule " >BlockBody</span >
21+
22+ The Block Body Transition updates the block body state which comprises the
23+ ledger state and the map describing the produced blocks.
24+
25+ ``` agda
1026import Ledger.Conway.Specification.BlockBody
1127import Ledger.Conway.Specification.BlockBody.Properties
28+ ```
29+
30+
31+ ## Certificates
32+
33+ ``` agda
1234import Ledger.Conway.Specification.Certs
1335import Ledger.Conway.Specification.Certs.Properties
36+ ```
37+
38+
39+ ## <span class =" AgdaModule " >Chain</span >
40+
41+ ``` agda
1442import Ledger.Conway.Specification.Chain
1543import Ledger.Conway.Specification.Chain.Properties
44+ ```
45+
46+ ## Enactment
47+
48+ These modules concern the enactment of governance proposals and actions.
49+
50+ ``` agda
1651import Ledger.Conway.Specification.Enact
1752import Ledger.Conway.Specification.Enact.Properties
53+ ```
54+
55+ ## <span class =" AgdaModule " >Epoch</span >
56+
57+ ``` agda
1858import Ledger.Conway.Specification.Epoch
1959import Ledger.Conway.Specification.Epoch.Properties
60+ ```
61+
62+ ## <span class =" AgdaModule " >Fees</span >
63+
64+ This module defines a function that calculates the fee for reference scripts in a
65+ transaction.
66+
67+ ``` agda
2068import Ledger.Conway.Specification.Fees
69+ ```
70+
71+ ## Governance
72+
73+ ``` agda
2174import Ledger.Conway.Specification.Gov
2275import Ledger.Conway.Specification.Gov.Actions
2376import Ledger.Conway.Specification.Gov.Properties
2477import Ledger.Conway.Specification.Gov.Properties.ChangePPGroup
78+ import Ledger.Conway.Specification.Types.GovStructure
79+ ```
80+
81+ ## <span class =" AgdaModule " >Ledger</span >
82+
83+ The ` Ledger ` {.AgdaModule} module defines the ledger transition system where valid
84+ transactions transform the ledger state.
85+
86+ ``` agda
2587import Ledger.Conway.Specification.Ledger
2688import Ledger.Conway.Specification.Ledger.Properties
89+ ```
90+
91+ ## Protocol Parameters
92+
93+ The defines the adjustable protocol parameters of the Cardano ledger.
94+
95+ ``` agda
2796import Ledger.Conway.Specification.PParams
97+ ```
98+
99+ ## Properties of the Ledger Specification
100+
101+ ``` agda
28102import Ledger.Conway.Specification.Properties
103+ ```
104+
105+ ## Ratification
106+
107+ ``` agda
29108import Ledger.Conway.Specification.Ratify
30109import Ledger.Conway.Specification.Ratify.Properties
110+ ```
111+
112+ ## <span class =" AgdaModule " >Rewards</span >
113+
114+ ``` agda
31115import Ledger.Conway.Specification.Rewards
32116import Ledger.Conway.Specification.RewardUpdate
33117import Ledger.Conway.Specification.RewardUpdate.Properties
118+ ```
119+
120+ ## Scripts
121+
122+ ``` agda
34123import Ledger.Conway.Specification.Script
35124import Ledger.Conway.Specification.Script.Validation
125+ ```
126+
127+ ## Tests and Examples
128+
129+ ``` agda
36130import Ledger.Conway.Specification.Test.Examples
37131import Ledger.Conway.Specification.Test.StructuredContracts
132+ ```
133+
134+ ## Token Algebras
135+
136+ ``` agda
38137import Ledger.Conway.Specification.TokenAlgebra.Base
39138import Ledger.Conway.Specification.TokenAlgebra.Coin
40139import Ledger.Conway.Specification.TokenAlgebra.ValueSet
41140import Ledger.Conway.Specification.TokenAlgebra.ValueVector
141+ ```
142+
143+ ## Transactions
144+
145+ ``` agda
42146import Ledger.Conway.Specification.Transaction
43- import Ledger.Conway.Specification.Types.GovStructure
147+ ```
148+
149+ ## <span class =" AgdaModule " >Utxo</span >
150+
151+ ``` agda
44152import Ledger.Conway.Specification.Utxo
45153import Ledger.Conway.Specification.Utxo.Properties
154+ ```
155+
156+ ## <span class =" AgdaModule " >Utxow</span >
157+
158+ ``` agda
46159import Ledger.Conway.Specification.Utxow
47160import Ledger.Conway.Specification.Utxow.Properties
48161```
0 commit comments