mirror of
https://github.com/Z3Prover/z3
synced 2025-07-24 21:26:59 +00:00
add priority queue to instantiation
This commit is contained in:
parent
22b0c3aa70
commit
46f754c43d
19 changed files with 1138 additions and 541 deletions
|
@ -1,41 +0,0 @@
|
|||
/*++
|
||||
Copyright (c) 2006 Microsoft Corporation
|
||||
|
||||
Module Name:
|
||||
|
||||
cost_evaluator.h
|
||||
|
||||
Abstract:
|
||||
|
||||
Simple evaluator for cost function
|
||||
|
||||
Author:
|
||||
|
||||
Leonardo de Moura (leonardo) 2008-06-14.
|
||||
|
||||
Revision History:
|
||||
|
||||
--*/
|
||||
#pragma once
|
||||
|
||||
#include "ast/ast.h"
|
||||
#include "ast/arith_decl_plugin.h"
|
||||
|
||||
class cost_evaluator {
|
||||
ast_manager & m;
|
||||
arith_util m_util;
|
||||
unsigned m_num_args;
|
||||
float const * m_args;
|
||||
float eval(expr * f) const;
|
||||
public:
|
||||
cost_evaluator(ast_manager & m);
|
||||
/**
|
||||
I'm using the same standard used in quantifier instantiation.
|
||||
(VAR 0) is stored in the last position of the array.
|
||||
...
|
||||
(VAR (num_args - 1)) is stored in the first position of the array.
|
||||
*/
|
||||
float operator()(expr * f, unsigned num_args, float const * args);
|
||||
};
|
||||
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue