OpenMath OpenMath functionality in GAP Version 11.4.2 28 February 2017 Marco Costantini Alexander Konovalov Max Nicosia Andrew Solomon Alexander Konovalov Email: mailto:alexk at mcs dot st-andrews dot ac dot uk Homepage: http://www.cs.st-andrews.ac.uk/~alexk/ Address: School of Computer Science University of St Andrews Jack Cole Building, North Haugh, St Andrews, Fife, KY16 9SX, Scotland Max Nicosia Email: mailto:lmn27 at cam dot ac dot uk Homepage: http://www-edc.eng.cam.ac.uk/~lmn27/ Address: University of Cambridge Department of Engineering Engineering Design Centre Intelligent Interactive Systems Group Trumpington Street, Cambridge, CB2 1PZ, UK Andrew Solomon Email: mailto:andrew at illywhacker dot net Homepage: http://www.illywhacker.net/ Address: Faculty of IT University of Technology, Sydney Broadway, NSW 2007 Australia ------------------------------------------------------- Abstract The OpenMath package provides an OpenMath phrasebook for GAP: it allows GAP users to import and export mathematical objects encoded in OpenMath, for the purpose of exchanging them with other OpenMath-enabled applications. ------------------------------------------------------- Copyright The OpenMath package is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License (http://www.fsf.org/licenses/gpl.html) as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. ------------------------------------------------------- Acknowledgements On various stages the development of the OpenMath package was supported by:  European Commission through ESPRIT grant EP 24969 Accessing and Using Mathematical Information Electronically (see http://web.archive.org/web/20040416013945/http://www.nag.co.uk/projects/OpenMath.html).  EU FP6 Programme project 026133 SCIEnce - Symbolic Computation Infrastructure for Europe (see http://www.symbolic-computing.org/).  OpenDreamKit Horizon 2020 European Research Infrastructures project #676541 (see http://opendreamkit.org/). We acknowledge with gratitude this support. ------------------------------------------------------- Contents (openmath) 1 Introduction and installation 1.1 Brief description of the package 1.2 Installation of the package 2 OpenMath functionality in GAP 2.1 Viewing OpenMath representation of an object 2.1-1 OMPrint 2.1-2 OMString 2.2 Reading OpenMath code from streams and strings 2.2-1 OMGetObject 2.2-2 EvalOMString 2.3 Writing OpenMath code to streams 2.3-1 IsOpenMathWriter 2.3-2 OpenMathXMLWriter 2.3-3 OpenMathBinaryWriter 2.3-4 OMPutObject 2.3-5 OMPlainString 2.4 Utilities 2.4-1 OMTestXML 2.4-2 OMTestBinary 3 Extending the OpenMath package 3.1 Exploring the range of supported symbols 3.2 Adding support for private content dictionaries and symbols