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.
Parameter output_four_ints_as_bytes: four_ints -> list int.
Parameter byte0: int -> Z.
Parameter byte1: int -> Z.
Parameter byte2: int -> Z.
Parameter byte3: int -> Z.
Parameter mbed_tls_fround_col: int -> int -> int -> int -> Z -> int.
Parameter mbed_tls_final_fround_col: int -> int -> int -> int -> Z -> int.

Axiom mbed_tls_final_fround_col_def: mbed_tls_final_fround_col =
fun (col0 col1 col2 col3 : int) (rk : Z) =>
(Int.xor (Int.xor (Int.xor (Int.xor (Int.repr rk)
(Znth (byte0 col0) FSb Int.zero)              )
(Int.shl (Znth (byte1 col1) FSb Int.zero) (Int.repr 8)))
(Int.shl (Znth (byte2 col2) FSb Int.zero) (Int.repr 16)))
(Int.shl (Znth (byte3 col3) FSb Int.zero) (Int.repr 24))).