Module Reg.Domain

val unique_id : int
val name : string
module Context : sig ... end
val root_context : unit -> Context.t
val context_pretty : Stdlib.Format.formatter -> Context.t -> unit
type boolean = Domain.boolean
val assume : Context.t -> boolean -> Context.t option
val imperative_assume : Context.t -> boolean -> unit
val typed_nondet2 : Context.t -> Context.t -> 'a Context.in_tuple -> Context.t * 'a Context.out_tuple
val nondet_same_context : Context.t -> 'a Context.in_tuple -> 'a Context.out_tuple
val mu_context_open : Context.t -> Context.t
val typed_fixpoint_step : init:Context.t -> arg:Context.t -> body:Context.t -> (bool * 'a Context.in_tuple) -> bool * (close:bool -> 'a Context.out_tuple * Context.t)
module Boolean : sig ... end
val boolean_pretty : Context.t -> Stdlib.Format.formatter -> boolean -> unit
val serialize_boolean : Context.t -> boolean -> Context.t -> boolean -> 'a Context.in_acc -> (boolean, 'a) Context.result
val boolean_empty : Context.t -> boolean
val boolean_unknown : Context.t -> boolean
module Boolean_Forward : sig ... end
val query_boolean : Context.t -> boolean -> Lattices.Quadrivalent.t
type binary = Domain.binary
type memory = Domain.memory
module Query : sig ... end
val should_focus : size:int -> Context.t -> memory -> binary -> (binary * int * int) option
val may_alias : ptr_size:int -> Context.t -> size1:int -> size2:int -> binary -> binary -> bool
val binary_unknown_typed : size:int -> Context.t -> Types.Ctypes.typ -> binary
module Binary : sig ... end
val binary_pretty : size:int -> Context.t -> Stdlib.Format.formatter -> binary -> unit
val serialize_binary : size:int -> Context.t -> binary -> Context.t -> binary -> 'a Context.in_acc -> (binary, 'a) Context.result
val binary_empty : size:int -> Context.t -> binary
val binary_unknown : size:int -> Context.t -> binary
module Binary_Forward : sig ... end
val serialize_memory : Context.t -> memory -> Context.t -> memory -> 'a Context.in_acc -> (memory, 'a) Context.result
val memory_pretty : Context.t -> Stdlib.Format.formatter -> memory -> unit
module Memory_Forward : sig ... end
val builtin_show_each_in : string -> Context.t -> (int * binary) list -> memory -> memory
val global_symbol : Context.t -> string -> int * binary
val add_global_symbol : size:int -> Context.t -> string -> binary -> unit
val flush_cache : Context.t -> memory -> memory
val has_type : size:int -> Context.t -> Types.Ctypes.typ -> binary -> bool