let rec and_list = function lx -> if is_empty_list (lx) then true else (function x, y -> x & y) (head (lx), and_list (tail (lx)))