EpiAwareADTools v0.2.3
- Made a truncated Student-t differentiable.
truncatednormalises eagerly, so building a truncatedTDistcalls
logcdf, which routes toSpecialFunctions.beta_incand has no method
for aDual. Every gradient through a truncated t therefore failed
outright rather than returning a wrong number.TDistand its
location-scale wrapper now evaluate through the AD-safe hooks on all
seven backends. Building a truncated t directly from tracked parameters
stays ForwardDiff-only, which is howGammaandBetaalready behave,
since that path needsDualmethods added toDistributionsand no
other backend extension adds them. - Relaxed the AD-safe evaluation hooks so they no longer require a
Distributions.UnivariateDistributionsubtype.cdf_ad_safe,
logcdf_ad_safe,ccdf_ad_safe,logccdf_ad_safeandpdf_ad_safe
previously raised aMethodErroron a leaf that implements the
univariate interface without inheriting from it, which blocked
duck-typed leaves inside racing-hazard (compete) nodes and duck-typed
components in a convolution's quadrature path.primal_distributionwas
relaxed with it, and a type carrying noparamsmethod now raises an
ArgumentErrornaming the type rather than aMethodError. - Added the missing Extensions section of the documentation site.
The navigation already declared one page per package extension, but none
of the pages had been written, so the whole group was dropped from the
build and readers saw no Extensions section at all.
Merged pull requests:
- docs: write the seven package extension pages (#84) (@seabbs-bot)
- fix: accept duck-typed leaves in the AD-safe hooks and primal_distribution (#85) (@seabbs-bot)
- fix: make a truncated Student-t differentiable (#80) (#86) (@seabbs-bot)
- docs: land the extension-page corrections that missed the #84 merge (#89) (@seabbs-bot)
- chore: auto-increment version to 0.2.3 (#90) (@github-actions[bot])
- ci(deps): bump the github-actions group with 12 updates (#91) (@dependabot[bot])
- fix: run the AS 187 shape-partial series to convergence at large shape (#93) (@seabbs-bot)
- docs: update shared ecosystem badge to new EpiAware design system icon (#94) (@seabbs-bot)
- ci(deps): bump the github-actions group with 12 updates (#98) (@dependabot[bot])
Closed issues:
- Benchmarks and AD benchmarks (#28)
- Epic: AD, numerics and differentiation tooling (#35)
- docs: wire up the split AD-comparison benchmark page after kit#305 (#49)
- _grad_p_a_series loses accuracy at extreme shapes (k ≳ 1e5) (#67)
- Write docs pages for the seven extensions (#68)
- truncated(TDist) is not ForwardDiff-differentiable: truncated eagerly calls logcdf, which routes to beta_inc (#80)
- logccdf_ad_safe is bounded on UnivariateDistribution, blocking duck-typed leaves in compete (#81)
- cdf_ad_safe/pdf_ad_safe/primal_distribution have no duck-typed fallback (#83)