Package org.tweetyproject.math.equation
Class Statement
java.lang.Object
org.tweetyproject.math.term.OptProbElement
org.tweetyproject.math.equation.Statement
- Direct Known Subclasses:
Equation
,Inequation
This class models a mathematical statement, i.e. an equality or an inequality.
- Author:
- Matthias Thimm
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
This method collapses all associative operations appearing in this statement, e.g.void
This method expands all associative operations appearing in this statement, e.g.Returns all absolute values of this statement.Returns the left term of this statement.Returns all maximums of this statement.Returns all minimums of this statement.abstract String
Returns the relation symbol of this statement.Returns the right term of this statement.abstract boolean
Checks whether this constraint is of normalized form, i.e.abstract boolean
checks if a Statement fulfills the relationreplaceAllTerms
(Map<? extends Term, ? extends Term> substitutes) Replaces terms according to the given map.abstract Statement
replaceTerm
(Term toSubstitute, Term substitution) Replaces each occurrence of "toSubstitute" by "substitution" and return the new statement.void
setLeftTerm
(Term t) Sets the left term of this statement.void
setRightTerm
(Term t) Sets the right term of this statement.abstract Statement
Brings both terms into linear form.abstract Statement
Normalizes this constraint, i.e.toString()
-
Constructor Details
-
Statement
Creates a new statement with the given terms.- Parameters:
leftTerm
- a term.rightTerm
- a term.
-
-
Method Details
-
getLeftTerm
Returns the left term of this statement.- Returns:
- the left term of this statement.
-
getMinimums
Returns all minimums of this statement.- Returns:
- all minimums of this statement.
-
getMaximums
Returns all maximums of this statement.- Returns:
- all maximums of this statement.
-
getAbsoluteValues
Returns all absolute values of this statement.- Returns:
- all absolute values of this statement.
-
replaceTerm
Replaces each occurrence of "toSubstitute" by "substitution" and return the new statement.- Parameters:
toSubstitute
- the term to be substitutedsubstitution
- the new term- Returns:
- this statement where "toSubstitute" is replaced by "substitution"
-
replaceAllTerms
Replaces terms according to the given map.- Parameters:
substitutes
- a map.- Returns:
- a term.
-
isNormalized
public abstract boolean isNormalized()Checks whether this constraint is of normalized form, i.e. whether it has the form "T > 0" or "T >= 0", "T = 0" or "T != 0"- Returns:
- "true" iff this constraint is normalized.
-
toNormalizedForm
Normalizes this constraint, i.e. brings it into an equivalent form "T > 0" or "T >= 0", "T = 0" or "T != 0".- Returns:
- a statement.
-
toLinearForm
Brings both terms into linear form. If this constraint is normalized (i.e. the right term consists of the constant 0) the right term is not linearized.- Returns:
- a statement.
-
collapseAssociativeOperations
public void collapseAssociativeOperations()This method collapses all associative operations appearing in this statement, e.g. every min{min{a,b},c} becomes min{a,b,c} -
expandAssociativeOperations
public void expandAssociativeOperations()This method expands all associative operations appearing in this statement, e.g. every min{a,b,c} becomes min{min{a,b},c}. -
getRightTerm
Returns the right term of this statement.- Returns:
- the right term of this statement.
-
setLeftTerm
Sets the left term of this statement.- Parameters:
t
- a term
-
setRightTerm
Sets the right term of this statement.- Parameters:
t
- a term
-
isValid
checks if a Statement fulfills the relation- Parameters:
s
- a Statement with values for all variables- Returns:
- if the left and the right hand side are in the correct relation to each other
-
getRelationSymbol
Returns the relation symbol of this statement.- Returns:
- the relation symbol of this statement.
-
toString
-