mirror of
				https://github.com/Z3Prover/z3
				synced 2025-11-04 05:19:11 +00:00 
			
		
		
		
	
							parent
							
								
									8dac9b7b94
								
							
						
					
					
						commit
						b66360d0b5
					
				
					 5 changed files with 84 additions and 107 deletions
				
			
		| 
						 | 
				
			
			@ -2924,12 +2924,12 @@ expr_ref context::get_ground_sat_answer() const {
 | 
			
		|||
                   << "Sat answer unavailable when result is false\n";);
 | 
			
		||||
        return expr_ref(m);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    
 | 
			
		||||
    // convert a ground refutation into a linear counterexample
 | 
			
		||||
    // only works for linear CHC systems
 | 
			
		||||
    expr_ref_vector cex(m);
 | 
			
		||||
    proof_ref pf = get_ground_refutation();
 | 
			
		||||
 | 
			
		||||
    
 | 
			
		||||
    proof_ref_vector premises(m);
 | 
			
		||||
    expr_ref conclusion(m);
 | 
			
		||||
    svector<std::pair<unsigned, unsigned>> positions;
 | 
			
		||||
| 
						 | 
				
			
			@ -2946,18 +2946,18 @@ expr_ref context::get_ground_sat_answer() const {
 | 
			
		|||
        } else {
 | 
			
		||||
            pf.reset();
 | 
			
		||||
            break;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
        }
 | 
			
		||||
        
 | 
			
		||||
        premises.reset();
 | 
			
		||||
        conclusion.reset();
 | 
			
		||||
        positions.reset();
 | 
			
		||||
        substs.reset();
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
    SASSERT(!pf || !m.is_hyper_resolve(pf));
 | 
			
		||||
    if (pf) {
 | 
			
		||||
        cex.push_back(m.get_fact(pf));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    
 | 
			
		||||
    TRACE ("spacer", tout << "ground cex\n" << cex << "\n";);
 | 
			
		||||
 | 
			
		||||
    return mk_and(cex);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue