term.package

Term

class Term extends AnyRef

Represents a term which is built recursively from variables and function symbols.

This class comes with two implementing case classes Var and Fun.

Attributes
sealed abstract
Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Hide All
  2. Show all
  1. Term
  2. AnyRef
  3. Any
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Term ()

Abstract Value Members

  1. def args : List[Term]

    Returns the list of arguments if this term is a function and java.lang.UnsupportedOperationException otherwise.

    Returns the list of arguments if this term is a function and java.lang.UnsupportedOperationException otherwise.

    Attributes
    abstract
  2. def isVar : Boolean

    Returns true if this term is a variable and false otherwise.

    Returns true if this term is a variable and false otherwise.

    Attributes
    abstract
  3. def root : Either[V, F]

    Returns scala.Left(variable_name) if the root symbol of this term is a variable and scala.Right(function_name) otherwise.

    Returns scala.Left(variable_name) if the root symbol of this term is a variable and scala.Right(function_name) otherwise.

    Attributes
    abstract

Concrete Value Members

  1. def != (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  2. def != (arg0: Any): Boolean

    Attributes
    final
    Definition Classes
    Any
  3. def ## (): Int

    Attributes
    final
    Definition Classes
    AnyRef → Any
  4. def == (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  5. def == (arg0: Any): Boolean

    Attributes
    final
    Definition Classes
    Any
  6. def apply (s: Subst): Term

    Returns this term after the substitution s was applied.

  7. def apply (p: Pos): Term

    Returns the subterm of this term at position p.

  8. def asInstanceOf [T0] : T0

    Attributes
    final
    Definition Classes
    Any
  9. def byRule (rs: TRS): Option[R]

    Returns the first rule from the term rewrite system rs which may be used to rewrite this term and scala.None if there is no such rule in rs.

  10. def clone (): AnyRef

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  11. def contains (that: Term): Boolean

    Returns true if some subterm of this term subsumes that term.

  12. def contract (irs: List[()]): (Int, Term)

  13. def contract (rs: TRS): Term

    Returns the contraction of this term and some rule in the term rewrite system rs if it exists and this term otherwise.

  14. def contract (r: R): Term

    Returns the term you get when applying the matching substitution from this term and the left-hand side of the rule r to the right-hand side of r.

  15. def depth : Int

    Returns the depth of the syntax tree of this term.

  16. def eq (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  17. def equals (arg0: Any): Boolean

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

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  19. def freshVars (): Subst

    Returns a substitution from all variables in this term to fresh variables.

  20. def funs : Set[F]

    Returns a set of all function symbol names contained in this term.

  21. def getClass (): java.lang.Class[_]

    Attributes
    final
    Definition Classes
    AnyRef → Any
  22. def hashCode (): Int

    Definition Classes
    AnyRef → Any
  23. def irewritableAt (irs: List[()]): Option[Pos]

  24. def irewritableWithSubst (ir: ()): Option[Subst]

  25. def irewriteStep (irs: List[()]): Option[(Int, Term)]

  26. def isGround : Boolean

    Returns true if this term contains no variables and false otherwise.

  27. def isInstanceOf [T0] : Boolean

    Attributes
    final
    Definition Classes
    Any
  28. def isNF (rs: TRS): Boolean

    Returns true if this term is in normal form with respect to the term rewrite system rs and 'false' otherwise.

  29. def isReducible (rs: TRS): Boolean

  30. def matcheLs (ts: List[Term]): Boolean

    Returns true if this term matches at least one of the terms in ts.

  31. def matches (that: Term): Boolean

    Returns true if this term matches that term and false otherwise.

  32. def mmatch (that: Term): Subst

    Returns a matching substitution of this and that term if they can be matched.

  33. def ne (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  34. def notify (): Unit

    Attributes
    final
    Definition Classes
    AnyRef
  35. def notifyAll (): Unit

    Attributes
    final
    Definition Classes
    AnyRef
  36. def poss : Set[Pos]

    Returns the set of all positions, including the root position epsilon in this term.

  37. def possf : Set[Pos]

    Returns the set of all function positions in this term.

  38. def possv : Set[Pos]

    Returns the set of all variable positions in this term.

  39. def reduce (rs: TRS): Option[Term]

    A synonym for rewriteStep.

  40. def reducibleByRule (rs: TRS): Option[R]

  41. def rewrite (rs: TRS): Term

    Returns the resulting term if this term may be rewritten with respect to the term rewrite system rs and this term otherwise.

  42. def rewriteStep (rs: TRS): Option[Term]

    Returns the term you get when rewriting this term one time with respect to the term rewrite system rs and scala.None if no rewrite step is possible.

  43. def rewriteToNF (itrs: ITRS): List[(Term, Int, Term)]

  44. def size : Int

    Returns the number of variables and function symbols contained in this term.

  45. def strlen : Int

    Returns the length of the nice string version of this term (including whitespaces).

  46. def subsums (that: Term): Boolean

    Returns true if that term mathes this term.

    Returns true if that term mathes this term. Just the reversal of matches.

  47. def subterm (that: Term): Boolean

    Returns true if this term is a proper subterm of that term and false otherwise.

  48. def subtermeq (that: Term): Boolean

    Returns true if this term is a proper subterm of or equal to that term and false otherwise.

  49. def subterms : Set[Term]

    Returns the set of all subterms (including this term itself).

  50. def synchronized [T0] (arg0: ⇒ T0): T0

    Attributes
    final
    Definition Classes
    AnyRef
  51. def toHtmlString : String

    Returns a html string of this term where variables are enclosed in <font>-tags with blue color.

  52. def toNiceString : String

    Returns a nicer string representation of this term where variables are colored blue.

    Returns a nicer string representation of this term where variables are colored blue. Only works on Linux systems.

  53. def toString (): String

    Returns the string representation of this term.

    Returns the string representation of this term.

    Definition Classes
    Term → AnyRef → Any
  54. def unifiable (that: Term): Boolean

    Returns true if this and that term are unifiable and false otherwise.

  55. def unify (that: Term): Subst

    Returns a unifying substitution of this and that term if they are unifiable.

  56. def update (p: Pos, s: Term): Term

    Returns this term where only the subterm at position p was replaced with term s.

  57. def variantOf (that: Term): Boolean

    Returns true if this term is a variant of that term and false otherwise.

  58. def vars : Set[V]

    Returns a set of all variable names contained in this term.

  59. def wait (): Unit

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

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

    Attributes
    final
    Definition Classes
    AnyRef
    Annotations
    @throws()

Inherited from AnyRef

Inherited from Any