WIP coq: debruijn terms
This commit is contained in:
parent
d1742c51d5
commit
2d557e51e4
1 changed files with 27 additions and 1 deletions
28
coq/terms.v
28
coq/terms.v
|
@ -30,6 +30,33 @@ Inductive expr_term : Type :=
|
|||
| expr_descend : type_term -> expr_term -> expr_term
|
||||
.
|
||||
|
||||
|
||||
(* TODO
|
||||
|
||||
Inductive type_DeBruijn : Type :=
|
||||
| id : nat -> type_DeBruijn
|
||||
| var : nat -> type_DeBruijn
|
||||
| fun : type_DeBruijn -> type_DeBruijn -> type_DeBruijn
|
||||
| univ : type_DeBruijn -> type_DeBruijn
|
||||
| spec : type_DeBruijn -> type_DeBruijn -> type_DeBruijn
|
||||
| morph : type_DeBruijn -> type_DeBruijn -> type_DeBruijn
|
||||
| ladder : type_DeBruijn -> type_DeBruijn -> type_DeBruijn
|
||||
|
||||
Inductive expr_DeBruijn : Type :=
|
||||
| var : nat -> expr_DeBruijn
|
||||
| ty_abs : expr_DeBruijn -> expr_DeBruijn
|
||||
| ty_app : expr_DeBruijn -> type_DeBruijn -> expr_Debruijn
|
||||
| abs : type_DeBruijn -> expr_DeBruijn -> expr_DeBruijn
|
||||
| morph : type_DeBruijn -> expr_DeBruijn -> expr_Debruijn
|
||||
| app : expr_DeBruijn -> expr_DeBruijn -> expr_Debruijn
|
||||
| let : type_DeBruijn -> expr_DeBruijn -> expr_Debruijn -> expr_Debruijn
|
||||
| ascend : type_DeBruijn -> expr_DeBruijn -> expr_DeBruijn
|
||||
| descend : type_DeBruijn -> expr_DeBruijn -> expr_DeBruijn
|
||||
.
|
||||
*)
|
||||
|
||||
|
||||
|
||||
(* values *)
|
||||
Inductive is_value : expr_term -> Prop :=
|
||||
| V_Abs : forall x τ e,
|
||||
|
@ -44,7 +71,6 @@ Inductive is_value : expr_term -> Prop :=
|
|||
.
|
||||
|
||||
|
||||
|
||||
Declare Scope ladder_type_scope.
|
||||
Declare Scope ladder_expr_scope.
|
||||
Declare Custom Entry ladder_type.
|
||||
|
|
Loading…
Reference in a new issue