Portfolio

Giac and KhiCAS

Giac and KhiCAS

Optimizing matrix math of the GIAC algebraic mathematics system, as well as participating in a team effort to port Giac to the NumWorks calculator

The Giac algebraic system is a powerful open-source computer algebra system (CAS) that is used in a variety of applications, including GeoGebra, Maxima, and wxMaxima. Giac provides a wide range of functionality for symbolic and numerical computation, including support for exact arithmetic, multivariate polynomials, Gröbner bases, and differential equations.

Giac is used to power GeoGebra, a popular dynamic mathematics software program that is used by millions of students and educators around the world. GeoGebra allows users to create and manipulate interactive mathematical objects, such as graphs, equations, and geometric figures. Giac provides the underlying algebraic engine that powers GeoGebra's symbolic computation capabilities.

In addition to its use in GeoGebra, Giac is also used in a variety of other applications, such as Maxima, wxMaxima, and SageMath. Maxima is a powerful CAS that is used for a wide range of mathematical tasks, such as solving equations, finding derivatives, and simplifying expressions. wxMaxima is a graphical user interface for Maxima that provides a user-friendly way to interact with the system. SageMath is a free open-source mathematics software system that combines the power of many different open-source math libraries into a single, easy-to-use package.

I have contributed to optimizing Giac's matrix system and porting it over to the NumWorks calculator under KhiCas. The NumWorks calculator is a popular graphing calculator that is used by students in France and other countries. KhiCas is a CAS that is being developed for the NumWorks calculator. My contributions to Giac have helped to improve the performance of the matrix system and make it more portable to other platforms.

The porting of Giac to the NumWorks calculator is a challenging project that is being undertaken by a worldwide team of developers. The NumWorks calculator has a limited amount of memory and processing power, which means that Giac must be carefully optimized in order to run on the device. Additionally, the NumWorks calculator has a unique hardware architecture that requires Giac to be adapted to the specific features of the device.

The worldwide effort to port Giac to the NumWorks calculator is a testament to the power of open-source software. By working together, developers from all over the world are able to create powerful software that is доступен to everyone.