## Teaching Material

See also the page on Learning GAP, which refers to material that may help you if you want to learn GAP on your own or to teach it.

GAP has been used in lecture courses of various levels, both for providing examples and for creating teaching material, in particular exercises. In 2012, we conducted a survey on this topic, and its results are published on the LMS De Morgan Forum. We are currently conducting a new survey about the use of mathematical software in education at https://bit.ly/mse-survey.

However, it is not always the case that such teaching materials are available to the public. We therefore ask to inform The GAP Group if you have such material and are willing to share it with others.

At present we can point to the following material.

- Teaching material in Spanish by P. A. García Sánchez: - First steps - Algebra and discrete structures (Computer Science, 2009-2010) - Discrete mathematics (Computer Science, 2006-2009) - Basic algebra (Mathematics, 2006-2010) - GAP section of the course “Mathematical Software” (Master in Mathematics, 2017-2020)
- GAP teaching materials and software packages written by Peter Webb, University of Minnesota, covering Permutation Groups, Matrices, Finite Fields and Matrix Groups, Groups given by Presentations, Stabilizer chains, Coset Enumeration (with updates in 2020).
- The book “An Invitation to Computational Homotopy” by Graham Ellis (Oxford University Press, 2019) is using the author’s Homological Algebra Programming (HAP) package, redistributed with GAP.
- The book “Computer Algebra and Materials Physics” by Akihito Kikuchi (Springer, 2018) uses GAP to explain how to use computer algebra for applications in solid-state simulation.
- “Computer Algebra” - teaching material in Russian by D. V. Gritsuk and A. A. Trofimuk (Brest State A. S. Pushkin University, Belarus, 2018).
- M. D’Anna, V. Micale and P. A. García Sánchez gave the course “Semigruppi numerici e applicazioni” at the Scuola Superiore di Catania, during the academic year 2016-17, where GAP was used. They gave an introduction to NumericalSgps and GUAVA packages. This repository contains a live tutorial of NumericalSgps using Thebe.
- The book “Numerical Semigroups and Applications” by Abdallah Assi and Pedro A. García Sánchez (Springer, 2016) contains many examples and tutorials with the NumericalsSps GAP package.
- Teaching material in Spanish by Leandro Vendramin:
- A lab manual Abstract Algebra with GAP by Julianne Rainbolt and Joseph A. Gallian (latest version 2013) containing a collection of exercises that use GAP and are appropriate for a first course in abstract algebra. This manual was originally developed to be used with Gallian’s book

*Contemporary Abstract Algebra*. - There is an introduction to using GAP with material appropriate for an undergraduate abstract algebra course: Abstract Algebra in GAP (2011) by Alexander Hulpke, with contributions by Kenneth Monks and Ellen Ziliak.
- The book “Representations of Groups: A Computational Approach” by Klaus Lux and Herbert Pahlings (Cambridge University Press, 2010) provides a number of computational exercises and examples using GAP.
- The book “Numerical Semigroups” by J. C. Rosales and P. A. García Sánchez (Springer, 2009).
- There are Notes for a graduate course in Computational Group Theory (2008-2010) by Alexander Hulpke.
- Lectures and Workshops on Groups, Applications, and GAP by

Alice Niemeyer, held in September 2004 at the University of Malaya at Kuala Lumpur. The course describes applications of GAP to counting and randomised algorithms. - An online workshop Exploring Abstract Algebra Using Computer Software was held by Russell Blyth and Julianne Rainbolt in June 2004 under the auspices of the Mathematical Association of America’s Professional Enhancement Program.
- A course Mathematics 3530 - Abstract Algebra, given in Fall 2003 at Eastern Illinios University by Duane Broline.
- An online workshop Abstract Algebra with GAP was held by Russell Blyth and Julianne Rainbolt in July 2003 under the auspices of the Mathematical Association of America’s Professional Enhancement Program.
- Teaching material in Japanese: The home page of Toshiaki Shoji, in its section “Refresh Corner” provides links to PDF as well as PostScript versions of two Japanese texts “How to play GAP” (dating from Oct. 2002 and Feb 2005, resp.) that contain parts of the GAP tutorial with additional examples.
- Teaching material in French: Calculs en théorie des groupes et introduction au langage GAP, Journées mathématiques X-UPS 2000, “groupes finis”, 71–94, Éditions de l’école Polytechnique. dvi. by Jean Michel.
- Information on usage of CommSemi and other semigroups functionality in GAP can be found in “Tutorial - Computing with semigroups in GAP” by Isabel M. Araújo and Andrew Solomon, which is available here.
- The package ITC can be used to demonstrate the working of some coset table methods. Examples are given in the ITC manual.

Other examples of use of GAP in teaching include:

- Material, in Portugese, for a Mini-Course about GAP, by Ayrton Anjos Teixeira from 2022
- GAP exercises for the Theory of permutation groups course by Madeleine Whybrow (University of Primorska, Slovenia) since 2019.
- Some applications of the course “Representations of finite groups” by Fernando Fantino (Universidad Nacional de Córdoba, Argentina) since 2019.
- Two courses in Computational group theory (MTH4141 and MTH5141) by Heiko Dietrich (Monash University, Australia)
- In a pedagogical research project in 2018, C. Alonso González, R. Guerrero Francés, M. A. Navarro Pérez, V. Ortiz Sotomayor and X. Soler Escrivà, (Universitat d’Alacant and Universitat Politècnica de València, Spain) studied the use of GAP in courses on Group Theory and Coding Theory. The results of the study where published here (see also an extended version included into the whole volume).
- Computeralgebra Praktikum I & II (Mathematical programming exercises) and exercises for the courses Algebra, Algorithmic Algebra, and Commutative Algebra by Mohamed Barakat (University of Siegen, Germany) since 2017.
- Use of GAP in the “Computational Techniques in Mathematics” course by Abdulhakeem Olayiwola (Sule Lamido University Kafin Hausa, Nigeria) since 2016.
- Use of GAP by Miguel Pizaña (Universidad Autónoma Metropolitana, Mexico) in the course “Análisis y diseño de algoritmos” (Analysis and Design of Algorithms), student research projects and doctoral studies since 2014.
- Uygulamalı Cebir (Applied Algebra), Sembolik Hesaplama (Symbolic Computation) and GAP Programlama (GAP Programming) by Alper Odabaş (Osmangazi University, Turkey), starting from 2013.
- Grupos y Anillos (Groups and Rings), Códigos Correctores y Criptografía (Error Correcting Codes and Cryptography), Teoría de Números (Number Theory) by Ángel del Río (Universidad de Murcia, Spain), starting circa 2010.
- Number Theory and Applications; Semigroups, Automata and Languages (the package Automata); Algebraic Coding Theory (the package GUAVA); and other courses in algebra by Manuel Delgado (University of Porto, Portugal), starting circa 2010.