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 "ground_1/preamble.ma".
19 inductive PList: Type[0] \def
21 | PCons: nat \to (nat \to (PList \to PList)).
23 let rec PConsTail (hds: PList) on hds: nat \to (nat \to PList) \def \lambda
24 (h0: nat).(\lambda (d0: nat).(match hds with [PNil \Rightarrow (PCons h0 d0
25 PNil) | (PCons h d hds0) \Rightarrow (let TMP_1 \def (PConsTail hds0 h0 d0)
26 in (PCons h d TMP_1))])).
28 let rec Ss (hds: PList) on hds: PList \def match hds with [PNil \Rightarrow
29 PNil | (PCons h d hds0) \Rightarrow (let TMP_1 \def (S d) in (let TMP_2 \def
30 (Ss hds0) in (PCons h TMP_1 TMP_2)))].
32 let rec papp (a: PList) on a: PList \to PList \def \lambda (b: PList).(match
33 a with [PNil \Rightarrow b | (PCons h d a0) \Rightarrow (let TMP_1 \def (papp
34 a0 b) in (PCons h d TMP_1))]).