From 75eb4f333a9b7edebde88dc8ef1651eadd189a55 Mon Sep 17 00:00:00 2001 From: Christopher Lazarus Date: Fri, 9 Mar 2018 16:11:27 -0800 Subject: [PATCH] implementing addReluConstraint() -implemented method that adds the Relu constraints given two variables -avoids exposing PiecewiseLinearConstraint to the shared library --- src/engine/InputQuery.cpp | 7 +++++++ src/engine/InputQuery.h | 1 + 2 files changed, 8 insertions(+) diff --git a/src/engine/InputQuery.cpp b/src/engine/InputQuery.cpp index 4dc472131..49531fc37 100644 --- a/src/engine/InputQuery.cpp +++ b/src/engine/InputQuery.cpp @@ -14,6 +14,7 @@ #include "MStringf.h" #include "ReluplexError.h" #include "FloatUtils.h" +#include "ReluConstraint.h" InputQuery::InputQuery() { @@ -117,6 +118,12 @@ double InputQuery::getSolutionValue( unsigned variable ) const return _solution.get( variable ); } +void InputQuery::addReluConstraint(unsigned var1, unsigned var2) +{ + PiecewiseLinearConstraint* r = new ReluConstraint(var1, var2); + addPiecewiseLinearConstraint(r); +} + void InputQuery::addPiecewiseLinearConstraint( PiecewiseLinearConstraint *constraint ) { _plConstraints.append( constraint ); diff --git a/src/engine/InputQuery.h b/src/engine/InputQuery.h index d08cf9e70..4a762bccf 100644 --- a/src/engine/InputQuery.h +++ b/src/engine/InputQuery.h @@ -42,6 +42,7 @@ class InputQuery const List &getEquations() const; List &getEquations(); + void addReluConstraint(unsigned var1, unsigned var2); void addPiecewiseLinearConstraint( PiecewiseLinearConstraint *constraint ); const List &getPiecewiseLinearConstraints() const; List &getPiecewiseLinearConstraints();