3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-17 00:32:16 +00:00

first attempts at getting to the bvsls from opt_context.

This commit is contained in:
Christoph M. Wintersteiger 2014-03-28 17:46:26 +00:00
parent 97e549d946
commit c068db16e8
7 changed files with 401 additions and 41 deletions

View file

@ -0,0 +1,42 @@
/*++
Copyright (c) 2014 Microsoft Corporation
Module Name:
bvsls_opt_engine.h
Abstract:
Optimization extensions to bvsls
Author:
Christoph (cwinter) 2014-03-28
Notes:
--*/
#ifndef _BVSLS_OPT_ENGINE_H_
#define _BVSLS_OPT_ENGINE_H_
#include "sls_engine.h"
class bvsls_opt_engine : public sls_engine {
public:
bvsls_opt_engine(ast_manager & m, params_ref const & p);
~bvsls_opt_engine();
class optimization_result {
public:
lbool is_sat;
expr_ref optimum;
optimization_result(ast_manager & m) : is_sat(l_undef), optimum(m) {}
};
optimization_result optimize(expr_ref const & objective);
protected:
expr_ref maximize(expr_ref const & objective);
};
#endif