Following the 2nd CoDiMa training school, I have published the Software Carpentry lesson on GAP via Zenodo: see 10.5281/zenodo.167362. The lesson is based on the problem of determining an average order of an element of a finite group, and finding examples of groups for which the average order of their elements is an integer. First I have heard about this problem when Steve Linton used it in a talk in order to quickly demonstrate some GAP features to a general scientific audience. I have tried to expand on it in my talk in Newcastle in May 2015 (see the blog post here), and decided to proceed with it.
Indeed, the problem of determining an average order of the element of the group is simple enough to not to distract learners too much from the intended learning outcomes of the lesson. An undergraduate algebra course is sufficient for its understanding. Moreover, those not familiar with the group theory still should be able to follow the lesson just by grasping the idea that there is a mathematical structure called group, and we need to find an average value of a certain numerical parameter associated with each element of it. On the other hand, those with sufficient theoretical background will hopefully enjoy seeing how the initial naive implementation is being refined several times during the lesson, and how theoretical insights are giving much more significant advances than minor code optimisations or just getting more cores.
The lesson starts with formulating the problem of finding examples of groups such that the average order of their element is an integer. It first explains how to work with the GAP command prompt, demonstrates some basic language constructions and explains how to find necessary information in the GAP help system. At this point using the command line we establish a rough prototype of the code to compute an average order of a group, and tried several examples, none of them yielding an integer. (more…)
I am currently involved in the preparation of the workshop “Computational Mathematics with Jupyter”. It is organised jointly by the CoDiMa CCP and Horizon 2020 OpenDreamKit projects, and will take place at the International Centre for Mathematical Sciences in Edinburgh on 16-20 January 2017. Please see the workshop website here for further details, and come if you’re interested in contributing to Jupyter or using it in research and/or teaching!
A month ago I organised the Second CoDiMa Training School in Computational Discrete Mathematics which we run at the International Centre for Mathematical Sciences in Edinburgh on October 17th-21st, 2016. The school webpage contains links to the presentations and supplementary materials for all school’s programme. You can now find all #codima2016 tweets on Storify.