
Computing with finite solvable groups has a long history in computational group theory. The principal idea of algorithms in this area is to use the structure of the group; that is, algorithms are based on so-called polycyclic sequences. Special polycyclic sequences are a significant refinement of this fundamental data. We survey their main features and exhibit applications in computing Sylow systems, maximal subgroups, minimal generating sets and numbers of generating sets and tuples. Examples of applications based on the GAP system demonstrate their practicality.
Mathematical software has particular needs that are not all covered by the existing literature on software engineering or algorithm design. This paper looks at some of these aspects, in the concrete context of the computer algebra system GAP. It also studies the potential impact AI systems could have on the development process for mathematical software.