agda style
This commit is contained in:
parent
b88cd2478b
commit
69da80df93
1 changed files with 72 additions and 73 deletions
|
@ -35,7 +35,8 @@ open import plfa.part2.Untyped
|
||||||
using (Context; _,_; ★; _∋_; _⊢_; `_; ƛ_; _·_)
|
using (Context; _,_; ★; _∋_; _⊢_; `_; ƛ_; _·_)
|
||||||
open import plfa.part3.Denotational
|
open import plfa.part3.Denotational
|
||||||
using (Value; _↦_; _`,_; _⊔_; ⊥; _⊑_; _⊢_↓_;
|
using (Value; _↦_; _`,_; _⊔_; ⊥; _⊑_; _⊢_↓_;
|
||||||
⊑-bot; ⊑-fun; ⊑-conj-L; ⊑-conj-R1; ⊑-conj-R2; ⊑-dist; ⊑-refl; ⊑-trans; ⊔↦⊔-dist;
|
⊑-bot; ⊑-fun; ⊑-conj-L; ⊑-conj-R1; ⊑-conj-R2;
|
||||||
|
⊑-dist; ⊑-refl; ⊑-trans; ⊔↦⊔-dist;
|
||||||
var; ↦-intro; ↦-elim; ⊔-intro; ⊥-intro; sub;
|
var; ↦-intro; ↦-elim; ⊔-intro; ⊥-intro; sub;
|
||||||
up-env; ℰ; _≃_; ≃-sym; Denotation; Env)
|
up-env; ℰ; _≃_; ≃-sym; Denotation; Env)
|
||||||
open plfa.part3.Denotational.≃-Reasoning
|
open plfa.part3.Denotational.≃-Reasoning
|
||||||
|
@ -308,8 +309,7 @@ To round-out the semantic equations, we establish the following one
|
||||||
for variables.
|
for variables.
|
||||||
|
|
||||||
```
|
```
|
||||||
var-equiv : ∀{Γ}{x : Γ ∋ ★}
|
var-equiv : ∀{Γ}{x : Γ ∋ ★} → ℰ (` x) ≃ (λ γ v → v ⊑ γ x)
|
||||||
→ ℰ (` x) ≃ (λ γ v → v ⊑ γ x)
|
|
||||||
var-equiv γ v = ⟨ var-inv , (λ lt → sub var lt) ⟩
|
var-equiv γ v = ⟨ var-inv , (λ lt → sub var lt) ⟩
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -507,8 +507,7 @@ straightforward induction, using the three equations
|
||||||
with the congruence lemmas for `ℱ` and `●`.
|
with the congruence lemmas for `ℱ` and `●`.
|
||||||
|
|
||||||
```
|
```
|
||||||
ℰ≃⟦⟧ : ∀ {Γ} {M : Γ ⊢ ★}
|
ℰ≃⟦⟧ : ∀ {Γ} {M : Γ ⊢ ★} → ℰ M ≃ ⟦ M ⟧
|
||||||
→ ℰ M ≃ ⟦ M ⟧
|
|
||||||
ℰ≃⟦⟧ {Γ} {` x} = var-equiv
|
ℰ≃⟦⟧ {Γ} {` x} = var-equiv
|
||||||
ℰ≃⟦⟧ {Γ} {ƛ N} =
|
ℰ≃⟦⟧ {Γ} {ƛ N} =
|
||||||
let ih = ℰ≃⟦⟧ {M = N} in
|
let ih = ℰ≃⟦⟧ {M = N} in
|
||||||
|
|
Loading…
Reference in a new issue