# IEpsilon

### Related Docs: object IEpsilon | package parser

#### abstract class IEpsilon extends ITerm with IVariableBinder

Epsilon term, which is defined to evaluate to an arbitrary value satisfying the formula `cond`. `cond` is expected to contain a bound variable with de Bruijn index 0 and the given sort.

Linear Supertypes
Known Subclasses
Ordering
1. Alphabetic
2. By inheritance
Inherited
1. IEpsilon
2. IVariableBinder
3. ITerm
4. IExpression
5. AnyRef
6. Any
1. Hide All
2. Show all
Visibility
1. Public
2. All

### Abstract Value Members

1. #### abstract def cond: IFormula

The body of the epsilon term.

2. #### abstract def sort: Sort

The sort of the bound variable.

The sort of the bound variable.

Definition Classes
IEpsilonIVariableBinder

### Concrete Value Members

1. #### final def !=(arg0: Any): Boolean

Definition Classes
AnyRef → Any
2. #### final def ##(): Int

Definition Classes
AnyRef → Any
3. #### def *(that: ITerm): ITerm

Product of two terms (only defined if at least one of the terms is constant).

Product of two terms (only defined if at least one of the terms is constant).

Definition Classes
ITerm
4. #### def *(coeff: IdealInt): ITerm

Product of term with an integer.

Product of term with an integer.

Definition Classes
ITerm
5. #### def ***(coeff: IdealInt): ITerm

Product of two terms.

Product of two terms. The resulting expression is simplified immediately if one of the terms is constant.

Definition Classes
ITerm
6. #### def +(that: ITerm): ITerm

Sum of two terms.

Sum of two terms.

Definition Classes
ITerm
7. #### def +++(that: ITerm): ITerm

Sum of two terms.

Sum of two terms. The resulting expression is simplified immediately if one of the terms disappears.

Definition Classes
ITerm
8. #### def -(that: ITerm): ITerm

Difference between two terms.

Difference between two terms.

Definition Classes
ITerm
9. #### def ---(that: ITerm): ITerm

Difference of two terms.

Difference of two terms. The resulting expression is simplified immediately if one of the terms disappears.

Definition Classes
ITerm
10. #### def <(that: ITerm): IFormula

Inequality between two terms.

Inequality between two terms.

Definition Classes
ITerm
11. #### def <=(that: ITerm): IFormula

Inequality between two terms.

Inequality between two terms.

Definition Classes
ITerm
12. #### def =/=(that: ITerm): IFormula

Dis-equation between two terms.

Dis-equation between two terms.

Definition Classes
ITerm
13. #### final def ==(arg0: Any): Boolean

Definition Classes
AnyRef → Any
14. #### def ===(that: ITerm): IFormula

Equation between two terms.

Equation between two terms.

Definition Classes
ITerm
15. #### def >(that: ITerm): IFormula

Inequality between two terms.

Inequality between two terms.

Definition Classes
ITerm
16. #### def >=(that: ITerm): IFormula

Inequality between two terms.

Inequality between two terms.

Definition Classes
ITerm
17. #### def apply(i: Int): IExpression

Return the `i`th sub-expression.

Return the `i`th sub-expression.

Definition Classes
IExpression
18. #### final def asInstanceOf[T0]: T0

Definition Classes
Any
19. #### def clone(): AnyRef

Attributes
protected[java.lang]
Definition Classes
AnyRef
Annotations
@throws( ... )
20. #### final def eq(arg0: AnyRef): Boolean

Definition Classes
AnyRef
21. #### def equals(arg0: Any): Boolean

Definition Classes
AnyRef → Any
22. #### def finalize(): Unit

Attributes
protected[java.lang]
Definition Classes
AnyRef
Annotations
@throws( classOf[java.lang.Throwable] )
23. #### final def getClass(): Class[_]

Definition Classes
AnyRef → Any
24. #### def hashCode(): Int

Definition Classes
AnyRef → Any
25. #### final def isInstanceOf[T0]: Boolean

Definition Classes
Any
26. #### def iterator: Iterator[IExpression]

Iterator over the sub-expressions of this expression.

Iterator over the sub-expressions of this expression.

Definition Classes
IExpression
27. #### def length: Int

Number of sub-expressions.

Number of sub-expressions.

Definition Classes
IExpression
28. #### def minusSimplify: ITerm

Negation of a term.

Negation of a term. The resulting expression is simplified immediately if one of the terms is constant.

Definition Classes
ITerm
29. #### final def ne(arg0: AnyRef): Boolean

Definition Classes
AnyRef
30. #### final def notify(): Unit

Definition Classes
AnyRef
31. #### final def notifyAll(): Unit

Definition Classes
AnyRef
32. #### def subExpressions: IndexedSeq[IExpression]

The sub-expressions of this expression.

The sub-expressions of this expression.

Definition Classes
IExpression
33. #### final def synchronized[T0](arg0: ⇒ T0): T0

Definition Classes
AnyRef
34. #### def toString(): String

Definition Classes
AnyRef → Any
35. #### def unary_-: ITerm

Negation of a term.

Negation of a term.

Definition Classes
ITerm
36. #### def update(newSubExprs: Seq[IExpression]): ITerm

Replace the subexpressions of this node with new expressions

Replace the subexpressions of this node with new expressions

Definition Classes
ITermIExpression
37. #### final def wait(): Unit

Definition Classes
AnyRef
Annotations
@throws( ... )
38. #### final def wait(arg0: Long, arg1: Int): Unit

Definition Classes
AnyRef
Annotations
@throws( ... )
39. #### final def wait(arg0: Long): Unit

Definition Classes
AnyRef
Annotations
@throws( ... )