open Preamble open CostLabel open Coqlib open Proper open PositiveMap open Deqsets open ErrorMessages open PreIdentifiers open Errors open Extralib open Lists open Positive open Identifiers open Exp open Arithmetic open Vector open Div_and_mod open Util open FoldStuff open BitVector open Jmeq open Russell open List open Setoids open Monad open Option open Extranat open Bool open Relations open Nat open Integers open Hints_declaration open Core_notation open Pts open Logic open Types open AST open Csyntax open TypeComparison open ClassifyOp open Smallstep open Extra_bool open FrontEndVal open Hide open ByteValues open GenMem open FrontEndMem open Globalenvs open Csem open SmallstepExec open Division open Z open BitVectorZ open Pointers open Values open Events open IOMonad open IO open Cexec open Casts open CexecInd open Sets open Listb open Star open Frontend_misc val reduce_bits : Nat.nat -> Nat.nat -> Bool.bool -> BitVector.bitVector -> BitVector.bitVector Types.option val pred_bitsize_of_intsize : AST.intsize -> Nat.nat val signed : AST.signedness -> Bool.bool val simplify_int : AST.intsize -> AST.intsize -> AST.signedness -> AST.signedness -> AST.bvint -> AST.bvint Types.option val size_lt_dec : AST.intsize -> AST.intsize -> (__, __) Types.sum val size_not_lt_to_ge : AST.intsize -> AST.intsize -> (__, __) Types.sum val sign_eq_dect : AST.signedness -> AST.signedness -> (__, __) Types.sum val necessary_conditions : AST.intsize -> AST.signedness -> AST.intsize -> AST.signedness -> Bool.bool val assert_int_value : Values.val0 Types.option -> AST.intsize -> BitVector.bitVector Types.option val binop_simplifiable : Csyntax.binary_operation -> Bool.bool val simplify_inside : Csyntax.expr -> Csyntax.expr Types.sig0 val simplify_expr : Csyntax.expr -> AST.intsize -> AST.signedness -> (Bool.bool, Csyntax.expr) Types.prod Types.sig0 val simplify_e : Csyntax.expr -> Csyntax.expr val simplify_ls : Csyntax.labeled_statements -> Csyntax.labeled_statements val simplify_statement : Csyntax.statement -> Csyntax.statement val simplify_function : Csyntax.function0 -> Csyntax.function0 val simplify_fundef : Csyntax.clight_fundef -> Csyntax.clight_fundef val simplify_program : Csyntax.clight_program -> Csyntax.clight_program