1 (**************************************************************************)
4 (* ||A|| A project by Andrea Asperti *)
6 (* ||I|| Developers: *)
7 (* ||T|| The HELM team. *)
8 (* ||A|| http://helm.cs.unibo.it *)
10 (* \ / This file is distributed under the terms of the *)
11 (* v GNU General Public License Version 2 *)
13 (**************************************************************************)
15 (* This file was automatically generated: do not edit *********************)
17 include "Basic-1/T/defs.ma".
19 inductive TList: Set \def
21 | TCons: T \to (TList \to TList).
24 K \to (TList \to (T \to T))
26 let rec THeads (k: K) (us: TList) on us: (T \to T) \def (\lambda (t:
27 T).(match us with [TNil \Rightarrow t | (TCons u ul) \Rightarrow (THead k u
28 (THeads k ul t))])) in THeads.
31 TList \to (T \to TList)
33 let rec TApp (ts: TList) on ts: (T \to TList) \def (\lambda (v: T).(match ts
34 with [TNil \Rightarrow (TCons v TNil) | (TCons t ts0) \Rightarrow (TCons t
35 (TApp ts0 v))])) in TApp.
40 let rec tslen (ts: TList) on ts: nat \def (match ts with [TNil \Rightarrow O
41 | (TCons _ ts0) \Rightarrow (S (tslen ts0))]) in tslen.
44 TList \to (TList \to Prop)
46 \lambda (ts1: TList).(\lambda (ts2: TList).(lt (tslen ts1) (tslen ts2))).