`ClosedFormExpectations.ClosedFormExpectation`

— Type`ClosedFormExpectation`

`ClosedFormExpectations.ExpLogSquare`

— Type`ExpLogSquare(μ, σ)`

ExpLogSquare is a type that represents the exp(-(log(x) - μ)^2/(2σ^2)) function.

`ClosedFormExpectations.LinearLogGamma`

— Type`LinearLogGamma(α, β, weights)`

An unnormalized multivariate distribution derived from the LogGamma distribution. (see LogGamma)

The LinearLogGamma distribution is an distribution on a multidimensional `x`

, derived from the LogGamma distribution. It is defined as:

\[ LLG(x | lpha, eta, w) = LG(x^T w | a, b),\]

where weights is a fixed vector of covariates, and lpha and eta are the scale and shape parameters of the LogGamma distribution, respectively. Fields

α::T: The scale parameter of the LogGamma distribution.

β::T: The shape parameter of the LogGamma distribution.

weights::C: The fixed vector of covariates.

`ClosedFormExpectations.LogGamma`

— Type`LogGamma(α, β)`

The LogGamma distribution is a continuous probability distribution on the real numbers. It is defined as:

The probability density function of the LogGamma distribution is defined as:

```
```math
\mathcal{LG}(x \mid a, b) = \frac{e^{b x} e^{-e^{x}/a}}{a^{b} \Gamma(b)}, \quad -\infty < x < \infty, a > 0, b > 0.
```
```

Ref: https://www.math.wm.edu/~leemis/chart/UDR/PDFs/Loggamma.pdf

`ClosedFormExpectations.Logpdf`

— Type`Logpdf`

The structure to represent the logpdf function of a distribution.

`ClosedFormExpectations.Power`

— TypePower

Power is a type that represents the x^N function.

`ClosedFormExpectations.Square`

— Type`Square`

Square is a type that represents the x^2 function.

`ClosedFormExpectations.xlog2x`

— MethodReturn `x * log(x)^2`

for `x ≥ 0`

, handling $x = 0$ by taking the downward limit.

```
julia> xlog2x(0)
0.0
```

`Statistics.mean`

— Method`mean(::ClosedFormExpectation, f, q)`

Compute the E_q[f(x)] where q is a distribution and f is a function.

`Statistics.mean`

— Method`mean(::ClosedWilliamsProduct, f, q)`

Suppose q is a distribution with density parameterized by θ and f is a function.

Compute the E*q[f(x) ∇*θ log q(x; θ)] where q is a distribution and f is a function.