sig
  module type PostAnalysis =
    sig
      val name : string
      val title : string
      val is_active : unit -> bool
      val run :
        'InputSystem.t ->
        Analysis.param ->
        (Lib.kind_module list ->
         'InputSystem.t -> Analysis.param -> TransSys.t -> unit) ->
        Analysis.results -> unit Res.res
    end
  module RunTestGen : PostAnalysis
  module RunContractGen : PostAnalysis
  module RunRustGen : PostAnalysis
  module RunInvLog : PostAnalysis
  module RunCertif : PostAnalysis
  val run :
    'InputSystem.t ->
    Scope.t ->
    (Lib.kind_module list ->
     'InputSystem.t -> Analysis.param -> TransSys.t -> unit) ->
    Analysis.results -> unit
end