Roman Pearce

I am a research associate and member of the Computer Algebra Group at the CECM.

The work here is all joint work with Michael Monagan at Simon Fraser University.

We are supported by NSERC and Maplesoft.

Groebner Bases and Polynomial Systems

mgb is a C library for computing Groebner bases modulo a prime.

A Maple wrapper is provided to compute over the rationals.

Sparse Distributed Multivariate Polynomials

sdmp is a C library for sparse multivariate polynomial arithmetic.

Our polynomial data structure is now used in Maple by default.


An Algorithm For Splitting Polynomial Systems Based on F4 (in preparation) benchmark systems.

A Compact Parallel Implementation of F4 presented at PASCO 2015

The design of Maple's sum-of-products and POLY data structures for representing mathematical objects in the CCA.

POLY: a new polynomial data structure for Maple 17 demonstrated at ISSAC 2012

Sparse Polynomial Powering Using Heaps presented at CASC 2012

Parallel Sparse Polynomial Division Using Heaps presented at PASCO 2010

Parallel Sparse Polynomial Multiplication Using Heaps presented at ISSAC 2009

Sparse Polynomial Division Using a Heap in the Journal of Symbolic Computation.

Polynomial Division using Dynamic Arrays, Heaps, and Packed Exponent Vectors presented at CASC 2007.

Rational Expression Simplification Modulo a Polynomial Ideal presented at ISSAC 2006.

Features in Maple

Maple 2016: Groebner bases, modp1 speedup

Maple 18: poly improvements, sparse powering

Maple 17: poly data structure and algorithms

Maple 16: parallel division, heap efficiency gains

Maple 15: powering algorithms, Kronecker substitution, Zp multiprecision

Maple 14: sdmp Z/Q

Maple 13: sdmp Zp, dense linear solver

Maple 12: sparse linear solver over Q

Maple 11: Groebner package, simplify fractions with side relations

Maple 10: PolynomialIdeals package

You can also find me on MaplePrimes.

Feel free to drop me a line. My work address is rpearcea at cecm dot sfu dot ca.