module Int : ANNEAU = struct type t = int let zero = 0 let unit = 1 let plus = ( + ) let symm x = 0 - x let mult = ( * ) let equal = ( = ) let tostring = string_of_int end;; module Bool : ANNEAU = struct type t = bool let zero = false let unit = true let plus = ( || ) let symm = ( not ) let mult = ( & ) let equal = ( = ) let tostring x = if x then "t" else "f" end;;