This page lists various software projects I contribute to regularly. Besides these, you can find me on bitbucket and github.

lmonade

lmonade is a distribution of mathematical software that can be installed by a user without administrative rights. Building on the Gentoo Linux Distribution and the Gentoo Prefix Project, lmonade creates an environment for scientific software development. The main goal is to foster code sharing and openness in scientific software development. We try to achive these by

I started lmonade to help with my work on the DFG priority program on Algebra, Geometry and Number Theory.

Sage

Sage is an open source computer mathematics system which brings many specialized packages together to create an alternative to Magma, Maple, Mathematica and Matlab. It uses Python as the glue and frontend language. Performance critical parts of the Sage library and most wrappers to external libraries is written in Cython.

I have been involved with Sage since 2007, when I started by exposing PolyBoRi types through Sage’s Python interface. Since then, I contributed wrappers for FLINT, LinBox, and Singular, as well as native code and random bug fixes (and bugs) for linear algebra, symbolics, commutative/noncommutive rings, etc.

During this time I had the chance to attend numerous Sage Days workshops (6, dev1, 10, 12, 16, 19, 20.5, 23.5, JMMS2011, 31, 35) and organize a few ( *-combinat, 24, 34). I also served as an organization co-administrator and mentor for Google Summer of Code 2012.

You can find me on the issue tracker and ask.sagemath.org.

pynac

Pynac is a C++ library for manipulating symbolic expressions where arbitrary Python objects can be used as numeric coefficients. Pynac was forked from GiNaC in an effort to integrate it into Sage where high level algorithms can be implemented in Python.

I am the main developer/maintainer of Pynac. In 2012, I mentored Titus Nicolae for the Google Summer of Code, while he worked on generalizing the numerics class in Pynac and making it more efficient.

pypolymake

pypolymake provides Sage/Python wrappers to polymake, a mathematics software package to study the combinatorics and the geometry of convex polytopes and polyhedra.