Skip to content

Commit 40e4a82

Browse files
Address some TODOs about moving proofs to agda-sets
1 parent 1ae42f5 commit 40e4a82

File tree

4 files changed

+5
-73
lines changed

4 files changed

+5
-73
lines changed

flake.lock

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Ledger/Conway/Conformance/Equivalence/Map.agda

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,8 @@
22

33
module Ledger.Conway.Conformance.Equivalence.Map where
44

5-
open import Ledger.Prelude
5+
open import Ledger.Prelude hiding (filterᵐ-singleton-false)
66
open import Axiom.Set.Properties th
7-
open import Axiom.Set.Map.Dec
87

98
import Algebra as Alg
109
import Algebra.Definitions as AlgDefs

src/Ledger/Conway/Specification/Ledger/Properties/Base.lagda.md

Lines changed: 0 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -113,59 +113,6 @@ module LEDGER-PROPS (tx : Tx) (Γ : LEnv) (s : LState) where
113113
dpMap-rmOrphanDRepVotes : ∀ certState govSt → dpMap (rmOrphanDRepVotes certState govSt) ≡ dpMap govSt
114114
dpMap-rmOrphanDRepVotes certState govSt = sym (fmap-∘ govSt) -- map proj₁ ∘ map (map₂ _) ≡ map (proj₁ ∘ map₂ _) ≡ map proj₁
115115
116-
-- TODO: Move these proofs to agda-sets
117-
-- https://github.com/input-output-hk/agda-sets/pull/18
118-
module _ {A V : Set} ⦃ mon : CommutativeMonoid 0ℓ 0ℓ V ⦄ ⦃ dA : DecEq A ⦄ {m m' : A ⇀ V} where
119-
open import Function.Reasoning
120-
121-
rhs-∪ˡ : A ⇀ V
122-
rhs-∪ˡ = filterᵐ? (sp-∘ (sp-¬ (∈-sp {X = dom (m ˢ)})) proj₁) m'
123-
124-
dom∪ˡˡ : dom (m ˢ) ⊆ dom ((m ∪ˡ m') ˢ)
125-
dom∪ˡˡ {a} a∈ = a∈ ∶
126-
a ∈ dom (m ˢ) |> ∪-⊆ˡ ∶
127-
a ∈ dom (m ˢ) ∪ dom (rhs-∪ˡ ˢ) |> proj₂ dom∪ ∶
128-
a ∈ dom ((m ˢ) ∪ (rhs-∪ˡ ˢ)) |> id ∶
129-
a ∈ dom ((m ∪ˡ m') ˢ)
130-
131-
dom∪ˡʳ : dom (m' ˢ) ⊆ dom ((m ∪ˡ m') ˢ)
132-
dom∪ˡʳ {a} a∈ with a ∈? dom m
133-
... | yes p = dom∪ˡˡ p
134-
... | no ¬p = a∈ ∶
135-
a ∈ dom m' |> from ∈-map ∶
136-
(∃[ ab ] a ≡ proj₁ ab × ab ∈ (m' ˢ)) |>
137-
(λ { (ab , refl , ab∈m') → (¬p , ab∈m') ∶
138-
(a ∉ dom m × ab ∈ m') |> to ∈-filter ∶
139-
ab ∈ rhs-∪ˡ |> (λ ab∈f → to ∈-map (ab , refl , ab∈f)) ∶
140-
a ∈ dom rhs-∪ˡ
141-
}) ∶
142-
a ∈ dom rhs-∪ˡ |> ∈-∪⁺ ∘ inj₂ ∶
143-
a ∈ dom m ∪ dom rhs-∪ˡ |> proj₂ dom∪ ∶
144-
a ∈ dom ((m ˢ) ∪ (rhs-∪ˡ ˢ)) |> id ∶
145-
a ∈ dom ((m ∪ˡ m') ˢ)
146-
147-
dom∪ˡ⊆∪dom : dom ((m ∪ˡ m') ˢ) ⊆ dom (m ˢ) ∪ dom (m' ˢ)
148-
dom∪ˡ⊆∪dom {a} a∈dom∪ with ∈-∪⁻ (proj₁ dom∪ a∈dom∪)
149-
... | inj₁ a∈domm = ∈-∪⁺ (inj₁ a∈domm)
150-
... | inj₂ a∈domf = a∈domf ∶
151-
a ∈ dom rhs-∪ˡ |> from ∈-map ∶
152-
(∃[ ab ] a ≡ proj₁ ab × ab ∈ rhs-∪ˡ) |>
153-
(λ { (ab , refl , ab∈fm') → ab∈fm' ∶
154-
ab ∈ rhs-∪ˡ |> proj₂ ∘ from ∈-filter ∶
155-
ab ∈ m' |> (λ ab∈m' → to ∈-map (ab , refl , ab∈m')) ∶
156-
a ∈ dom m'
157-
}) ∶
158-
a ∈ dom m' |> ∈-∪⁺ ∘ inj₂ ∶
159-
a ∈ dom m ∪ dom m'
160-
161-
∪dom⊆dom∪ˡ : dom (m ˢ) ∪ dom (m' ˢ) ⊆ dom ((m ∪ˡ m') ˢ)
162-
∪dom⊆dom∪ˡ {a} a∈
163-
with from ∈-∪ a∈
164-
... | inj₁ a∈ˡ = dom∪ˡˡ a∈ˡ
165-
... | inj₂ a∈ʳ = dom∪ˡʳ a∈ʳ
166-
167-
dom∪ˡ≡∪dom : dom ((m ∪ˡ m')ˢ) ≡ᵉ dom (m ˢ) ∪ dom (m' ˢ)
168-
dom∪ˡ≡∪dom = dom∪ˡ⊆∪dom , ∪dom⊆dom∪ˡ
169116
170117
module SetoidProperties (tx : Tx) (Γ : LEnv) (s : LState) where
171118
open Tx tx renaming (body to txb); open TxBody txb

src/Ledger/Conway/Specification/Utxo/Properties/GenMinSpend.lagda.md

Lines changed: 1 addition & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -129,30 +129,16 @@ module _ -- ASSUMPTION --
129129
(disjoint-sing ¬p)
130130
131131
indexedSumᵐ proj₂ ((d ᶠᵐ) ∪ˡᶠ (❴ dp , c ❵ ᶠᵐ))
132-
≡⟨ sym $ indexedSumᵐ-∪ˡ-∪ˡᶠ d ❴ dp , c ❵ ⟩
132+
≡⟨ sym $ indexedSumᵐ-∪ˡ-∪ˡᶠ {B = ⊤} d ❴ dp , c ❵ ⟩
133133
getCoin (d ∪ˡ ❴ dp , c ❵)
134134
135135
where
136136
open ≤-Reasoning
137-
open import Relation.Binary.Structures using (IsEquivalence)
138-
module ≡ᵉ = IsEquivalence ≡ᵉ-isEquivalence
139137
140138
disjoint-sing : dp ∉ dom d → disjoint (dom d) (dom ❴ dp , c ❵ˢ)
141139
disjoint-sing dp∉d a∈d a∈sing
142140
rewrite from ∈-dom-singleton-pair a∈sing = dp∉d a∈d
143141
144-
-- TODO: remove after adopting
145-
-- https://github.com/input-output-hk/agda-sets/pull/17
146-
indexedSumᵐ-∪ˡ-∪ˡᶠ
147-
: ∀ m m'
148-
→ indexedSumᵐ proj₂ ((m ∪ˡ m') ᶠᵐ) ≡ indexedSumᵐ proj₂ ((m ᶠᵐ) ∪ˡᶠ (m' ᶠᵐ))
149-
indexedSumᵐ-∪ˡ-∪ˡᶠ m m' =
150-
indexedSumᵐ-cong
151-
{f = proj₂}
152-
{x = (m ∪ˡ m') ᶠᵐ}
153-
{y = (m ᶠᵐ) ∪ˡᶠ (m' ᶠᵐ)}
154-
≡ᵉ.refl
155-
156142
≤updateCertDeps : (cs : List DCert) {pp : PParams} {deposits : Deposits}
157143
→ noRefundCert cs
158144
→ getCoin deposits ≤ getCoin (updateCertDeposits pp cs deposits)

0 commit comments

Comments
 (0)