mirror of
				https://github.com/Z3Prover/z3
				synced 2025-10-31 11:42:28 +00:00 
			
		
		
		
	mark
This commit is contained in:
		
							parent
							
								
									ebeb1296fd
								
							
						
					
					
						commit
						045b5ed683
					
				
					 1 changed files with 14 additions and 5 deletions
				
			
		|  | @ -802,17 +802,26 @@ namespace polysat { | |||
|             dep_t const d = dep_t::decode(dp); | ||||
|             if (d.is_null()) | ||||
|                 continue; | ||||
|             if (d.is_lit()) | ||||
|                 on_lit(d.lit()); | ||||
|             if (d.is_lit()) { | ||||
|                 sat::literal const lit = d.lit(); | ||||
|                 if (!m_marked_lits.contains(lit)) { | ||||
|                     on_lit(lit); | ||||
|                     m_marked_lits.insert(lit); | ||||
|                 } | ||||
|             } | ||||
|             else { | ||||
|                 SASSERT(d.is_value()); | ||||
|                 if (get_dep_lit(d) == sat::null_literal) | ||||
|                 sat::literal const lit = get_dep_lit(d); | ||||
|                 if (lit == sat::null_literal) | ||||
|                     on_var(get_dep_var(d)); | ||||
|                 else | ||||
|                     on_lit(get_dep_lit(d)); | ||||
|                 else if (!m_marked_lits.contains(lit)) { | ||||
|                     on_lit(lit); | ||||
|                     m_marked_lits.insert(lit); | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|         m_tmp_deps.reset(); | ||||
|         m_marked_lits.reset(); | ||||
|     } | ||||
| 
 | ||||
|     void slicing::explain_value(pvar v, std::function<void(sat::literal)> const& on_lit, std::function<void(pvar)> const& on_var) { | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue