object GeneratorNode
- Alphabetic
- By Inheritance
- GeneratorNode
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- case class Atom[X](value: X, output: RandomVar[X]) extends GeneratorNode[X] with Product with Serializable
atomic value taken by a random variable
atomic value taken by a random variable
- X
the scala type of the random variable
- value
the value
- case class BaseThenCondition[O, Y](gen: GeneratorNode[O], output: RandomVar[Y], condition: Sort[O, Y]) extends GeneratorNode[Y] with ThenCondition[O, Y] with Product with Serializable
- case class ConditionFunc[O, D, S >: O, T](base: GeneratorNode[O], conditionFamily: (D) => Sort[S, T], outputFamily: RandomVarFamily[::[D, HNil], T]) extends (::[D, HNil]) => BaseThenCondition[O, T] with Product with Serializable
- case class FiberProductMap[X1, X2, Z, Y](quot: (X1) => Z, fiberVar: (Z) => RandomVar[X2], f: (X1, X2) => Y, baseInput: RandomVar[X1], output: RandomVar[Y]) extends GeneratorNode[Y] with Product with Serializable
- case class FlatMap[X, Y](baseInput: RandomVar[X], fiberNode: (X) => GeneratorNode[Y], output: RandomVar[Y]) extends GeneratorNode[Y] with Product with Serializable
flat-maps a family of generator nodes, such as lambda islands corresponding to different types.
flat-maps a family of generator nodes, such as lambda islands corresponding to different types.
- X
scala type of the parametrizing random variable
- Y
scala type of the output random variable
- baseInput
the random variable for the parameter of the family
- fiberNode
the node for each parameter
- output
the output random variable
- case class FlatMapOpt[X, Y](baseInput: RandomVar[X], fiberNodeOpt: (X) => Option[GeneratorNode[Y]], output: RandomVar[Y]) extends GeneratorNode[Y] with Product with Serializable
- case class Idty[A]() extends (A) => A with Product with Serializable
Wrapper for identity to allow equality and
toString
to work. - case class Init[X](input: RandomVar[X]) extends GeneratorNode[X] with Product with Serializable
generator node for simply using the initial distribution.
generator node for simply using the initial distribution.
- input
the random variable whose distribution we extract.
- case class Island[Y, InitState, O, Boat](output: RandomVar[Y], islandOutput: (Boat) => RandomVar[O], initMap: (InitState) => (Double) => (InitState, Boat), export: (Boat, O) => Y, finalMap: (Boat, InitState) => InitState) extends RecursiveGeneratorNode[InitState, Y] with Product with Serializable
An
island
, i.e., a full map from initial state to all required distributions, which is used in recursive definitions where we recurse on not just the final state but also the dynamics.An
island
, i.e., a full map from initial state to all required distributions, which is used in recursive definitions where we recurse on not just the final state but also the dynamics. One enters the island using aboat
which is returned, and must exit by the same boat.- Y
the scala type of the island output
- InitState
the initial state
- O
the scala type of the final output
- Boat
scala type of the
boat
- output
the final output, as seen from the outside
- islandOutput
the variable whose distribution from the island is used
- initMap
the map from the initial state on the outside to the initial state in the island
- export
the object (e.g. term) level map applied when mapping a distribution obtained in the island to the outside; this is specific to the island
- case class Map[X, Y](f: (X) => Y, input: RandomVar[X], output: RandomVar[Y]) extends GeneratorNode[Y] with Product with Serializable
generator node for mapping
generator node for mapping
- X
scala type of the input random variable
- Y
scala type of the output random variable
- f
the function
- input
the input random variable
- output
the output random variable
- case class MapOpt[X, Y](f: (X) => Option[Y], input: RandomVar[X], output: RandomVar[Y]) extends GeneratorNode[Y] with Product with Serializable
generator node for optionally mapping, to be conditioned by non-trivial outputs (if any)
generator node for optionally mapping, to be conditioned by non-trivial outputs (if any)
- X
scala type of the input random variable
- Y
scala type of the output random variable
- f
the optional function
- input
the input random variable
- output
the output random variable
- case class RecursiveThenCondition[State, O, Y](gen: RecursiveGeneratorNode[State, O], output: RandomVar[Y], condition: Sort[O, Y]) extends RecursiveGeneratorNode[State, Y] with ThenCondition[O, Y] with Product with Serializable
- sealed trait ThenCondition[O, Y] extends GeneratorNode[Y]
compose a generator node with conditioning
compose a generator node with conditioning
- O
scala type of the original output
- Y
scala type of the final output
- case class ZipFlatMap[X1, X2, Y](baseInput: RandomVar[X1], fiberVar: (X1) => RandomVar[X2], f: (X1, X2) => Y, output: RandomVar[Y]) extends GeneratorNode[Y] with Product with Serializable
- case class ZipMap[X1, X2, Y](f: (X1, X2) => Y, input1: RandomVar[X1], input2: RandomVar[X2], output: RandomVar[Y]) extends GeneratorNode[Y] with Product with Serializable
generator node for combining using a binary operation
generator node for combining using a binary operation
- X1
scala type of the first input random variable
- X2
scala type of the second input random variable
- Y
scala type of the output random variable
- f
the binary operation
- input1
the first input random variable
- input2
the second input random variable
- output
the output random variable
- case class ZipMapOpt[X1, X2, Y](f: (X1, X2) => Option[Y], input1: RandomVar[X1], input2: RandomVar[X2], output: RandomVar[Y]) extends GeneratorNode[Y] with Product with Serializable
generator node for combining using an optional binary operation, should be conditioned on output being non-trivial
generator node for combining using an optional binary operation, should be conditioned on output being non-trivial
- X1
scala type of the first input random variable
- X2
scala type of the second input random variable
- Y
scala type of the output random variable
- f
the optional binary operation
- input1
the first input random variable
- input2
the second input random variable
- output
the output random variable
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- def conditionedVar[O, Y](input: RandomVar[O], output: RandomVar[Y], condition: Sort[O, Y]): BaseThenCondition[O, Y]
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def just[X](value: X, rv: RandomVar[X]): Atom[X]
atomic distribution to be included in generation
atomic distribution to be included in generation
- X
scala type of the random variable
- value
the atom
- rv
random variable whose distribution is specified
- returns
node for inclusion
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated