mirror of
				https://github.com/Z3Prover/z3
				synced 2025-11-04 05:19:11 +00:00 
			
		
		
		
	fix #3040: soudness bug in dom-simplify
This commit is contained in:
		
							parent
							
								
									006caea5ba
								
							
						
					
					
						commit
						1ac365ca74
					
				
					 1 changed files with 4 additions and 6 deletions
				
			
		| 
						 | 
				
			
			@ -524,19 +524,17 @@ public:
 | 
			
		|||
 | 
			
		||||
    bool assert_expr(expr * t, bool sign) override {
 | 
			
		||||
        expr* tt;
 | 
			
		||||
        if (m.is_false(t) || (m.is_not(t, tt) && m.is_true(tt)))
 | 
			
		||||
        if (m.is_not(t, tt))
 | 
			
		||||
            return assert_expr(tt, !sign);
 | 
			
		||||
        if (m.is_false(t))
 | 
			
		||||
            return sign;
 | 
			
		||||
 | 
			
		||||
        if (m.is_true(t) || (m.is_not(t, tt) && m.is_false(tt)))
 | 
			
		||||
        if (m.is_true(t))
 | 
			
		||||
            return !sign;
 | 
			
		||||
 | 
			
		||||
        m_scoped_substitution.push();
 | 
			
		||||
        if (!sign) {
 | 
			
		||||
            update_substitution(t, nullptr);
 | 
			
		||||
        }
 | 
			
		||||
        else if (m.is_not(t, tt)) {
 | 
			
		||||
            update_substitution(tt, nullptr);
 | 
			
		||||
        }
 | 
			
		||||
        else {
 | 
			
		||||
            expr_ref nt(m.mk_not(t), m);
 | 
			
		||||
            update_substitution(nt, nullptr);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue