Introduction

This part of the Handbook comprises seven chapters on aggregate objects in Magma as well as a chapter on maps.

Sets, sequences, tuples, and lists are the four main types of aggregates, and each has its own specific purpose. Sets are used to collect objects that are elements of some common structure, and the most important operation is to test element membership. Sequences also contain objects of a common structure, but here the emphasis is on the ordering of the objects, and the most important operation is that of accessing (or modifying) elements at given positions. Sets will contain at most one copy of any element, whereas sequences may contain arbitrarily many copies of the same object.

Enumerated sets and sequences are of arbitrary but finite length and will store all elements explicitly (with the exception of arithmetic progressions), while formal sets and sequences may be infinite, and use a Boolean function to test element membership. Indexed sets are a hybrid form of sets allowing indexing like sequences.

Elements of Cartesian products of structures in Magma will be called tuples; they are of fixed length, and each coefficient must be in the corresponding structure of the defining Cartesian product. Lists are arbitrary finite ordered collections of objects of any type, and are mainly provided to the user to store assorted data to which access is not critical.

V2.28, 13 July 2023