Smtml.ExprSourceTerm definitions of the abstract syntax
and expr = | Val of Value.t| Ptr of int32 * t| Symbol of Symbol.t| List of t list| Array of t array| Tuple of t list| App : [> `Op of string ] * t list -> expr| Unop of Ty.t * Ty.unop * t| Binop of Ty.t * Ty.binop * t * t| Triop of Ty.t * Ty.triop * t * t * t| Relop of Ty.t * Ty.relop * t * t| Cvtop of Ty.t * Ty.cvtop * t| Extract of t * int * int| Concat of t * tSmart unop constructor, applies simplifications at constructor level
Smart binop constructor, applies simplifications at constructor level
Smart triop constructor, applies simplifications at constructor level
Smart relop constructor, applies simplifications at constructor level
Smart relop constructor, applies simplifications at constructor level
Smart extract constructor, applies simplifications at constructor level
Smart concat constructor, applies simplifications at constructor level