4 This file collects the notes for credits, acknowledgments, and used
5 third-party software of the SympyCore project in chronological
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
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.
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.
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