Skip to main content

Francy - An Interactive Discrete Mathematics Framework for GAP

  • Conference paper
  • First Online:
Mathematical Software – ICMS 2018 (ICMS 2018)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 10931))

Included in the following conference series:

  • 1112 Accesses

Abstract

Data visualization and interaction with large data sets is known to be essential and critical in many businesses today, and the same applies to research and teaching, in this case, when exploring large and complex mathematical objects. GAP is a computer algebra system for computational discrete algebra with an emphasis on computational group theory. The existing XGAP package for GAP works exclusively on the X Window System. It lacks abstraction between its mathematical and graphical cores, making it difficult to extend, maintain, or port. In this paper, we present Francy, a graphical semantics package for GAP. Francy is responsible for creating a representational structure that can be rendered using many GUI frameworks independent from any particular programming language or operating system. Building on this, we use state of the art web technologies that take advantage of an improved REPL environment, which is currently under development for GAP. The integration of this project with Jupyter provides a rich graphical environment full of features enhancing the usability and accessibility of GAP.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Berg, J.: Visual Leap: A Step-by-Step Guide to Visual Learning for Teachers and Students. Bibliomotion Incorporated, San Francsico (2015)

    Google Scholar 

  2. The GAP Group: Gap - groups, algorithms, and programming, version 4.9.1 (2018). https://www.gap-system.org/

  3. Neunhöffer, M., Celler, F.: XGAP documentation, what is XGAP? (2018). https://www.gap-system.org/Manuals/pkg/xgap-4.26/htm/CHAP002.htm

  4. Neubüser, J., Felsch, V., Hippe, L.: ITC documentation, what is ITC? (2018). https://www.gap-system.org/Manuals/pkg/itc/htm/CHAP001.htm

  5. Woodroofe, R.: Introducing gap.app (2018). https://cocoagap.sourceforge.io/

  6. Jupyter Community: Project jupyter (2018). http://jupyter.org/

  7. OpenDreamKit Community: Project opendreamkit (2018). http://opendreamkit.org/

  8. Machado Martins, M.: Francy github page (2018). https://github.com/mcmartins/francy/

  9. De Beule, J., Jonušas, J., Mitchell, J.D., Torpey, M., Wilson, W.A.: Digraphs - gap package, version 0.12.1, April 2018. https://doi.org/10.5281/zenodo.596465

  10. Tucker, A.B.: Computer Science Handbook, 2nd edn. CRC Press, New York (2004)

    Google Scholar 

  11. Crockford, D.: The Javascript object notation (JSON) data interchange format (2018). https://tools.ietf.org/html/rfc8259

  12. Machado Martins, M.: Francy schema github page (2018). https://github.com/mcmartins/francy/blob/master/gap/schema/francy.json

  13. JSON Schema Community: JSON schema (2018). http://json-schema.org/

  14. Mozilla and individual contributors: Mime types (2018). https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types

  15. Jefferson, C.: JSON - reading and writing JSON (2018). https://www.gap-system.org/Manuals/pkg/json-1.2.0/doc/chap0.html

  16. Jupyter Community: Jupyter documentation, jupyter kernel gateway (2018). http://jupyter-kernel-gateway.readthedocs.io/en/latest/

  17. Pfeiffer, M.: Native Jupyter kernel for gap github page (2018). https://github.com/gap-packages/JupyterKernel

  18. Bostock, M.: Data-driven documents, d3 (2018). https://d3js.org/

  19. Mozilla and individual contributors: Websockets (2018). https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API

  20. Jeffrey, C.: tty.js github page (2018). https://github.com/chjj/tty.js

  21. García-Sánchez, P.A.: Francy monoids github page (2018). https://github.com/pedritomelenas/francy-monoids

  22. Machado Martins, M.: Subgroup lattice github page (2018). https://github.com/mcmartins/subgroup-lattice

  23. Machado Martins, M.: Interactive todd-coxeter github page (2018). https://github.com/mcmartins/interactive-todd-coxeter

  24. Mozilla and individual contributors: Web workers API (2018). https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API

  25. Electron Community: Build cross platform desktop apps with Javascript, HTML, and CSS (2018). https://electronjs.org/

Download references

Acknowledgements

We are grateful to James D. Mitchell, Pedro A. García-Sánchez, João Araújo and Francesca Fusco for their suggestions that led to a much improved version of the paper.

We are also very grateful to the anonymous referees for their careful reviews and helpful suggestions.

The first author is grateful to CoDiMa (CCP in the area of Computational Discrete Mathematics - EPSRC EP/M022641/1, 01/03/2015-29/02/2020) for supporting the attendance at the event Computational Mathematics with Jupyter 2017 in Edinburgh, in which some of this research was done. The second author has received funding from the European Union project Open Digital Research Environment Toolkit for the Advancement of Mathematics (EC Horizon 2020 project 676541, 01/09/2015-31/08/2019).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Manuel Machado Martins .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer International Publishing AG, part of Springer Nature

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Machado Martins, M., Pfeiffer, M. (2018). Francy - An Interactive Discrete Mathematics Framework for GAP. In: Davenport, J., Kauers, M., Labahn, G., Urban, J. (eds) Mathematical Software – ICMS 2018. ICMS 2018. Lecture Notes in Computer Science(), vol 10931. Springer, Cham. https://doi.org/10.1007/978-3-319-96418-8_42

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-96418-8_42

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-96417-1

  • Online ISBN: 978-3-319-96418-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics