mirror of
				https://github.com/Z3Prover/z3
				synced 2025-11-04 05:19:11 +00:00 
			
		
		
		
	Disable problematic resolve_with_assignment
This commit is contained in:
		
							parent
							
								
									eca72ffda1
								
							
						
					
					
						commit
						eba59356f3
					
				
					 1 changed files with 7 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -429,6 +429,7 @@ namespace polysat {
 | 
			
		|||
        // The reason for lit is conceptually:
 | 
			
		||||
        //    x1 = v1 /\ ... /\ xn = vn ==> lit
 | 
			
		||||
 | 
			
		||||
        SASSERT(s.m_bvars.is_value_propagation(lit));
 | 
			
		||||
        SASSERT(contains(lit));
 | 
			
		||||
        SASSERT(!contains(~lit));
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -441,9 +442,12 @@ namespace polysat {
 | 
			
		|||
        // If evaluation depends on a decision,
 | 
			
		||||
        // then we rather keep the more general constraint c instead of inserting "x = v"
 | 
			
		||||
        bool has_decision = false;
 | 
			
		||||
#if 0
 | 
			
		||||
        // TODO: this is problematic; may skip relevant decisions
 | 
			
		||||
        for (pvar v : c->vars())
 | 
			
		||||
            if (s.is_assigned(v) && s.m_justification[v].is_decision())
 | 
			
		||||
                m_bail_vars.insert(v), has_decision = true;
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
        if (!has_decision) {
 | 
			
		||||
            remove(c);
 | 
			
		||||
| 
						 | 
				
			
			@ -452,6 +456,9 @@ namespace polysat {
 | 
			
		|||
                    m_vars.insert(v);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        SASSERT(!contains(lit));
 | 
			
		||||
        SASSERT(!contains(~lit));
 | 
			
		||||
 | 
			
		||||
        logger().log(inf_resolve_with_assignment(s, lit, c));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue