mirror of
				https://github.com/Z3Prover/z3
				synced 2025-11-04 05:19:11 +00:00 
			
		
		
		
	Merge branch 'opt' of https://github.com/NikolajBjorner/z3 into opt
This commit is contained in:
		
						commit
						d2f52ca359
					
				
					 2 changed files with 14 additions and 7 deletions
				
			
		| 
						 | 
				
			
			@ -19,6 +19,7 @@ Revision History:
 | 
			
		|||
--*/
 | 
			
		||||
#include "sat/sat_probing.h"
 | 
			
		||||
#include "sat/sat_solver.h"
 | 
			
		||||
#include "sat/sat_simplifier_params.hpp"
 | 
			
		||||
 | 
			
		||||
namespace sat {
 | 
			
		||||
    probing::probing(solver & _s, params_ref const & p):
 | 
			
		||||
| 
						 | 
				
			
			@ -238,12 +239,13 @@ namespace sat {
 | 
			
		|||
        return r;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void probing::updt_params(params_ref const & p) {
 | 
			
		||||
        m_probing             = p.get_bool("probing", true);
 | 
			
		||||
        m_probing_limit       = p.get_uint("probing_limit", 5000000);
 | 
			
		||||
        m_probing_cache       = p.get_bool("probing_cache", true);
 | 
			
		||||
        m_probing_binary      = p.get_bool("probing_binary", true);
 | 
			
		||||
        m_probing_cache_limit = megabytes_to_bytes(p.get_uint("probing_chache_limit", 1024));
 | 
			
		||||
    void probing::updt_params(params_ref const & _p) {
 | 
			
		||||
        sat_simplifier_params p(_p);
 | 
			
		||||
        m_probing             = p.probing();
 | 
			
		||||
        m_probing_limit       = p.probing_limit();
 | 
			
		||||
        m_probing_cache       = p.probing_cache();
 | 
			
		||||
        m_probing_binary      = p.probing_binary();
 | 
			
		||||
        m_probing_cache_limit = p.probing_cache_limit();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void probing::collect_param_descrs(param_descrs & d) {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -23,6 +23,11 @@ def_module_params(module_name='sat',
 | 
			
		|||
                          ('resolution.cls_cutoff2', UINT, 700000000, 'limit2 - total number of problems clauses for the second cutoff of Boolean variable elimination'),
 | 
			
		||||
                          ('elim_vars', BOOL, True, 'enable variable elimination using resolution during simplification'),
 | 
			
		||||
                          ('elim_vars_bdd', BOOL, True, 'enable variable elimination using BDD recompilation during simplification'),
 | 
			
		||||
                          ('elim_vars_bdd_delay', UINT, 3, 'delay elimination of variables using BDDs until after simplification round'),
 | 
			
		||||
                          ('elim_vars_bdd_delay', UINT, 3, 'delay elimination of variables using BDDs until after simplification round'),                 
 | 
			
		||||
                          ('probing', BOOL, True, 'apply failed literal detection during simplification'),
 | 
			
		||||
                          ('probing_limit', UINT, 5000000, 'limit to the number of probe calls'),
 | 
			
		||||
                          ('probing_cache', BOOL, True, 'add binary literals as lemmas'),
 | 
			
		||||
                          ('probing_cache_limit', UINT, 1024, 'cache binaries unless overall memory usage exceeds cache limit'),
 | 
			
		||||
                          ('probing_binary', BOOL, True, 'probe binary clauses'),
 | 
			
		||||
                          ('subsumption', BOOL, True, 'eliminate subsumed clauses'),
 | 
			
		||||
                          ('subsumption.limit', UINT, 100000000, 'approx. maximum number of literals visited during subsumption (and subsumption resolution)')))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue