list_mk_anylet : (term * term) list list * term -> term
let a1 = b1 and ... an = bn in ... in let u1 = v1 and ... and uk = vk in body
list_mk_anylet
([[(``x:'a``, ``P:'a``)],
[(``(y:'a, z:ind)``, ``M:'a#ind``)],
[(``f (x:'a):bool``, ``N:bool``),
(``g:bool->'a``, ``K (v:'a):bool->'a``)]], ``g (f (x:'a):bool):'a``);
> val it = `let x = P in
let (y,z) = M in
let f x = N
and g = K v
in g (f x)`