mirror of
				https://github.com/Z3Prover/z3
				synced 2025-10-31 11:42:28 +00:00 
			
		
		
		
	
							parent
							
								
									3074e2b80c
								
							
						
					
					
						commit
						fcc7bd35e5
					
				
					 3 changed files with 17 additions and 13 deletions
				
			
		|  | @ -202,7 +202,7 @@ extern "C" { | |||
|         func_decl* d = mk_c(c)->m().mk_fresh_func_decl(prefix, | ||||
|                                                        domain_size, | ||||
|                                                        reinterpret_cast<sort*const*>(domain), | ||||
|                                                        to_sort(range)); | ||||
|                                                        to_sort(range), false); | ||||
| 
 | ||||
|         mk_c(c)->save_ast_trail(d); | ||||
|         RETURN_Z3(of_func_decl(d)); | ||||
|  | @ -216,7 +216,7 @@ extern "C" { | |||
|         if (prefix == nullptr) { | ||||
|             prefix = ""; | ||||
|         } | ||||
|         app* a = mk_c(c)->m().mk_fresh_const(prefix, to_sort(ty)); | ||||
|         app* a = mk_c(c)->m().mk_fresh_const(prefix, to_sort(ty), false); | ||||
|         mk_c(c)->save_ast_trail(a); | ||||
|         RETURN_Z3(of_ast(a)); | ||||
|         Z3_CATCH_RETURN(nullptr); | ||||
|  |  | |||
|  | @ -2346,10 +2346,10 @@ app * ast_manager::mk_app(func_decl * decl, unsigned num_args, expr * const * ar | |||
| 
 | ||||
| 
 | ||||
| func_decl * ast_manager::mk_fresh_func_decl(symbol const & prefix, symbol const & suffix, unsigned arity, | ||||
|                                             sort * const * domain, sort * range) { | ||||
|                                             sort * const * domain, sort * range, bool skolem) { | ||||
|     func_decl_info info(null_family_id, null_decl_kind); | ||||
|     info.m_skolem = true; | ||||
|     SASSERT(info.is_skolem()); | ||||
|     info.m_skolem = skolem; | ||||
|     SASSERT(skolem == info.is_skolem()); | ||||
|     func_decl * d; | ||||
|     if (prefix == symbol::null && suffix == symbol::null) { | ||||
|         d = mk_func_decl(symbol(m_fresh_id), arity, domain, range, &info); | ||||
|  | @ -2368,7 +2368,7 @@ func_decl * ast_manager::mk_fresh_func_decl(symbol const & prefix, symbol const | |||
|     } | ||||
|     m_fresh_id++; | ||||
|     SASSERT(d->get_info()); | ||||
|     SASSERT(d->is_skolem()); | ||||
|     SASSERT(skolem == d->is_skolem()); | ||||
|     return d; | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -1921,20 +1921,24 @@ public: | |||
|     } | ||||
| 
 | ||||
|     func_decl * mk_fresh_func_decl(symbol const & prefix, symbol const & suffix, unsigned arity, | ||||
|                                    sort * const * domain, sort * range); | ||||
|                                    sort * const * domain, sort * range, bool skolem = true); | ||||
| 
 | ||||
|     func_decl * mk_fresh_func_decl(unsigned arity, sort * const * domain, sort * range) { return mk_fresh_func_decl(symbol::null, symbol::null, arity, domain, range); } | ||||
|     func_decl * mk_fresh_func_decl(unsigned arity, sort * const * domain, sort * range, bool skolem = true) {  | ||||
|         return mk_fresh_func_decl(symbol::null, symbol::null, arity, domain, range, skolem);  | ||||
|     } | ||||
| 
 | ||||
|     func_decl * mk_fresh_func_decl(char const * prefix, char const * suffix, unsigned arity, | ||||
|                                    sort * const * domain, sort * range) { | ||||
|         return mk_fresh_func_decl(symbol(prefix), symbol(suffix), arity, domain, range); | ||||
|                                    sort * const * domain, sort * range, bool skolem = true) { | ||||
|         return mk_fresh_func_decl(symbol(prefix), symbol(suffix), arity, domain, range, skolem); | ||||
|     } | ||||
| 
 | ||||
|     func_decl * mk_fresh_func_decl(char const * prefix, unsigned arity, sort * const * domain, sort * range) { | ||||
|         return mk_fresh_func_decl(symbol(prefix), symbol::null, arity, domain, range); | ||||
|     func_decl * mk_fresh_func_decl(char const * prefix, unsigned arity, sort * const * domain, sort * range, bool skolem = true) { | ||||
|         return mk_fresh_func_decl(symbol(prefix), symbol::null, arity, domain, range, skolem); | ||||
|     } | ||||
| 
 | ||||
|     app * mk_fresh_const(char const * prefix, sort * s) { return mk_const(mk_fresh_func_decl(prefix, 0, nullptr, s)); } | ||||
|     app * mk_fresh_const(char const * prefix, sort * s, bool skolem = true) {  | ||||
|         return mk_const(mk_fresh_func_decl(prefix, 0, nullptr, s, skolem));  | ||||
|     } | ||||
| 
 | ||||
|     symbol mk_fresh_var_name(char const * prefix = nullptr); | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue