Module Whilelib.While_analysis

This module presents the implementation of a simple example analyzer for the while language using codex constructs. It is detailed in the While tutorial's chapter4.

module Log : Tracelog.S
module Terms : sig ... end
module NonRelationalDomain : sig ... end
module Domain : sig ... end
module Var = While_ast.Var
module Store = Analysis_sva.State
val store_pp : Domain.Context.t -> Stdlib.Format.formatter -> Domain.integer Analysis_sva.State.t -> unit
type state = {
  1. ctx : Domain.Context.t;
  2. store : Domain.integer Store.t;
}
val initial_state : unit -> state
val pp : Stdlib.Format.formatter -> state -> unit
val join : state -> state -> state
val join_opt : state option -> state option -> state option
val widen : int -> state -> state -> state * bool
val pp_ret : Stdlib.Format.formatter -> state option -> unit
val copy : state -> state
val (let*) : 'a option -> ('a -> 'b option) -> 'b option
val analyze_stmt : state option -> While_ast.stmt -> state option