Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dmxlarchey/systemf
A clean and short proof of strong normalization for Curry-style System F
https://github.com/dmxlarchey/systemf
Last synced: about 1 month ago
JSON representation
A clean and short proof of strong normalization for Curry-style System F
- Host: GitHub
- URL: https://github.com/dmxlarchey/systemf
- Owner: DmxLarchey
- License: mpl-2.0
- Created: 2023-11-27T08:26:20.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-01-27T09:49:21.000Z (about 1 year ago)
- Last Synced: 2024-11-06T07:44:17.677Z (3 months ago)
- Language: Coq
- Size: 98.6 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# SystemF
A clean and short proof of strong normalization for Curry-style System F```
Inductive term_beta : term → term → Prop :=
| in_beta_redex u v : (Ⲗu)@v -β-> u⌈v⌉
| in_beta_lft u v w : u -β-> v → u@w -β-> v@w
| in_beta_rt u v w : u -β-> v → w@u -β-> w@v
| in_beta_abs u v : u -β-> v → Ⲗu -β-> Ⲗv
where "x -β-> y" := (term_beta x y).
``````
Inductive F_Typing_Judgement : (nat → type) → term → type → Prop :=
| fty_var Γ x : Γ ⊢ £x ∶ Γ x
| fty_arr_intro Γ u A B : A∷Γ ⊢ u ∶ B
→ Γ ⊢ Ⲗu ∶ A⇨B
| fty_arr_elim Γ u v A B : Γ ⊢ u ∶ A⇨B
→ Γ ⊢ v ∶ A
→ Γ ⊢ u@v ∶ B
| fty_abs_intro Γ u A : ⇑Γ ⊢ u ∶ A
→ Γ ⊢ u ∶ ∇A
| fty_abs_elim Γ u A B : Γ ⊢ u ∶ ∇A
→ Γ ⊢ u ∶ A⌈B⌉
where "Γ ⊢ u ∶ A" := (F_Typing_Judgement Γ u A).
``````
Definition SN := Acc term_beta⁻¹.Theorem FTJ_beta_sn Γ u A : Γ ⊢ u ∶ A → SN u.
```To be able to implement such definitions, some infrastructure
is necessary.