21 | Cons of 'a * 'a list
24 'a2 -> ('a1 -> 'a1 list -> 'a2 -> 'a2) -> 'a1 list -> 'a2
27 'a2 -> ('a1 -> 'a1 list -> 'a2 -> 'a2) -> 'a1 list -> 'a2
30 'a2 -> ('a1 -> 'a1 list -> 'a2 -> 'a2) -> 'a1 list -> 'a2
33 'a2 -> ('a1 -> 'a1 list -> 'a2 -> 'a2) -> 'a1 list -> 'a2
36 'a2 -> ('a1 -> 'a1 list -> 'a2 -> 'a2) -> 'a1 list -> 'a2
38 val list_inv_rect_Type4 :
39 'a1 list -> (__ -> 'a2) -> ('a1 -> 'a1 list -> (__ -> 'a2) -> __ -> 'a2) ->
42 val list_inv_rect_Type3 :
43 'a1 list -> (__ -> 'a2) -> ('a1 -> 'a1 list -> (__ -> 'a2) -> __ -> 'a2) ->
46 val list_inv_rect_Type2 :
47 'a1 list -> (__ -> 'a2) -> ('a1 -> 'a1 list -> (__ -> 'a2) -> __ -> 'a2) ->
50 val list_inv_rect_Type1 :
51 'a1 list -> (__ -> 'a2) -> ('a1 -> 'a1 list -> (__ -> 'a2) -> __ -> 'a2) ->
54 val list_inv_rect_Type0 :
55 'a1 list -> (__ -> 'a2) -> ('a1 -> 'a1 list -> (__ -> 'a2) -> __ -> 'a2) ->
58 val list_discr : 'a1 list -> 'a1 list -> __
60 val append : 'a1 list -> 'a1 list -> 'a1 list
62 val hd : 'a1 list -> 'a1 -> 'a1
64 val tail : 'a1 list -> 'a1 list
66 val option_hd : 'a1 list -> 'a1 Types.option
68 val option_cons : 'a1 Types.option -> 'a1 list -> 'a1 list
70 val map : ('a1 -> 'a2) -> 'a1 list -> 'a2 list
72 val foldr : ('a1 -> 'a2 -> 'a2) -> 'a2 -> 'a1 list -> 'a2
74 val filter : ('a1 -> Bool.bool) -> 'a1 list -> 'a1 list
76 val compose : ('a1 -> 'a2 -> 'a3) -> 'a1 list -> 'a2 list -> 'a3 list
78 val rev_append : 'a1 list -> 'a1 list -> 'a1 list
80 val reverse : 'a1 list -> 'a1 list
82 val length : 'a1 list -> Nat.nat
85 'a1 list -> 'a1 list -> Nat.nat -> ('a1 list, 'a1 list) Types.prod
87 val split : 'a1 list -> Nat.nat -> ('a1 list, 'a1 list) Types.prod
89 val flatten : 'a1 list list -> 'a1 list
91 val nth : Nat.nat -> 'a1 list -> 'a1 -> 'a1
93 val nth_opt : Nat.nat -> 'a1 list -> 'a1 Types.option
96 ('a2 -> 'a2 -> 'a2) -> 'a2 -> ('a1 -> Bool.bool) -> ('a1 -> 'a2) -> 'a1
101 (* singleton inductive, whose constructor was mk_Aop *)
104 'a1 -> (('a1 -> 'a1 -> 'a1) -> __ -> __ -> __ -> 'a2) -> 'a1 aop -> 'a2
107 'a1 -> (('a1 -> 'a1 -> 'a1) -> __ -> __ -> __ -> 'a2) -> 'a1 aop -> 'a2
110 'a1 -> (('a1 -> 'a1 -> 'a1) -> __ -> __ -> __ -> 'a2) -> 'a1 aop -> 'a2
113 'a1 -> (('a1 -> 'a1 -> 'a1) -> __ -> __ -> __ -> 'a2) -> 'a1 aop -> 'a2
116 'a1 -> (('a1 -> 'a1 -> 'a1) -> __ -> __ -> __ -> 'a2) -> 'a1 aop -> 'a2
119 'a1 -> (('a1 -> 'a1 -> 'a1) -> __ -> __ -> __ -> 'a2) -> 'a1 aop -> 'a2
121 val op : 'a1 -> 'a1 aop -> 'a1 -> 'a1 -> 'a1
123 val aop_inv_rect_Type4 :
124 'a1 -> 'a1 aop -> (('a1 -> 'a1 -> 'a1) -> __ -> __ -> __ -> __ -> 'a2) ->
127 val aop_inv_rect_Type3 :
128 'a1 -> 'a1 aop -> (('a1 -> 'a1 -> 'a1) -> __ -> __ -> __ -> __ -> 'a2) ->
131 val aop_inv_rect_Type2 :
132 'a1 -> 'a1 aop -> (('a1 -> 'a1 -> 'a1) -> __ -> __ -> __ -> __ -> 'a2) ->
135 val aop_inv_rect_Type1 :
136 'a1 -> 'a1 aop -> (('a1 -> 'a1 -> 'a1) -> __ -> __ -> __ -> __ -> 'a2) ->
139 val aop_inv_rect_Type0 :
140 'a1 -> 'a1 aop -> (('a1 -> 'a1 -> 'a1) -> __ -> __ -> __ -> __ -> 'a2) ->
143 val aop_discr : 'a1 -> 'a1 aop -> 'a1 aop -> __
145 val dpi1__o__op : 'a1 -> ('a1 aop, 'a2) Types.dPair -> 'a1 -> 'a1 -> 'a1
147 val lhd : 'a1 list -> Nat.nat -> 'a1 list
149 val ltl : 'a1 list -> Nat.nat -> 'a1 list
151 val find : ('a1 -> 'a2 Types.option) -> 'a1 list -> 'a2 Types.option
153 val position_of_aux :
154 ('a1 -> Bool.bool) -> 'a1 list -> Nat.nat -> Nat.nat Types.option
156 val position_of : ('a1 -> Bool.bool) -> 'a1 list -> Nat.nat Types.option
158 val make_list : 'a1 -> Nat.nat -> 'a1 list