SMT-RAT
24.02
Toolbox for Strategic and Parallel Satisfiability-Modulo-Theories Solving
SingletonSimplifier.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
BaseSimplifier.h
"
4
#include "../ExpressionPool.h"
5
6
namespace
smtrat
{
7
namespace
expression {
8
namespace
simplifier {
9
10
struct
SingletonSimplifier
:
public
BaseSimplifier
{
11
const
ExpressionContent
*
simplify
(
const
NaryExpression
& expr)
const
{
12
if
(expr.
type
==
IFF
)
return
nullptr
;
13
if
(expr.
expressions
.size() == 1) {
14
return
expr.
expressions
.front().getContentPtr();
15
}
16
return
nullptr
;
17
}
18
};
19
20
}
21
}
22
}
BaseSimplifier.h
smtrat::expression::IFF
@ IFF
Definition:
ExpressionTypes.h:28
smtrat
Class to create the formulas for axioms.
Definition:
handle_options.h:10
smtrat::expression::ExpressionContent
Definition:
ExpressionContent.h:96
smtrat::expression::NaryExpression
Definition:
ExpressionContent.h:70
smtrat::expression::NaryExpression::expressions
Expressions expressions
Definition:
ExpressionContent.h:72
smtrat::expression::NaryExpression::type
NaryType type
Definition:
ExpressionContent.h:71
smtrat::expression::simplifier::BaseSimplifier
Definition:
BaseSimplifier.h:9
smtrat::expression::simplifier::SingletonSimplifier
Definition:
SingletonSimplifier.h:10
smtrat::expression::simplifier::SingletonSimplifier::simplify
const ExpressionContent * simplify(const NaryExpression &expr) const
Definition:
SingletonSimplifier.h:11
smtrat-expressions
simplifier
SingletonSimplifier.h
Generated by
1.9.1