Easy composition of symbolic computation software using SCSCP: A new Lingua Franca for symbolic computation

  • Authors:
  • S. Linton;K. Hammond;A. Konovalov;C. Brown;P. W. Trinder;H. -W. Loidl;P. Horn;D. Roozemond

  • Affiliations:
  • School of Computer Science, University of St Andrews, St Andrews, Fife, KY16 9SX, Scotland, United Kingdom;School of Computer Science, University of St Andrews, St Andrews, Fife, KY16 9SX, Scotland, United Kingdom;School of Computer Science, University of St Andrews, St Andrews, Fife, KY16 9SX, Scotland, United Kingdom;School of Computer Science, University of St Andrews, St Andrews, Fife, KY16 9SX, Scotland, United Kingdom;School of Mathematical and Computer Sciences, Heriot-Watt University, Edinburgh, EH14 4AS, Scotland, United Kingdom;School of Mathematical and Computer Sciences, Heriot-Watt University, Edinburgh, EH14 4AS, Scotland, United Kingdom;Fachbereich Mathematik, Universität Kassel, Heinrich Plett Straβe 40, 34132 Kassel, Germany;School of Mathematics and Statistics, Carslaw F07, University of Sydney NSW 2006, Australia

  • Venue:
  • Journal of Symbolic Computation
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present the results of the first four years of the European research project SCIEnce-Symbolic Computation Infrastructure in Europe (http://www.symbolic-computing.org), which aims to provide key infrastructure for symbolic computation research. A primary outcome of the project is that we have developed a new way of combining computer algebra systems using the Symbolic Computation Software Composability Protocol (SCSCP), in which both protocol messages and data are encoded in the OpenMath format. We describe the SCSCP middleware and APIs, outline implementations for various Computer Algebra Systems (CAS), and show how SCSCP-compliant components may be combined to solve scientific problems that cannot be solved within a single CAS, or may be organised into a system for distributed parallel computations. Additionally, we present several domain-specific parallel skeletons that capture commonly used symbolic computations. To ease use and to maximise inter-operability, these skeletons themselves are provided as SCSCP services and take SCSCP services as arguments.