Developing a computer algebra system in Rust

Developing a computer algebra system in Rust

Speaker: Ben Ruijl

Description

In this talk I will introduce Symbolica, a novel, blazing-fast computer algebra system (CAS, e.g. sympy, Mathematica) written in Rust, which is currently in use by several universities. I will discuss what computer algebra is, why it is challenging and what makes Rust a suitable language for developing a CAS. I will show how traits can be used to mimic mathematical structures, and will discuss design details to achieve high performance (a condensed memory representation of expressions and custom memory pools). Finally, I will highlight the importance of adding specialization to stable Rust for Symbolica.

Track

Technology & Community

Level

Intermediate