Search Results for

    Show / Hide Table of Contents

    Interface IImmutableDistribution<T, TThis>

    Immutable distribution interface

    Inherited Members
    ICloneable.Clone()
    Diffable.MaxDiff(Object)
    CanCreateUniform<TThis>.CreateUniform()
    CanCreateUniform<TThis>.IsUniform()
    CanCreatePointMass<T, TThis>.Point
    CanCreatePointMass<T, TThis>.CreatePointMass(T)
    CanCreatePointMass<T, TThis>.IsPointMass
    CanGetLogProb<T>.GetLogProb(T)
    Namespace: Microsoft.ML.Probabilistic.Distributions
    Assembly: Microsoft.ML.Probabilistic.dll
    Syntax
    [Quality(QualityBand.Experimental)]
    public interface IImmutableDistribution<T, TThis> : IImmutableDistribution, ICloneable, Diffable, CanCreateUniform<TThis>, CanCreatePointMass<T, TThis>, CanGetLogProb<T> where TThis : IImmutableDistribution<T, TThis>
    Type Parameters
    Name Description
    T

    The type of objects in the domain, e.g. double or string. Should be an immutable type.

    TThis

    The type of the concrete IImmutableDistribution<T, TThis> implementation.

    Remarks

    T should generally have value semantics, i.e. it should override Equals to use value equality. Otherwise it implies a Distribution over references.

    In addition to this interface, Distributions should override Equals to use value equality. A typical implementation of Equals is: MaxDiff(that) == 0.0

    When implementing this interface, its second type parameter should be the type being implemented itself, e.g. a typical declaration of a type implementing an immutable distribution over double-precision floating point numbers would look like

    public class A : IImmutableDistribution<double, A>

    In This Article
    Back to top Copyright © .NET Foundation. All rights reserved.