Module docstring
{"## Definitions on lists
This file contains various definitions on lists. It does not contain
proofs about these definitions, those are contained in other files in Data.List
","We add some n-ary versions of List.zipWith for functions with more than two arguments.
These can also be written in terms of List.zip or List.zipWith.
For example, zipWith3 f xs ys zs could also be written as
zipWith id (zipWith f xs ys) zs
or as
(zip xs <| zip ys zs).map <| fun ⟨x, y, z⟩ ↦ f x y z.
"}