\Chapter{Preface} \begingroup \def\"#1{\accent127 #1} When working on our master's and PhD-projects in nearring theory we hoped that we would gain more insight into the problems we worked on if we had significant examples at hand. For example, Erhard Aichinger wanted to find $1$-affine complete groups; these are groups on which every unary compatible, i.e., congruence preserving, function can be interpolated by a polynomial function. In other words, a group $G$ is $1$-affine complete if the nearring $I(G)$ contains all functions in the nearring $C_0 (G)$ of all zero-preserving compatible functions. After having written a straight-forward program to compute all polynomial functions on a group, which basically relied on computing all terms and checking whether the arising functions were equal, he found that in that way probably only the groups of order less than 10 could be treated, and therefore abandoned his hope to find help in computers for quite a while. At about the same time, Christof N\"obauer was collecting a library of *all* small nearrings; and he decided to implement his library into the group-theory system GAP. Then J\"urgen Ecker started to break rings into their subdirectly irreducible parts using GAP. In May 1995, we realized that the problem of computing the number of polynomial functions on a group was actually an easy task if one used the power of computational group theory. The easy key observation is that it is easy to compute how big the group generated by some group elements is. Representing the functions on $G$ as elements of $G^{|G|}$, it is easy to compute first the generators of the group of polynomial functions and then all polynomial functions as the closure of these generators. This observation, albeit strikingly easy, and of course not even original, made it possible to compute the number of polynomial functions on $S_4$, which is 22 265 110 462 464, in a few seconds. The same strategy also worked for other kinds of distributively generated nearrings, such as $A(G)$ or $E(G)$. At this point, we decided to make a package of our functions and make them available to a wider community. Encouraged by the enthusiasm of Prof.~G\"unter Pilz, and paid by the ``Fonds zur F\"orderung wissenschaftlicher Forschung'', we started to bring our functions into a common form, and to add many functions that we found useful, as e.g.\ the computation of Noetherian Quotients, which works especially fine for polynomial nearrings. We wanted to include the applications of nearring theory to design-theory, because especially in this field we thought that it could only be through the examination of examples that the contribution of nearrings to this field could be investigated. This part was then mainly carried forward by Roland Eggetsberger and Peter Mayr. In the beginning of 1997, with the conference at Stellenbosch coming near, we decided to make our programs available to nearringers six months later. Despite of the fact that SONATA does not contain many new sophisticated algorithms, and therefore hardly represents a big deal in computational nearring theory, it uses a lot of well-established sophisticated algorithms in group theory. We think that our real contribution is to take advantage of these algorithms for computing with nearrings. Nevertheless, computational nearring theory could be interesting: A typical problem arising in the computation of nearrings would be the following: Given a function on a group, how big is the nearring generated by it? And what if we take more than one function? And how can a given function in the nearring be represented by the generators? We recall that Sim's stabilizer chains give solutions to similar problems in the theory of permutation groups. We think that even an answer for one function, and on special groups, would be delightful. Examples of nearrings are nice; but it would be even nicer to have a lot of interesting examples in a small booklet. At this point, Franz Binder joined us, and started to work on a nearring table containing all nearrings up to a certain order and giving meaningful information about each of them, such as for example the ideal lattice with commutators in the sense of universal algebra. It was when he started to work on this complete library that the people at the Maths Department, whose printers we constantly fed with new nearring information, started to give us rather strange looks, which we could not explain to ourselves but as signs of starting admiration for the beauty of nearrings. When a beta version 4 of GAP came out, we found that SONATA should be written in this new version of GAP4. J\"urgen Ecker's effort to translate all existing GAP3-code into GAP4 was rewarded by the observation that many things worked much better in GAP4 than they did before. Just before leaving to Stellenbosch, he invented the name SONATA for our programs that sometimes proceed *andante*, but at other times really rather *presto*. At the nearring conference in Stellenbosch in July 1997, we showed some possibilities of our system to many people doing research in nearring theory. Their interest in our system showed us that our hope that nearringers would actually use SONATA was by no means unfounded. Finally, with October 1st, 1997, we give away the first version of SONATA. We are eager to hear YOUR feedback in order to make SONATA nicer in all respects. We, the SONATA team, want to say THANK YOU to all that have helped us in some way to realize this project: \begingroup \smallskip \parindent4pc \parskip 0pt \item{-} to Tim Boykett for helping us with his expertise in computers and how they could be used in algebra; \item{-} to Marcel Widi, who contributed some functions on semigroups which, however, somehow do not lie in the scope of the SONATA project. \item{-} to Christof N\"obauer, who not only filled our hard disks with an evergrowing number of nearrings, but also worked a lot to keep our computers alive. \item{-} to the staff at the algebra group at our department, and in particular to all our visitors, who have put lots of ideas into our heads: this includes Peter Fuchs, Gerhard Betsch, Jim Clay, Carl Maxson, Gary Birkenmeier. \item{-} to the Forschungsfonds for financing this project. \endgroup Needless to say, this project would never been carried out without the encouragement and suggestions of Prof.~G\"unter Pilz. So, what you have now is a system that conatains a library of all small nearrings and many functions to construct and analyze a lot of interesting big nearrings. Have fun ! Linz, 1.10.97, the SONATA Team\* \vfill\hrule \noindent\llap{\*\enspace}The SONATA Team consists of \smallskip \parindent4pc \parskip 0pt \item{} Erhard Aichinger \item{} Franz Binder \item{} J\accent127urgen Ecker \item{} Roland Eggetsberger \item{} Peter Mayr \item{} Christof N\accent127obauer \endgroup %%% Local Variables: %%% mode: latex %%% TeX-master: t %%% End: