Für den InformatiCup 2006 gab es drei Aufgaben zur Auswahl.

Schnappschussalgorithmus

Jeder Prozess in einem verteilten System besitzt seinen eigenen Zustand. Die Nachrichten, die gerade zwischen zwei Prozessen übertragen werden, bilden einen Kanalzustand der beiden Prozesse. Die Menge aller Prozesszustände und Kanalzustände bilden den globalen Systemzustand des verteilten Systems. Es gibt einige Algorithmen, die einen globalen Systemzustand bzw. einen Schnappschuss erfassen können. In dieser Aufgabe soll ein Schnappschussalgorithmus und ein verteiltes System, das diesen Schnappschussalgorithmus verwendet, implementiert werden.

XML Typechecker

In recent years, the Extensible Markup Language (XML) has been widely adopted as a format to exchange data. In order to restrict the contents of XML instance documents to particular data types and content models, XML Schema Definition (XSD) provides a number of fundamental- and constraining facets. Based on predefined built-in data types and lexical- and value space restrictions it is possible to derive application specific atomic XML data types. Your plan is to implement an interpreter and a typechecker for an extended version of the simply typed lambda-calculus with subtyping, which should include support for constrained atomic types as in XML Schema Definition.

Powers of Ten

Der Kurzfilm “Powers of Ten” aus dem Jahr 1977 zeigt Ansichten des Makro- und Mikrokosmos in unterschiedlichen Größenordnungen. Ausgehend von einer Picknickszene wird entsprechend eines logarithmischen Maßstabs nach außen gezoomt, so daß in regelmäßigen Abständen der jeweils zehnfache Umfang der vorangehenden Szene zu sehen ist, bis man schließlich beim gesamten Universum anlangt. Anschließend wird in ähnlicher Weise bis zur Größenordnung der Atomkerne nach innen gezoomt. In dieser Aufgabe soll eine interaktive Simulation dieses Ansatzes entwickelt werden.