mirror of
https://github.com/Z3Prover/z3
synced 2025-08-05 02:40:24 +00:00
adding t-smt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
5f2720562b
commit
5f89ead54b
4 changed files with 193 additions and 3 deletions
41
src/smt/smt_parallel.h
Normal file
41
src/smt/smt_parallel.h
Normal file
|
@ -0,0 +1,41 @@
|
|||
/*++
|
||||
Copyright (c) 2020 Microsoft Corporation
|
||||
|
||||
Module Name:
|
||||
|
||||
smt_parallel.h
|
||||
|
||||
Abstract:
|
||||
|
||||
Parallel SMT, portfolio loop specialized to SMT core.
|
||||
|
||||
Author:
|
||||
|
||||
nbjorner 2020-01-31
|
||||
|
||||
Revision History:
|
||||
|
||||
--*/
|
||||
#pragma once
|
||||
|
||||
#include "smt/smt_context.h"
|
||||
|
||||
namespace smt {
|
||||
|
||||
class parallel {
|
||||
context& ctx;
|
||||
expr_ref_vector m_unit_trail;
|
||||
obj_hashtable<expr> m_unit_set;
|
||||
unsigned_vector m_unit_lim;
|
||||
std::mutex m_mux;
|
||||
public:
|
||||
parallel(context& ctx): ctx(ctx), m_unit_trail(ctx.m) {}
|
||||
|
||||
lbool operator()(expr_ref_vector const& asms);
|
||||
|
||||
void add_unit(context& ctx, expr* e);
|
||||
|
||||
void get_units(unsigned idx, context& pctx);
|
||||
};
|
||||
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue