C library for symbolic manipulation
Thesis title in Czech: | C library for symbolic manipulation |
---|---|
Thesis title in English: | C library for symbolic manipulation |
Academic year of topic announcement: | 2007/2008 |
Thesis type: | Bachelor's thesis |
Thesis language: | angličtina |
Department: | Department of Software and Computer Science Education (32-KSVI) |
Supervisor: | RNDr. Tomáš Holan, Ph.D. |
Author: | Mgr. Bc. Štefan Gurský, Ph.D. - assigned and confirmed by the Study Dept. |
Date of registration: | 16.11.2007 |
Date of assignment: | 05.12.2007 |
Date and time of defence: | 08.09.2008 00:00 |
Date of electronic submission: | 08.09.2008 |
Date of proceeded defence: | 08.09.2008 |
Opponents: | RNDr. David Bednárek, Ph.D. |
Guidelines |
The aim of this Bachelor thesis is to write a very simple, yet versatile and easily extensible C library for symbolic manipulation.
The library should be able to do the basic calculus: arithmetic operations (*, /, +, -), functions (exp, ln, sin, cos, tan,...), differentation, taylor expansion, substitution, simplification to the canonical form. There are several symbolic manipulation programs in C/C++, see for example [1], [2], [3], [4], [5], [6], [7], but all of them are either not general enough ([3], [6], [7]) or too complex ([1], [2], [4], [5]). The goal of this thesis is to pay special attention to simplicity, using experience from [8], to keep the code as simple as possible, yet fast enough to compare to e.g. [1]. The code will be in C (instead of C++), which has the advantage of being very easy to wrap in Python, and also C actively encourages one to use simple and direct construct (as opposed to C++) [10]. |
References |
[1] http:/ /www.ginac.de/
[2] http:/ /www-fourier.ujf-grenoble.fr/~parisse/giac.html [3] http:/ /mathomatic.orgserve.de/math/ [4] http:/ /eigenmath.sourceforge.net/ [5] http:/ /yacas.sourceforge.net/homepage.html [6] http:/ /pari.math.u-bordeaux.fr/ [7] http:/ /qalculate.sourceforge.net/ [8] http:/ /code.google.com/p/sympy/ [9] Kiat Shi Tan, Willi -Hans Steeb, Yorick Hardy:Symbolic C++: An Introduction to Computer Algebra Using Object-Oriented Programming, Springer 2000, ISBN 1852332603 [10] http:/ /en.wikiquote.org/wiki/Linus_Torvalds [11] http:/ /www.hpl.hp.com/personal/Hans_Boehm/gc/ |