mirror of
https://github.com/Z3Prover/z3
synced 2025-08-04 02:10:23 +00:00
39 lines
788 B
C++
39 lines
788 B
C++
/*++
|
|
Copyright (c) 2016 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
seq_simplifier_plugin.h
|
|
|
|
Abstract:
|
|
|
|
Simplifier for the sequence theory
|
|
|
|
Author:
|
|
|
|
Nikolaj Bjorner (nbjorner) 2016-02-05
|
|
|
|
--*/
|
|
#ifndef SEQ_SIMPLIFIER_PLUGIN_H_
|
|
#define SEQ_SIMPLIFIER_PLUGIN_H_
|
|
|
|
#include"basic_simplifier_plugin.h"
|
|
#include"seq_decl_plugin.h"
|
|
#include"seq_rewriter.h"
|
|
|
|
class seq_simplifier_plugin : public simplifier_plugin {
|
|
seq_util m_util;
|
|
seq_rewriter m_rw;
|
|
|
|
public:
|
|
seq_simplifier_plugin(ast_manager & m, basic_simplifier_plugin & b);
|
|
~seq_simplifier_plugin();
|
|
|
|
|
|
virtual bool reduce(func_decl * f, unsigned num_args, expr * const * args, expr_ref & result);
|
|
|
|
virtual bool reduce_eq(expr * lhs, expr * rhs, expr_ref & result);
|
|
|
|
};
|
|
|
|
#endif /* SEQ_SIMPLIFIER_PLUGIN_H_ */
|