ProvSQL C/C++ API
Adding support for provenance and uncertainty management to PostgreSQL databases
Loading...
Searching...
No Matches
lognormal.cpp File Reference

LogNormal(μ, σ) family implementation: exp of a Normal(μ, σ), parameterised by the underlying normal. More...

#include "DistributionCommon.h"
#include <algorithm>
#include <cmath>
#include <memory>
#include <optional>
#include <random>
#include <string>
#include <utility>
#include <vector>
Include dependency graph for lognormal.cpp:

Go to the source code of this file.

Namespaces

namespace  provsql

Detailed Description

LogNormal(μ, σ) family implementation: exp of a Normal(μ, σ), parameterised by the underlying normal.

The multiplicative counterpart of Normal: products of independent lognormals are lognormal (parameters add in log space), positive scalings shift μ by ln c, and the exp / ln transforms bridge the two families – all registered here as product / transform / comparator rules, so the simplifier folds exp(normal(...)), ln(lognormal(...)), and lognormal products with no evaluator changes.

Self-contained family implementation: the class is file-local and reaches the evaluators only through the registrars at the bottom (DistributionRegistry descriptor + pairwise / transform rules).

Definition in file lognormal.cpp.