Implemented crisscross algorithm for solving LP problems.
[sympycore.git] / CREDITS.txt
blob885e89dcd8bcfca443d8f4630427ea332ed2c842
1 Introduction
2 ------------
4 This file collects the notes for credits, acknowledgments, and used
5 third-party software of the SympyCore project in chronological
6 reversed order. 
8 [OBSOLETE] means that the most recent version of sympycore does not
9 use the particular part of the contribution anymore. Nevertheless, the
10 contribution had importance in the development of sympycore to its
11 current stage.
13 Credits and History
14 -------------------
16 * In February 2008, the following features were introduced: SympyCore
17   User's Guide, PolynomialRing, MatrixRing, SympyCore benchmarks
18   suite, generating super-efficient code for
19   CommutativeRingWithPairs and numbers methods.
21 * In January 2008, a new algebra package was introduced that increased
22   the performance of the directadd5 test case four-fold. The basic
23   design of the algebra package was developed by Pearu Peterson and
24   Fredrik Johansson.  Pearu implemented CommutativeRingWithPairs that
25   is the computational base class to many algebras. Fredrik
26   implemented an efficient numbers support (mpq, mpf, mpc,
27   extended_number) that is one of the main factors for recent
28   performance improvements. Fredrik implemented PrimitiveAlgebra class
29   that is used as a universal language between different
30   algebras. Pearu added an expression parsing (based on the Python
31   compiler package) support to PrimitiveAlgebra. Fredrik became an
32   author of sympycore package.
34 * [OBSOLETE] SympyCore uses the idea of Fredrik Johansson's research
35   to carry out arithmetic operations using s-expression like
36   structures intended to minimize the amount of work performed outside
37   of Python builtin functions. See
39     http://sympycore.googlecode.com/svn/trunk/research/directadd5.py
41   for details. The idea with added features is implemented in
42   sympycore by Pearu in late December 2007. This resulted a
43   considerable performance improvement in terms of creating new
44   symbolic expressions and performing arithmetic operations.
46 * [OBSOLETE] SympyCore uses the proof-of-concept by Kirill Smelkov
48     http://code.google.com/p/sympy/issues/detail?id=440
50   (see comment #10) for using Python AST structures to parse strings
51   and create symbolic expressions from them. The idea with added
52   features was implemented in sympycore by Pearu. 
54 * [OBSOLETE] The code of SympyCore is based on the development of the
55   sympy-sandbox branch of the SymPy project SVN repository. The branch
56   as well as subsequent development of the sympycore package is
57   carried out solely by Pearu Peterson during the year 2007.
59   The development of the sympy-sandbox branch was based on speed
60   improvements discussed in
62     http://code.google.com/p/sympy/issues/detail?id=362
64   which included the suggestion by Fredrik to use dicts instead of
65   tuples to hold sums, to make flattening of sums faster.
67 * The SympyCore project, started by Pearu Peterson, is closely related
68   to the SymPy project: http://sympy.googlecode.com/.
69   See http://wiki.sympy.org/wiki/Contributors/ for SymPy credits.
72 Third-party software
73 --------------------
75 SympyCore includes the following third-party software:
77 * mpmath package (SVN revisions 189, 325, 332) developed by Fredrik Johansson:
79     http://mpmath.googlecode.com/
81   The package is used as a backend for arbitrary precision floating
82   point number support and is included in sympycore package tree.
84 * [OBSOLETE] qm module (v0.1) developed by Robert Dick:
86     http://ziyang.ece.northwestern.edu/~dickrp/python/mods.html
88   The module implements Quine-McCluskey two-level logic minimization
89   method that is used to evaluate boolean expressions.
91 Acknowledgments
92 ---------------
94 * The work of Pearu Peterson on the Sympy and SympyCore projects is
95   supported by a Center of Excellence grant from the Norwegian
96   Research Council to Center for Biomedical Computing at Simula
97   Research Laboratory.