3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-11 21:50:52 +00:00

ematching skeleton

This commit is contained in:
Nikolaj Bjorner 2025-06-17 17:07:39 -07:00
parent b2f01706be
commit 4203d954c6
2 changed files with 63 additions and 0 deletions

View file

@ -0,0 +1,26 @@
/*++
Copyright (c) 2023 Microsoft Corporation
Module Name:
euf_match.cpp
Abstract:
basic E-matching algorithm with SO support.
Author:
Nikolaj Bjorner (nbjorner) 2025-6-16
--*/
#include "ast/euf/euf_ematch.h"
namespace euf {
void ematch::operator()(expr* pat, enode* t, enode** binding) {
}
}

37
src/ast/euf/euf_ematch.h Normal file
View file

@ -0,0 +1,37 @@
/*++
Copyright (c) 2023 Microsoft Corporation
Module Name:
euf_ematch.h
Abstract:
basic E-matching algorithm with SO support.
Author:
Nikolaj Bjorner (nbjorner) 2025-6-16
--*/
#pragma once
#include "ast/euf/euf_egraph.h"
namespace euf {
class ematch {
protected:
egraph& g;
std::ostream& display(std::ostream& out) const { return out; }
std::function<void(void)> m_on_match;
public:
ematch(egraph& g):
g(g)
{}
void operator()(expr* pat, enode* t, enode** binding) {}
};
}