Math Library Features

Neil Toronto edited this page Sep 24, 2013 · 15 revisions

Math Library Features

Requested Features

Not sure how to run this yet. Nominations? An informal voting system? Free-for-all?

  • Automatic Differentiation
  • Data Tables like Python's PANDAS library
  • Mondrian style dynamic, interactive data analysis visualizations (this probably belongs in plotting library, but needs to be integrated with the data table above)
  • I/O using HDF5 files (see h5py for Python as an example how well HDF5 can be integrated with an array API)

Planned Features

Please don't edit this section. Neil or Jens Axel will move things here from Requested Features.

The to-do lists in each subsection are roughly in priority order.

math/base

  • New functions
  • logb (high-accuracy log with base)
  • floor-logb (exact, take from plot)
  • ceiling-logb (exact, take from plot)

math/flonum

  • New functions
  • flmodulo
  • flremainder

math/special-functions

  • Arithmetic-geometric mean (agm)
  • Bessel functions, first kind: besj0, besj1, besj (see math/bigfloat for naming convention)
  • Bessel functions, second kind: besy0, besy1, besy (see math/bigfloat for naming convention)

math/number-theory

  • in-primes

math/bigfloat

  • New functions
  • bfremainder
  • bfmodulo
  • Firm up private functions used to test math/special-functions, make them public
  • Log-space arithmetic
  • Beta
  • Incomplete gamma
  • Incomplete beta
  • Hurwitz zeta

math/array

  • Efficient functional update
  • Sparse-Array type
  • array-set, array-indexes-set, array-slice-set

math/matrix

math/statistics

  • Expose Walker table functions used in discrete-dist
  • Covariance/correlation matrices
  • Principal Component Analysis
  • Common regression algorithms (linear, general linear, polynomial)
  • Common, robust hypothesis testing algorithms

math/distributions

  • Unordered distributions
  • Dirichlet
  • Multivariate normal
  • Integer distributions
  • Multinomial
  • Categorical (values are 0-based indexes)
  • Hypergeometric
  • Real distributions
  • Student t
  • Kernel density estimate (KDE)
  • Generalized gamma (special cases: gamma, Weibull, log-normal)
  • Laplace
  • F
  • Fisher
  • Pareto
  • Von Mises
  • chisqr-dist (easy wrapper around gamma-dist)