Packages

object Deducer extends Serializable

Generating terms from given ones using the main HoTT operations, and the adjoint of this generation. This is viewed as deduction. Generation is a map on probability distributions, but the adjoint regards truncated distributions as the tangent space, and restricts domain to finite distributions.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Deducer
  2. Serializable
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. class HashedUnifInv[U <: Term with Subs[U]] extends (Term) => Set[(U, Term)]
  2. type InvMap = Vector[(Term, Set[(Term, Term)])]

Value Members

  1. def appln(rec: => (ProbabilityDistribution[Term]) => ProbabilityDistribution[Term])(p: ProbabilityDistribution[Term]): ProbabilityDistribution[Option[Term]]

    generating optionally using function application, with function and argument generated recursively; to be mixed in using <+?>

  2. def eqSubs(rec: => (ProbabilityDistribution[Term]) => ProbabilityDistribution[Term])(p: ProbabilityDistribution[Term])(save: (Term, IdentityTyp[Term], Term) => Unit): ProbabilityDistribution[Option[Term with Subs[Term]]]
  3. def feedback(absTheorems: FiniteDistribution[Typ[Term]], absThmsByProofs: FiniteDistribution[Typ[Term]], proofs: Map[Typ[Term], FiniteDistribution[Term]], vars: Vector[Weighted[Term]], lambdaWeight: Double, piWeight: Double): FiniteDistribution[Term]
  4. def flow(fd: FiniteDistribution[Term], shifts: FiniteDistribution[Term]): FiniteDistribution[Term]
  5. def hashedUnifInv[U <: Term with Subs[U]](term: Term, hashedInvMap: Map[ShapeTree, Vector[(Term, Set[(U, Term)])]]): Set[(U, Term)]
  6. def lambda(varweight: Double)(rec: => (ProbabilityDistribution[Term]) => ProbabilityDistribution[Term])(p: ProbabilityDistribution[Term]): ProbabilityDistribution[Option[Term]]

    generating optionally as lambdas, with function and argument generated recursively; to be mixed in using <+?> avoid having value a universe

  7. def lambdaValue[U <: Term with Subs[U]](variable: U): (Term) => Option[Term]

    given a type, returns optionally values of lambda terms with variable of the given type with variable in values from the above variable object

  8. def memAppln(rec: => (ProbabilityDistribution[Term]) => ProbabilityDistribution[Term])(p: ProbabilityDistribution[Term])(save: (Term, Term, Term) => Unit): ProbabilityDistribution[Option[Term]]
  9. def pi(varweight: Double)(rec: => (ProbabilityDistribution[Term]) => ProbabilityDistribution[Term])(p: ProbabilityDistribution[Term]): ProbabilityDistribution[Option[Term]]

    generating optionally as pi's, with function and argument generated recursively; to be mixed in using <+?>

  10. def piValue[U <: Term with Subs[U]](variable: U): (Term) => Option[Term]
  11. def proofEntropies(fd: FiniteDistribution[Term]): Vector[Weighted[Typ[U] forSome {type U >: x$2.type <: Term with Subs[U], val x$2: Term}]]
  12. def unifInv[U <: Term with Subs[U]](term: Term, invMap: Vector[(Term, Set[(U, Term)])]): Set[(U, Term)]
  13. def unpickle(str: String): TermPopulation