racket/collects/math
Neil Toronto f42cc6f14a Fixed major performance issue with matrix arithmetic; please merge to 5.3.2
The fix consists of three parts:

1. Rewriting `inline-matrix*'. The material change here is that the
   expansion now contains only direct applications of `+' and `*'.
   TR's optimizer replaces them with `unsafe-fx+' and `unsafe-fx*',
   which keeps intermediate flonum values from being boxed.

2. Making the types of all functions that operate on (Matrix Number)
   values more precise. Now TR can prove that matrix operations preserve
   inexactness. For example, matrix-conjugate : (Matrix Flonum) ->
   (Matrix Flonum) and three other cases for Real, Float-Complex, and
   Number.

3. Changing the return types of some functions that used to return
   things like (Matrix (U A 0)). Now that we worry about preserving
   inexactness, we can't have `matrix-upper-triangle' always return a
   matrix that contains exact zeros. It now accepts an optional `zero'
   argument of type A.
2013-01-21 22:04:04 -07:00
..
private Fixed major performance issue with matrix arithmetic; please merge to 5.3.2 2013-01-21 22:04:04 -07:00
scribblings Fixed major performance issue with matrix arithmetic; please merge to 5.3.2 2013-01-21 22:04:04 -07:00
tests Fixed major performance issue with matrix arithmetic; please merge to 5.3.2 2013-01-21 22:04:04 -07:00
array.rkt Made arrays strict by default; please merge to release 2013-01-15 13:53:28 -07:00
base.rkt Stubbed out missing math/array' and math/statistics' doc entries to 2012-11-27 18:05:38 -07:00
bigfloat.rkt Initial math library commit. The history for these changes is preserved 2012-11-16 11:39:51 -07:00
distributions.rkt Initial math library commit. The history for these changes is preserved 2012-11-16 11:39:51 -07:00
flonum.rkt Precise flonum tests (error usually must be <= 0.5 ulp), and prerequisite 2012-12-27 17:30:04 -07:00
info.rkt Removed extraneous files that DrDr was running 2012-11-17 11:57:13 -07:00
LICENSE.txt Initial math library commit. The history for these changes is preserved 2012-11-16 11:39:51 -07:00
main.rkt Reviewing and refactoring `math/matrix', part 1 2012-12-20 17:32:16 -07:00
matrix.rkt Fixed major performance issue with matrix arithmetic; please merge to 5.3.2 2013-01-21 22:04:04 -07:00
number-theory.rkt Fixed next-prime and prev-prime problem 2012-11-17 21:02:37 -09:00
special-functions.rkt Initial math library commit. The history for these changes is preserved 2012-11-16 11:39:51 -07:00
statistics.rkt Finished and documented counting and binning functions in `math/statistics' 2012-12-08 22:11:41 -07:00
utils.rkt Precise flonum tests (error usually must be <= 0.5 ulp), and prerequisite 2012-12-27 17:30:04 -07:00
vector.rkt Moved flvector functions into math/flonum 2012-11-29 15:45:17 -07:00