Module Type AES_LL_Spec_Type.
(* arr: list of 4 bytes *)
Parameter get_uint32_le: list Z -> Z -> int.
(* outputs a list of 4 bytes *)
Parameter put_uint32_le: int -> list int.

Axiom put_uint32_le_def: put_uint32_le = fun (x : int) =>
[ (Int.and           x                (Int.repr 255));
(Int.and (Int.shru x (Int.repr  8)) (Int.repr 255));
(Int.and (Int.shru x (Int.repr 16)) (Int.repr 255));
(Int.and (Int.shru x (Int.repr 24)) (Int.repr 255)) ].