Home > report > 2012 SgpDec Summer Code Camp

2012 SgpDec Summer Code Camp

Paolo Dini
Attila Egri-Nagy
James D. Mitchell
Chrystopher Nehaniv
Maria Schilstra (on Wednesday)

LOCATION: University of Hertfordshire, Hatfield, England


The meeting started with trying to connect to the big screen. Then we just used a projector.

An hour discussion of possible topics for the workshop.

SGPDEC UPDATE: The package is getting slimmer. Many functions needed for the holonomy decomposition are now included in Citrus. The visualisation functions got generalized and went into the separate Viz package. Then most recently some basic data structures were cut out of SgpDec and were moved to the (possibly transient package) Dust. The ultimate goal is that SgpDec will contain only the hierarchical coordinatization code and nothing else.

CITRUS UPDATE: James gave a 4hours version of the  20mins long Citrus intro talk. The performance of Citrus is impressive. What is more important, a new more general framework is emerging: generalizing from transformation semigroups to semigroup actions. This idea naturally comes from the software development process, but it looks like that this is going to be the next huge milestone in computational semigroup theory. This paradigm is bound to appear in SgpDec as well, possibly yielding new decomposition algorithms.

SGPDEC INSTALL SESSION: this was more difficult than expected. The script for compiling the packages was misbehaving. However, after an hour Chrystopher got it right and had the latest SgpDec running. James also, but hey, he is a GAP developer.



PETRI NET SESSION: Guest talk by Maria Schilstra about biological modelling with Petri nets. Paolo’s Oregonator model. Chrystopher’s explanation how to turn a Petri net into an automaton. James now knows the origin of all those crazy semigroups we sent him to test Citrus’ performance.
In the afternoon we split up. Paolo and Maria worked on a Petri net simulator and we started to put together a TODO list for SgpDec.

CODING SESSION: Of course the first priority is to make SgpDec GAP 4.5 compliant. This looks like a simple administrative step but it turned out to be not so simple. To get James into the coding game we pushed the repository to bitbucket.  This was followed by a high-speed commit-fix-push-pull-break-fix-again session. No added new functionality but code simplification and reorganizing yields performance improvements as well.


TRANSFORMATION SEMIGROUP ENUMERATION: We started with the problem of enumerating the transformation semigroups. First a multiplication table reduction algorithm, then by using the results in the paper “Maximal Subsemigroups of Finite Semigroups”, by R. Graham, N. Graham and J. Rhodes) Jour. Comb. Th. 4 (1968), 203-209. After an overly optimistic start for recalculating the number for T3 we all agreed (again) that computers are indeed useful in semigroup theory.
CODING SESSION: Continuing the commit-push parade, used-only-once functions were inlined, redundant code removed. The most funny such redundant code was a doubly indexed array, i.e. finding an element, then finding its position, and finally returning the element with that index. Not in one line though, but still this is something to laugh at. Parallel commits yielded some conflicts but that is no problem with proper version control. Midnight saw a working version of SgpDec tagged as 0.6.41.



The formal program of the Code Camp finished (James and Paolo returned home). However, the work continues with updating the documentation, doing more code revision (looking for skeletons – this was an insider joke 😉 and improving the display of the holonomy decomposition. This latter issue was discussed with Chrystopher today.

Categories: report Tags: ,

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: