package goblint
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=99b78e6def71534d195eef9084baa26d8334b36084e120aa6afb300c9bf8afa6
sha512=f3162bd95a03c00358a2991f6152fc6169205bfb4c55e2c483e98cc3935673df9656d025b6f1ea0fa5f1bd0aee037d4f483966b0d2907e3fa9bf11a93a3392af
doc/goblint.solver/Goblint_solver/PostSolver/index.html
Module Goblint_solver.PostSolver
Source
Extra constraint system evaluation pass for warning generation, verification, pruning, etc.
module Pretty = GoblintCil.Pretty
module M = Messages
module type F =
functor (S : ConstrSys.EqConstrSys) ->
functor (VH : Batteries.Hashtbl.S with type key = S.v) ->
S with module S = S and module VH = VH
Functorial postsolver for any system.
module Compose
(PS1 : S)
(PS2 : S with module S = PS1.S and module VH = PS1.VH) :
S with module S = PS1.S and module VH = PS1.VH
Sequential composition of two postsolvers.
EqConstrSys
together with start values to be used.
module EqConstrSysFromStartEqConstrSys
(S : StartEqConstrSys) :
ConstrSys.EqConstrSys
with type v = S.v
and type d = S.d
and module Var = S.Var
and module Dom = S.Dom
Join start values into right-hand sides. This simplifies start handling in Make
.
Make incremental postsolving function from incremental postsolver.
List of postsolvers.
List of postsolvers for incremental.
Make incremental postsolving function from incremental list of postsolvers. If list is empty, no postsolving is performed.
Make complete (non-incremental) postsolving function from list of postsolvers. If list is empty, no postsolving is performed.
Standard postsolver options.
module ListArgFromStdArg
(S : ConstrSys.EqConstrSys)
(VH : Batteries.Hashtbl.S with type key = S.v)
(Arg : MakeStdArg) :
MakeListArg with module S = S and module VH = VH
List of standard postsolvers.
module EqIncrSolverFromEqSolver
(Sol : ConstrSys.GenericEqSolver) :
ConstrSys.GenericEqIncrSolver
Convert a non-incremental solver into an "incremental" solver. It will solve from scratch, perform standard postsolving and have no marshal data.