Packages

object ExpressionEquationSolver

Working with expressions built from initial and final values of random variables, including in islands, given equations satisfied by these

Linear Supertypes
AnyRef, Any
Content Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ExpressionEquationSolver
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. trait FixedProofs extends GenerateTyps

    fixes the weights of proofs, to try to flow with types making worse matches

  2. trait GenerateTyps extends ExpressionEquationSolver

    ExpressionEquationSolver where the type distribution is generated from the equations

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  6. def dist[Y](rv: RandomVar[Y], p: Map[Expression, Double]): FiniteDistribution[Y]

    extract the distribution

    extract the distribution

    rv

    random variable

    p

    map of expression values

    returns

    finite distribution

  7. def elemContext(elem: Variable[_]): Option[(RandomVar[_], Vector[_])]

    returns an element if the variable is one, and the context.

    returns an element if the variable is one, and the context. It is assumed that boats have all the isle information. If the argument is an Elem, perhaps nested in isles, we get boats and the random-variable

    elem

    candidate element

    returns

    optional element and context

  8. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  9. def eqAtoms(equations: Set[Equation], groupSize: Int = 100): Set[Expression]

    atoms from equations

    atoms from equations

    equations

    the equations

    returns

    set of expressions

  10. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  11. def export(ev: ExpressionEquationSolver, vars: Vector[Term]): ExpressionEquationSolver

    exporting an ExpressionEquationSolver with respect to variables

    exporting an ExpressionEquationSolver with respect to variables

    ev

    the initial expression eval

    vars

    variables

    returns

    exported ExpressionEquationSolver

  12. def fromInitEqs(initialState: TermState, equationsS: Set[Equation], coeffvalS: (Coeff[_]) => Option[Double], varWeightS: Double, maxRatioS: Double = 1.01, resolutionS: Double = 0.0, scaleS: Double = 1.0, smoothS: Option[Double] = None, exponentS: Double = 0.5, decayS: Double = 1, maxTimeS: Option[Long] = None, previousMapS: Option[Map[Expression, Double]] = None): ExpressionEquationSolver

    builds an ExpressionEquationSolver given initial states, equations and parameters, with the final state deduced using the equations

    builds an ExpressionEquationSolver given initial states, equations and parameters, with the final state deduced using the equations

    initialState

    initial state

    equationsS

    equations

    coeffvalS

    term-generator parameters

    maxRatioS

    maximum ratio for stabilization

    scaleS

    scale for gradient flow

    smoothS

    smoothing for gradient flow

    exponentS

    exponent for iteration

    decayS

    decay during iteration

    maxTimeS

    max-time during iteration

    returns

    ExpressionEquationSolver built

  13. def fromInitEqsTask(initialState: TermState, equationsS: Set[Equation], coeffvalS: (Coeff[_]) => Option[Double], varWeightS: Double, maxRatioS: Double = 1.01, resolutionS: Double = 0.0, scaleS: Double = 1.0, smoothS: Option[Double] = None, exponentS: Double = 0.5, decayS: Double = 1, maxTimeS: Option[Long] = None, previousMapS: Option[Map[Expression, Double]] = None): Task[ExpressionEquationSolver]

    builds an ExpressionEquationSolver given initial states, equations and parameters, with the final state deduced using the equations

    builds an ExpressionEquationSolver given initial states, equations and parameters, with the final state deduced using the equations

    initialState

    initial state

    equationsS

    equations

    coeffvalS

    term-generator parameters

    maxRatioS

    maximum ratio for stabilization

    scaleS

    scale for gradient flow

    smoothS

    smoothing for gradient flow

    exponentS

    exponent for iteration

    decayS

    decay during iteration

    maxTimeS

    max-time during iteration

    returns

    ExpressionEquationSolver built

  14. def fromStates(initialState: TermState, finalState: TermState, equationsS: Set[Equation], coeffvalS: (Coeff[_]) => Option[Double], varWeightS: Double, maxRatioS: Double = 1.01, resolutionS: Double = 0.0, scaleS: Double = 1.0, smoothS: Option[Double] = None, exponentS: Double = 0.5, decayS: Double = 1, maxTimeS: Option[Long] = None): ExpressionEquationSolver

    builds an ExpressionEquationSolver given states, equations and parameters, say as the result of a local prover

    builds an ExpressionEquationSolver given states, equations and parameters, say as the result of a local prover

    initialState

    initial state

    finalState

    final state

    equationsS

    equations

    coeffvalS

    term-generator parameters

    maxRatioS

    maximum ratio for stabilization

    scaleS

    scale for gradient flow

    smoothS

    smoothing for gradient flow

    exponentS

    exponent for iteration

    decayS

    decay during iteration

    maxTimeS

    max-time during iteration

    returns

    ExpressionEquationSolver built

  15. def generators(p: Map[Expression, Double]): FiniteDistribution[Term]

    initial values in the map of expression values

    initial values in the map of expression values

    p

    the map

    returns

    distribution of initial values.

  16. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  17. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  18. def initMap(atoms: Set[Expression], coeffval: (Coeff[_]) => Option[Double], varWeight: Double, initialState: TermState): Map[Expression, Double]

    Given a collection of atoms, returns map with values for them.

  19. def initMapTask(atoms: Set[Expression], coeffval: (Coeff[_]) => Option[Double], varWeight: Double, initialState: TermState): Task[Map[Expression, Double]]
  20. def initVal(exp: Expression, cv: (Coeff[_]) => Option[Double], varWeight: Double, initialState: ParTermState): Option[Double]

    Initial value of an atomic expression

  21. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  22. def isIsleVar(elem: Elem[_]): Boolean

    checks whether an element is a variable in an island

  23. def iterateMap(init: Map[Expression, Double], equations: Set[Equation], steps: Int): Map[Expression, Double]

    iteratively evolve a map for a fixed number of steps

    iteratively evolve a map for a fixed number of steps

    init

    initial map

    equations

    equations determining the iteration

    steps

    number of steps to iterate

    returns

    result of iteration

    Annotations
    @tailrec()
  24. def mapRatio[A](m1: Map[A, Double], m2: Map[A, Double]): Double
  25. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  26. def nextMap(init: Map[Expression, Double], equations: Set[Equation], exponent: Double = 0.5): Map[Expression, Double]

    Updating a map given equations by replacing terms that are the lhs of an equation with rhs evaluated.

  27. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  28. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  29. def recExp(init: Map[Expression, Double], exp: Expression): Double

    Recursively calculate or update the value on expression, given initial values.

  30. val sd: StateDistribution[TermState, FiniteDistribution]
  31. def stabRecExp(init: Map[Expression, Double], exp: Expression, prev: Option[Double], exponent: Double = 0.5): Double

    Stabilized recursive expression, taking geometric mean with the previous value if defined.

    Stabilized recursive expression, taking geometric mean with the previous value if defined. This is to avoid oscillations.

    exponent

    weight (power) of the new value while taking means

  32. def stableMap(init: Map[Expression, Double], equations: Set[Equation], maxRatio: Double = 1.01, resolution: Double = 0.0, exponent: Double = 0.5, decay: Double = 1, maxTime: Option[Long]): Map[Expression, Double]

    Iteratively update a map by equations till it is stable, i.e.

    Iteratively update a map by equations till it is stable, i.e. almost satisfies the equations.

    Annotations
    @tailrec()
  33. def stableSupportMap(init: Map[Expression, Double], equations: Set[Equation], exponent: Double = 0.5, decay: Double = 1): Map[Expression, Double]

    Iteratively update a map given equations until the support is stable (so we can safely calculate ratios).

    Iteratively update a map given equations until the support is stable (so we can safely calculate ratios).

    Annotations
    @tailrec()
  34. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  35. def terms(eqs: Set[EquationNode]): Set[Term]

    extract terms from equations

    extract terms from equations

    eqs

    the equation

    returns

    set of terms

  36. def toString(): String
    Definition Classes
    AnyRef → Any
  37. def typs(eqs: Set[EquationNode]): Set[Typ[Term]]

    extract types from equations

    extract types from equations

    eqs

    the equation

    returns

    set of types

  38. def values(eqs: Set[Equation]): Set[Expression]

    extract variable values from equations

    extract variable values from equations

    eqs

    the equation

    returns

    set of variable values

  39. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  40. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  41. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from AnyRef

Inherited from Any

Ungrouped