let rec multl = function | [] -> mk_one | [i] -> i | [i; j] -> mult i j | i :: il -> mult i (multl il)