typed equality
This commit is contained in:
parent
3b13f0a82c
commit
42798f243f
8 changed files with 410 additions and 250 deletions
|
@ -184,17 +184,35 @@ comp : DSubst dfrom dto -> TSubst q dfrom from mid -> TSubst q dto mid to ->
|
|||
comp th ps ph = map (/// th) ps . ph
|
||||
|
||||
|
||||
public export %inline
|
||||
dweakT : {by : Nat} -> Term q d n -> Term q (by + d) n
|
||||
dweakT t = t /// shift by
|
||||
|
||||
public export %inline
|
||||
dweakE : {by : Nat} -> Elim q d n -> Elim q (by + d) n
|
||||
dweakE t = t /// shift by
|
||||
|
||||
|
||||
public export %inline
|
||||
weakT : {default 1 by : Nat} -> Term q d n -> Term q d (by + n)
|
||||
weakT t = t //. shift by
|
||||
|
||||
public export %inline
|
||||
weakE : {default 1 by : Nat} -> Elim q d n -> Elim q d (by + n)
|
||||
weakE t = t //. shift by
|
||||
|
||||
|
||||
namespace ScopeTermN
|
||||
export %inline
|
||||
(.term) : {s : Nat} -> ScopeTermN s q d n -> Term q d (s + n)
|
||||
(TUsed body).term = body
|
||||
(TUnused body).term = body //. shift s
|
||||
(TUnused body).term = weakT body {by = s}
|
||||
|
||||
namespace DScopeTermN
|
||||
export %inline
|
||||
(.term) : {s : Nat} -> DScopeTermN s q d n -> Term q (s + d) n
|
||||
(DUsed body).term = body
|
||||
(DUnused body).term = body /// shift s
|
||||
(DUnused body).term = dweakT body {by = s}
|
||||
|
||||
|
||||
export %inline
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue