mirror of
				https://github.com/Z3Prover/z3
				synced 2025-11-04 05:19:11 +00:00 
			
		
		
		
	v0.1 of nla saturation
This commit is contained in:
		
							parent
							
								
									3e9afb30af
								
							
						
					
					
						commit
						fdac93fff3
					
				
					 3 changed files with 6 additions and 1 deletions
				
			
		| 
						 | 
				
			
			@ -8,6 +8,7 @@ BasedOnStyle: LLVM
 | 
			
		|||
IndentWidth: 4
 | 
			
		||||
TabWidth: 4
 | 
			
		||||
UseTab: Never
 | 
			
		||||
IndentCaseLabels: false
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1318,6 +1318,7 @@ lbool core::check() {
 | 
			
		|||
            return l_false;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    if (no_effect() && lp_settings().m_enable_stellensatz)
 | 
			
		||||
        ret = m_stellensatz.saturate();
 | 
			
		||||
    
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3475,9 +3475,12 @@ public:
 | 
			
		|||
        ++m_stats.m_conflicts;
 | 
			
		||||
        for (auto ev : m_explanation)
 | 
			
		||||
            set_evidence(ev.ci(), m_core, m_eqs);
 | 
			
		||||
 | 
			
		||||
        if (m_eqs.empty() && all_of(m_core, [&](literal l) { return ctx().get_assignment(l) == l_false; }))
 | 
			
		||||
            is_conflict = true;
 | 
			
		||||
        for (auto l : m_core) {
 | 
			
		||||
            IF_VERBOSE(1, verbose_stream() << l << " " << ctx().get_assignment(l) << "\n");
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        TRACE(arith_conflict,
 | 
			
		||||
              tout << "@" << ctx().get_scope_level() << (is_conflict ? " conflict":" lemma");
 | 
			
		||||
              for (auto const& p : m_params) tout << " " << p;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue