Skip to content

Releases: 0xC000005/ChebyshevSharp

ChebyshevSharp 0.15.2

05 Jun 21:26
8b2fb18

Choose a tag to compare

Documentation patch release. Library code is unchanged from 0.15.0/0.15.1.

Documentation

  • Trimmed the American-option case study's embedded ~400-line continuous-state dynamic-programming lecture to a short, problem-specific summary that cross-links the From MDPs to Chebyshev Collocation primer (#224). The empirical results, glossary, boundary picture, Bellman diagnostics, and the GMP19 scope-fence are unchanged; the page drops from 1295 to ~900 lines.

Full notes: https://0xc000005.github.io/ChebyshevSharp/docs/changelog.html

ChebyshevSharp 0.15.1

05 Jun 20:58
30777aa

Choose a tag to compare

Documentation patch release. Library code is unchanged from 0.15.0 — the package differs only in version/metadata and the bundled README.

Documentation

  • New primer From MDPs to Chebyshev Collocation: a Map of Methods (#222): the general-to-specific theory companion to the American-option case study — MDPs → contraction / value & policy iteration → finite-horizon continuous state → four ways to represent the value function (basis functions, regression, neural networks, discretisation) → comparison — including the compute-once transition-kernel derivation and a finite-difference-vs-collocation comparison.
  • Citation/attribution corrections and benchmark-scope disclosures across the docs (#221): fixed the Bermudan recombining-quadratures authors (Lim/Lee/Kim 2014), the Goreinov–Tyrtyshnikov 2001 page range, and the Halperin QLBS year; added Homma & Saltelli (1996), the maxvol-2010 paper, and the Orthogonal Chebyshev Sliding Technique reference; fixed a non-compiling ChebyshevTT snippet.

Full notes: https://0xc000005.github.io/ChebyshevSharp/docs/changelog.html

ChebyshevSharp 0.15.0

03 Jun 21:21
1335cc4

Choose a tag to compare

[0.15.0] - 2026-06-03 — Continuous-state dynamic programming

Added

  • Added ChebyshevSharp.DynamicProgramming, a finite-horizon continuous-state
    Bellman-collocation API for one-dimensional state problems with discrete
    action grids.

Examples

  • Added examples/ContinuousStateDynamicProgramming, covering dynamic asset
    allocation and stochastic growth as non-option examples of the generic
    Bellman-collocation API.

Documentation

  • Clarified that the American-option case study uses QLNet finite difference
    and binomial engines as the numerical oracle, while QuantEcon
    ContinuousDPs.jl is a Bellman-collocation workflow reference rather than a
    direct American-option parity oracle.
  • Added a Continuous-State Dynamic Programming how-to guide that presents the
    generic API before the finance-specific American-option case study and cites
    QuantEcon, ContinuousDPs.jl, CVXPortfolio, and PyPortfolioOpt as related
    documentation patterns.
  • Reworked the documentation landing page as a reader-oriented hub with direct
    paths for tutorials, how-to guides, concepts, reference, common workflows, and
    case studies.
  • Simplified the top navigation to Docs, API, Release Notes, and GitHub
    while keeping tutorial, how-to, concept, and reference landing pages available
    inside the documentation tree.
  • Added the documentation math template used by the American-option tutorial so
    LaTeX formulas render consistently in the DocFX site.

Tests

  • Added a Dynamic Chebyshev Bellman expectation regression test for the
    Black-Scholes risk-neutral first-moment identity.
  • Added regression tests for the generic finite-horizon Bellman solver, dynamic
    asset-allocation example pattern, stochastic-growth example pattern, input
    validation, and out-of-domain model evaluation.

CI

  • Added the continuous-state dynamic-programming console example to the
    validation workflow's runnable example gate.

ChebyshevSharp 0.14.0

02 Jun 19:37
919fd28

Choose a tag to compare

Highlights

  • Added examples/AmericanOptionDynamicChebyshev, a QLNet-backed American option case-study harness comparing finite-difference and binomial references, Longstaff-Schwartz regression simulation, Stanford-style LSPI, and a reusable Dynamic Chebyshev continuation-value model.
  • Added finance regression tests for the American-option reference pricer, Longstaff-Schwartz baseline, LSPI baseline, and Dynamic Chebyshev solver.
  • Added the American Option Dynamic Chebyshev case study with optimal-stopping formulas, continuation-value intuition, reproducible commands, accuracy results, speed evidence, and citations.
  • Advanced package metadata to 0.14.0 and package validation baseline to 0.13.4.

See docs/docs/changelog.md for the full release entry.

ChebyshevSharp 0.13.4

25 May 16:23
a81dbd7

Choose a tag to compare

ChebyshevSharp 0.13.4 — Callable bond risk clone case study

This patch release publishes the callable fixed-rate bond surrogate case study and risk-acceptance harness. It does not intentionally change the public ChebyshevSharp API.

Documentation

  • Expanded the callable-bond case study with risk-acceptance validation, full-pillar DV01/PV01 evidence, anchored HDMR and factor-residual trials, state-dependent local-risk, exercise-moneyness residual, and dynamic short-rate-state evidence.
  • Added the first risk-acceptable reference-semantics callable tree clone with parallel hybrid effective DV01 acceleration.
  • Added references for HDMR and dynamic Chebyshev methods for early-exercise products.

Examples

  • Added examples/CallableBondSurrogate, including the QLNet-backed callable baseline, the full-dimensional public wrapper, naive surrogate discovery, structured-alternatives evidence modes, and full 60-pillar DV01 checks.

Release

  • Advanced package metadata to 0.13.4 and package validation baseline to 0.13.3.
  • Merged via PR #210. Closes issue #209.

ChebyshevSharp 0.13.3

13 May 19:19
9c6c81c

Choose a tag to compare

This patch release packages high-dimensional documentation improvements for
ChebyshevSlider and ChebyshevTT. It does not intentionally change public API
or numerical behavior.

Documentation

  • Added examples/SliderPartitionValidation, a runnable 8D Slider example that
    compares a correct pairwise partition against an intentionally weak singleton
    partition and shows why held-out validation matters
    (#185, #188).
  • Expanded the Slider guide with a pivot/slide mental model, a practical
    partition-selection workflow, and held-out validation code for detecting
    missing cross-group interactions.
  • Improved the Tensor Train guide with a core-chain mental model, a complete
    first example that builds, evaluates, validates, and prints ranks/compression,
    plus a TT-Cross acceptance checklist and troubleshooting table.

CI

  • Runs the .NET 10 xUnit suite with VSTest parallelization disabled because
    existing verbose-output tests capture Console.Out; this avoids
    nondeterministic writer-disposal failures in CI while preserving full test
    coverage.

Release

  • Advanced package metadata to 0.13.3 and updated package validation to
    compare this release against 0.13.2.

ChebyshevSharp 0.13.2

11 May 15:53
aa521b4

Choose a tag to compare

Fixed

  • ChebyshevSlider.Build() no longer overflows full-grid diagnostic arithmetic for high-dimensional partitioned sliders whose per-slide grids are tractable (#182, #183).
  • ChebyshevSlider.ToString() now reports oversized full-tensor comparisons without throwing for valid slider decompositions (#183).

Documentation

  • Improved documentation-site navigation by promoting release notes, adding a project-links page, exposing a top-level GitHub repository link, and adding footer links for GitHub, NuGet, issues, release notes, and contributing (#181).

Release

  • Advanced package metadata to 0.13.2 and updated package validation to compare against 0.13.1.

Validation passed in PR #184: format, release build, examples, tests, package validation, DocFX, hosted CI, and Codecov patch coverage.

ChebyshevSharp 0.13.1

08 May 18:12
95bf611

Choose a tag to compare

Summary

  • Packages the completed public documentation audit as a patch release.
  • Updates package metadata, getting-started package examples, release-gate documentation, and issue-template placeholders to 0.13.1.
  • Sets package validation to compare this patch release against 0.13.0.

Compatibility

This release does not intentionally change public APIs or numerical behavior.

Validation

PR #180 passed format, pack, docs, .NET 8 build, .NET 10 tests, all-tests, and codecov/patch gates before merge.

ChebyshevSharp v0.13.0

08 May 02:11
f7b654b

Choose a tag to compare

[0.13.0] - 2026-05-08 — Audit-driven correctness and validation hardening

This release collects the post-0.12.0 audit fixes. It is primarily a
backward-compatible correctness release, but users may see stricter exceptions
for invalid inputs that were previously accepted, extrapolated, or surfaced as
implementation-level exceptions.

The summary sections below describe user-visible impact. The traceability
inventories at the end of this release section cover the 83 audit pull requests
merged after v0.12.0, this release-preparation pull request, and the 35 issues
closed in the post-0.12.0 release window.

Upgrade Notes

  • No public APIs were intentionally removed in this release.
  • Invalid domains, dimensions, scalar controls, derivative orders, malformed
    load data, and out-of-domain evaluation points may now throw earlier with
    public argument exceptions instead of producing extrapolated values,
    inconsistent state, or lower-level runtime exceptions.

Changed

  • Public evaluation now rejects out-of-domain points across dense, spline,
    slider, and Tensor Train interpolants instead of silently extrapolating
    (#74,
    #76).
  • Public scalar algebra now rejects NaN, infinity, zero divisors, and null
    operands consistently before producing invalid interpolant state
    (#129,
    #131).
  • Runtime evaluation, derivative registries, and serialized derivative metadata
    now enforce configured maxDerivativeOrder bounds
    (#123,
    #125).
  • NuGet package validation now compares this release against 0.12.0.

Fixed

  • Adaptive auto-N construction now validates off-grid convergence more robustly,
    rejects non-finite validation samples, and commits rebuilt approximation state
    only after the full adaptive loop succeeds
    (#41,
    #147).
  • Dense, spline, slider, and Tensor Train builders now reject non-finite build
    values and invalid numeric controls earlier, with public argument exceptions
    instead of delayed internal failures.
  • ChebyshevSpline.Build(), ChebyshevSlider.Build(), and adaptive
    ChebyshevApproximation.Build() now publish replacement state atomically, so
    failed rebuilds preserve the previous built interpolant
    (#143,
    #145,
    #147).
  • Public state accessors now return snapshots rather than mutable live arrays,
    including domains, node counts, tensor values, special points, cached
    evaluation points, and result wrapper records
    (#75,
    #77,
    #78,
    #79,
    #80,
    #81,
    #82).
  • JSON and .pcb loaders now reject malformed dimensions, tensor lengths,
    oversized binary declarations, invalid spline/slider/TT state, and legacy TT
    dimension metadata before materializing inconsistent objects
    (#72,
    #117,
    #141).
  • ChebyshevSpline.SobolIndices() now includes between-piece variance and
    interval-membership interactions instead of only aggregating independent
    per-piece Sobol energies (#84).
  • ChebyshevSpline.AutoKnots() now validates public inputs before scanning the
    user function (#86).
  • Spline calculus and batch evaluation now reject derivative requests at knot
    boundaries and handle jump root detection more consistently.
  • Tensor Train validation now rejects zero-dimensional grids, invalid auto-order
    inputs, invalid round tolerances, non-finite build values, and build calls
    without a source function at the public boundary
    (#121,
    #127,
    #135).
  • Tensor Train lifecycle and ownership fixes preserve unbuilt clone state,
    isolate extrusion/slicing result cores from source cores, and repair reduced
    QR handling for wide matrices
    (#137,
    #139).
  • Deferred construction, integration results, slider derived results, fixture
    generation, and legacy JSON migration fixtures now preserve their intended
    construction and metadata contracts.

Documentation

  • README and docs now distinguish value-only evaluation benchmarks from
    price-plus-Greeks benchmarks and record benchmark provenance
    (#107,
    #109,
    #111).
  • Package snippets and current guides now use C# API names and document JSON
    plus portable .pcb serialization (#113).
  • DocFX API metadata is generated into ignored build output instead of tracked
    source files, preventing local source-path churn during docs verification
    (#88).

CI and Security

  • GitHub Actions are pinned to full-length commit SHAs, DocFX and Stryker tool
    versions are pinned, and the SDK matrix explicitly selects the requested SDK
    (#90,
    #103,
    #105).
  • CI now audits transitive NuGet dependencies across target frameworks and
    keeps main branch merges behind required test and Codecov patch gates
    (#115).

Complete PR Inventory

Read more

ChebyshevSharp v0.12.0

02 May 21:54
1f7c26a

Choose a tag to compare

Release PR: #29

Quality and documentation hardening release.

Highlights:

  • Added tensor-shape arithmetic guards across dense, serialization, slicing/extrusion, axis kernels, slider diagnostics, and Tensor Train materialization paths.
  • Added deterministic property tests, Stryker.NET mutation-test configuration, runnable examples, contributor documentation, and PR checklist.
  • Expanded and reorganized docs around tutorials, how-to guides, concepts, reference material, citations, and validation.
  • Clarified Type I Chebyshev node convention and the split from MoCaX/Ruiz-Zeron Lobatto grids.
  • Hardened SobolIndices variance handling with a scale-relative noise floor and direct TT nonconstant-energy contraction to preserve low-amplitude sensitivity signals.
  • Fixed stale documentation around Slider calculus and TT extrusion/slicing/arithmetic availability.

Validation before release:

  • GitHub PR checks passed: Format/Pack/Docs, .NET 8, .NET 10, All Tests Passed, codecov/patch.
  • Local Release validation passed: format, build, 1156 tests with coverage, and NuGet pack.

Changelog: https://github.com/0xC000005/ChebyshevSharp/blob/main/docs/docs/changelog.md#0120---2026-05-02--quality-and-documentation-hardening-25-26-27-28