15 lines
351 B
Text
15 lines
351 B
Text
inductive TermSeq where
|
||
| empty : TermSeq
|
||
| cons : {α : Type} → (a : α) → (tail: TermSeq) → TermSeq
|
||
|
||
namespace TermSeq
|
||
|
||
def prodType : TermSeq → Type
|
||
| empty => Unit
|
||
| @cons α a tail => Prod α (prodType tail)
|
||
|
||
def asProd : (ts: TermSeq) → prodType ts
|
||
| empty => (() : Unit)
|
||
| @cons α a tail => (a, asProd tail)
|
||
|
||
end TermSeq
|