Skip to content

Add probability distributions: PDF, CDF, Quantile - #21

Merged
MartinsMednis merged 2 commits into
mainfrom
probability-distributions
Sep 14, 2026
Merged

MartinsMednis merged 2 commits into
mainfrom
probability-distributions

Conversation

@MartinsMednis

Copy link
Copy Markdown
Collaborator

Adds NormalDistribution, BinomialDistribution, PoissonDistribution, UniformDistribution, ExponentialDistribution as self-quoting markers, plus PDF/CDF/Quantile to query them - matching CortexJS's own calling convention (e.g. ["CDF", ["NormalDistribution", 0, 1], 1.5]).

  • PDF needs no optional dependency for any distribution; discrete PDF uses a log-space reformulation (the direct formula overflows a float at n as low as 10,000)
  • Binomial/Poisson's CDF and Quantile reuse the existing GammaRegularized/BetaRegularized identities and require the special-functions extra; the other three distributions don't
  • Quantile search for discrete distributions via doubling-then-bisect, matching _is_figurate's existing pattern
  • README: show how to combine multiple optional extras in one pip install

Verified against CortexJS's documented examples. 802 tests pass (784 existing + 18 new), 2 skipped.

- NormalDistribution, BinomialDistribution, PoissonDistribution,
  UniformDistribution, ExponentialDistribution as self-quoting
  markers, matching CortexJS's calling convention
- PDF needs no optional dependency for any distribution; discrete
  PDF uses a log-space reformulation (the direct formula overflows
  a float at n as low as 10,000)
- Binomial/Poisson's CDF and Quantile reuse the existing
  GammaRegularized/BetaRegularized identities and require the
  special-functions extra; the other three distributions don't
- Quantile search for discrete distributions via doubling-then-
  bisect, matching _is_figurate's existing pattern

Verified against CortexJS's documented examples. 802 tests pass
(784 existing + 18 new), 2 skipped.
@MartinsMednis
MartinsMednis merged commit dfe8e62 into main Sep 14, 2026
2 checks passed
@MartinsMednis
MartinsMednis deleted the probability-distributions branch September 21, 2026 17:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant