3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-29 11:55:51 +00:00

moving parameters to theory_pb

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2014-01-01 20:00:10 -08:00
parent 4027de42f6
commit c5b82796ca
15 changed files with 159 additions and 162 deletions

View file

@ -47,6 +47,7 @@ void smt_params::updt_params(params_ref const & p) {
qi_params::updt_params(p);
theory_arith_params::updt_params(p);
theory_bv_params::updt_params(p);
theory_pb_params::updt_params(p);
updt_local_params(p);
}

View file

@ -25,6 +25,7 @@ Revision History:
#include"theory_arith_params.h"
#include"theory_array_params.h"
#include"theory_bv_params.h"
#include"theory_pb_params.h"
#include"theory_datatype_params.h"
#include"preprocessor_params.h"
#include"context_params.h"
@ -73,7 +74,8 @@ struct smt_params : public preprocessor_params,
public qi_params,
public theory_arith_params,
public theory_array_params,
public theory_bv_params,
public theory_bv_params,
public theory_pb_params,
public theory_datatype_params {
bool m_display_proof;
bool m_display_dot_proof;

View file

@ -41,4 +41,8 @@ def_module_params(module_name='smt',
('arith.propagation_mode', UINT, 2, '0 - no propagation, 1 - propagate existing literals, 2 - refine bounds'),
('arith.branch_cut_ratio', UINT, 2, 'branch/cut ratio for linear integer arithmetic'),
('arith.int_eq_branch', BOOL, False, 'branching using derived integer equations'),
('arith.ignore_int', BOOL, False, 'treat integer variables as real')))
('arith.ignore_int', BOOL, False, 'treat integer variables as real'),
('pb.conflict_frequency', UINT, 0, 'conflict frequency for Pseudo-Boolean theory'),
('pb.learn_complements', BOOL, True, 'learn complement literals for Pseudo-Boolean theory'),
('pb.enable_compilation', BOOL, True, 'enable compilation into sorting circuits for Pseudo-Boolean')))

View file

@ -0,0 +1,27 @@
/*++
Copyright (c) 2014 Microsoft Corporation
Module Name:
theory_pb_params.cpp
Abstract:
<abstract>
Author:
Nikolaj Bjorner (nbjorner) 2014-01-01
Revision History:
--*/
#include"theory_pb_params.h"
#include"smt_params_helper.hpp"
void theory_pb_params::updt_params(params_ref const & _p) {
smt_params_helper p(_p);
m_pb_conflict_frequency = p.pb_conflict_frequency();
m_pb_learn_complements = p.pb_learn_complements();
m_pb_enable_compilation = p.pb_enable_compilation();
}

View file

@ -0,0 +1,39 @@
/*++
Copyright (c) 2013 Microsoft Corporation
Module Name:
theory_pb_params.h
Abstract:
<abstract>
Author:
Nikolaj Bjorner (nbjorner) 2014-01-01
Revision History:
--*/
#ifndef _THEORY_PB_PARAMS_H_
#define _THEORY_PB_PARAMS_H_
#include"params.h"
struct theory_pb_params {
unsigned m_pb_conflict_frequency;
bool m_pb_learn_complements;
bool m_pb_enable_compilation;
theory_pb_params(params_ref const & p = params_ref()):
m_pb_conflict_frequency(0),
m_pb_learn_complements(true),
m_pb_enable_compilation(true)
{}
void updt_params(params_ref const & p);
};
#endif /* _THEORY_PB_PARAMS_H_ */