Wurzeln einer Matrix - Fachgruppe Computeralgebra
Wurzeln einer Matrix - Fachgruppe Computeralgebra
Wurzeln einer Matrix - Fachgruppe Computeralgebra
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Werbeseite Springer
<strong>Computeralgebra</strong>-Rundbrief<br />
Nr. 48 März 2011<br />
Inhaltsverzeichnis<br />
Inhalt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3<br />
Impressum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4<br />
Mitteilungen der Sprecher . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5<br />
Bericht des scheidenden Vorsitzenden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7<br />
Tagungen der <strong>Fachgruppe</strong> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9<br />
Themen und Anwendungen der <strong>Computeralgebra</strong> . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10<br />
Code-Generierung für die numerische Auswertung von mathematischen Ausdrücken mit haggies<br />
(Thomas Reiter) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10<br />
Verifikation digitaler Systeme mit POLYBORI – Ein Fallbeispiel<br />
(Michael Brickenstein, Alexander Dreyer) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13<br />
<strong>Computeralgebra</strong> in der Schule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17<br />
<strong>Wurzeln</strong> <strong>einer</strong> <strong>Matrix</strong> (Jörg Meyer) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17<br />
<strong>Computeralgebra</strong> in der Lehre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20<br />
Computereinsatz in der Veranstaltung Didaktik der Analytischen Geometrie und Linearen Algebra<br />
(Hans-Wolfgang Henn, Frauke Link) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20<br />
Publikationen über <strong>Computeralgebra</strong> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23<br />
Besprechungen zu Büchern der <strong>Computeralgebra</strong> . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23<br />
Borwein, Devlin: Experimentelle Mathematik: Eine beispielorientierte Einführung (Gehrt Hartjen) . . . . . 23<br />
Promotionen in der <strong>Computeralgebra</strong> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25<br />
Berichte von Konferenzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28<br />
Hinweise auf Konferenzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32<br />
Berufungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36<br />
<strong>Fachgruppe</strong>nleitung <strong>Computeralgebra</strong> 2011-2014 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Impressum<br />
Der <strong>Computeralgebra</strong>-Rundbrief wird herausgegeben von der <strong>Fachgruppe</strong> <strong>Computeralgebra</strong> der GI, DMV und GAMM<br />
(verantwortliche Redakteure: Dr. Michael Cuntz, cuntz@mathematik.uni-kl.de, Dr. Gohar Kyureghyan, gohar.kyureghyan@ovgu.de)<br />
Der <strong>Computeralgebra</strong>-Rundbrief erscheint halbjährlich, Redaktionsschluss 15.02. und 15.09. ISSN 0933-5994. Mitglieder der <strong>Fachgruppe</strong> <strong>Computeralgebra</strong><br />
erhalten je ein Exemplar dieses Rundbriefs im Rahmen ihrer Mitgliedschaft. <strong>Fachgruppe</strong> <strong>Computeralgebra</strong> im Internet:<br />
http://www.fachgruppe-computeralgebra.de.<br />
Konferenzankündigungen, Mitteilungen, einzurichtende Links, Manuskripte und Anzeigenwünsche bitte an die verantwortlichen Redakteure.<br />
Die Geschäftsstellen der drei Trägergesellschaften:<br />
GI (Gesellschaft für<br />
Informatik e.V.)<br />
Wissenschaftszentrum<br />
Ahrstr. 45<br />
53175 Bonn<br />
Telefon 0228-302-145<br />
Telefax 0228-302-167<br />
gs@gi-ev.de<br />
http://www.gi-ev.de<br />
DMV (Deutsche Mathematiker-<br />
Vereinigung e.V.)<br />
Mohrenstraße 39<br />
10117 Berlin<br />
Telefon 030-20377-306<br />
Telefax 030-20377-307<br />
dmv@wias-berlin.de<br />
http://www.dmv.mathematik.de<br />
GAMM (Gesellschaft für Angewandte<br />
Mathematik und Mechanik e.V.)<br />
Technische Universität Dresden<br />
Institut für Statik und Dynamik der<br />
Tragwerke<br />
01062 Dresden<br />
Telefon 0351-463-33448<br />
Telefax 0351-463-37086<br />
GAMM@mailbox.tu-dresden.de<br />
http://www.gamm-ev.de
Mitteilungen der Sprecher<br />
Liebe Mitglieder der <strong>Fachgruppe</strong> <strong>Computeralgebra</strong>,<br />
am 11. Februar 2011 fand die letzte Sitzung der alten <strong>Fachgruppe</strong>nleitung und im Anschluss daran die<br />
konstituierende Sitzung der neuen <strong>Fachgruppe</strong>nleitung in Kassel statt. Der Wahlleiter Prof. Dr. Wolfram<br />
Koepf gab das Ergebnis der Wahl bekannt. Es beteiligten sich 75 Mitglieder an der Wahl und gaben<br />
insgesamt 500 Stimmen ab (maximal 9 pro Wähler), die sich folgendermaßen verteilten:<br />
Prof. Dr. Eva Zerz Aachen 53<br />
Prof. Dr. Florian Heß Oldenburg 50<br />
Prof. Dr. Gunter Malle Kaiserslautern 45<br />
Prof. Dr. Martin Kreuzer Passau 43<br />
Dr. Thomas Hahn München 38<br />
Prof. Dr. Gregor Kemper München 38<br />
Prof. Dr. Anne Frühbis-Krüger Hannover 35<br />
Prof. Dr. Elkedagmar Heinrich Konstanz 34<br />
Prof. Dr. Jürgen Klüners Paderborn 32<br />
Prof. Dr. Reinhard Oldenburg Frankfurt 32<br />
OStR. Jan Hendrik Müller Dortmund 31<br />
Prof. Dr. Hans-Gert Gräbe Leipzig 28<br />
Dr. Hans Schönemann Kaiserslautern 24<br />
Dr. Axel Kohnert Bayreuth 18.<br />
Damit sind die ersten 8 Kandidaten gewählt. Eine Losentscheidung bei Stimmengleichheit von 32 Stimmen<br />
fiel zugunsten von Jürgen Klüners aus. Damit sind gewählt: Zerz, Heß, Malle, Kreuzer, Hahn, Kemper,<br />
Frühbis-Krüger, Heinrich und Klüners.<br />
Als Vertreter der drei Fachgesellschaften wurden benannt:<br />
Prof. Dr. Ernst W. Mayr (München) von der GI<br />
Prof. Dr. Wolfram Koepf (Kassel) von der DMV<br />
Prof. Dr. Klaus Hackl (Bochum) von der GAMM.<br />
Die weiteren Kandidaten stehen in der Reihenfolge der Stimmenverteilung auf der Nachrückliste. Gemäß<br />
unserer Ordnung können bis zu drei weitere Fachexperten benannt werden. Es wurden berufen:<br />
Prof. Dr. Gilbert Greefrath (Köln/Münster) als Fachexperte Lehre und Didaktik<br />
Prof. Dr. Michael Hofmeister (Siemens AG) als Fachexperte Industrie<br />
OStR. Jan Hendrik Müller (Dortmund) als Fachexperte Schule.<br />
Damit ist die neue <strong>Fachgruppe</strong>nleitung für die Amtszeit 2011–2014 komplett. Wir danken den nicht<br />
gewählten Kandidaten für ihre Bereitschaft, sich zur Wahl zu stellen und sich auch weiterhin für die<br />
Belange der <strong>Fachgruppe</strong> <strong>Computeralgebra</strong> einzusetzen. Gleicher Dank gilt dem Wahlleiter, Wolfram<br />
Koepf, und seinem Stellvertreter, Ernst W. Mayr, für die Durchführung der Wahl.<br />
Nach der Entlastung der Sprecher der alten <strong>Fachgruppe</strong>nleitung, Wolfram Koepf und Elkedagmar<br />
Heinrich, konstituierte sich auf unserer Sitzung die neue <strong>Fachgruppe</strong>nleitung. Die Sitzungsleitung wurde<br />
von Herrn Koepf übernommen. Frau Zerz wurde einstimmig (bei <strong>einer</strong> Enthaltung) zur Sprecherin<br />
der <strong>Fachgruppe</strong> gewählt. Ebenfalls einstimmig (bei <strong>einer</strong> Enthaltung) wurde Herr Heß zum Stellvertreter<br />
gewählt. Danach wurden die Zuständigkeiten der einzelnen Mitglieder der <strong>Fachgruppe</strong>nleitung<br />
neu festgelegt, die sowohl die entsprechenden Rubriken des Rundbriefs als auch die Außenbeziehungen<br />
zu Industrie, Schule und Forschung betreffen. Die Kontaktadressen sowie Aufgabenbereiche können Sie<br />
der Übersicht am Ende dieses Heftes entnehmen. Zusätzlich waren diesmal auch die Aufgabenbereiche<br />
” Redakteur Rundbrief“ sowie ” Koordinator Internetauftritt“ neu zu vergeben. Für den Rundbrief<br />
werden zukünftig Dr. Gohar Kyureghyan (Magdeburg) und Dr. Michael Cuntz (Kaiserslautern) gemein-<br />
5
sam die Aufgaben des Redakteurs wahrnehmen. Für die Internetpräsenz der <strong>Fachgruppe</strong> wird weiterhin<br />
Prof. Dr. Hans-Gert Gräbe koordinierend tätig sein.<br />
Aus der <strong>Fachgruppe</strong>nleitung ziehen sich Hans-Wolfgang Henn und Jörg Meyer zurück. Herr Henn<br />
war zwölf Jahre und Herr Meyer drei Jahre in der <strong>Fachgruppe</strong>nleitung aktiv, beide haben im Bereich<br />
Lehre, Didaktik und Schule wichtige Beiträge geleistet. Markus Wessler zieht sich ebenfalls aus der<br />
Mitwirkung in der <strong>Fachgruppe</strong>nleitung zurück. Herr Wessler hat als Redakteur des Rundbriefs ganz<br />
wesentlich zu s<strong>einer</strong> Entwicklung und der heutigen Form beigetragen. An der aktuellen Ausgabe hat er<br />
noch mitgewirkt und dadurch einen reibungslosen Übergang zum neuen Redaktionsteam ermöglicht. Wir<br />
danken Herrn Henn, Herrn Meyer und Herrn Wessler für ihr Engagement und wünschen für die Zukunft<br />
alles Gute.<br />
Unser Dank gilt schließlich aber auch Herrn Koepf und Frau Heinrich, die sich von ihren Ämtern als<br />
Sprecher der <strong>Fachgruppe</strong> zurückziehen. Herr Koepf hatte diese Funktion die vergangenen neun Jahre<br />
inne, Frau Heinrich drei Jahre. Beide haben sich unermüdlich eingesetzt und waren so maßgeblich am<br />
Erfolg und der Sichtbarkeit der <strong>Fachgruppe</strong> <strong>Computeralgebra</strong>, die zu den größten ihrer Art weltweit<br />
zählt, beteiligt. Wir treten damit ein großes Erbe an und sind sehr froh, dass Herr Koepf und Frau<br />
Heinrich durch ihr weiteres Engagement in der <strong>Fachgruppe</strong>nleitung uns noch unterstützend zur Seite<br />
stehen. Herr Koepf wendet sich an Sie mit Reflektionen über seine Zeit als Sprecher im Anschluss an<br />
unsere Mitteilungen.<br />
Wir begrüßen die neuen Leitungsmitglieder Anne Frühbis-Krüger und Jürgen Klüners, die neuen<br />
Fachexperten Gilbert Greefrath und Jan Hendrik Müller sowie die neuen Redakteure Michael Cuntz<br />
und Gohar Kyureghyan sehr herzlich in unserer Mitte und freuen uns auf die Zusammenarbeit in den<br />
kommenden drei Jahren!<br />
Das Jahr 2010 war für die <strong>Computeralgebra</strong> in Deutschland durch den Start des Schwerpunktprogramms<br />
SPP 1489 ” Algorithmische und experimentelle Methoden in Algebra, Geometrie und Zahlentheorie“<br />
ein besonderes Jahr. Vom 21. bis 25. Februar 2011 fand nun die erste Schwerpunkttagung mit<br />
Vorträgen über die im Programm geförderten Projekte in Aachen statt.<br />
Im Jahr 2011 wird die <strong>Fachgruppe</strong> wieder eine Fachtagung zur <strong>Computeralgebra</strong> durchführen. Anders<br />
als die Fachtagungen der vergangenen Jahre soll diese Tagung einen stärkeren Bezug zum Einsatz<br />
von <strong>Computeralgebra</strong> in industriellen Anwendungen haben. Eine Zielsetzung ist es dabei, den Austausch<br />
von Vertretern aus Forschung und Industrie zu befördern und so idealerweise neue Anwendungsmöglichkeiten<br />
oder Forschungsfragen zu eröffnen. Die Tagung ist für den 21. und 22. Juni 2011 in Kaiserslautern<br />
geplant. Neugierig geworden? Weitere Informationen finden Sie demnächst auf den Webseiten der <strong>Fachgruppe</strong>.<br />
Im Rundbrief gibt es ab 2011 eine Rubrik ” Promotionen in der <strong>Computeralgebra</strong>“, in der mit <strong>einer</strong><br />
kurzen Inhaltsangabe über Dissertationen aus dem deutschsprachigen Raum mit <strong>Computeralgebra</strong>-<br />
Bezug berichtet wird. Über die Einsendung von Hinweisen und Informationen zu solchen Promotionen<br />
sind wir stets dankbar.<br />
Wir hoffen, Sie mit dem vorliegenden Heft gut zu informieren.<br />
6<br />
Eva Zerz Florian Heß
Liebe Mitglieder,<br />
Bericht des scheidenden Vorsitzenden<br />
neun Jahre lang durfte ich nun als Sprecher der <strong>Fachgruppe</strong> <strong>Computeralgebra</strong> die Geschicke der <strong>Fachgruppe</strong><br />
maßgeblich mitbestimmen, was mir sehr viel Freude bereitet hat. Dennoch habe ich mich entschieden,<br />
diesmal nicht mehr als Sprecher zu kandidieren. Das Amt des Sprechers ist ein Amt auf Zeit,<br />
und ein regelmäßiger Wechsel an der Spitze gehört dazu. Es ist zudem auch vernünftig, die vielfältigen<br />
Tätigkeiten, die sich inzwischen im Sprecheramt akkumuliert haben, nun wieder auf mehrere Schultern<br />
zu verteilen, und ich bin sehr froh, dass wir mit Eva Zerz als Sprecherin und Florian Heß als Stellvertreter<br />
ein großartiges Team kompetenter und engagierter Kollegen für die Führung der <strong>Fachgruppe</strong> gefunden<br />
haben. Ich wünsche den beiden viel Erfolg!<br />
Als eine Art Rechenschaftsbericht möchte ich einige wichtige Themen der neun Jahre m<strong>einer</strong> Amtszeit<br />
hier in Kürze noch einmal Revue passieren lassen.<br />
• Vor 2002 war ich als Referent für Lehre und Didaktik zuständig für unsere didaktisch orientierte<br />
Tagungsreihe in Thurnau (1998 und 2000) und Kloster Schöntal (2002). Diese Tagungsreihe fand<br />
2004 ihre Fortsetzung in Schönenberg und wurde dann ab 2006 dankenswerterweise von Wolfgang<br />
Henn weitergeführt (Schönenberg 2006, Soest 2008 und 2010). Inzwischen wird die Tagung<br />
gemeinsam mit der AKMUI organisiert, s. S. 35.<br />
• Als neue Aktivität habe ich zu Beginn m<strong>einer</strong> ersten Amtszeit eine Tagung für Nachwuchswissenschaftler<br />
vorgeschlagen, die dann 2003, 2005 und 2009 in Kassel und 2007 in Kaiserslautern<br />
stattfand und sich inzwischen etabliert hat. Auf diesen Tagungen vergeben wir einen Nachwuchspreis,<br />
der mit 500 e auch finanziell ganz ordentlich ausgestattet ist.<br />
• Der Rundbrief war in die Jahre gekommen, so dass wir eine Neugestaltung in<br />
Angriff nahmen, zunächst mit neuem Design (seit Heft 31 von Oktober 2002),<br />
später mit mehr Farbe und Fotos der Autoren, inzwischen wird der Rundbrief<br />
komplett in Farbe gedruckt. Wir haben die Rubriken CA in der Schule“ und<br />
”<br />
” CA in der Lehre“ voneinander getrennt und in beiden Kategorien viele Beiträge<br />
veröffentlicht, und seit dem vorliegenden Heft gibt es die neue Rubrik<br />
” Promotionen in CA“, s. S. 25. Technisch haben wir die Produktion des Rundbriefs<br />
von LATEX auf pdfLATEX umgestellt.<br />
Der erste Rundbrief im neuen Layout<br />
• Seit Ende 2002 hosten wir die Internetseite www.fachgruppe-computeralgebra.de, die<br />
im Laufe der Zeit in mehreren Schritten weiterentwickelt wurde. Unser erster Webmaster Ulrich<br />
Schwardmann richtete die Webseite ein. Ulrich Kortenkamp stellte die Seiten dann teilweise auf<br />
ein Content Management System (CMS) um, und Hans-Gert Gräbe hat nun unseren CMS-Auftritt<br />
weiterentwickelt. Damit sind prinzipiell alle Mitglieder der <strong>Fachgruppe</strong>nleitung Mitentwickler unseres<br />
Webauftritts. Als weiteres Werbemittel haben wir einen Flyer entworfen, der nun wieder<br />
aktualisiert wird.<br />
• Die <strong>Fachgruppe</strong> hatte in den 1990er Jahren unter der Leitung von Johannes Grabmeier und Volker<br />
Weispfenning einen ausführlichen ” Report zur <strong>Computeralgebra</strong>“ zusammengestellt. Dieser Bericht<br />
wurde ins Englische übertragen, aktualisiert und im Jahr 2003 von Johannes Grabmeier, Erich<br />
Kaltofen und Volker Weispfenning als ” Computer Algebra Handbook“ herausgegeben. Ebenfalls<br />
erschienen zwei deutschsprachige Lehrbücher zum Thema <strong>Computeralgebra</strong> von Michael Kaplan<br />
und Wolfram Koepf.<br />
7
• Ganz sicher eines der Highlights für die <strong>Fachgruppe</strong> <strong>Computeralgebra</strong> war<br />
das Jahr der Mathematik 2008. Unser 80-seitiges Schulsonderheft, für das<br />
Martin Kreuzer redaktionell verantwortlich war und das wir an alle deutschen<br />
Gymnasien versandt hatten, wurde sehr gut aufgenommen und ist auch heute<br />
noch aktuell. Restexemplare des Sonderhefts können sehr gerne bei mir bestellt<br />
werden. Außerdem fand 2008 unser bundesweiter Schüler-Wettbewerb<br />
statt. Last but not least war ich zusammen mit Ernst Mayr Herausgeber eines<br />
Sonderhefts des Informatik-Spektrums, der Mitgliederzeitschrift unserer<br />
Trägerorganisation GI, in welches einige Artikel aus dem Schulsonderheft<br />
aufgenommen wurden.<br />
• Ein weiterer Höhepunkt für die <strong>Fachgruppe</strong> war die ISSAC 2010 in München.<br />
Wir mussten uns zwar zweimal bewerben, aber dann wurde es wirklich ernst.<br />
Ernst Mayr als Local Arrangements Chair, Wolfram Koepf als General Chair,<br />
Thomas Hahn als Treasurer und Peter Horn als Publicity Chair waren die<br />
beteiligten <strong>Fachgruppe</strong>nmitglieder, die diese Tagung organisierten. Mit 188<br />
Teilnehmern war die Tagung sehr gut besucht und auch finanziell war sie recht<br />
erfolgreich. Einerseits konnten die Tagungsbeiträge vor allem für Nachwuchswissenschaftler<br />
niedrig gehalten werden, dennoch konnte aufgrund der hohen<br />
Teilnehmerzahl ein Überschuss erzielt werden. Ein großer Dank gebührt daher<br />
vor allem Ernst Mayr für die lokale Organisation.<br />
• So schließt sich der Kreis: Nachdem die <strong>Fachgruppe</strong> vor allem aufgrund der Aufwendungen im<br />
Jahr der Mathematik finanziell etwas in die Knie gegangen war, sind die Finanzen nun wieder auf<br />
dem Stand meines Amtsantritts.<br />
Die <strong>Computeralgebra</strong> hat sich als Fachgebiet in Mathematik und Informatik immer stärker etabliert,<br />
und es ist selbstverständlich geworden, dass Themen der <strong>Computeralgebra</strong> auf vielen Tagungen eine<br />
Rolle spielen. Während es vor 20 Jahren noch schwierig war, eine Publikation zu veröffentlichen, in<br />
welcher Teile der schwierigen Rechnungen von einem CAS durchgeführt wurden, ist dies heute eine<br />
Selbstverständlichkeit. Ich denke, wir haben viel erreicht, und ich freue mich sehr, dass ich an diesen<br />
Entwicklungen mitwirken durfte.<br />
8<br />
Wolfram Koepf
Tagungen der <strong>Fachgruppe</strong><br />
Industrial Applications and Prospects of Computer<br />
Algebra, 21.–22. Juni 2011, Kaiserslautern<br />
http://www.fachgruppe-computeralgebra.<br />
de/cms/tiki-index.php?page=Tagungen.<br />
Kaiserslautern-2011<br />
Im Juni dieses Jahres wird die <strong>Fachgruppe</strong> erstmalig eine<br />
Konferenz zu industriellen Anwendungen der <strong>Computeralgebra</strong><br />
austragen, bei der es um die bestehenden<br />
und zukünftigen Erwartungen geht, die mit einem solchen<br />
Einsatz verbunden sind. Ziel der Tagung ist, den<br />
Dialog zwischen den verschiedenen Interessengruppen<br />
im Umfeld industrieller Anwendungen der <strong>Computeralgebra</strong><br />
zu fördern:<br />
• Universitäten und Hochschulen, die formale Methoden<br />
im Umfeld von CA erforschen und zur<br />
Verfügung stellen,<br />
• Tool-Provider, die diese Methoden zur Marktreife<br />
führen, sowie<br />
• Unternehmen und anwendungsorientierte öffentliche<br />
Forschungseinrichtungen, die diese Metho-<br />
den durch Verwendung der Tools bei der Entwicklung<br />
neuer Produkte zum Einsatz bringen.<br />
Die Konferenz soll als Forum für alle Interessengruppen<br />
dienen, nicht nur, um Erfahrungen auszutauschen, sondern<br />
auch, um die Anforderungen an den industriellen<br />
Einsatz der <strong>Computeralgebra</strong> im Unterschied zu anderen<br />
Einsatzbereichen (wie etwa der Schule und Hochschule)<br />
zu diskutieren.<br />
Die Durchführung ist als Wechsel von Beiträgen<br />
der drei Interessengruppen, begleitet von Ausstellungen<br />
und Postern geplant. Das Fraunhofer-Institut für<br />
Techno- und Wirtschaftsmathematik bietet mit seinen<br />
Räumlichkeiten, seinem Ambiente und s<strong>einer</strong> Ausrichtung<br />
an der Schnittstelle zwischen mathematischer Forschung<br />
und ihrem Transfer in die Anwendungen einen<br />
idealen Rahmen für diese Veranstaltung.<br />
Organisiert wird die Konferenz von Mitgliedern<br />
der <strong>Fachgruppe</strong>nleitung: Frau Frühbis-Krüger kümmert<br />
sich um das akademische Vortragsprogramm, während<br />
Herr Hofmeister Ansprechpartner für die Tool-Provider<br />
und die industriellen Beiträge ist. Herr Malle übernimmt<br />
die lokale Tagungsorganisation.<br />
Abdruck des Fotos mit freundlicher Genehmigung des Fraunhofer ITWM, Kaiserslautern<br />
9
Themen und Anwendungen der <strong>Computeralgebra</strong><br />
Code-Generierung für die numerische Auswertung<br />
von mathematischen Ausdrücken mit haggies<br />
Thomas Reiter<br />
(Nikhef, Amsterdam)<br />
thomasr@nikhef.nl<br />
Wechselspiel zwischen symbolischen<br />
und numerischen Methoden<br />
In den meisten Fällen bieten <strong>Computeralgebra</strong>systeme<br />
(CAS) dem Benutzer neben symbolischen auch ein gewisses<br />
Maß an numerischen Werkzeugen. Funktionsplotter<br />
und numerische Integration sind wohl die bekanntesten<br />
Anwendungsmöglichkeiten dieser fruchtbaren<br />
Kombination aus Numerik und symbolischen Methoden,<br />
aber auch vor der Zahlentheorie, beispielsweise,<br />
macht der Einzug numerischer Methoden nicht Halt<br />
(s. Beitrag in Heft 45, [1]).<br />
In komplizierteren Fällen genügen die eingebauten<br />
numerischen Werkzeuge des verwendeten CAS nicht<br />
immer der Problemstellung, sei es weil die im Problem<br />
vorkommenden Funktionen zu <strong>einer</strong> schlechten<br />
Konvergenz der Standardmethoden führen oder weil die<br />
Geschwindigkeit des CAS nicht ausreicht, um die Ergebnisse<br />
in einem vertretbaren Zeitaufwand zu berechnen.<br />
Seltener trifft der Benutzer auf Probleme, bei denen<br />
die Größe der vorkommenden Ausdrücke und somit<br />
Speicherplatzbeschränkungen der limitierende Faktor<br />
für den Einsatz eines CAS ist. 1<br />
Als Ausweg bleibt häufig, ein CAS für die symbolische<br />
Generierung und Vereinfachung von mathematischen<br />
Ausdrücken zu verwenden und diese in eine<br />
schnelle Programmiersprache zu exportieren, um<br />
sie in einem dezidierten Programm, wie zum Beispiel<br />
<strong>einer</strong> Monte-Carlo-Integration oder <strong>einer</strong> Minimierungsroutine,<br />
wiederholt numerisch auszuwerten.<br />
Zwar bieten die meisten CAS Unterstützung<br />
für die Generierung von Computer-Code, die in vielen<br />
Fällen problemlos zum gewünschten Ergebnis<br />
führen, jedoch bereits der Versuch den Ausdruck<br />
(a + b) · c für Javas Klasse BigDecimal aufzubereiten<br />
(a.add(b).multiply(c)) macht dem Benutzer<br />
die Grenzen der mitgelieferten Exportfunktionen<br />
deutlich.<br />
Optimierende Code-Generierung<br />
Das Programm haggies [5] setzt genau hier an und<br />
versucht dabei, dem Benutzer auch Formatierungsaufgaben<br />
abzunehmen, die ansonsten häufig textbasiert mit<br />
Hilfe von zusätzlichen Skripten erledigt werden, wie<br />
z. B. die Ersetzung von Operatoren oder Funktionsnamen.<br />
Dabei setzt das Programm weitestgehend auf<br />
eine Trennung zwischen Inhalt und Format, also der<br />
Symbole und Operatoren mit der zugehörigen Typen-<br />
Information auf der einen und der genauen Formatierung<br />
der erzeugten Programmdatei auf der anderen Seite.<br />
Da die vom CAS erzeugten Ausdrücke in den seltensten<br />
Fällen bereits in einem Format vorliegen, das zu<br />
<strong>einer</strong> effizienten numerischen Auswertung führt, nimmt<br />
das Programm in mehreren Schritten Optimierungen<br />
vor mit dem Ziel, die Anzahl der Multiplikationen und<br />
Funktionsaufrufe zu minimieren. Erfahrungsgemäß verbessert<br />
eine solche Optimierung nicht nur die Laufzeit<br />
des erzeugten Programms, sondern erhöht auch dessen<br />
numerische Stabilität.<br />
Zunächst wendet haggies auf die Eingabeausdrücke<br />
ein multivariates Horner-Schema [2] an, um<br />
möglichst viele Symbole auszuklammern. Verbleibende<br />
Potenzen von Symbolen werden durch binäre Potenzierung<br />
berechnet, die auf der Binärdarstellung des Exponenten<br />
beruht; so würde beispielsweise x 11 berechnet<br />
als x 1+2(1+2(0+2·1)) = x · (x · (x 2 ) 2 ) 2 , also mit fünf<br />
Multiplikationen. Im multivariaten Fall wird die Effizienz<br />
dieser Methode gesteigert, indem in Ausdrücken<br />
wie x 3 y 4 z 5 die Faktoren nicht einzeln potenziert werden<br />
sondern im Ganzen. So erhält man x 3 y 4 z 5 = (xz)(x ·<br />
(yz) 2 ) 2 , was mit nur sechs (anstatt neun) Multiplikationen<br />
berechnet werden kann. Im letzten Schritt werden<br />
temporäre Variablen für gemeinsame Teilausdrücke generiert,<br />
um deren mehrfache Berechnung zu vermeiden.<br />
Für alle Optimierungsschritte wurden ausschließlich<br />
Algorithmen gewählt, die linear mit der Anzahl der Ter-<br />
1 Nichtsdestotrotz war die ursprüngliche Motivation für das Programm haggies die Verarbeitung großer Ausdrücke.<br />
10
me skalieren, so dass selbst große Ausdrücke in akzeptabler<br />
Zeit verarbeitet werden können.<br />
Nach Abschluss der Optimierung werden anhand<br />
der Typen der Eingabesymbole und geeigneter Inferenzregeln<br />
alle generierten Variablen mit Typen versehen,<br />
um für die Ausgabe die nötigen Variablendeklarationen<br />
bereitstellen zu können.<br />
Ein Anwendungsbeispiel<br />
Im folgenden Beispiel versuchen wir die Lösungen der<br />
sogenannten Broyden banded function fi innerhalb <strong>einer</strong><br />
vorgegebenen Box B ⊂ R n numerisch zu bestimmen.<br />
Das zu lösende System ist<br />
fi = xi(2 + 5x 2 i ) + 1 − <br />
j∈Ji<br />
xj(xj + 1) = 0 (1)<br />
für 1 ≤ i ≤ n und Ji = {j : j = i ∧ max(1, i −<br />
5) ≤ j ≤ min(n, i + 1)}. Als Verfahren wählen wir<br />
einen branch and prune Algorithmus [3]. Dabei wird<br />
die ursprüngliche Box sukzessive halbiert und in jedem<br />
Schritt jede der neuen Boxen verworfen, die keine<br />
Lösung zulässt. Ob eine Lösung für eine Box möglich<br />
ist, kann durch den Einsatz von Intervallarithmetik entschieden<br />
werden. Dabei werden die xi ∈ R durch die<br />
Intervalle ˆxi ⊂ R ersetzt, die die Box B = ˆx1 × ˆx2 ×<br />
. . . × ˆxn festlegen. Die Funktionen fi werden ebenfalls<br />
zu Intervallen ˆ fi, und die Lösung fi = 0 wird ersetzt<br />
durch die Fragestellung, möglichst kleine Boxen zu finden,<br />
für die 0 ∈ ˆ fi gilt.<br />
Zunächst erzeugen wir die zu evaluierenden Ausdrücke<br />
fi mit einem CAS für ein vorgegebenes n; im<br />
folgenden Beispiel wurde n = 4 gewählt.<br />
f1=1+x1*(2+5*x1ˆ2)-x2*(x2+1);<br />
f2=1+x2*(2+5*x2ˆ2)-x1*(x1+1)<br />
-x3*(x3+1);<br />
f3=1+x3*(2+5*x3ˆ2)-x1*(x1+1)<br />
-x2*(x2+1)-x4*(x4+1);<br />
f4=1+x4*(2+5*x4ˆ2)-x1*(x1+1)<br />
-x2*(x2+1)-x3*(x3+1)-x4*(x4+1);<br />
Für die Implementierung in Java wurde das Paket<br />
ia math [4] verwendet, das mit den Klassen IAMath<br />
und RealInterval eine einfach zu verwendende Implementierung<br />
von Intervallarithmetik bereitstellt.<br />
haggies benötigt neben der Eingabedatei, die die<br />
zu übersetzenden Ausdrücke enthält, zwei weitere Dateien:<br />
Eine Konfigurationsdatei definiert die Eingabesymbole<br />
und die darauf erklärten Operationen, und eine<br />
Template-Datei liefert haggies eine Schablone, in die<br />
der Code für die Berechnung der Ausdrücke eingefügt<br />
wird.<br />
Im einfachsten Fall könnte die Programmschablone<br />
wie folgt aussehen:<br />
boolean constraint(<br />
RealInterval x1, RealInterval x2,<br />
RealInterval x3, RealInterval x4)<br />
{[%<br />
@for symbols registers="t%d" %]<br />
[% type.repr %] [% $_ %];[%<br />
@end @for %]<br />
RealInterval f1, f2, f3, f4;[%<br />
@for instructions registers="t%d" %]<br />
[% $_ %] = [% expression %];[%<br />
@end @for %]<br />
return zero_in(f1) && zero_in(f2)<br />
&& zero_in(f3) && zero_in(f4);<br />
}<br />
Ähnlich den spitzen Klammern in HTML markieren<br />
[% ...%] Anweisungen, die von haggies verarbeitet<br />
werden. Den ersten Teil des Programms bildet eine<br />
Schleife über alle temporären Variablen, die während<br />
der Optimierung angelegt wurden; dabei legt der Parameter<br />
registers fest, dass in diesem Beispiel die<br />
Variablen t1, t2, . . . heißen sollen. Die zweite Schleife<br />
läuft über alle Anweisungen, die für die Berechnung der<br />
Ausdrücke ˆ fi nötig sind. Die Variable [% $ %] erhält<br />
ihre Bedeutung je nach umgebender Schleife und steht<br />
im ersten Fall für das zu definierende Symbol, im zweiten<br />
Fall für die linke Seite der Zuweisung. Die Funktion<br />
zero in muss vom Benutzer bereitgestellt werden und<br />
prüft, ob die Zahl Null im Intervall enthalten ist.<br />
Die Konfigurationsdatei beginnt mit der Festlegung<br />
der Ein- und Ausgabe-Syntax. Dies erledigt der Befehl<br />
@language Form -> C;<br />
Dabei wurde die Eingabesprache Form gewählt, die der<br />
Ausgabe der meisten CAS gerecht werden sollte. Daneben<br />
existiert die Eingabesprache Mathematica, die<br />
sich in erster Linie durch den unterschiedlichen Gebrauch<br />
von runden und eckigen Klammern auszeichnet.<br />
Als Ausgabesprache wurde C gewählt, da sich C und<br />
Java bezüglich der Syntax von Ausdrücken nur wenig<br />
unterscheiden. 2<br />
Danach wird der einzig vorkommende Datentyp des<br />
reellen Intervalls definiert.<br />
@type S = "RealInterval",<br />
"IAMath.add(%s,%s)",<br />
"IAMath.sub(%s,%s)",<br />
"IAMath.uminus(%s)";<br />
Innerhalb der Konfigurationsdatei wird der Name S für<br />
den Typ verwendet. Die rechte Seite der Typendefinition<br />
enthält den Namen, der für [% type.repr %]<br />
verwendet wird, gefolgt von den Mustern für Addition,<br />
Subtraktion und Negation. In vielen Fällen kann diese<br />
Anweisung wesentlich kürzer ausfallen: Für den Datentyp<br />
double beispielsweise kann die Angabe der drei<br />
letzten Argumente entfallen, da für diesen Datentyp die<br />
Standardoperatoren (+, -) definiert sind.<br />
Ähnlich lässt sich auch die Multiplikation und Division<br />
auf den neu definierten Typen deklarieren:<br />
2 Derzeit stehen als Ausgabesprachen Fortran77, Fortran90, C, Python, Lisp, Mathematica, Maple, Ada und bc zur<br />
Verfügung.<br />
11
@operator S * S -> S =<br />
"IAMath.mul(%s,%s)",<br />
"IAMath.div(%s,%s)";<br />
Der erste Teil der Anweisung besagt, dass die Multiplikation<br />
eines Objekts vom Typ S mit einem Objekt des<br />
gleichen Typs wiederum vom Typ S ist. Die rechte Seite<br />
gibt die Operatoren-Muster an, die für diese Form der<br />
Multiplikation und Division zum Einsatz kommen und<br />
kann selbstverständlich entfallen, wenn die Standardoperatoren<br />
(*, /) zum Einsatz kommen sollen.<br />
Implizite Typenumwandlungen nimmt haggies<br />
nur vor, wenn diese vom Benutzer angegeben werden.<br />
Um beispielsweise eine ganzzahlige Konstante automatisch<br />
in ein RealInterval-Objekt zu verpacken, gibt<br />
man die folgende Regel an.<br />
@coerce @int -> S =<br />
"new RealInterval(%s.0)";<br />
Zuletzt müssen natürlich noch alle Eingabesymbole<br />
definiert und mit einem Typen versehen werden. Dies<br />
geschieht mittels der @define Anweisung:<br />
@define x1,x2,x3,x4 : S;<br />
@polynomial x1,x2,x3,x4;<br />
Die letzte Zeile weist haggies an, bei der Anwendung<br />
des Horner-Schemas die angegebenen Symbole auszuklammern.<br />
Die Symbole f1, f2, . . . bedürfen k<strong>einer</strong> Definition,<br />
da sie lediglich auf der linken Seite der Anweisungen<br />
vorkommen.<br />
Der folgende Aufruf von haggies über die<br />
Kommandozeile setzt voraus, dass das Template<br />
in template.txt, die Konfigurationsdatei<br />
in config.txt und die Eingabeausdrücke in<br />
expression.txt stehen.<br />
java -jar haggies.jar -n \<br />
-t template.txt -c config.txt \<br />
-o Test.java expression.txt<br />
Die Ausgabe erfolgt in die Datei Test.java. Die<br />
Angabe der Option -n sorgt dafür, dass auch numerische<br />
Konstanten in temporäre Variablen gespeichert und<br />
nur einmal ausgewertet werden. Ein kurzer Auszug aus<br />
dem erzeugten Programm verdeutlicht, dass die korrekte<br />
Übersetzung bereits relativ einfacher Ausdrücke nicht<br />
ohne weiteres von Hand bewältigt werden kann, wenn<br />
die Syntax des Zielprogramms stark von der gewohnten<br />
mathematischen Notation abweicht:<br />
t1 = new RealInterval(5.0);<br />
t2 = new RealInterval(2.0);<br />
t3 = new RealInterval(-1.0);<br />
t4 = IAMath.mul((IAMath.sub(t3,<br />
x2)),x2);<br />
f1 = IAMath.add(IAMath.add(<br />
new RealInterval(1.0),t4),<br />
IAMath.mul((IAMath.add(t2,<br />
IAMath.mul(IAMath.mul(t1,x1),<br />
x1))),x1));<br />
12<br />
Zusammenfassung<br />
Der Einsatz von CAS in der Praxis geht in den meisten<br />
Fällen über die symbolische Manipulation von Ausdrücken<br />
hinaus, besonders dann, wenn das Ziel der Arbeit<br />
eine konkrete Zahl oder die graphische Darstellung<br />
eines Ergebnisses ist. Vor allem in den Ingenieursund<br />
Naturwissenschaften kommen aufwändige, numerische<br />
Verfahren zum Einsatz, die oft über Standardfunktionalität<br />
von <strong>Computeralgebra</strong>systemen hinausreichen.<br />
Die Schnittstelle zwischen CAS und numerischem Programm<br />
stellt in der Regel ein Code-Generator dar.<br />
Der Code-Generator haggies entstand im Rahmen<br />
eines Projektes für Präzisionsrechnungen in der<br />
Quantenfeldtheorie. In diesem Projekt werden viele<br />
große Ausdrücke von zum Teil bis zu mehreren tausend<br />
Termen mittels CAS erzeugt, die anschließend in<br />
<strong>einer</strong> Monte-Carlo-Integration numerisch ausgewertet<br />
werden. Für die Code-Generierung steht hierbei die Erzeugung<br />
von möglichst kompakten und schnellen Programmen<br />
im Mittelpunkt, wobei die Eingabe aus <strong>einer</strong><br />
Vielzahl von Objekten verschiedener Datentypen aufgebaut<br />
wird wie reellen und komplexen Zahlen, Laurent-<br />
Entwicklungen und Vektoren.<br />
Das Beispiel aus dem vorigen Kapitel zeigt, dass<br />
sich der Einsatz von haggies auch in einfacheren<br />
Fällen lohnen kann, wo der Optimierungsgedanke in den<br />
Hintergrund rückt, jedoch die Ausgabesyntax stark von<br />
der sonst üblichen Infixnotation abweicht.<br />
Wer sich mit dem Programm vertraut machen will,<br />
kann ausgehend von den mitgelieferten Beispielprogrammen<br />
rasch die nötigen Konstrukte erlernen, um<br />
auch komplexere Aufgaben zu bewältigen.<br />
Literatur<br />
[1] David H. Bailey and Jonathan M. Borwein. PS-<br />
LQ: An algorithm to discover integer relations.<br />
<strong>Computeralgebra</strong>-Rundbrief, 45:8–11, Oktober<br />
2010.<br />
[2] Martine Ceberio and Vladik Kreinovich. Greedy<br />
algorithms for optimizing multivariate Horner schemes.<br />
ACM, 38(1):8–15, March 2004.<br />
[3] Pascal van Hentenryck, David McAllester, and Dipak<br />
Kapur. Solving polynomial systems using a<br />
branch and prune approach. SIAM Journal on Numerical<br />
Analysis, 34(2), 1997.<br />
[4] T. Hickey, Z. Qiu, and M.H. van Emden. Interval<br />
constraint plotting for interactive visual exploration<br />
of implicitly defined relations. Reliable<br />
Computing, 6(1), 2000. as part of a special<br />
issue on Reliable Geometric Computations;<br />
http://interval.sourceforge.net/<br />
interval/java/ia_math/README.html.<br />
[5] Thomas Reiter. Optimising Code Generation with<br />
haggies. Comput. Phys. Commun., 181:1301–<br />
1331, 2010. Programm-Download: http://<br />
sourceforge.net/projects/haggies/.
Verifikation digitaler Systeme mit<br />
POLYBORI – Ein Fallbeispiel<br />
Michael Brickenstein, Alexander Dreyer 1<br />
(Mathematisches Forschungsinstitut Oberwolfach,<br />
Fraunhofer Institut für Techno- und Wirtschaftsmathematik<br />
(ITWM))<br />
brickenstein@mfo.de<br />
alexander.dreyer@itwm.fraunhofer.de<br />
Einleitung<br />
Bei der Entwicklung digitaler Systeme ist ein korrekter<br />
Entwurf unabdingbar, da sich konzeptionelle Fehler<br />
vom Reißbrett bis ins fertige Produkt durchziehen. Der<br />
wohl bekannteste Designfehler dürfte der Pentium-Bug<br />
aus dem Jahr 1994 sein, siehe [H].<br />
Während der Weg von einem gegebenen Design bis<br />
hin zum fertigen Chip weitestgehend automatisiert ist,<br />
stellt die vorgeschaltete Eigenschaftsprüfung eine Herausforderung<br />
dar. Hier kann eine Erfüllbarkeitsanalyse<br />
Unterschiede zwischen Design und vorgegebener Spezifikation<br />
ausschließen. Dies ist einfach, wenn beide<br />
Formulierungen strukturell ähnlich sind. Oft gibt es jedoch<br />
viele Freiheitsgrade bei der internen Verschaltung.<br />
Moderne ausgeklügelte Schaltungstopologien, wie sie<br />
aus Kosten- und Performancegründen eingesetzt werden,<br />
sind daher schwierig zu verifizieren.<br />
Entwurf<br />
n(1)*n(2)+n(3),<br />
n(1)*n(4)+n(5),<br />
n(1)*n(6)+n(7), n(34)*n(28)+n(48),<br />
n(1)*n(8)+n(9), n(34)*n(30)+n(49),<br />
n(1)*n(10)+n(11), n(50)*n(2)+n(51),<br />
n(1)*n(12)+n(13), n(50)*n(4)+n(52), n(65)*n(24)+n(77),<br />
n(1)*n(14)+n(15), n(50)*n(6)+n(53), n(65)*n(26)+n(78),<br />
n(1)*n(16)+n(17), n(50)*n(8)+n(54), n(79)*n(2)+n(80), n(92)*n(22)+n(103),<br />
n(1)*n(18)+n(19), n(50)*n(10)+n(55), n(79)*n(4)+n(81), n(104)*n(2)+n(105),<br />
n(1)*n(20)+n(21), n(50)*n(12)+n(56), n(79)*n(6)+n(82), n(104)*n(4)+n(106),<br />
n(1)*n(22)+n(23), n(50)*n(14)+n(57), n(79)*n(8)+n(83), n(104)*n(6)+n(107), n(125)*n(6)+n(128),<br />
n(1)*n(24)+n(25), n(50)*n(16)+n(58), n(79)*n(10)+n(84), n(104)*n(8)+n(108), n(125)*n(8)+n(129),<br />
n(1)*n(26)+n(27), n(50)*n(18)+n(59), n(79)*n(12)+n(85), n(104)*n(10)+n(109), n(125)*n(10)+n(130), n(149)*n(2)+n(150),<br />
n(1)*n(28)+n(29), n(50)*n(20)+n(60), n(79)*n(14)+n(86), n(104)*n(12)+n(110), n(125)*n(12)+n(131), n(149)*n(4)+n(151),<br />
n(1)*n(30)+n(31), n(50)*n(22)+n(61), n(79)*n(16)+n(87), n(104)*n(14)+n(111), n(125)*n(14)+n(132), n(149)*n(6)+n(152),<br />
n(1)*n(32)+n(33), n(50)*n(24)+n(62), n(79)*n(18)+n(88), n(104)*n(16)+n(112), n(125)*n(16)+n(133), n(149)*n(8)+n(153),<br />
n(34)*n(2)+n(35), n(50)*n(26)+n(63), n(79)*n(20)+n(89), n(104)*n(18)+n(113), n(134)*n(2)+n(135), n(149)*n(10)+n(154),<br />
n(34)*n(4)+n(36), n(50)*n(28)+n(64), n(79)*n(22)+n(90), n(104)*n(20)+n(114), n(134)*n(4)+n(136), n(155)*n(2)+n(156),<br />
n(34)*n(6)+n(37), n(65)*n(2)+n(66), n(79)*n(24)+n(91), n(115)*n(2)+n(116), n(134)*n(6)+n(137), n(155)*n(4)+n(157),<br />
n(34)*n(8)+n(38), n(65)*n(4)+n(67), n(92)*n(2)+n(93), n(115)*n(4)+n(117), n(134)*n(8)+n(138), n(155)*n(6)+n(158),<br />
n(34)*n(10)+n(39), n(65)*n(6)+n(68), n(92)*n(4)+n(94), n(115)*n(6)+n(118), n(134)*n(10)+n(139), n(155)*n(8)+n(159),<br />
n(34)*n(12)+n(40), n(65)*n(8)+n(69), n(92)*n(6)+n(95), n(115)*n(8)+n(119), n(134)*n(12)+n(140), n(160)*n(2)+n(161),<br />
n(34)*n(14)+n(41), n(65)*n(10)+n(70), n(92)*n(8)+n(96), n(115)*n(10)+n(120), n(134)*n(14)+n(141), n(160)*n(4)+n(162),<br />
n(34)*n(16)+n(42), n(65)*n(12)+n(71), n(92)*n(10)+n(97), n(115)*n(12)+n(121), n(142)*n(2)+n(143), n(160)*n(6)+n(163),<br />
n(34)*n(18)+n(43), n(65)*n(14)+n(72), n(92)*n(12)+n(98), n(115)*n(14)+n(122), n(142)*n(4)+n(144), n(164)*n(2)+n(165),<br />
n(34)*n(20)+n(44), n(65)*n(16)+n(73), n(92)*n(14)+n(99), n(115)*n(16)+n(123), n(142)*n(6)+n(145), n(164)*n(4)+n(166),<br />
n(34)*n(22)+n(45), n(65)*n(18)+n(74), n(92)*n(16)+n(100), n(115)*n(18)+n(124), n(142)*n(8)+n(146), n(167)*n(2)+n(168),<br />
n(34)*n(24)+n(46), n(65)*n(20)+n(75), n(92)*n(18)+n(101), n(125)*n(2)+n(126), n(142)*n(10)+n(147), n(35)+n(5)+n(169),<br />
n(34)*n(26)+n(47), n(65)*n(22)+n(76), n(92)*n(20)+n(102), n(125)*n(4)+n(127), n(142)*n(12)+n(148), n(35)*n(5)+n(170),<br />
Algebraisches Modell<br />
Produkt<br />
Abbildung 1: Algebraische Digital-Verifikation<br />
c○ Fraunhofer ITWM<br />
In der formalen Verifikation weist man die Korrektheit<br />
eines Entwurfs für alle zulässigen Eingaben nach,<br />
was ab <strong>einer</strong> gewissen Bitbreite nicht mehr vollständig<br />
simulierbar ist. Die formalen Methoden waren daher<br />
1 Gefördert durch die Stiftung Innovation Rheinland-Pfalz.<br />
13<br />
schon seit jeher symbolisch: Entscheidungsdiagramme<br />
[Bry] stellen komplexe Boolesche Funktionen indirekt<br />
dar, und der DPLL-Algorithmus [DP] führt Backtracking<br />
über eine Menge von symbolischen Klauseln<br />
durch.<br />
Da ist es nur natürlich, auch algebraische Verfahren<br />
einzusetzen. So nutzten [TV] Idealtheorie, [CEI] kombinierten<br />
Buchbergers Algorithmus mit Backtracking,<br />
und [CK] verwendet Gröbnerbasen für die Vorverarbeitung<br />
kl<strong>einer</strong> Teilsysteme. Wir gehen in unserem Ansatz<br />
einen etwas anderen Weg, indem wir eine spezielle<br />
Form von Entscheidungsdiagrammen (ZDDs, [M]) aus<br />
der formalen Verifikation direkt in den Gröbnerbasen-<br />
Algorithmus einbringen.<br />
All diese Ansätze basieren aber auf <strong>einer</strong> speziellen<br />
Polynomklasse: Polynomiale Gleichungen über<br />
Z2, deren Lösungsmenge selbst wieder auf Werte<br />
in Z2 eingeschränkt wird. Um dies sicherzustellen,<br />
fügen wir zusätzlich für jede Unbekannte x die<br />
Körpergleichung x 2 = x hinzu. Ein Verifikationsproblem<br />
kann vollständig durch diese und die sogenannten<br />
Booleschen Polynome beschrieben werden. Letztere<br />
zeichnen sich durch Koeffizienten aus Z2 aus sowie<br />
eine Gradschranke von eins pro Variable x, was gerade<br />
der Bedingung x 2 = x geschuldet ist. Hierfür gibt es<br />
sehr viele direkte Anwendungsbeispiele aus der formalen<br />
Verifikation und Kryptoanalysis.<br />
Ein Boolesches Polynom p lässt sich immer in der<br />
Form p = x · p1 + p0 für eine Variable x schreiben,<br />
wobei x nicht in p0 und p1 vorkommt. Indem man die<br />
Multiplikation mit p1 durchgezogenen und die Addition<br />
von p0 unterbrochenen Kanten binärer Entscheidungsdiagramme<br />
zuordnet, kann man p rekursiv in ein<br />
Entscheidungsdiagramm konvertieren, wie Abb. 2 illustriert.<br />
Pfade von der Wurzel des Graphen bis zur 1 repräsentieren<br />
Terme. Hierbei zählen nur Variablen, von<br />
deren Knoten durchgezogene Pfeile ausgehen. Wie man<br />
auch sieht, handelt es sich nicht um einen Baum, da<br />
manche Knoten mehrere Vorgänger haben. Auf diese<br />
Weise können isomorphe Subgraphen eliminiert werden,<br />
was die Graphen zum Teil extrem kompakter werden<br />
lässt.
x<br />
y y<br />
0<br />
Abbildung 2: Entscheidungsdiagramm für das<br />
Polynom x · (y + z) + y · z; grau bzw. dick<br />
hervorgehoben ist x · z.<br />
z<br />
Das POLYBORI-Framework<br />
Mathematisch gesehen ist PolyBoRi ein Softwarepaket<br />
zum Rechnen mit Booleschen Polynomen. Um praxisrelevante<br />
Probleme analysieren zu können, ist es generell<br />
notwendig, sowohl bei den verwendeten Datenstrukturen,<br />
als auch bei den Algorithmen sowie der Modellierung<br />
Optimierungen durchzuführen und miteinander abzustimmen,<br />
wie Abb. 3 illustriert.<br />
Schaltungstopologie<br />
optimierte, vorgefertigte Bauteile<br />
Variablenordnung<br />
Modell<br />
Algorithmus<br />
Datenstruktur<br />
1<br />
Übersetzung in Boolesche Polynome<br />
Kryptoattacken mit einem oder mehreren<br />
Klar-/Schlüsseltextpaaren<br />
Buchberger Skripte<br />
Polynom<br />
ZDD<br />
Matrizen<br />
geeignete Blockordnung<br />
Abbildung 3: POLYBORI Framework<br />
F4<br />
Python<br />
Technisch gesehen besteht die Software aus vielen<br />
Einzelkomponenten, die wir in Python and C++ implementiert<br />
haben. Dabei bauen wir vor allem auf zwei mathematischen<br />
Bibliotheken:<br />
1. CUDD, für ZDDs [S],<br />
C++<br />
2. libM4RI, für asymptotisch schnelle lineare Algebra<br />
über Z2 [AB].<br />
Als Benutzerschnittstelle bieten wir zwei Shells an,<br />
die auf IPython aufsetzen: unsere eigene Minishell<br />
(ipbori) und die des <strong>Computeralgebra</strong>systems<br />
Sage [St]. Die Sage-Integration wurde von Burcin Erocal<br />
und Martin Albrecht implementiert. Zusätzlich wird<br />
es in der nächsten Version des <strong>Computeralgebra</strong>systems<br />
SINGULAR [DGPS] die Möglichkeit geben, POLYBO-<br />
RI nachzuladen und vom SINGULAR-Interpreter aus zu<br />
bedienen.<br />
Wir zeigen hier beispielhaft die Berechung <strong>einer</strong><br />
lexikographischen Gröbnerbasis in dem standardmäßig<br />
vordefinierten Booleschen Ring mit den Variablen<br />
x(i).<br />
14<br />
In [1]: groebner_basis([x(1)+x(2),\<br />
(x(2)+x(1)+1)*x(3)])<br />
Out[1]: [x(1) + x(2), x(3)]<br />
Hierzu stehen mehrere Varianten zur Verfügung.<br />
Diese können sowohl über Optionen des Befehls<br />
groebner basis angesteuert als auch im Baukastenprinzip<br />
zu neuen Routinen zusammengesetzt werden.<br />
Neben der lexikographischen Monomordnung beherrscht<br />
POLYBORI noch einige Grad- und Blockordnungen.<br />
Im Gegensatz zu herkömmlichen <strong>Computeralgebra</strong>systemen<br />
verändern diese Ordnungen nicht die<br />
Datenstrukturen, d. h. die zugrundeliegenden Diagramme<br />
bleiben lexikographisch geordnet. Während dies für<br />
die Addition und Multiplikation unerheblich ist, sind<br />
ordnungsabhängige Operationen – wie die Leitmonomberechnung<br />
– relativ schwierig.<br />
Digitale Systeme<br />
In der Digitaltechnik stellen Multiplizierer, also<br />
Bausteine, die die Multiplikation zweier Worte<br />
durchführen, eine besondere Herausforderung dar. Als<br />
unser Projekt startete, gelang der Gröbner-basierte<br />
Äquivalenzvergleich gerade mal bei Bitbreiten von vier.<br />
Um dies zu verbessern genügte nicht nur eine schnelle<br />
Arithmetik. Wir brauchten noch mehr . . .<br />
Das computeralgebraische Systemmodell sollte<br />
nicht nur die Eingangs-/Ausgangsrelationen der Komponenten<br />
beschreiben, sondern auch möglichst viele der<br />
digitaltechnischen Zusammenhänge beinhalten. Die Signale<br />
werden als Nullstellen von Polynomen modelliert,<br />
wie aber kann man mit Algebra einen Signalpfad<br />
ausdrücken? Wie die Abfolge der Signale? Unsere<br />
Lösung war es, diese Abhängigkeit der Signale<br />
in die Variablenreihenfolgen innerhalb der Monomordnung<br />
einzukodieren. Rein computeralgebraisch braucht<br />
man nur irgendeine geeignete Ordnung, um zu bestimmen,<br />
ob ein System von Gleichungen Lösungen enthält.<br />
Magischerweise vereinfacht sich die Gleichungsstruktur<br />
durch den digitaltechnischen Sinn. Auf einmal entspricht<br />
der Leitterm <strong>einer</strong> Komponentengleichung genau<br />
der Ausgangsvariablen. Das Gesamtsystem ist dann<br />
in der Form<br />
F = {xi + fi(xi+1, . . . , xn) | i ∈ I} ∪<br />
{x 2 1 + x1, . . . , x 2 n + xn}.<br />
für eine geeignete Menge I ⊂ {1, . . . , n} gegeben. Mit<br />
dem klassischen Produktkriterium und der einfachsten<br />
Form eines neuen Kriteriums [BD] können wir direkt<br />
zeigen, dass es sich hier um eine (nicht minimale) lexikographische<br />
Gröbnerbasis handelt.<br />
Es verbleibt noch das Polynom, das die zu<br />
überprüfende Aussage aus der Spezifikation darstellt,<br />
in unserem Beispiel Äquivalenz zweier Multiplizierer.<br />
Diese ist erfüllt, wenn sie bezüglich der Schaltungsgleichungen<br />
zu null reduziert. Wir müssen aber keine<br />
allgemeine Normalform mehr berechnen, sondern eine<br />
gegen ein einfaches, relativ kompaktes System mit<br />
sehr speziellen Eigenschaften. Hierfür können wir sehr
schöne Normalformalgorithmen direkt auf Entscheidungsdiagrammen<br />
entwickeln. Diese Normalformalgorithmen<br />
behandeln auch gar nicht mehr individuelle Terme,<br />
sondern nur noch die Diagrammstruktur, so dass<br />
auch Zwischen- und Endergebnisse mit extrem vielen<br />
Termen gut handhabbar sind, solange die Diagramme<br />
klein bleiben. Das erfordert natürlich, dass die entsprechenden<br />
Algorithmen nicht auf den einzelnen Termen<br />
operieren. Doch so einfach hat sich der Multiplizierer<br />
nicht geschlagen gegeben. Wir haben noch ein paar neue<br />
Techniken gebraucht, um unsere Beispiele zu knacken.<br />
In der Tat entfalten zwei unserer Verbesserungen ihr Potential<br />
erst im Zusammenspiel.<br />
Die erste war rein technisch: Wir hatten die Normalform<br />
über einen rekursiven Algorithmus beschrieben,<br />
bei dem in jedem Rekursionsschritt eine Variable<br />
entfällt. Unser neuer Algorithmus sollte weniger rekursive<br />
Aufrufe beinhalten. Die ersten Ergebnisse waren<br />
nicht vielversprechend.<br />
Davon unabhängig versuchten wir die Systeme besser<br />
zu verstehen. Wir wollten Polynome, deren Entscheidungsdiagramm<br />
schön kompakt ist.<br />
a2<br />
b0<br />
b1<br />
a1<br />
a2<br />
0<br />
a0<br />
b0<br />
b2<br />
a1<br />
a2<br />
(a) alphabetisch<br />
a2<br />
b0<br />
b1<br />
1<br />
b0<br />
b2<br />
a2<br />
0<br />
a1<br />
b1<br />
b2<br />
a0<br />
b0<br />
b1<br />
(b) optimiert<br />
Abbildung 4: Übertrag eines 3-Bit Addierers bei<br />
verschiedenen Variablenreihenfolgen<br />
Im einfacheren Fall von Addierern hatten wir das in<br />
Handarbeit schon einmal geschafft. Abbildung 4 zeigt<br />
Diagramme für den Übertrag <strong>einer</strong> Addition für verschiedene<br />
Sortierungen der Entscheidungsvariablen. Alle<br />
Variablen dieses Graphen entsprechen Eingängen, so<br />
dass das oben beschriebene Verfahren, die Variablen<br />
nach ihrer Abhängigkeit zu sortieren, deren Reihenfolge<br />
offen lässt.<br />
Für Addierer und Übertragsbits fanden wir eine allgemeine<br />
mathematische Bedingung [Bri]. Übertragen<br />
auf den Multiplizierer waren die praktischen Ergebnisse<br />
zunächst desaströs. Für einen 10 × 10 Multiplizierer<br />
bekamen wir überhaupt kein Ergebnis mehr. In <strong>einer</strong> ruhigen<br />
Stunde kombinierten wir die beiden Verbesserungen.<br />
Heraus kamen die Ergebnisse von Tabelle 1.<br />
1<br />
15<br />
Zeit EinVaria- Eingaben/<br />
gängeblen Sekunde<br />
8 × 8 0.07 16 204 940000<br />
10 × 10 0.14 20 314 7500000<br />
16 × 16 23.65 32 768 180000000<br />
Tabelle 1: Äquivalenzvergleich Multiplizierer<br />
Wir konnten den 16 × 16 Multiplizierer in 24 Sekunden<br />
auf einem MacBook Pro 2.5 GHz Core Duo 2 verifizieren.<br />
In Tabelle 1 haben wir auch die Anzahl möglicher<br />
Eingaben (2 32 = 4 294 967 296 für einen 16 × 16 Multiplizierer)<br />
mit der Zeit verglichen. Bei einem Simulator<br />
ist dieser Quotient konstant, was für ein exponentielles<br />
Wachstum steht. Bei uns verbessert sich der Quotient<br />
vom kleinsten zum größten Beispiel auf 200. Empirisch<br />
wächst die Zeit in den komplexeren Beispielen<br />
also nicht exponentiell.<br />
Ausblick<br />
POLYBORI hat gezeigt, dass es echte Verifikationsprobleme<br />
lösen kann. Zusammen mit anderen formalen<br />
Ansätzen betreten wir hier gerade das neue Gebiet der<br />
industriellen Algebra.<br />
Literatur<br />
[AB] M. Albrecht und G. Bard. The M4RI Library<br />
– Version 20080901. The M4RI Team, 2008.<br />
http://m4ri.sagemath.org.<br />
[BD] M. Brickenstein und A. Dreyer. PolyBoRi: A<br />
framework for Gröbner-basis computations with<br />
Boolean polynomials. Journal of Symbolic Computation,<br />
44(9):1326–1345, 2009. ISSN 0747-<br />
7171. doi: 10.1016/j.jsc.2008.02.017. Effective<br />
Methods in Algebraic Geometry.<br />
[Bri] M. Brickenstein. Boolean Gröbner bases – Theory,<br />
Algorithms and Applications. PhD thesis, University<br />
of Kaiserslautern, Germany, 2010.<br />
[Bry] R. E. Bryant. Graph-based algorithms for Boolean<br />
function manipulation. IEEE Transactions on<br />
Computers, 35(8):677–691, 1986.<br />
[CEI] M. Clegg, J. Edmonds und R. Impagliazzo.<br />
Using the Groebner basis algorithm to find proofs<br />
of unsatisfiability. Proceedings of the Twentyeighth<br />
Annual ACM Symposium on the Theory of<br />
Computing, pages 174–183, 1996.<br />
[CK] C. Condrat und P. Kalla. A Gröbner basis approach<br />
to CNF-formulae preprocessing. In Tools<br />
and Algorithms for the Construction and Analysis<br />
of Systems, volume 4424 of Lecture Notes in Computer<br />
Science, pages 618–631. Springer, 2007. doi:<br />
10.1007/978-3-540-71209-1 48.
[DGPS] W. Decker, G.-M. Greuel, G. Pfister und<br />
H. Schönemann. SINGULAR 3-1-2 – A computer<br />
algebra system for polynomial computations.<br />
2010. http://www.singular.uni-kl.<br />
de.<br />
[DP] M. Davis und H. Putnam. A computing procedure<br />
for quantification theory. J. ACM, 7(3):201–215,<br />
1960. ISSN 0004-5411. doi: 10.1145/321033.<br />
321034.<br />
[H] T. R. Halfhill. An error in a lookup table created<br />
the infamous bug in Intel’s latest processor. BYTE,<br />
Mar. 1995.<br />
[M] S. Minato. Zero-Suppressed BDDs for Set Manipulation<br />
in Combinatorial Problems. pages 272–<br />
16<br />
277, 1993.<br />
[S] F. Somenzi. CUDD: CU decision diagram<br />
package. University of Colorado at Boulder,<br />
2005. http://vlsi.colorado.edu/<br />
˜fabio/CUDD/. Release 2.4.1.<br />
[St] W. Stein et al. Sage Mathematics Software (Version<br />
3.3). The Sage Development Team, 2009.<br />
http://www.sagemath.org.<br />
[TV] Q. Tran und M. Y. Vardi. Groebner bases computation<br />
in Boolean rings for symbolic model<br />
checking. In MOAS’07: Proceedings of the 18th<br />
conference on Proceedings of the 18th IASTED International<br />
Conference, pages 440–445, Anaheim,<br />
CA, USA, 2007. ACTA Press.
<strong>Wurzeln</strong> <strong>einer</strong> <strong>Matrix</strong><br />
Jörg Meyer<br />
(Studienseminar Hameln)<br />
J.M.Meyer@t-online.de<br />
<strong>Computeralgebra</strong> in der Schule<br />
Zusammenfassung<br />
Mit Hilfe eines CAS werden n-te <strong>Wurzeln</strong> <strong>einer</strong> <strong>Matrix</strong> berechnet. Die Methode wird zwar zweidimensional<br />
vorgeführt, ist aber auf höhere Dimensionen verallgem<strong>einer</strong>bar.<br />
Einleitung<br />
Es sei M eine zweireihige <strong>Matrix</strong> und P ein Punkt des<br />
R 2 . Die Bahn M n · P für n = 0, 1, 2, . . . besteht aus<br />
diskreten Punkten. Da diese häufig nicht ” dicht“ liegen,<br />
kann man vom Verhalten von M gar keinen rechten<br />
Eindruck gewinnen. Schön wäre es, wenn es Zwi-<br />
schenpunkte gäbe. Man wird annehmen, dass der Zwi-<br />
schenpunkt zwischen P und M · P durch M 1<br />
2 · P beschrieben<br />
werden kann. Einen noch besseren Eindruck<br />
des Verhaltens von M bekommt man, wenn man nicht<br />
nur M 1<br />
2 ·P , sondern beispielsweise sogar die Punktfolge<br />
M 1<br />
21 ·P, M 2<br />
21 ·P, . . . , M 20<br />
21 ·P betrachtet. Dies führt zur<br />
Frage: Wie zieht man <strong>Wurzeln</strong> aus Matrizen? Zu dieser<br />
Frage gelangt man auch, wenn man sich überlegt, welche<br />
Rechenoperationen für Matrizen sinnvoll sind.<br />
Bei zweireihigen Matrizen gibt es drei Fälle: Beide<br />
Eigenwerte sind reell und verschieden; beide Eigenwerte<br />
sind gleich groß; beide Eigenwerte sind konjugiert<br />
komplex.<br />
Beide Eigenwerte sind reell und<br />
verschieden<br />
Die beiden Eigenwerte seien λ1, λ2, und V1, V2 seien<br />
zugehörige Eigenvektoren.<br />
Bildet man die aus den Eigenvektoren bestehende<br />
<strong>Matrix</strong> T = (V1 | V2) sowie die Diagonalmatrix<br />
D = diag(λ1, λ2), so gilt <strong>einer</strong>seits<br />
und andererseits<br />
M · T = M · (V1 | V2)<br />
= (M · V1 | M · V2)<br />
= (λ1 · V1 | λ2 · V2)<br />
T · D = (V1 | V2) · D = (λ1 · V1 | λ2 · V2),<br />
17<br />
zusammen also<br />
M = T · D · T −1 .<br />
Mit Hilfe dieser Formel kann man erstens zu vorgegebenen<br />
Eigenwerten und Eigenvektoren die zugehörige<br />
<strong>Matrix</strong> bestimmen, zweitens aber vermöge<br />
M 1<br />
<br />
n = T · diag<br />
λ 1<br />
n<br />
1<br />
<br />
1<br />
n , λ2 · T −1<br />
aus M die n-te Wurzel ziehen. Im vorliegenden Kontext<br />
ist es sinnvoll, sich auf reelle <strong>Wurzeln</strong> zu beschränken;<br />
gegebenenfalls muss also n ungerade sein. <br />
0,4 0,3<br />
Beispiel: M =<br />
hat die Eigen-<br />
−0,3 −0,6<br />
werte λ1 = 0,3 und λ2 = −0,5; zugehörige Eigenvek-<br />
toren sind<br />
V1 =<br />
−3<br />
1<br />
<br />
und V2 =<br />
1<br />
−3<br />
<br />
−3<br />
Dann ist T =<br />
1<br />
1<br />
−3<br />
übernimmt ein CAS; man erhält<br />
M 1<br />
<br />
21 ≈<br />
1,183<br />
−0,717<br />
0,717<br />
−1,207<br />
<br />
.<br />
<br />
. Die Berechnung von M 1<br />
21<br />
<br />
.<br />
Abb. 1 zeigt die Bahn von M 1<br />
21<br />
mit dem An-<br />
−1<br />
fangspunkt P = ; die Bahnen von M sind<br />
−0,2<br />
durch dickere Punkte kenntlich gemacht. Die beiden Ursprungsgeraden<br />
sind die beiden Eigenräume. Die Reihenfolge,<br />
mit der 21√ M · P die Punkte durchläuft, ist<br />
mit kleinen Zahlen gekennzeichnet.
Abbildung 1<br />
Beide Eigenwerte sind gleich groß<br />
Der doppelte Eigenwert heiße λ. Es gibt zwei Fälle: Der<br />
Eigenraum zum doppelten Eigenwert kann die Dimension<br />
2 haben; dann kann man vorgehen wie im letzten<br />
Abschnitt.<br />
Der Eigenraum kann aber auch die Dimension 1 haben;<br />
er werde von V aufgespannt. Dann bekommt man<br />
einen weiteren Richtungsvektor U aus der Gleichung<br />
M · U = V + λ · U. (U ist Hauptvektor zu λ, aber<br />
kein Eigenvektor.)<br />
Bildet man aus V und U die <strong>Matrix</strong> T = (V | U),<br />
so bekommt man mit T −1 · M · T keine Diagonalmatrix<br />
mit Eigenwerten, sondern eine Jordan-<strong>Matrix</strong><br />
T −1 · M · T =<br />
λ 1<br />
0 λ<br />
<br />
.<br />
Mit w := n√ λ ist dann die n-te Wurzel von M gegeben<br />
durch<br />
M 1<br />
<br />
w<br />
n = T ·<br />
0<br />
<br />
w<br />
n·λ · T<br />
w<br />
−1 ;<br />
ggf. muss n ungerade sein. <br />
0,8 −0,4<br />
Beispiel: M =<br />
hat den doppelten<br />
0,1 0,4<br />
<br />
2<br />
Eigenwert λ = 0,6, und V = ist ein zugehöriger<br />
1<br />
Eigenvektor.<br />
Die Gleichung M · U = V + λ · U wird von<br />
U =<br />
gelöst. Mit T =<br />
10<br />
0<br />
2 10<br />
1 0<br />
<br />
+ t · V (t beliebig)<br />
M 1<br />
<br />
0,9915 −0,031<br />
21 ≈<br />
0,0077 0,9605<br />
<br />
und CAS-Hilfe erhält man<br />
<br />
.<br />
Abb. 2 zeigt die Bahnen von M 1<br />
21<br />
mit den Anfangs-<br />
−0,3<br />
0,3<br />
punkten<br />
und . Die Ursprungsge-<br />
1 −0,8<br />
rade ist der einzige Eigenraum.<br />
18<br />
Abbildung 2<br />
Beide Eigenwerte sind konjugiert<br />
komplex<br />
Nun habe M die beiden konjugiert komplexen Eigenwerte<br />
λ1;2 = c±s·i mit den (komplexen) Eigenvektoren<br />
V + und V − .<br />
Bezeichnet man die komplexe Konjugation mit einem<br />
Überstrich, so folgt aus<br />
die Beziehung<br />
M · V + = (c + s · i) · V +<br />
M · V + = M · V + = (c + s · i) · V + = (c − s · i) · V + ;<br />
die von den Eigenvektoren V + und V − aufgespannten<br />
Eigenräume sind also zueinander konjugiert komplex.<br />
Dann sind U1 = V + +V −<br />
2 und U2 = V + −V −<br />
2·i reelle<br />
Vektoren, und es ist<br />
M · U1 = 1<br />
2 · (M · V + + M · V − )<br />
= 1<br />
2 · ((c + s · i) · V + + (c − s · i) · V − )<br />
= c · U1 − s · U2,<br />
M · U2 = 1<br />
2 · i · (M · V + − M · V − )<br />
=<br />
1<br />
2 · i · ((c + s · i) · V + + (c − s · i) · V − )<br />
= c · U2 + s · U1.<br />
Damit lässt sich M mit der (U1, U2)-Basis durch die<br />
<strong>Matrix</strong><br />
c s<br />
−s c<br />
<br />
= c2 + s2 <br />
cos ϕ sin ϕ<br />
·<br />
− sin ϕ cos ϕ<br />
beschreiben. Bildet man die <strong>Matrix</strong> T = (U1 | U2), so<br />
gilt<br />
T −1 <br />
c<br />
· M · T =<br />
−s<br />
<br />
s<br />
.<br />
c
√c 1<br />
n<br />
Mit w := 2 + s2 M 1<br />
n = T ·<br />
ist daher<br />
w · cos ϕ<br />
n<br />
ϕ<br />
w · sin n<br />
−w · sin ϕ<br />
ϕ · T<br />
n w · cos n<br />
−1 .<br />
<br />
0,9 0,65<br />
Beispiel: M =<br />
hat die Eigenwerte<br />
−0,4 0,7<br />
λ + = 0,8 + 0,5 · i mit Eigenvektor<br />
V + <br />
<br />
13<br />
=<br />
−2 + 10 · i<br />
sowie λ− = 0,8 − 0,5 · i mit Eigenvektor<br />
V − <br />
<br />
13<br />
=<br />
.<br />
−2 − 10 · i<br />
<br />
13<br />
0<br />
Dann sind U1 = und U2 = .<br />
−2<br />
10<br />
<br />
13 0<br />
Mit T =<br />
ist<br />
−2 10<br />
T −1 <br />
0,8 0,5<br />
· M · T =<br />
−0,5 0,8<br />
= <br />
cos ϕ sin ϕ<br />
0,89<br />
− sin ϕ sin ϕ<br />
mit ϕ ≈ 0,5586. Mit CAS-Hilfe erhält man<br />
M 1<br />
21 ≈<br />
1,0022 0,0345<br />
−0,0212 0,99157<br />
<br />
<br />
.<br />
<br />
Es handelt sich um eine Affindrehung (Abb. 3).<br />
Abbildung 3<br />
Verallgem<strong>einer</strong>ung<br />
Dass sich die beschriebene Vorgehensweise auf dreioder<br />
höherreihige Matrizen verallgem<strong>einer</strong>n lassen, ist<br />
evident. Aber so weit wird man in der Schule nicht gehen<br />
können.<br />
mathemas ordinate +www.ordinate.de<br />
% 0431 23745-00/ ) -01 , info@ordinate.de ‹ Software for mathematical people !<br />
+ Mathematische Software u. Consulting, MathType, Optica,<br />
ExtendSim, KaleidaGraph, Intel-Software, Fortran, NSBasic,<br />
@Risk, Chemistry, Satellitensteuerung u.a.<br />
mathemas ordinate, Dipl. Math.Carsten Herrmann, M. Sc.<br />
Königsbergerstr. 97, 24161 Altenholz<br />
∞ + μ < ♥<br />
Fast 30 Jahre Erfahrung mit Software-Distribution !<br />
e ∂x<br />
x−µ<br />
2<br />
( )<br />
σ<br />
1<br />
2<br />
x2 −<br />
1<br />
σ 2π<br />
x1<br />
∫
<strong>Computeralgebra</strong> in der Lehre<br />
Computereinsatz in der Veranstaltung<br />
Didaktik der Analytischen Geometrie<br />
und Linearen Algebra<br />
Hans-Wolfgang Henn, Frauke Link<br />
(Technische Universität Dortmund)<br />
wolfgang.henn@tu-dortmund.de<br />
frauke.link@tu-dortmund.de<br />
Computer sind aus der Welt, in der wir leben, nicht mehr<br />
wegzudenken. Nicht nur Mathematiker, auch der ” Rest<br />
der Welt“ setzt Computer ein: Physiker simulieren Experimente,<br />
Ingenieure konstruieren Brücken, Ärzte nutzen<br />
Computer als Datenbank, Designer nutzen Bezierkurven<br />
zur Gestaltung von Formen.<br />
Wofür nutzen Mathematiker in ihrer Disziplin den<br />
Computer? Mit einem schnellen Rechner lassen sich<br />
beispielsweise im Rahmen der Zahlentheorie große<br />
Mengen von Beispielen produzieren, aus denen möglicherweise<br />
Vermutungen abgeleitet werden können. Numeriker<br />
interessieren sich für die Struktur von Algorithmen<br />
und ihre Effizienz.<br />
Studierende der Mathematik müssen also über den<br />
Alltagsgebrauch hinaus Erfahrungen mit dem Computer<br />
sammeln. So hat sich in Dortmund und in vielen anderen<br />
Universitäten durchgesetzt, dass alle angehenden<br />
Mathematikerinnen und Mathematiker zu Beginn des<br />
Studiums einen Programmierkurs absolvieren müssen.<br />
Oft bleibt es für die Studierenden jedoch dabei, dass<br />
sie etwa im Rahmen eines zweiwöchigen Blockkurses<br />
die Grundkenntnisse zum Programmieren von einfachen<br />
Algorithmen erwerben.<br />
Unser Interesse betrifft die Lehramtsstudierenden,<br />
genauer die zukünftigen Gymnasiallehrerinnen und<br />
-lehrer. Sie werden im Laufe ihres Studiums vielleicht<br />
einmal Numerik als Fach belegen und sollten daher programmieren<br />
können. Aber sie sollen ja vor allem für das<br />
Leben nach der Universität lernen, und das ist für sie das<br />
Unterrichten in der Schule.<br />
Anders als der zukünftige Versicherungsmathematiker<br />
oder die Promovendin der Numerik müssen die<br />
Lehramtstudierenden das technische Hilfsmittel Computer<br />
später einem breiteren Publikum, ihren Schülern,<br />
als Hilfsmittel vertraut machen; Schüler, die vielleicht<br />
in einigen wenigen Fällen Mathematiker, eher aber Physiker,<br />
Ärzte, Designer, Ingenieure oder sonst etwas werden<br />
wollen. Dies stellt besondere Anforderungen für das<br />
Lehren und Lernen an der Universität, um die neuen<br />
Möglichkeiten für das Lehren und Lernen an der Schule<br />
sinnvoll zu nutzen. Diese Möglichkeiten sollten nicht<br />
überschätzt, aber auch nicht unterschätzt werden.<br />
Computer leisten im Mathematikunterricht der<br />
Schule im Wesentlichen zwei Dinge: Sie haben – meistens<br />
in Form von Taschenrechnern – Werkzeugcharakter,<br />
entlasten also von Kalkülen und dienen dem<br />
Ausführen von Algorithmen. Dabei sind diese Ta-<br />
”<br />
schenrechner“ in der Schule schon oft kleine CAS, die<br />
Lösungen für Gleichungen mühelos algebraisch oder<br />
numerisch bestimmen sowie ableiten und integrieren<br />
können. Ein gewissenhafter Lehrer wird nicht nur das<br />
” Knöpfchen-Drücken“ lehren, sondern auch über die<br />
zugrunde liegenden Algorithmen sprechen. Zweitens<br />
ermöglichen Computer Visualisierungen, die ohne sie<br />
nicht möglich wären, und unterstützen damit u. A. den<br />
Aufbau adäquater Grundvorstellungen zu mathematischen<br />
Begriffen und Inhalten. So lassen sich mühelos<br />
Graphen von Funktionen zweier Variablen darstellen,<br />
was an <strong>einer</strong> Schultafel kaum möglich wäre (Abb. 1).<br />
20<br />
Abbildung 1: Visualisierung <strong>einer</strong> Funktion mit Maple<br />
Mit dynamischer Geometriesoftware lassen sich geometrische<br />
Objekte nach dem Zeichnen bewegen, so dass<br />
eine neue Dimension der Exploration geometrischer
Zusammenhänge und Sätze möglich wird. Ein einziger<br />
Zug mit der Maus gibt eine bessere Vorstellung<br />
von ” allen“ möglichen Dreiecken im Thaleskreis – und<br />
stellt auch neue Anforderungen an die ” Beweis-Kultur“<br />
(Abb. 2).<br />
Abbildung 2: Thaleskreis mit DynaGeo<br />
Wir als Mathematikdidaktiker interessieren uns für die<br />
noch weithin offenen Fragen, ob und wie viel Computereinsatz<br />
in der Schule sinnvoll ist, inwiefern und welche<br />
neue Software für das Lehren und Lernen von Mathematik<br />
in der Schule geeignet scheint, und insbesondere<br />
dafür, was Studierende des Lehramts Mathematik<br />
an Software im Studium kennen lernen müssen, damit<br />
sie diese später im eigenen Unterricht sinnvoll einsetzen<br />
können.<br />
Dass diese Fragen eng miteinander verknüpft und<br />
mitnichten trivial sind, möchten wir am Beispiel unserer<br />
Veranstaltung Didaktik der Analytischen Geometrie<br />
und Linearen Algebra andeuten.<br />
Seit der ” Neuen Mathematik“ dominiert im Schulcurriculum<br />
in Deutschland die sogenannte ” Lineare<br />
Algebra“. Es werden Gleichungssysteme (nach vorgeschriebenen<br />
Verfahren) gelöst, ohne Anschauung<br />
Schnittpunkte von Ebenen und Geraden oder Winkel<br />
zwischen fiktiven, sich schneidenden Geraden berechnet.<br />
Diese Verarmung der Analytischen Geometrie<br />
wird auch in der Expertise zum Mathematikunterricht<br />
in der gymnasialen Oberstufe (Borneleit et al.,<br />
2001) angeprangert. Die CAS ” stören“ den Unterricht,<br />
da sie die handwerkliche Tätigkeit des Rechnens abnehmen<br />
und dabei viele traditionelle Aufgaben sinnlos<br />
machen. Nichtsdestotrotz wurde der prominente<br />
Lambacher-Schweizer 2007 auch als Version für CAS<br />
herausgegeben, die sich von der Originalversion nur<br />
darin unterscheidet, dass bei allen Aufgaben angegeben<br />
Erhältlich unter www.raumgeometrie.de<br />
Erhältlich unter www.flugsicherung.dfs.de<br />
21<br />
wurde, wie die Rechnungen in den Rechner eingegeben<br />
werden. Die Aufgaben selbst wurden nicht geändert!<br />
Die geometrischen Vorstellungen, die der Linearen<br />
Algebra zugrunde liegen, gehen aber ohne explizite<br />
Behandlung in der Schule unter. Zu diesen zählen<br />
beispielsweise ” global“ das räumliche Vorstellungsvermögen<br />
und ” lokal“ die Vorstellung eines Pfeils als<br />
Repräsentant eines Vektors. Solche fehlenden Vernetzungen<br />
sind Schülerinnen und Schülern später im Studium<br />
der Mathematik (was nicht nur Mathematikstudierende<br />
betrifft!) hinderlich (vgl. Fischer, 2007).<br />
In unserer Veranstaltung (für Gymnasial-<br />
Studierende im Hauptstudium bzw. im Master) versuchten<br />
wir, ein CAS (wir verwendeten das TI-Nspire Handheld<br />
CAS) sinnvoll einzusetzen und den geometrischen<br />
Aspekt durch die CAS-bedingt freiwerdenden Zeitressourcen<br />
zu stärken. Als gute Ergänzung zum CAS erwiesen<br />
sich ein DGS (wir verwendeten DynaGeo) und<br />
vor allem das 2003 erschienene Programm Archimedes<br />
Geo3D von Andreas Göbel (Abb. 3).<br />
Abbildung 3: Archimedes Geo3D<br />
Hierbei handelt es sich um eine dreidimensionale DGS,<br />
bei der Ebenen z. B. durch die Vorgabe dreier Punkte im<br />
Raum (durch Anklicken) oder durch eine Gleichung definiert<br />
werden können. Die Lösung eines 3×3-LGS lässt<br />
sich somit auch grafisch visualisieren. Was die Addition<br />
zweier Gleichungen und die Multiplikation <strong>einer</strong> Gleichung<br />
mit einem Skalar geometrisch bedeuten, lässt sich<br />
einfach simulieren und ist unseren Studierenden meistens<br />
unbekannt. Mit Archimedes lassen sich auch Affine<br />
Abbildungen, Kegelschnitte und vieles andere darstellen.<br />
Ein Beispiel, das in den Mathematikbüchern für die<br />
Oberstufe im Rahmen der Linearen Algebra immer wieder<br />
genannt wird, ist die sogenannte ” Flugsicherung“;<br />
Abb. 4 zeigt mit einem Screenshot eines Films die Realität<br />
der Flugsicherung.
Abbildung 4: Flugsicherung<br />
Dies ist ein im Grunde sehr schönes, anschauliches Beispiel<br />
für Geraden im R 3 , auf denen sich Flugzeuge bewegen.<br />
Eine sorgfältige Modellierung der Situation gibt<br />
Anhaltspunkte darüber, wie Flugzeuge gelotst werden<br />
können, so dass sie sich trotz unterschiedlich gerichteter<br />
räumlicher Bewegung nicht treffen. Dieser Kontext<br />
wird allerdings von den Schulbüchern häufig in s<strong>einer</strong><br />
Komplexität nicht ernst genommen (vgl. auch Hußmann,<br />
2003). Das ” CAS ernst nehmen“ heißt hier, reale<br />
Daten sammeln (zum Beispiel im Internet nach ” Flugsicherung“<br />
suchen) und auswerten, den Zusammenhang<br />
zu realistischen Einheiten (km, km/h, min) herstellen<br />
und verstehen sowie mit Fehlern und Rundungen in den<br />
Rechnungen umgehen, anstatt fiktive Geraden vorzugeben,<br />
die ein ” schönes“ Ergebnis liefern. Den raumgeometrischen<br />
Aspekt ernst nehmen bedeutet hier, die modellierten<br />
Daten, die z. B. zu <strong>einer</strong> Geradengleichung<br />
führen, raumgeometrisch zu visualisieren, um Ergebnisse<br />
zu überprüfen. Die dynamische Raumgeometriesoftware<br />
erlaubt hier zusätzlich, dass eine offensichtlich<br />
fehlerhafte Geradengleichung durch den Zugmodus modifiziert<br />
werden kann und sich hiermit auch die Gleichung<br />
ändert. Dies gibt zunächst den Studierenden (und<br />
später den Schülern) die Möglichkeit, von <strong>einer</strong> noch<br />
nicht so angemessenen Lösung ausgehend noch einmal<br />
auf die Fehlersuche innerhalb der Rechnung zu gehen.<br />
Darüber hinaus wird intuitiv klar, dass die Daten in der<br />
Gleichung dynamisch von der Lage des räumlichen Objekts<br />
abhängen.<br />
Um die Eigentätigkeit der Studierenden und ihre<br />
Kompetenz beim Einsatz der von uns verwendeten Software<br />
zu stärken, bekamen sie die Aufgabe, Beispiele zu<br />
finden, bei denen sowohl CAS als auch 3D-DGS sinnvoll<br />
genutzt werden können. Damit sollte die Sinnhaftigkeit<br />
des Einsatzes der verschiedenen Software durch<br />
geeignete, selbst konstruierte Lernumgebungen für die<br />
Oberstufe deutlich gemacht werden. Die Bearbeitungszeit<br />
für die Aufgabe war vier Wochen. Die Studierenden<br />
arbeiteten in Viererteams und stellten abschließend<br />
Das amerikanische System zur Satellitennavigation stützt sich auf 24<br />
Satelliten, die die Erde in <strong>einer</strong> Höhe von 20 200 km auf nahezu<br />
kreisförmigen Bahnen innerhalb von 12 Stunden einmal umlaufen. Jeweils<br />
ihre vier Bearbeitung Satelliten befinden densich anderen auf <strong>einer</strong> der vor. Umlaufbahnen, Es wurden von denen folgende es<br />
Themen sechs verschiedene behandelt: gibt. Flugsicherung, Die Ebenen, welche die GPS, Umlaufbahnen Kegelschnitte,<br />
enthalten,<br />
Ortslinien. sind alle um 55° gegenüber der Äquatorebene geneigt, gehen durch den<br />
Erdmittelpunkt und sind gleichmäßig rings um die Erdachse angeordnet.<br />
Aufgabe 1<br />
Modelliere mit Hilfe von Archimedes die Erde mit den sie umgebenden<br />
Satellitenumlaufbahnen!<br />
Die Erde mit den sechs Satellitenumlaufbahnen:<br />
Blick "von der Seite" (auf den Äquator)<br />
Blick "von oben" (auf den Nordpol)<br />
Abbildung 5: Lernumgebung zum Thema GPS<br />
Abb. 5 zeigt die von den Studierenden konstruierte Einstiegsaufgabe<br />
zum Thema GPS. Im weiteren Aufgabenverlauf<br />
wurde von den Studierenden vorgesehen, dass<br />
Schülerinnen und Schüler aus vorgegebenen realen Werten<br />
eines GPS den beschriebenen Standort mittels CAS<br />
selbst ermitteln sollen.<br />
Erfreulicherweise bringen die Studierenden zunehmend<br />
Erfahrungen im Umgang mit CAS aus der eigenen<br />
Schulzeit mit. Im normalen Mathematikstudium wird jedoch<br />
nur wenig Gebrauch von CAS oder anderer schulgeeigneter<br />
Software gemacht, der Werkzeugcharakter<br />
des Rechners zur Unterstützung des Inhaltsverständnisses<br />
geht verloren. Wir halten es deshalb für wichtig, dass<br />
alle Studierenden (nicht nur die Lehramtskandidaten)<br />
schon in den Anfängervorlesungen mit CAS und DGS<br />
arbeiten müssen. Zumindest für Lehramtskandidaten erscheint<br />
uns dies wichtiger als ein Programmierkurs.<br />
Literatur<br />
[1] Borneleit, P., Dankwerts, R., Henn, H.-W. &<br />
Weigand, H.-G. Expertise zum Mathematikunterricht<br />
in der gymnasialen Oberstufe. H.-E. Tenorth<br />
(Hrsg.): Kerncurriculum Oberstufe. – Weinheim:<br />
Beltz (2001), S. 26 – 53.<br />
[2] Fischer, A. Gegenseitige Beeinflussungen von Darstellungen<br />
und Vorstellungen zum Vektorraumbegriff.<br />
Journal für Mathematikdidaktik 28(3/4) (2007),<br />
S. 311 – 330.<br />
[3] Hußmann, S. Mathematik entdecken und erforschen<br />
– Theorie und Praxis des Selbstlernens in der Sekundarstufe<br />
II. Berlin: Cornelsen (2003).<br />
Eine genauere Beschreibung der Lernumgebungen wird im 2010-Tagungsband des GDM-Arbeitskreises Mathematikunterricht und<br />
Informatik veröffentlicht werden.<br />
22
Publikationen über <strong>Computeralgebra</strong><br />
• Borwein, J., Devlin, K., Experimentelle Mathematik:<br />
Eine beispielorientierte Einführung, Spektrum Akademischer<br />
Verlag, Heidelberg 2011, 158 Seiten, ISBN<br />
978-3-8274-2661-1, e 17,90.<br />
• Kemper, G., A Course in Commutative Algebra, Graduate<br />
Texts in Mathematics, Vol. 256, Springer-Verlag,<br />
Berlin, Heidelberg, New York 2011, 246 Seiten, ISBN<br />
978-3-642-03544-9, e 53,45.<br />
Weitere Bücher können auf der Seite http://www.fachgruppe-computeralgebra.de/Buecher oder<br />
direkt bei Anne Frühbis-Krüger (fruehbis-krueger@math.uni-hannover.de) zur Besprechung angefordert<br />
werden.<br />
Besprechungen zu Büchern der <strong>Computeralgebra</strong><br />
Jonathan Borwein, Keith Devlin<br />
Experimentelle Mathematik: Eine beispielorientierte Einführung<br />
Spektrum Akademischer Verlag, Heidelberg 2011, 158 Seiten, ISBN 978-3-8274-2661-1, e 17,90<br />
Dieses nach <strong>einer</strong> Idee des Verlegers Klaus Peters<br />
entstandene Büchlein von Jonathan Borwein und Keith<br />
Devlin liegt nun, zwei Jahre nach Erscheinen der Originalausgabe<br />
( ” The computer as crucible“), auch in deutscher<br />
Übersetzung vor. Durch das Zusammenspiel der<br />
beiden Autoren – Borwein ist <strong>einer</strong> der bekanntesten<br />
und profiliertesten Vertreter der experimentellen Mathematik<br />
sowie Autor diverser Bücher zu diesem Thema,<br />
Devlin hat sich neben der Beschäftigung mit mathematischer<br />
Kognitionswissenschaft als Wissenschaftsjournalist<br />
einen Namen gemacht – wird die Sichtweise von innen<br />
sowie von außen auf dieses relativ neue Teilgebiet<br />
der Mathematik auf fruchtbare Weise kombiniert.<br />
Die Autoren haben sich hierbei zum Ziel gesetzt,<br />
anhand zahlreicher Beispiele einen Einblick in einige<br />
Möglichkeiten zu geben, wie ein leistungsfähiger<br />
Computer mit <strong>Computeralgebra</strong>systemen (CAS), numerischen<br />
Werkzeugen sowie geeigneten Datenbanken die<br />
Mathematikerin bzw. den Mathematiker beim Beweisen<br />
von Sätzen und Erkennen von Zusammenhängen<br />
unterstützen und neue Möglichkeiten eröffnen kann.<br />
Das Buch präsentiert, angereichert und aufgelockert<br />
durch Anekdoten, historische Bemerkungen und diverse<br />
amüsante und pointierte Zeichnungen, verschiedene<br />
interessante und teils erstaunliche Beispiele und Spielweisen<br />
des experimentellen Zugangs.<br />
Zwar stellt die Experimentelle Mathematik seit jeher<br />
(allerdings ohne Computereinsatz, sondern in Form<br />
langer Rechnungen auf Papier) einen wichtigen Bestandteil<br />
der Arbeit aller bedeutenden Mathematikerinnen<br />
und Mathematiker auf dem intuitiv experimentierenden,<br />
suchenden und probierenden Weg zu letztendlich<br />
analytisch beweisbaren Hypothesen dar. Jedoch<br />
führen die Autoren vor, wie die Mathematik durch fortgeschrittenen<br />
Computereinsatz methodisch in die Nähe<br />
der klassischen Naturwissenschaften rückt, wobei das<br />
Experiment seinen Platz als selbständiger Teil der Mathematik<br />
findet, ohne jedoch die Grenzen dieses Zugangs<br />
und die Bedeutung des analytischen Beweises außer<br />
Acht zu lassen.<br />
Im Anschluss an diese Einführung bestehen die weiteren<br />
Kapitel des Buches aus <strong>einer</strong> Reihe von Beispielen,<br />
hauptsächlich aus dem Bereich der reellen Analysis<br />
und analytischen Zahlentheorie, die eindrucksvoll<br />
die Vorzüge des experimentellen Zugangs in der Praxis<br />
vorführen. Jedes Kapitel wird unter der Überschrift<br />
” Untersuchungen“ durch eine Reihe Vorschläge und<br />
Denkanstöße zu eigenen Experimenten und Betrachtungen<br />
abgerundet, durch die die Leserin bzw. der Leser<br />
praktische Erfahrungen mit den vorgestellten Werkzeugen<br />
und Methoden sammeln kann und zu weiteren Untersuchungen<br />
und Versuchen ermutigt wird. Der Anhang<br />
liefert hierzu Lösungsvorschläge sowie weitere Denkanstöße<br />
und Ausblicke.<br />
23<br />
Das zweite Kapitel widmet sich dem Problem, eine<br />
beliebige Nachkommastelle <strong>einer</strong> irrationalen Zahl wie<br />
π in Binärdarstellung zu bestimmen. Das folgende Kapitel<br />
befasst sich mit der (Wieder-)Erkennung von Zahlen<br />
oder Folgen aus numerischen Approximationen als<br />
Ergebnis <strong>einer</strong> experimentellen Berechnung, wobei einschlägige<br />
Internet-Datenbanken zur Unterstützung der<br />
Suche geschlossener Ausdrücke vorgestellt werden. Im<br />
Anschluss rücken die Autoren die Riemannsche Zeta-<br />
Funktion in den Blickpunkt und beleuchten einige Einsichten,<br />
die sich aus experimenteller Perspektive aus ihr<br />
gewinnen lassen. Das fünfte Kapitel betrachtet die nu-
merische Auswertung von Integralen und führt vor, wie<br />
diese mit den zuvor beschriebenen Methoden zum Auffinden<br />
<strong>einer</strong> analytischen Lösung beitragen können. Das<br />
folgende Kapitel widmet sich den Glückstreffern und<br />
unverhofften Entdeckungen und stellt einige nützliche<br />
Übungen und Tricks vor, das mathematische Glück“ zu<br />
”<br />
fördern und unterstützen. Im siebten Kapitel kommen<br />
die Autoren auf die Zahl π zurück, diesmal zur Basis<br />
10, und diskutieren einige effiziente und schnell konvergierende<br />
Verfahren zur Berechnung möglichst vieler<br />
Dezimalstellen. Unter dem etwas provokanten Titel<br />
” Der Computer kennt mehr Mathematik als Sie“ stellen<br />
die Autoren, ausgehend von <strong>einer</strong> Aufgabe, die Donald<br />
Knuth den Leserinnen und Lesern des American Mathematical<br />
Monthly stellte und die sich mit experimentellen<br />
Mitteln elegant lösen ließ, unter anderem die Lambertsche<br />
W-Funktion vor und präsentieren ein weiteres Problem,<br />
dessen mit Hilfe von Maple gefundene Lösung<br />
nicht nur in der Mathematik, sondern auch in Quantenfeldtheorie<br />
und statistischer Mechanik von Interesse<br />
ist. Das neunte Kapitel führt einige Grenzwertberechnungen<br />
von Folgen und Reihen mit Hilfe von CAS vor<br />
und veranschaulicht den Nutzen des experimentellen<br />
Zugangs in diesem Bereich. Im folgenden Kapitel weisen<br />
die Autoren auf die Grenzen, Risiken und möglichen<br />
Nebenwirkungen des experimentellen Zugangs hin und<br />
präsentieren einige Beispiele für scheinbar nahe liegende<br />
und verführerische Fehlschlüsse bei allzu großem<br />
Vertrauen in die Macht der CAS, stellen allerdings auch<br />
Vermeidungsstrategien vor.<br />
Das letzte Kapitel liefert schließlich einige Schlaglichter<br />
und Beispiele zu Erfolgen des experimentellen<br />
Zugangs aus anderen Bereichen der Mathematik, so etwa<br />
zu einem topologischen Problem, das sich mit Hilfe<br />
von Visualisierungen von (Minimal-)Flächen lösen ließ,<br />
einen Ausflug in die Knotentheorie sowie zum Paradebeispiel<br />
des Computerbeweises, dem Vierfarbensatz,<br />
und schließlich zum Ende des Rundgangs Beispiele aus<br />
der komplexen Iteration und sogar formaler Logik und<br />
dynamischen Systemen, um einem möglichst breiten<br />
24<br />
Überblick über die Möglichkeiten und Chancen der Experimentellen<br />
Mathematik vorzustellen.<br />
Das Buch ist durchgehend gut lesbar geschrieben<br />
und stellt eine wohldosierte Gratwanderung zwischen<br />
einem Überblick über ein vielfältiges Gebiet und der<br />
konkreten Präsentation nachvollziehbarer Beispiele dar,<br />
wobei stets die Faszination und Freude der Autoren an<br />
diesem sowohl ursprünglichen als auch innovativen Zugang<br />
durchscheint.<br />
Obwohl sich das Werk in erster Linie an forschende<br />
Mathematikerinnen und Mathematiker richtet, um ihnen<br />
das Computerexperiment als heuristisches Werkzeug<br />
schmackhaft zu machen, kann es gerade auch Studierenden<br />
der Anfangssemester empfohlen werden, die<br />
mit s<strong>einer</strong> Hilfe (und einem CAS) einen spielerischen<br />
und praktischen Zugang zur mathematischen Arbeitsweise<br />
gewinnen und so in das ” Mathematik machen“<br />
eintauchen können. So mag das Buch auch als reichhaltige<br />
Quelle an Übungen und Ideen beim Erlernen<br />
des Umgangs mit z. B. Maple oder Mathematica dienen<br />
und durch Inspiration zu eigenen, weiteren Experimenten<br />
zum Aufbau <strong>einer</strong> mathematischen Intuition beitragen.<br />
Nicht zuletzt kann das Büchlein aber auch Lehrkräften<br />
und Schülerinnen sowie Schülern der Oberstufe,<br />
die ein Mathematikstudium erwägen, ans Herz gelegt<br />
werden, da es, abgesehen von etwas Vertrautheit (oder<br />
Mut und Unverdrossenheit) im Umgang mit Reihen und<br />
Integralen kaum Vorkenntnisse voraussetzt und ihnen<br />
einen wertvollen Blick hinter die Kulissen ermöglicht,<br />
wie ” Mathematik wirklich gemacht wird“ und wie ein<br />
Großteil Arbeit im Vorfeld von Sätzen mit eleganten Beweisen<br />
wirklich aussieht. Das Buch leistet einen guten<br />
Beitrag, um dem wichtigen Prozess der Suche und dem<br />
Experiment, die in der (Außen-)Darstellung von Mathematik<br />
oftmals nicht mehr wahrgenommen werden, ihren<br />
legitimen, eigenen Platz zu verschaffen, und dadurch<br />
den (praktischen) Zugang für viele Interessierte zu erleichtern.<br />
Gehrt Hartjen (RWTH Aachen)
Michael Brickenstein: Boolean Gröbner Bases – Theory,<br />
Algorithms and Applications<br />
Betreuer: Gert-Martin Greuel (Kaiserslautern)<br />
Zweitgutachter: Armin Biere (Linz)<br />
Februar 2010<br />
http://www.mfo.de/organisation/institute/<br />
brickenstein<br />
Zusammenfassung: There exist very few concepts in computational<br />
algebra which are as central to theory and applications<br />
as Gröbner bases. This thesis describes theory, algorithms<br />
and applications for the special case of Boolean polynomials.<br />
These parts form the mathematical foundations of<br />
the PolyBoRi framework (developed by the author together<br />
with Alexander Dreyer). The PolyBoRi framework has applications<br />
spread over a large number of domains ranging from<br />
formal verification, computational biology to cryptanalysis<br />
and many more. It is emerged to a worldwide audience by<br />
the Sage computational algebra system.<br />
Christian Greve: Galoisgruppen von Eisensteinpolynomen<br />
über p–adischen Körpern<br />
Betreuer: Jürgen Klüners (Paderborn)<br />
Zweitgutachter: Peter Müller (Würzburg)<br />
Dezember 2010<br />
http://ubdok.uni-paderborn.de/servlets/<br />
DocumentServlet?id=12637<br />
Zusammenfassung: In dieser Arbeit werden Algorithmen<br />
zur Berechnung von Galoisgruppen von Eisensteinpolynomen<br />
f(x) über einem p–adischen Körper entwickelt. Wichtigstes<br />
Werkzeug zur Untersuchung der Polynome ist das sogenannte<br />
Verzweigungspolynom von f(x). Es ist gleich dem<br />
Newton–Polygon von f(αx+α)/α n x, wobei α eine Nullstelle<br />
und n den Grad von f(x) bezeichnet. Es wird ein schneller<br />
Algorithmus für Polynome mit einsegmentigem Verzweigungspolygon<br />
und ein aufwändigeres Verfahren für Polynome<br />
mit zwei Segmenten vorgestellt.<br />
Im einsegmentigem Fall wird ausschließlich in endlichen<br />
Körpern gerechnet und die erwartete Laufzeit ist polynomiell<br />
in n und log(q), wobei q die Anzahl der Elemente des gegebenen<br />
Restklassenkörpers bezeichnet. Auch in der Praxis<br />
funktionieren diese Algorithmen sehr schnell, beispielsweise<br />
deutlich weniger als eine Sekunde für diverse Grad 81–<br />
Beispiele.<br />
Im mehrsegmentigen Fall kann mit Hilfe eines deterministischen<br />
Polynomzeitalgorithmus ein Körper T ≤<br />
N bestimmt werden, so dass die Galoisgruppe des<br />
Zerfällungskörpers N von f(x) über T eine p–Gruppe ist.<br />
Im Fall von zwei Segmenten wird ein Algorithmus angegeben,<br />
welcher lokale Klassenkörpertheorie sowie Kohomologieberechnungen<br />
benutzt.<br />
Alle Algorithmen sind im <strong>Computeralgebra</strong>system Magma<br />
implementiert und im letzten Kapitel werden diverse Beispiele<br />
mit Laufzeiten angegeben.<br />
Peter Horn: Faktorisierung in Schief-Polynomringen<br />
Betreuer: Wolfram Koepf (Kassel)<br />
Zweitgutachter: Volker Strehl (Erlangen)<br />
April 2008<br />
http://www.mathematik.uni-kassel.de/<br />
˜hornp<br />
Zusammenfassung: In der Arbeit geht es um Lösungen bzw.<br />
Faktorisierung von Shift- und q-Shift Operatoren.<br />
Promotionen in der <strong>Computeralgebra</strong><br />
25<br />
Sei K ein Körper der Charakteristik 0, und q und x Unbestimmte<br />
über K. Wir betrachten die rationalen Funktionenkörper<br />
F = K(x) bzw. Fq = K(q)(x).<br />
Die Automorphismen<br />
τ : x ↦→ x + 1 bzw. ɛ : x ↦→ q · x<br />
heißen Shift bzw. q-Shift.<br />
Identifizieren wir x mit der Abbildung a ↦→ x · a, so<br />
sind F [τ] bzw. Fq[ɛ] nichtkommutative Operatoralgebren mit<br />
Kommutatorregeln<br />
τ · x = (x + 1) · τ bzw. ɛ · x = q x ɛ.<br />
Diese nichtkommutativen Polynome heißen Schiefpolynome.<br />
Ähnlich wie im Polynomfall hängen die Fragen nach<br />
Lösung und Faktorisierung auch hier eng zusammen, wobei<br />
bei jeder Verallgem<strong>einer</strong>ung zusätzliche Probleme auftreten,<br />
so kann ein Schiefpolynom etwa mehrere verschiedene Faktorisierungen<br />
haben.<br />
Ein wichtiges Werkzeug für die Faktorisierungsalgorithmen<br />
ist das Newtonpolygon. Die Definition der (im Shift-<br />
Fall wohlbekannten) ” charakteristischen Gleichung“ wurde<br />
für den q-Fall angepasst, und der für diese Arbeit zentrale<br />
Satz konnte vollkommen elementar bewiesen werden.<br />
Der ” Petkovˇsek“-Algorithmus aus den Arbeiten von Petkovˇsek,<br />
Salvy, Abramovic und Paule (1992, 93, 98) findet<br />
Rechtsfaktoren erster Ordnung im Shift- bzw. q-Shift-Fall,<br />
ist aber leider exponentiell. Thomas Cluzeau und Mark van<br />
Hoeij stellten 2006 einen effizienten Algorithmus vor, der von<br />
den Ideen aus dem Differential-Fall inspiriert ist. Der dort<br />
präsentierte Algorithmus wird in der vorliegenden Arbeit vereinfacht<br />
und explizit auf den q-Fall übertragen.<br />
Bei der gemeinsamen Betrachtung des van Hoeij- und<br />
des Petkovˇsek-Algorithmus entstand eine Idee, die den Petkovˇsek-Algorithmus<br />
dramatisch beschleunigt und – zumindest<br />
im q-Fall – durchaus kompetitiv macht. Auch die Formulierung<br />
des Algorithmus weicht von der Original-Darstellung<br />
ab und ist deutlich einfacher.<br />
In den bisherigen Arbeiten wurde im Wesentlichen nur<br />
auf die Berechnung von Rechtsfaktoren erster Ordnung eingegangen.<br />
In Kapitel 5 wird explizit gezeigt, wie mit Hilfe<br />
des adjungierten Operators auch Linksfaktoren erster Ordnung<br />
berechnet werden können. Mit Hilfe der bekannten Methode<br />
der zyklischen Vektoren werden dann auch Faktoren<br />
beliebiger Ordnung berechnet.<br />
Ziel der Arbeit war, effiziente Algorithmen zur Faktorisierung<br />
von Shift- und q-Shiftoperatoren zu finden. Dies gelingt<br />
erst durch das Auffinden problemangepasster und wesentlich<br />
verbesserter Algorithmen der linearen Algebra, denn<br />
viele der vorgestellten Algorithmen werden letztendlich auf<br />
das Lösen von homogenen linearen Gleichungssystemen über<br />
dem Körper der rationalen Funktionen zurückgeführt. Die<br />
Einträge der Matrizen sind hier dicht besetzt, so dass bei der<br />
Arithmetik riesige Ausdrücke entstehen, die sich kaum noch<br />
effizient behandeln lassen. In Kapitel 6 werden Algorithmen<br />
hergeleitet, die hier Abhilfe schaffen, und viele Systeme behandelt,<br />
die vorher deutlich außer Reichweite waren. Die hergeleiteten<br />
Algorithmen basieren auf Evaluation und Interpolation.<br />
Die entwickelten Algorithmen wurden in MuPAD und<br />
prototypisch teilweise auch in Maple und/oder Mathematica<br />
implementiert.
Etienne Le Grand Nana Chiadjeu: Algorithmic Computation<br />
of Formal Fourier Series<br />
Betreuer: Wolfram Koepf (Kassel)<br />
Zweitgutachter: Werner Seiler (Kassel)<br />
Februar 2010<br />
http://www.mathematik.uni-kassel.de/<br />
˜nana<br />
Zusammenfassung: Fourier series play an important role in<br />
the technical sciences and applications. The real and complex<br />
Fourier series of an integrable function f : [a, b] → R are the<br />
expressions<br />
F(f)(t) := a0<br />
2 +<br />
=<br />
∞<br />
n=−∞<br />
∞<br />
∞<br />
an cos(n ω t) + bn sin(n ω t)<br />
n=1<br />
cn e inωt ,<br />
n=1<br />
where ω = 2π<br />
b−a is the circular frequency and the corresponding<br />
real Fourier coefficients are given by<br />
an =<br />
bn =<br />
2<br />
b − a<br />
2<br />
b − a<br />
b<br />
f(t) cos(nωt)dt ∈ R ,<br />
a<br />
b<br />
f(t) sin(nωt)dt ∈ R ,<br />
a<br />
whereas the complex Fourier coefficients are defined as<br />
cn = 1<br />
b − a<br />
b<br />
f(t)e −inωt dt ∈ C .<br />
a<br />
The method used until now to compute the Fourier coefficients<br />
via computer algebra systems (CAS) is essentially based<br />
on the same principle as in Fourier’s time, i.e. using the<br />
definition. Unfortunately this technique is not successful for<br />
many functions. Although numeric values of the Fourier coefficients<br />
might be available, symbolic values are often not<br />
accessible.<br />
Modern CAS like Maple or Mathematica can compute<br />
such integrals in many cases for a given n ∈ Z. However<br />
if one is interested in the Fourier coefficients for all n ∈ Z,<br />
then n is considered as a given symbolic variable and such<br />
integrals can be computed only in few cases.<br />
In this PhD thesis, an algorithmic approach for the computation<br />
of the Fourier coefficients in symbolic form of a<br />
rich family of functions, namely the trigonometric holonomic<br />
functions, is given.<br />
For this purpose, the family of trigonometric holonomic<br />
functions, which can be taken as input in our algorithm, is<br />
defined and characterized. For a given trigonometric holonomic<br />
function f first its trigonometric holonomic differential<br />
equation is determined, and then this differential equation is<br />
converted into a holonomic recurrence equation for the complex<br />
Fourier coefficients of f. Finally this recurrence equation<br />
can be solved using the Petkovˇsek-van Hoeij-algorithm to get<br />
a solution in closed form if applicable. A Maple implementation<br />
of the given algorithms is part of the thesis, and many<br />
examples are given.<br />
26<br />
Torsten Sprenger: Algorithmen für q-holonome Funktionen<br />
und q-hypergeometrische Reihen<br />
Betreuer: Wolfram Koepf (Kassel)<br />
Zweitgutachter: Tom Koornwinder (Amsterdam)<br />
Juni 2009<br />
http://www.mathematik.uni-kassel.de/<br />
˜sprenger<br />
Zusammenfassung: Die q-Analysis ist eine spezielle Diskretisierung<br />
der Analysis auf einem Gitter, welches eine geometrische<br />
Folge darstellt, und findet insbesondere in der Quantenphysik<br />
eine breite Anwendung, ist aber auch in der Theorie<br />
der q-orthogonalen Polynome und speziellen Funktionen<br />
von großer Bedeutung. Die betrachteten mathematischen Objekte<br />
aus der q-Welt weisen meist eine recht komplizierte<br />
Struktur auf, und es liegt daher nahe, sie mit <strong>Computeralgebra</strong>systemen<br />
zu behandeln. In der vorliegenden Dissertation<br />
werden Algorithmen für q-holonome Funktionen und qhypergeometrische<br />
Reihen vorgestellt. Alle Algorithmen sind<br />
in dem Maple-Package qFPS, welches integraler Bestandteil<br />
der Arbeit ist, implementiert. Nachdem in den ersten beiden<br />
Kapiteln Grundlagen geschaffen werden, werden im dritten<br />
Kapitel Algorithmen präsentiert, mit denen man zu <strong>einer</strong><br />
q-holonomen Funktion q-holonome Rekursionsgleichungen<br />
durch Kenntnis derer q-Shifts aufstellen kann. Operationen<br />
mit q-holonomen Rekursionen werden ebenfalls behandelt.<br />
Im vierten Kapitel werden effiziente Methoden zur Bestimmung<br />
polynomialer, rationaler und q-hypergeometrischer<br />
Lösungen von q-holonomen Rekursionen beschrieben. Das<br />
fünfte Kapitel beschäftigt sich mit q-hypergeometrischen Potenzreihen<br />
bzgl. spezieller Polynombasen. Wir formulieren<br />
einen neuen Algorithmus, der zu <strong>einer</strong> q-holonomen Rekursionsgleichung<br />
<strong>einer</strong> q-hypergeometrischen Reihe mit nichttrivialem<br />
Entwicklungspunkt die entsprechende q-holonome<br />
Rekursionsgleichung für die Koeffizienten ermittelt. Ferner<br />
können wir einen neuen Algorithmus angeben, der umgekehrt<br />
zu <strong>einer</strong> q-holonomen Rekursionsgleichung für die Koeffizienten<br />
eine q-holonome Rekursionsgleichung der Reihe<br />
bestimmt und der nützlich ist, um q-holonome Rekursionen<br />
für bestimmte verallgem<strong>einer</strong>te q-hypergeometrische Funktionen<br />
aufzustellen. Mit Formulierung des q-Taylorsatzes haben<br />
wir schließlich alle Zutaten zusammen, um das Hauptergebnis<br />
dieser Arbeit, das q-Analogon des FPS-Algorithmus<br />
zu erhalten. Wolfram Koepfs FPS-Algorithmus aus dem Jahre<br />
1992 bestimmt zu <strong>einer</strong> gegebenen holonomen Funktion<br />
die entsprechende hypergeometrische Reihe. Wir erweitern<br />
den Algorithmus dahingehend, dass Linearkombinationen qhypergeometrischer<br />
Potenzreihen bestimmt werden können.<br />
Flavia Stan: Algorithms for Special Functions: Computer<br />
Algebra and Analytical Aspects<br />
Betreuer: Peter Paule (Research Institute for Symbolic<br />
Computation (RISC), Johannes Kepler Universität Linz,<br />
Österreich)<br />
Zweitgutachter: Victor Moll (Tulane University)<br />
Juli 2010<br />
http://www.risc.jku.at/home/fstan<br />
Zusammenfassung: In this thesis we present our contributions<br />
to symbolic summation, extending Wilf-Zeilberger methods<br />
to handle definite hypergeometric sums with nonstandard<br />
boundary conditions and to compute recurrences for<br />
multiple Mellin-Barnes integrals over hypergeometric terms.<br />
We also include concrete applications of these methods to<br />
Feynman integral calculus, as well as for proving identities<br />
involving definite integrals and special functions.
Osmanbey Uzunkol: Über die Konstruktion algebraischer<br />
Kurven mittels komplexer Multiplikation<br />
Betreuer: Michael Pohst (Berlin)<br />
Zweitgutachter: Franck Leprévost (Luxemburg)<br />
Juni 2010<br />
http://www.staff.uni-oldenburg.de/<br />
osmanbey.uzunkol<br />
Zusammenfassung: Die Theorie der komplexen Multiplikation<br />
beschäftigt sich unter anderem mit der Aufgabe, die<br />
gewissen abelschen Erweiterungen eines vorgegebenen CM-<br />
Körpers mittels der Werte bestimmter analytischen Funktionen<br />
zu erzeugen.<br />
In dieser Arbeit haben wir gezeigt, dass im Falle imaginär-quadratischer<br />
Zahlkörper die singulären Werte des<br />
Quotienten gewisser Thetafunktionen den Ringklassenkörper<br />
Ωt modulo t über k erzeugen. Dieses ermöglicht eine<br />
schnellere Konstruktion der Klassenpolynome der Ringklassenkörper<br />
als die Konstruktion mittels der klassischen Quotienten<br />
der Dedekindschen η−Funktion. Ferner beweisen wir,<br />
dass die verallgem<strong>einer</strong>ten η−Quotienten mittels der Quotienten<br />
der Thetanullwerte darstellbar sind. Diese Darstellungen<br />
lassen sich auch zur schnelleren Konstruktion der Klassenpolynome<br />
verwenden. Falls Dt gewissen Kongruenzbedingungen<br />
genügt, beweisen wir, dass diese singulären Werte<br />
Einheiten in den entsprechenden Ringklassenkörpern sind.<br />
Diese Eigenschaft wird benutzt, um die Einheitengruppen<br />
27<br />
solcher Ringklassenkörper mittels der in der Konstruktion des<br />
Klassenpolynoms explizit bestimmten Nullstellen zu berechnen.<br />
Es sei (A, E) eine einfache hauptpolarisierte abelsche<br />
Fläche vom primitiven CM-Typ (K, Φ) mit [K : Q] = 4.<br />
Wir erweitern die CM-Konstruktion hyperelliptischer Kurven<br />
vom Geschlecht zwei über endlichen Körpern mittels <strong>einer</strong><br />
Bedingung an die Steinitzklasse auf alle primitiven CM-<br />
Körper. Außerdem verallgem<strong>einer</strong>n wir mit Hilfe des zweidimensionalen<br />
Reziprozitätsgesetzes von Shimura, der Theorie<br />
der komplexen Multiplikation abelscher Varietäten und <strong>einer</strong><br />
Arithmetik der Siegelschen Modulfunktionen g der Stufe<br />
(2N, 4N), ggT(2, N) = 1 das Verfahren, welches im Falle<br />
der elliptischen Kurven überprüft, ob ein singulärer Wert<br />
<strong>einer</strong> arithmetischen Modulfunktion g(τ) ein Erzeuger des<br />
Ringklassenkörpers Ωt ist. Damit erhalten wir ein Verfahren,<br />
welches überprüft, ob ein System der Werte der Siegelschen<br />
Modulfunktionen g1(τ), g2(τ) und g3(τ) der Stufe<br />
(2N, 4N) mit τ ∈ H2 den über dem Reflexivkörper K r von<br />
K unverzweigten Klassenkörper nach dem ersten Hauptsatz<br />
der Theorie der komplexen Multiplikation erzeugt.<br />
Den Abschluss bilden einige Beispiele der Klassenpolynome<br />
nebst den Untergruppen der Einheitengruppen entsprechender<br />
Ringklassenkörper, die wir mittels der singulären<br />
Werte der Quotienten der Thetanullwerte berechnen.
1. Jo60: A Modern Computer Algebraist<br />
Celebrating the research and influence of<br />
Joachim von zur Gathen at 60<br />
Bonn, 27 – 29.05.2010<br />
http://cosec.bit.uni-bonn.de/students/<br />
events/jo60<br />
The research of Joachim von zur Gathen has spanned many<br />
areas of mathematics and computer science, including computational<br />
complexity, cryptography, finite fields, and computer<br />
algebra. His influence and contributions to these fields<br />
has been felt through his many papers and seminal book<br />
(Modern Computer Algebra, with J. Gerhard), and his students,<br />
collaborators, colleagues and friends. Many joined in<br />
celebrating the rich and ongoing career of our friend, colleague<br />
and teacher at the b-it from May 27-29, 2010. The<br />
meeting celebrated the jubilee with a variety of scientific and<br />
personal talks on areas connected to Joachim s research:<br />
Excursion to the Arithmeum: The jubilee teaching...<br />
• Eric Bach (University of Wisconsin, USA)<br />
Problem reductions in algorithmic number theory<br />
• Allan Borodin (University of Toronto, Canada)<br />
Greedy algorithms and why simple algorithms can be<br />
complex<br />
• Peter Bürgisser (Universität Paderborn, Germany)<br />
Smoothed analysis of condition numbers<br />
• Jürgen Gerhard (Maplesoft, Canada)<br />
How modern is computer algebra?<br />
• Mark Giesbrecht (University of Waterloo, Canada)<br />
Decomposing for 24 years and counting the collisions<br />
• Oded Goldreich (Weizmann Institute of Science, Israel)<br />
General cryptographic protocols: a brief survey<br />
• Gaston Gonnet (ETH Zürich, Switzerland)<br />
29.5 years of Maple: how many of the design principles<br />
of the system paid dividends<br />
• Erich Kaltofen (North Carolina State University,<br />
USA) The indomitable Berlekamp - Massey algorithm<br />
• Preda Mihăilescu (University Göttingen, Germany)<br />
Galois theory in algebras over finite fields – applications<br />
to the Berlekamp algebra<br />
• Michael Nöcker (Düsseldorf, Germany)<br />
Aspects of a mathematicians work in the business<br />
world<br />
Berichte von Konferenzen<br />
28<br />
• Daniel Panario (Carleton University, Canada)<br />
Counting polynomials over finite fields: random properties<br />
and algorithms<br />
• Claus-Peter Schnorr (Johann Wolfgang Goethe-<br />
Universität Frankfurt, Germany)<br />
Average time fast SVP and CVP algorithms for low<br />
density lattices and the factorization of integers<br />
• Éric Schost (University of Western Ontario, Canada)<br />
Evaluation, interpolation and multivariate multiplications<br />
• Amin Shokrollahi (EPFL, Lausanne, Switzerland)<br />
Computer algebra and practical decoding<br />
• Igor Shparlinski (Macquarie University, Australia)<br />
Polynomial iterations: algebraic properties and applications<br />
• Arne Storjohann (University of Waterloo, Canada)<br />
Inverting integer and polynomial matrices<br />
• Volker Strassen (Universität Konstanz, ret., Germany)<br />
Probability, algorithms and complexity.<br />
Jo60 participants<br />
Many in this powerful and diverse list of speakers expounded<br />
upon the direct and indirect influence of Joachim on these topics<br />
and on their research and personal lives. The talks were<br />
exciting and entertaining, and many were of exceptional<br />
depth and current scientific interest. Many other researchers<br />
and friends sent their greetings from afar.<br />
As befits such an occasion, the atmosphere of Jo60 was both<br />
scientific and festive. The science was, of course, celebrated<br />
by the fine talks and ensuing interactions that one might expect<br />
from such a group. All talks and festivities took place<br />
at the beautiful Bonn-Aachen International Center for Information<br />
Technology (b-it), overlooking the Rhine river. Our<br />
entertainment ranged from a boat trip and walk along the<br />
Rhine and gathering at the fine Dreesen Beer Garden, to a<br />
special tour of the Arithmeum museum of mathematics and<br />
science, with its many fine calculating and cryptographic devices,<br />
guided by Joachim himself. Jo60 concluded with a<br />
spectacular party at the b-it, featuring a sumptuous meal, a<br />
rock band, and a most unique and personalized rendition of<br />
Marmor, Stein und Eisen bricht by Dorothea von zur Gathen.<br />
We invite you to browse a record of the festivities online<br />
at http://cosec.bit.uni-bonn.de/students/<br />
events/jo60.<br />
Michael Nüsken (Bonn)
2. Summer School in Algorithmic Mathematics<br />
Berlin, 16.8. – 20.8.2010<br />
http://severian.mit.edu/s2am<br />
Die einwöchige Sommerschule (S 2 AM 2010) des Schwerpunktprogramms<br />
1489 fand vom 16. bis 20. August am<br />
Konrad-Zuse-Institut auf dem Campus der Freien Universität<br />
Berlin statt. Neben jungen Mitgliedern des SPP<br />
zählten auch zahlreiche internationale Doktoranden und<br />
Postdoktoranden zu den etwa 35 Teilnehmern der Veranstaltung,<br />
deren Grundgerüst drei vierstündige Vorlesungsreihen<br />
zu folgenden Schwerpunkten bildeten: Deformationstheorie<br />
(Jan Christophersen/Oslo), computergestützte Berechnung<br />
von Gruppenkohomologie (Graham Ellis/Galway), Modulformen<br />
und Galoisdarstellungen (Gerhard Frey/Duisburg-<br />
Essen). Ergänzt wurden diese Hauptbeiträge durch halbstündige<br />
Vorträge junger Teilnehmer, die so die Möglichkeit<br />
erhielten, eigene Forschungsergebnisse zu präsentieren. Eine<br />
Postersitzung, in der die Teilnehmer stichpunktartig ihre<br />
eigenen Forschungsinteressen vorstellen konnten, ein gemeinsames<br />
Abendessen sowie ein kultureller Ausflug vervollständigten<br />
das Programm der Schule.<br />
Lars Petersen (Berlin)<br />
3. Workshop Resolution of Singularities and<br />
Semi-Stable Reduction<br />
Hannover, 31.8. – 3.9.2010<br />
http://www.math-conf.uni-hannover.de/<br />
rsssr2010<br />
The workshop on ‘Resolution of Singularities and Semi-<br />
Stable Reduction’ was designed to introduce PhD students<br />
and young PostDocs originating both from Algebraic Geometry<br />
and from Algebraic Number Theory to a field of interaction<br />
between these topics, namely to desingularization<br />
techniques, regular and canonical models and semi-stable reduction.<br />
There were three well-designed courses of 3x 90<br />
minutes given by leading experts on the fields (H. Hauser,<br />
Q. Liu, W. Lütkebohmert); each course focused on a different<br />
aspect and was taught in different style so that their combination<br />
provided a solid basis for younger people entering<br />
the area. These courses were supplemented by 3 contributed<br />
talks by advanced PhD students, an introduction to the<br />
computer algebra system SINGULAR, a poster session and<br />
a problem session. The talks and sessions were well attended<br />
and received good feedback by the nearly 40 participants of<br />
the workshop.<br />
4. ICMS 2010<br />
Kobe, 13.9. – 17.9.2010<br />
Anne Frühbis-Krüger (Hannover)<br />
http://www.math.kobe-u.ac.jp/icms2010/<br />
Nach 2002 (Peking, China) und 2006 (Castro Urdiales, Spanien)<br />
fand der dritte International Congress of Mathematical<br />
Software (ICMS) vom 13. bis 17. September 2010 in Kobe,<br />
Japan, statt.<br />
Thematisch ist diese Konferenz bewusst sehr weit gefasst;<br />
sie soll eine Plattform bieten für alle Gebiete des mathematischen<br />
Softwareeinsatzes. Highlights waren die Plenarvorträge<br />
von Masakazu Kojima, Thomas Hales und Kurt Mehlhorn.<br />
Die <strong>Computeralgebra</strong> war ebenfalls stark vertreten. Mit den<br />
Sektionen ” Computational Group Theory“, ” Computer Algebra“,<br />
” Groebner Bases and Applications“ und ” Number<br />
29<br />
Theoretical Software“ wurde ein Querschnitt aktueller Entwicklungen<br />
gezeigt. Den zehn eingeladenen Hauptvortragenden<br />
in diesen Sektionen gelang es dabei, dem breit<br />
gefächerten Publikum Einblicke in aktuelle Forschung auf<br />
zugängliche Weise zu bieten. Zehn weitere Vorträge mit speziellerer<br />
Thematik rundeten diese Sektionen ab. Darüberhinaus<br />
boten benachbarte Sektionen wie z. B. zu symbolischnumerischen<br />
oder zu polyedrischen Berechnungen weitere<br />
Anknüpfungspunkte.<br />
Die Proceedings der Konferenz, die ausschließlich aus rezensierten<br />
Artikeln bestehen, erschienen unter dem Titel<br />
” Mathematical Software – ICMS 2010“ als LNCS 6327 im<br />
Springer-Verlag.<br />
Anne Frühbis-Krüger (Hannover)<br />
5. DART IV – Differential Algebra and Related<br />
Topics<br />
Peking, China, 27. – 30.10.2010<br />
http://mmrc.iss.ac.cn/˜dart4<br />
Die Tagungsserie DART – Differential Algebra and Related<br />
Topics fand seit 2000 bisher dreimal an der Rutgers University<br />
in Newark, NJ (USA) statt. Sie deckt ein breites Themenspektrum<br />
der Differentialalgebra ab: Aus dem klassischen<br />
Studium von Differentialgleichungen mit algebraischen Methoden<br />
haben sich Verknüpfungen mit verschiedenen Gebieten<br />
entwickelt, von der algebraischen Geometrie, Kombinatorik<br />
und Logik bis hin zu differential-algebraischen Gleichungen<br />
auf differentiellen Mannigfaltigkeiten, arithmetischen<br />
Differentialgleichungen und Differenzengleichungen.<br />
Neue differential-algebraische Methoden wurden in viele<br />
<strong>Computeralgebra</strong>systeme eingebunden.<br />
DART IV – Differential Algebra and Related Topics<br />
Für die DART IV wurde der Standort diesmal nach Peking<br />
verlegt, wo die Tagung vom 27. bis 30. Oktober 2010 stattfand.<br />
Mit zehn Hauptvorträgen und vielen kürzeren Vorträgen<br />
von Wissenschaftlern internationaler Zusammensetzung<br />
setzte DART IV die Tradition der DART-Tagungen erfolgreich<br />
fort. Dabei war auch diesmal positiv zu vermerken,<br />
dass viele Vortragende sich gut auf das recht inhomogene<br />
Publikum eingestellt hatten. Mehrere Poster-Sessions<br />
und daran anknüpfende Diskussionen ergänzten das wissenschaftliche<br />
Programm.<br />
Die Academy of Mathematics and System Sciences (Chinese<br />
Academy of Sciences) bot eine ansprechende Umgebung für<br />
die Durchführung der Tagung und die Organisatoren vor Ort<br />
leisteten hervorragende Arbeit. (Besonders gelobt wurde der<br />
während der Vorträge servierte Tee.) Wahrhaft unvergesslich<br />
wird allen Teilnehmern das Abendessen im neuen Sommerpalast<br />
mit Tanz- und Theatereinlagen bleiben.<br />
Julia Hartmann (RWTH Aachen)
6. XII. Berliner Mathematica-Tag<br />
Berlin, 26.11.2010<br />
http://www.ordinate.de/mathematicaTag.<br />
htm<br />
Zum 12. Mal traf man sich am 26.11.2010 auf Einladung<br />
von WIAS (http://www.wias-berlin.de) und<br />
mathemas ordinate, Carsten Herrmann (http://www.<br />
ordinate.de) in Berlin-Mitte. Aufgelockert durch den<br />
traditionell von mathemas ordinate spendierten Imbiss gab<br />
es eine Reihe interessanter Vorträge. Interessierte können<br />
Skripte der Vorträge erhalten (bitte eine E-Mail senden an<br />
carsten@ordinate.de)<br />
Carsten Herrmann begrüßte die ca. 40 Teilnehmer mit einem<br />
kleinen Überblick über den Tagesablauf.<br />
Im ersten Vortrag von Dr. Oliver Rübenkönig von Wolfram<br />
Research wurden die in der gerade erschienenen Version 8<br />
von Mathematica neuen Eigenschaften demonstriert, u. A.<br />
die Einbindung von Wolfram alpha ( ” computational Knowledge“)<br />
, umfassender Bildbearbeitung, Neuigkeiten bei den<br />
Möglichkeiten zur Lösung von Gleichungen, numerischer<br />
Integration, zu Texturen auf Objekten, Kompilierung in C-<br />
Code, Einbinden von DLLs, paralleles Rechnen auf Grafikprozessoren<br />
mit CUDA/Open CL, Integration der bislang separaten<br />
Packages Wavelet und Control Systems.<br />
Prof. Dr. Aleksy Bartnik (Univ. of Warsaw and PAS) berichtete<br />
über den Einsatz von Mathematica bei der EEG-<br />
Signalanalyse bis zur statistischen Analyse von molekulardynamischen<br />
(MD) Simulationsdaten. Die Ermittlung von<br />
Kausalzusammenhängen zwischen Ereignissen, die in MD-<br />
Simulationen biomolekularer Systeme und von Nanosystemen<br />
beobachtet werden, sind sehr wichtig für die Beschreibung<br />
molekularer Mechanismen und für das Verständnis der<br />
Abläufe. CausalMD basiert auf Mathematica 7 und führt eine<br />
Zeitreihenananlyse der MD-Simulationsdaten durch. Die<br />
betrachteten Daten sind die Atompositionen und -momente<br />
oder lineare Kombinationen davon. Konkret wurde gezeigt,<br />
wie mit CausalMD die HIV-1 Protease Dynamik analysiert<br />
wurde.<br />
Carsten Herrmann aus Kiel bot einen kleinen Einstieg in die<br />
vielfältigen Möglichkeiten, die Mathematica 8 durch die Implementierung<br />
von Funktionen zu Wahrscheinlichkeit und<br />
Statistik wie Probability, Expectation etc. jetzt bietet. Mathematica<br />
8 bietet nunmehr auch eine umfangreiche Sammlung<br />
der verwendeten Verteilungsgesetze. Man kann entsprechende<br />
Stichproben ziehen und auch Verteilungen mit Experimentaldaten<br />
definieren. So lassen sich sehr schön und<br />
kommod stochastische Simulationen durchführen, geeignet<br />
für Unterricht, Forschung und Praxis.<br />
Dr. Hang Si vom WIAS Berlin (http://www.wiasberlin.de/people/si/)<br />
erläuterte die umfangreichen<br />
Möglichkeiten von TetGen, seinem Delaunay Tetrahedral<br />
Mesh Generator. Dieses Tool wurde in Mathematica 8 integriert,<br />
dabei wurde die neue DLL-Einbindungsmöglichkeit<br />
verwendet. TetGen eignet sich zur Visualisierung auch stark<br />
strukturierter 3D-Körper (Standardbeispiel ein Motorblock),<br />
für CAD, Geowissenschaft, biomedizinische und mathematische<br />
Modellierung. TetGen wird auch automatisch von Mathematica<br />
8 eingesetzt, z. B. zur Interpolation in dreidimensionalen<br />
konvexen Bereichen. Man kann es jedoch auch direkt<br />
für eigene Zwecke einsetzen.<br />
30<br />
XII. Berliner Mathematica-Tag<br />
Vielen sind sicher die Bilder von Herrn Escher bekannt.<br />
Ausgehend vom ” Print Gallery“ wurde die Droste-<br />
Transformation entwickelt (siehe http://www.inf.<br />
tu-dresden.de/content/institutes/.../<br />
proseminar.pdf und http://www.josleys.<br />
com/article_show.php?id=82). Patrick Scheibe<br />
erläuterte uns seine Mathematica-Implementierung der<br />
Droste-Transformation. Dabei gab es nicht nur sehr schöne<br />
und interessante Bilder zu sehen, sondern es wurde auch<br />
an diesem Beispiel die in Mathematica 8 neue Funktionalität<br />
zum Kompilieren, Laden und Verwenden von DLLs<br />
und die Verwendung des neuen Texture(-Mapping) Befehls<br />
demonstriert.<br />
XII. Berliner Mathematica-Tag<br />
Stefan Braun von Smart CAE berichtete über die neue Version<br />
von SmartCAE-FAB (Framework for Application Building).<br />
Die FAB ist eine Sammlung von Werkzeugen und Bibliotheken,<br />
die dem Mathematica-Anwender die zeitintensiven<br />
Teile der Arbeit auf dem Weg von einem Mathematica-<br />
Notebook zur <strong>einer</strong> einfach bedienbaren Anwendung abnehmen.<br />
Diese derart erstellten Schnittstellen erlauben die Verwendung<br />
von Mathematica in realistischen hochparametrisierten<br />
Anwendungsumgebungen.
Herr Prof. Ziegenbalg stellte die Neuauflage seines<br />
Buches vor: Algorithmen von Hammurapi bis Gödel<br />
(siehe http://www.harri-deutsch.de/verlag/<br />
titel/ziegenba/s_1864.htm). Das Buch enthält<br />
viele Mathematica-Beispiele. Das Konzept des Algorithmus<br />
zählt zu den fundamentalen Begriffen von Mathematik und<br />
Informatik. Herr Ziegenbalg betrachtet vor allem die historische<br />
Entwicklung (subjektive Anmerkung: die Geschichte<br />
des ” Homo Fabers“).<br />
Herr Dr. Gille aus Halle untersuchte Identitäten, die zyklometrische<br />
Funktionen enthalten, und zeigte: Mit Hilfe<br />
von Mathematica-Funktionen lassen sich nicht-triviale Identitäten<br />
untersuchen. Herr Gille betrachtete die vielfältigen<br />
Möglichkeiten von Simplify bzw. FullSimplify; diese<br />
Mathematica-Funktionen eignen sich zur Überprüfung, zur<br />
Vereinfachung und zum maschinellen Beweisen von symbolischen<br />
Formeln.<br />
Mit der üblichen nachmittäglichen Kaffeerunde klang der<br />
Mathematica-Tag aus. Der ” Tag“ endete gegen 17 Uhr, und<br />
für das nächste Jahr ist ein weiterer geplant.<br />
Carsten Herrmann (Kiel)<br />
31<br />
XII. Berliner Mathematica-Tag<br />
Interdisziplinäres Kolloquium zur Anwendung von Mathematica in den Naturwissenschaften<br />
In[1]:=<br />
Weierstraß-Institut für<br />
Angewandte Analysis und Stochastik<br />
Mohrenstr. 39<br />
10117 Berlin<br />
In[1]:= ExpectedValuex^4, PoissonDistributionΜ, x<br />
Out[1]= Μ 7 Μ 2 6 Μ 3 Μ 4<br />
In[1]:= Assuming[x>=0&&y0]],Refine[Sqrt[x^2y^2]],0]]<br />
Out[1]= -x y<br />
26. November 2010<br />
NEU in Mathematica 8 : Umgangssprachliche Eingabe dank Wolfram|Alpha<br />
Probability & Statistics, Control System, Compilation, GPU-Nutzung, Image Processing,<br />
Wavelet Analysis, Graph Theory& Networks ....http://www.ordinate.de/wolfram/mathem.htm<br />
ListLinePlot<br />
Re, Im & LinearRecurrenceExpI Pi Sqrt2, I 1.1, 1, 1, 100,<br />
PlotRange All, AspectRatio Automatic<br />
Out[1]= 10 5 5 10<br />
10<br />
5<br />
5<br />
10<br />
Informationen und Anmeldung unter http:www.ordinate.de/mathematicaTag.html<br />
mathemas ordinate CERTIFIED<br />
RESELLER<br />
2010<br />
Poster XII. Berliner Mathematica-Tag
1. ECCAD 2011 – The East Coast Computer<br />
Algebra Day<br />
Waterloo, Kanada, 09.04.2011<br />
http://cs.uwaterloo.ca/conferences/<br />
eccad2011<br />
East Coast Computer Algebra Day (ECCAD) is a one-day<br />
meeting for those active or interested in computer algebra. It<br />
provides opportunities to learn and to share new results and<br />
current work in progress. The schedule includes prominent<br />
invited speakers and a panel discussion, along with contributed<br />
posters and software demonstrations. Plenty of time is<br />
allowed for unstructured interaction among the participants.<br />
Researchers, teachers, students, and users of computer algebra<br />
are all welcome! There is no registration fee, but preregistration<br />
is strongly encouraged. Proposals are invited for<br />
poster presentations and software demonstrations on any topic<br />
related to computer algebra.<br />
2. PCA 2011 – The 4th Annual International<br />
Conference Polynomial Computer Algebra’2011<br />
St. Petersburg, Russland, 17. – 22.04.2011<br />
http://www.pdmi.ras.ru/EIMI/2011/pca/<br />
index.html<br />
The Euler International Mathematical Institute and St. Petersburg<br />
Department of Steklov Institute of Mathematics<br />
RAS are organizing the 4th Annual International Conference<br />
Polynomial Computer Algebra’2011 to be held April 17 –<br />
22, 2011 in Saint Petersburg, Russia.<br />
The main subjects of the conference are: Groebner bases,<br />
combinatorics of monomial orderings, differential bases,<br />
involutive algorithms, computational algebraic geometry,<br />
D-modules, polynomial differential operators, parallelization<br />
of algorithms, algorithms of tropical mathematics,<br />
quantum computing, cryptography, matrix algorithms, complexity<br />
of algorithms.<br />
3. 82. Jahrestagung der GAMM<br />
Graz, Österreich, 18. – 21.04.2011<br />
http://www.gamm2011.tugraz.at/<br />
The GAMM cordially invites you to its 82nd Annual Scientific<br />
Conference in Graz, Austria. The GAMM was founded<br />
in 1922 by Ludwig Prandtl and Richard von Mises. The society<br />
promotes scientific development in all areas of applied<br />
mathematics and mechanics.<br />
On behalf of the DGLR and the GAMM we also invite you<br />
to the 54th Ludwig Prandtl Memorial Lecture, which opens<br />
the conference program on Monday, April 18, 2011. Within<br />
the conference we invite all GAMM members to the regular<br />
General Assembly of GAMM on Wednesday, April 20,<br />
2011.<br />
Hinweise auf Konferenzen<br />
32<br />
4. WWCA 2011, W80 – Waterloo Workshop on<br />
Computer Algebra 2011, W80<br />
Waterloo, Kanada, 26. – 30.05.2011<br />
http://www.cargo.wlu.ca/W80<br />
WWCA 2011, W80 is devoted to celebrating the achievements<br />
and influence of Herbert S. Wilf on the occasion of<br />
his 80th birthday. The invited speakers are<br />
• Herbert Wilf, University of Pennsylvania, USA<br />
• Gert Almkvist, University of Lund, Sweden<br />
• George E. Andrews, Pennsylvania State University,<br />
USA<br />
• Miklos Bona, University of Florida, USA<br />
• David Bressoud, Macalester College, USA<br />
• Rod Canfield, University of Georgia, USA<br />
• Sylvie Corteel, Universite Paris 7, France<br />
• Aviezri Fraenkel, Weizmann Institute of Science,<br />
Israel<br />
• Ira Gessel, Brandeis University, USA<br />
• Ian Goulden, University of Waterloo, Canada<br />
• Ronald Graham, UCSD, USA<br />
• Andrew Granville, Universite de Montreal, Canada<br />
• Curtis Greene, Haverford College, USA<br />
• Joan Hutchinson, Macalester College, USA<br />
• David Jackson, University of Waterloo, Canada<br />
• Christian Krattenthaler, University of Vienna, Austria<br />
• Victor H. Moll, Tulane University, USA<br />
• Andrew Odlyzko, University of Minnesota, USA<br />
• Peter Paule, RISC-Linz, Austria<br />
• Robin Pemantle, University of Pennsylvania, USA<br />
• Marko Petkovsek, University of Ljubljana, Slovenia<br />
• Bruce Sagan, Michigan State University, USA<br />
• Carla D. Savage, NCSU, USA<br />
• Jeffrey Shallit, University of Waterloo, Canada<br />
• Richard Stanley, MIT, USA<br />
• John Stembridge, University of Michigan, USA<br />
• Volker Strehl, Universität Erlangen, Germany<br />
• Michelle Wachs, University of Miami, USA<br />
• Doron Zeilberger, Rutgers University, USA<br />
5. MEGA 2011 – Effective Methods in Algebraic<br />
Geometry<br />
Stockholm, Schweden, 30.05. – 03.06.2011<br />
http://www.math.kth.se/mega2011/<br />
The eleventh conference MEGA will be held at Stockholm<br />
University from Monday, 30 May to Friday, 3 June 2011.<br />
MEGA is the acronym for Effective Methods in Algebraic<br />
Geometry (and its equivalent in Italian, French, Spanish,<br />
German, Russian, etc.), a series of roughly biennial conferences<br />
on computational and application aspects of Algebraic<br />
Geometry and related topics with very high standards.
Previous meetings were held in 1990 (Castiglioncello, Italy),<br />
1992 (Nice, France), 1994 (Santander, Spain), 1996 (Eindhoven,<br />
Nederlands), 1998 (St. Malo, France) 2000 (Bath, United<br />
Kingdom), 2003 (Kaiserslautern, Germany), 2005 (Porto<br />
Conte, Italy), 2007 (Strobl, Austria), and 2009 (Barcelona,<br />
Spain).<br />
Proceedings containing a selection of the papers and invited<br />
talks presented at previous MEGA conferences have been<br />
published by Birkhäuser in the series Progress in Mathematics<br />
(volumes no. 94, 109 and 143), by the Journal of Pure<br />
and Applied Algebra (volumes no. 117 and 118, 139 and<br />
164) and by the Journal of Symbolic Computation (volumes<br />
no. 39 3-4 and 42 1-2).<br />
6. CoCoA 2011 – International School on<br />
Computer Algebra<br />
Passau, 06. – 10.06.2011<br />
http://cocoa.dima.unige.it/conference/<br />
cocoa2011/<br />
Die CoCoA-Schule richtet sich an Diplomanden und Doktoranden<br />
aus der ganzen Welt, die an Themen aus der kommutativen<br />
Algebra oder algebraischen Geometrie arbeiten<br />
und das <strong>Computeralgebra</strong>system CoCoA einsetzen wollen.<br />
Es wird zwei Kurse mit zugehörigen Tutorien geben: Involutive<br />
Bases (Werner Seiler, Tutorien: Eduardo Saenz de Cabezon)<br />
sowie einen Kurs von Giuseppe Valla (Tutorien: Anna<br />
Bigatti).<br />
Die CoCoA-Schule findet bereits zum siebten Mal statt, jedoch<br />
erstmals in Deutschland. Neben den Kursen und Tutorien<br />
wird auch eine Poster-Session angeboten, in der die<br />
Teilnehmer ihre eigenen Arbeiten präsentieren können. Details<br />
zur Anmeldung und Durchführung sind auf der angegebenen<br />
Webseite abrufbar.<br />
7. ISSAC 2011 – International Symposium on<br />
Symbolic and Algebraic Computation<br />
San Jose, Kalifornien, USA, 08. – 11.06.2011<br />
http://www.issac-conference.org/2011<br />
The International Symposium on Symbolic and Algebraic<br />
Computation (ISSAC) is the premier conference for research<br />
in symbolic computation and computer algebra. ISSAC 2011<br />
is the 36th meeting in the series, started in 1966 and held<br />
annually since 1981, in North America, Europe and Asia.<br />
The conference presents a range of invited speakers, tutorials,<br />
poster sessions, software demonstrations and vendor exhibits<br />
with a centerpiece of contributed research papers. All<br />
areas of computer algebra and symbolic computation are of<br />
interest.<br />
8. ICCSA 2011 – International Conference on<br />
Computational Science and Its Applications<br />
Santander, Spanien, 20. – 23.06.2011<br />
http://www.iccsa.org<br />
The 2011 International Conference on Computational<br />
Science and Applications (ICCSA 2010) will be held on June<br />
20-23, 2011, at the University of Cantabria, Santander,<br />
Spain.<br />
ICCSA 2011 will be the next event in a series of highly<br />
successful International Conferences on Computational<br />
Science and Its Applications (ICCSA), previously held in<br />
Fukuoka, Japan (2010), Suwon, Korea (2009), Perugia, Italy<br />
(2008), Kuala Lumpur, Malaysia (2007), Glasgow, UK<br />
33<br />
(2006), Singapore (2005), Assisi, Italy (2004), Montreal, Canada<br />
(2003), and (as ICCS) Amsterdam, The Netherlands<br />
(2002) and San Francisco, USA (2001).<br />
Computational Science is a main pillar of most of the present<br />
research, industrial and commercial activities and plays<br />
a unique role in exploiting Information and Communication<br />
Technologies as innovative technologies.<br />
The ICCSA Conference offers a real opportunity to discuss<br />
new issues, tackle complex problems and find advanced<br />
enabling solutions able to shape new trends in Computational<br />
Science.<br />
9. Industrial Applications and Prospects of<br />
Computer Algebra<br />
Kaiserslautern, 21. – 22.06.2011<br />
http://www.fachgruppe-computeralgebra.<br />
de/cms/tiki-index.php?page=Tagungen.<br />
Kaiserslautern-2011<br />
Am 21. und 22. Juni 2011 veranstaltet die <strong>Fachgruppe</strong><br />
<strong>Computeralgebra</strong> in den Räumen des Fraunhofer ITWM<br />
in Kaiserslautern einen Workshop zu Industrieanwendungen<br />
von <strong>Computeralgebra</strong>. Hauptaugenmerk liegt dabei<br />
auf der Schnittstelle zwischen mathematischen und praktischen<br />
Aspekten des <strong>Computeralgebra</strong>einsatzes sowie auf<br />
<strong>Computeralgebra</strong>-Tools. Weitere Details finden Sie auf Seite<br />
9.<br />
10. CAI 2011 – 4th International Conference on<br />
Algebraic Informatics<br />
Linz, Österreich, 21. – 24.06.2011<br />
http://www.risc.jku.at/conferences/<br />
cai2011<br />
CAI 2011 continues the tradition established by CAI 2005,<br />
CAI 2007, and CAI 2009: to bring together researchers from<br />
theoretical computer science and algebra. This should enhance<br />
the understanding of syntactic and semantic problems<br />
by algebraic models; and it should also propagate the application<br />
of modern techniques from informatics in algebraic<br />
computation.<br />
11. IMACS-ACA 2011 – 17th International Conferences<br />
on Applications of Computer Algebra<br />
Houston, Texas, USA, 27. – 30.06.2011<br />
http://buchberger.cs.lamar.edu/ACA2011/<br />
In the past several years there has been a dramatic increase<br />
in the use of algebraic and symbolic computation in engineering,<br />
science and education. The ACA series of annual conferences<br />
is devoted to stimulating and enhancing this important<br />
progress through international meetings that emphasizes<br />
theoretical research and algorithm designs for software development<br />
and the applications of algebraic and symbolic computation<br />
in engineering, physical and medical sciences, pure<br />
and applied mathematics, education, communication and<br />
computer science.<br />
The conference consists of sessions organized by prominent<br />
researchers who will focus on their own application areas<br />
including Groebner basis algorithms, quantifier-elimination<br />
algorithms, algebraic and algorithmic aspects of differential<br />
and integral operators, high-performance computer algebra,<br />
multicore high-performance computer algebra algorithms,<br />
algebraic methods in statistics and system biology,
and algebraic methods in biological networks and algebraic<br />
computation in Boolean rings.<br />
12. CASC 2011 – 13th International Workshop on<br />
Computer Algebra in Scientific Computing<br />
Kassel, 05. – 09.09.2011<br />
http://www14.in.tum.de/CASC2011/<br />
The methods of Scientific Computing play an important role<br />
in the natural sciences and engineering. Significance and<br />
impact of computer algebra methods and computer algebra<br />
systems for scientific computing has increased considerably<br />
over the last decade. The topics addressed in the CASC<br />
workshops cover all the basic areas of scientific computing<br />
as they benefit from the application of computer algebra<br />
methods and software. Examples are symbolic-numeric<br />
methods for differential, differential-algebraic and difference<br />
equations, exact and approximate computation, numerical simulation<br />
using computer algebra systems, algebraic methods<br />
in geometric modeling, algorithms and complexity in computer<br />
algebra, the application of computer algebra to the natural<br />
sciences and to engineering, and many more. The locations<br />
for CASC more or less alternate between former CIS<br />
countries and Germany.<br />
The 13th International Workshop on Computer Algebra in<br />
Scientific Computing, CASC 2011, will be held in Kassel.<br />
Local Arrangements Chair is Werner M. Seiler, and the program<br />
committee is headed by Wolfram Koepf and Evgenii<br />
V. Vorozhtsov. Submissions are due by April 1, 2011, and<br />
proceedings are scheduled to appear in the LNCS series.<br />
13. ACAT 2011 – 14th International Workshop<br />
on Advanced Computing and Analysis Techniques<br />
in Physics Research<br />
London, Großbritannien, 05. – 09.09.2011<br />
34<br />
http://acat.in2p3.fr/cgi-bin/twiki.<br />
source/bin/view/ACAT/WebHome<br />
The ACAT workshop series, created back in 1990 as AI-<br />
HENP (Artificial Intelligence in High Energy and Nuclear<br />
Research) has been covering the tremendous evolution<br />
of computing in its most advanced topics, trying to setup<br />
bridges between computer science, experimental and theoretical<br />
physics.<br />
The gap between the need for adapting applications to exploit<br />
the new hardware possibilities and the push toward virtualisation<br />
of resources is widening, creating more challenges<br />
as technical and intellectual progress continues.<br />
One of the conference topics is Computer Algebra Techniques<br />
and Applications.<br />
14. ECC 2011 – The 15th Workshop on Elliptic<br />
Curve Cryptography<br />
LORIA, Nancy, Frankreich, 19. – 21.09.2011<br />
http://ecc2011.loria.fr/<br />
ECC 2011 is the 15th in a series of annual workshops dedicated<br />
to the study of elliptic curve cryptography and related<br />
areas. Over the past years the ECC conference series has<br />
broadened its scope beyond elliptic curve cryptography and<br />
now covers a wide range of areas within modern cryptography.<br />
For instance, past ECC conferences included presentations<br />
on hyperelliptic curve cryptography, pairing-based<br />
cryptography, side-channel attacks, voting protocols, quantum<br />
key distribution, AES, hash functions, and implementation<br />
issues.<br />
At the same time ECC continues to be the premier conference<br />
on elliptic curve cryptography. It is hoped that ECC<br />
2011 will further our mission of encouraging and stimulating<br />
research on the security and implementation of elliptic<br />
curve cryptosystems and related areas, and encouraging collaboration<br />
between mathematicians, computer scientists and<br />
engineers in the academic, industry and government sectors.<br />
As with past ECC conferences, there will be about 15 invited<br />
lectures (and no contributed talks) delivered by internationally<br />
leading experts. There will be both state-of-the-art survey<br />
lectures as well as lectures on latest research developments.<br />
There will be a summer school on Elliptic and Hyperelliptic<br />
Curve Cryptography the week before ECC in Nancy. The<br />
course is intended for graduate students in cryptography and<br />
mathematics, and will take place September 12-16. Introductory<br />
topics on elliptic curves and cryptographic applications<br />
will be covered, with an emphasis on providing a strong<br />
background in support of the research talks at ECC.<br />
15. Jahrestagung der DMV<br />
Köln, 19. – 22.09.2011<br />
http://www.mi.uni-koeln.de/algebra/<br />
dates/dmv2011/<br />
Die Jahrestagung der DMV 2011 findet vom 19. bis 22. September<br />
an der Universität zu Köln statt. In diesem Zeitraum<br />
findet auch die Mitgliederversammlung der DMV statt.
Zu den Hauptvortragenden gehören Holger Dette (Bochum),<br />
Irene Fonseca (Pittsburgh), Bernhard Keller (Paris), Matthi-<br />
as Kreck (Bonn), Shrawan Kumar (Chapel Hill), Ladislav<br />
Kvasz (Prag), Christian Lubich (Tübingen), Ken Ono (Madi-<br />
son), Francisco Santos Leal (Cantabria) und Simone Warzel<br />
(München).<br />
Jahrestagung 19.-22.9.11 Köln<br />
3<br />
6<br />
8<br />
5<br />
3<br />
0<br />
8<br />
1<br />
2<br />
9<br />
0<br />
2<br />
3<br />
1<br />
2<br />
9<br />
2<br />
7<br />
1<br />
1<br />
5<br />
8<br />
8<br />
5<br />
3<br />
5<br />
7<br />
2<br />
3<br />
2<br />
0<br />
7<br />
6<br />
6<br />
7<br />
9<br />
4<br />
7<br />
3<br />
8<br />
1<br />
7<br />
8<br />
4<br />
7<br />
0<br />
6<br />
1<br />
5<br />
4<br />
0<br />
0<br />
8<br />
5<br />
6<br />
9<br />
0<br />
1<br />
4<br />
1<br />
1<br />
7<br />
0<br />
6<br />
6<br />
2<br />
9<br />
9<br />
5<br />
7<br />
1<br />
7<br />
2<br />
1<br />
5<br />
1<br />
2<br />
4<br />
6<br />
7<br />
4<br />
0<br />
3<br />
0<br />
5<br />
5<br />
3<br />
5<br />
9<br />
0<br />
5<br />
8<br />
5<br />
2<br />
2<br />
3<br />
4<br />
1<br />
5<br />
8<br />
6<br />
4<br />
5<br />
4<br />
9<br />
8<br />
7<br />
0<br />
4<br />
2<br />
7<br />
5<br />
1<br />
8<br />
7<br />
5<br />
3<br />
6<br />
7<br />
2<br />
6<br />
5<br />
9<br />
8<br />
3<br />
5<br />
1<br />
2<br />
2<br />
4<br />
4<br />
7<br />
4<br />
2<br />
3<br />
9<br />
7<br />
7<br />
5<br />
6<br />
3<br />
7<br />
8<br />
4<br />
6<br />
9<br />
1<br />
3<br />
4<br />
3<br />
4<br />
0<br />
8<br />
4<br />
2<br />
6<br />
7<br />
9<br />
0<br />
8<br />
1<br />
0<br />
9<br />
2<br />
3<br />
3<br />
5<br />
3<br />
5<br />
1<br />
2<br />
1<br />
6<br />
6<br />
2<br />
0<br />
6<br />
9<br />
9<br />
7<br />
4<br />
1<br />
1<br />
9<br />
2<br />
8<br />
4<br />
8<br />
6<br />
5<br />
6<br />
4<br />
6<br />
3<br />
3<br />
0<br />
7<br />
7<br />
9<br />
0<br />
8<br />
9<br />
1<br />
7<br />
7<br />
4<br />
0<br />
5<br />
0<br />
5<br />
3<br />
7<br />
7<br />
7<br />
1<br />
5<br />
8<br />
1<br />
0<br />
4<br />
9<br />
0<br />
1<br />
3<br />
1<br />
1<br />
8<br />
1<br />
8<br />
4<br />
6<br />
4<br />
4<br />
0<br />
5<br />
8<br />
8<br />
8<br />
7<br />
5<br />
3<br />
8<br />
4<br />
3<br />
9<br />
1<br />
7<br />
1<br />
2<br />
7<br />
4<br />
7<br />
5<br />
6<br />
5<br />
5<br />
5<br />
6<br />
8<br />
8<br />
1<br />
2<br />
7<br />
8<br />
4<br />
7<br />
6<br />
6<br />
6<br />
0<br />
9<br />
2<br />
0<br />
3<br />
9<br />
3<br />
1<br />
3<br />
1<br />
6<br />
1<br />
0<br />
4<br />
2<br />
7<br />
8<br />
2<br />
1<br />
1<br />
7<br />
0<br />
0<br />
9<br />
3<br />
7<br />
0<br />
3<br />
6<br />
5<br />
1<br />
5<br />
9<br />
1<br />
2<br />
5<br />
5<br />
4<br />
9<br />
5<br />
3<br />
7<br />
2<br />
2<br />
8<br />
3<br />
1<br />
3<br />
6<br />
3<br />
9<br />
1<br />
5<br />
3<br />
0<br />
9<br />
2<br />
7<br />
7<br />
2<br />
4<br />
9<br />
6<br />
8<br />
0<br />
7<br />
8<br />
8<br />
1<br />
7<br />
4<br />
9<br />
7<br />
0<br />
3<br />
5<br />
5<br />
5<br />
1<br />
2<br />
9<br />
6<br />
3<br />
1<br />
6<br />
9<br />
6<br />
2<br />
6<br />
1<br />
5<br />
9<br />
6<br />
6<br />
2<br />
1<br />
7<br />
5<br />
3<br />
7<br />
1<br />
6<br />
8<br />
6<br />
6<br />
4<br />
9<br />
9<br />
1<br />
3<br />
8<br />
2<br />
6<br />
4<br />
6<br />
7<br />
0<br />
5<br />
5<br />
7<br />
0<br />
1<br />
6<br />
4<br />
8<br />
2<br />
6<br />
7<br />
6<br />
9<br />
6<br />
4<br />
6<br />
0<br />
5<br />
9<br />
8<br />
9<br />
4<br />
3<br />
4<br />
9<br />
5<br />
1<br />
5<br />
4<br />
4<br />
2<br />
0<br />
8<br />
5<br />
7<br />
1<br />
6<br />
2<br />
2<br />
0<br />
0<br />
4<br />
2<br />
3<br />
6<br />
3<br />
6<br />
1<br />
1<br />
7<br />
2<br />
6<br />
0<br />
1<br />
2<br />
4<br />
1<br />
0<br />
6<br />
6<br />
6<br />
6<br />
2<br />
7<br />
2<br />
8<br />
7<br />
3<br />
7<br />
1<br />
2<br />
6<br />
8<br />
1<br />
7<br />
3<br />
3<br />
6<br />
1<br />
6<br />
1<br />
6<br />
2<br />
4<br />
5<br />
4<br />
1<br />
9<br />
7<br />
1<br />
4<br />
9<br />
2<br />
8<br />
7<br />
1<br />
2<br />
5<br />
8<br />
3<br />
8<br />
0<br />
1<br />
0<br />
5<br />
2<br />
2<br />
4<br />
8<br />
5<br />
2<br />
5<br />
6<br />
4<br />
4<br />
2<br />
4<br />
0<br />
1<br />
8<br />
7<br />
4<br />
4<br />
7<br />
1<br />
2<br />
9<br />
9<br />
9<br />
8<br />
1<br />
9<br />
1<br />
5<br />
5<br />
3<br />
3<br />
4<br />
7<br />
6<br />
6<br />
4<br />
7<br />
0<br />
3<br />
3<br />
3<br />
1<br />
0<br />
2<br />
3<br />
4<br />
6<br />
8<br />
8<br />
6<br />
2<br />
4<br />
5<br />
3<br />
6<br />
1<br />
2<br />
9<br />
9<br />
6<br />
8<br />
4<br />
9<br />
2<br />
4<br />
7<br />
5<br />
9<br />
1<br />
4<br />
1<br />
9<br />
6<br />
2<br />
1<br />
1<br />
0<br />
7<br />
2<br />
1<br />
1<br />
1<br />
4<br />
1<br />
0<br />
9<br />
1<br />
2<br />
0<br />
8<br />
6<br />
9<br />
8<br />
3<br />
4<br />
2<br />
1<br />
6<br />
3<br />
9<br />
5<br />
4<br />
1<br />
5<br />
8<br />
6<br />
0<br />
1<br />
5<br />
2<br />
5<br />
8<br />
0<br />
8<br />
7<br />
9<br />
2<br />
5<br />
1<br />
4<br />
9<br />
1<br />
5<br />
6<br />
0<br />
0<br />
3<br />
8<br />
4<br />
7<br />
5<br />
1<br />
7<br />
6<br />
5<br />
2<br />
5<br />
3<br />
7<br />
3<br />
3<br />
9<br />
4<br />
2<br />
4<br />
4<br />
4<br />
4<br />
0<br />
8<br />
3<br />
5<br />
6<br />
7<br />
0<br />
5<br />
8<br />
8<br />
4<br />
3<br />
5<br />
0<br />
5<br />
3<br />
7<br />
4<br />
5<br />
2<br />
1<br />
1<br />
5<br />
8<br />
3<br />
5<br />
3<br />
1<br />
1<br />
2<br />
4<br />
7<br />
5<br />
1<br />
1<br />
3<br />
8<br />
0<br />
6<br />
6<br />
4<br />
9<br />
5<br />
7<br />
0<br />
1<br />
4<br />
0<br />
1<br />
2<br />
1<br />
3<br />
8<br />
0<br />
6<br />
4<br />
2<br />
7<br />
9<br />
6<br />
5<br />
7<br />
5<br />
1<br />
0<br />
3<br />
5<br />
9<br />
3<br />
0<br />
9<br />
4<br />
5<br />
3<br />
3<br />
8<br />
2<br />
2<br />
2<br />
3<br />
0<br />
8<br />
1<br />
5<br />
8<br />
2<br />
3<br />
7<br />
5<br />
7<br />
9<br />
7<br />
5<br />
5<br />
9<br />
1<br />
4<br />
4<br />
0<br />
7<br />
4<br />
4<br />
6<br />
6<br />
2<br />
1<br />
7<br />
2<br />
4<br />
9<br />
5<br />
0<br />
2<br />
7<br />
6<br />
1<br />
9<br />
2<br />
1<br />
7<br />
3<br />
6<br />
4<br />
1<br />
9<br />
7<br />
5<br />
0<br />
0<br />
3<br />
9<br />
8<br />
3<br />
2<br />
6<br />
2<br />
5<br />
8<br />
7<br />
1<br />
6<br />
9<br />
4<br />
6<br />
5<br />
7<br />
7<br />
7<br />
5<br />
7<br />
0<br />
5<br />
4<br />
5<br />
1<br />
6<br />
3<br />
1<br />
4<br />
9<br />
8<br />
0<br />
6<br />
2<br />
0<br />
6<br />
6<br />
8<br />
7<br />
6<br />
1<br />
2<br />
7<br />
7<br />
7<br />
0<br />
1<br />
7<br />
3<br />
8<br />
8<br />
3<br />
8<br />
5<br />
9<br />
8<br />
3<br />
8<br />
8<br />
0<br />
4<br />
6<br />
2<br />
4<br />
9<br />
4<br />
8<br />
2<br />
9<br />
6<br />
2<br />
6<br />
4<br />
3<br />
1<br />
8<br />
9<br />
5<br />
2<br />
8<br />
8<br />
7<br />
2<br />
4<br />
6<br />
4<br />
9<br />
5<br />
3<br />
6<br />
8<br />
9<br />
6<br />
0<br />
4<br />
9<br />
6<br />
3<br />
7<br />
7<br />
9<br />
5<br />
6<br />
8<br />
5<br />
1<br />
3<br />
8<br />
6<br />
5<br />
2<br />
5<br />
8<br />
6<br />
6<br />
7<br />
5<br />
4<br />
6<br />
9<br />
5<br />
4<br />
3<br />
1<br />
9<br />
7<br />
4<br />
6<br />
1<br />
2<br />
9<br />
4<br />
4<br />
3<br />
6<br />
6<br />
2<br />
4<br />
5<br />
2<br />
9<br />
5<br />
8<br />
5<br />
8<br />
7<br />
3<br />
6<br />
5<br />
5<br />
7<br />
0<br />
2<br />
2<br />
1<br />
5<br />
3<br />
2<br />
9<br />
1<br />
4<br />
7<br />
2<br />
4<br />
0<br />
4<br />
5<br />
5<br />
6<br />
5<br />
5<br />
2<br />
4<br />
1<br />
6<br />
5<br />
7<br />
8<br />
9<br />
7<br />
3<br />
8<br />
5<br />
5<br />
8<br />
6<br />
9<br />
0<br />
1<br />
6<br />
9<br />
4<br />
8<br />
3<br />
2<br />
6<br />
4<br />
5<br />
4<br />
3<br />
6<br />
3<br />
1<br />
7<br />
6<br />
7<br />
8<br />
1<br />
1<br />
3<br />
9<br />
7<br />
7<br />
2<br />
2<br />
9<br />
0<br />
7<br />
9<br />
9<br />
8<br />
7<br />
6<br />
5<br />
0<br />
2<br />
9<br />
5<br />
1<br />
4<br />
0<br />
9<br />
6<br />
3<br />
7<br />
6<br />
7<br />
2<br />
5<br />
1<br />
8<br />
2<br />
4<br />
4<br />
1<br />
1<br />
5<br />
0<br />
4<br />
3<br />
7<br />
9<br />
5<br />
6<br />
5<br />
8<br />
0<br />
7<br />
2<br />
6<br />
5<br />
1<br />
7<br />
5<br />
4<br />
0<br />
8<br />
7<br />
8<br />
1<br />
7<br />
7<br />
3<br />
9<br />
5<br />
3<br />
1<br />
9<br />
1<br />
0<br />
9<br />
2<br />
0<br />
6<br />
1<br />
5<br />
4<br />
3<br />
6<br />
7<br />
9<br />
3<br />
5<br />
0<br />
9<br />
5<br />
0<br />
8<br />
8<br />
3<br />
0<br />
7<br />
5<br />
8<br />
5<br />
2<br />
6<br />
2<br />
9<br />
5<br />
9<br />
0<br />
6<br />
6<br />
0<br />
2<br />
6<br />
0<br />
3<br />
2<br />
4<br />
9<br />
8<br />
5<br />
5<br />
2<br />
1<br />
1<br />
3<br />
7<br />
8<br />
1<br />
2<br />
2<br />
3<br />
7<br />
3<br />
9<br />
8<br />
5<br />
4<br />
5<br />
3<br />
3<br />
3<br />
0<br />
3<br />
8<br />
6<br />
7<br />
9<br />
7<br />
3<br />
8<br />
6<br />
3<br />
5<br />
2<br />
5<br />
5<br />
1<br />
9<br />
7<br />
3<br />
9<br />
9<br />
5<br />
5<br />
9<br />
5<br />
5<br />
7<br />
4<br />
7<br />
0<br />
2<br />
7<br />
2<br />
4<br />
4<br />
2<br />
2<br />
0<br />
9<br />
3<br />
5<br />
0<br />
7<br />
8<br />
1<br />
1<br />
5<br />
3<br />
0<br />
3<br />
6<br />
9<br />
8<br />
9<br />
9<br />
2<br />
5<br />
7<br />
2<br />
1<br />
3<br />
9<br />
6<br />
7<br />
5<br />
9<br />
4<br />
7<br />
1<br />
4<br />
2<br />
4<br />
8<br />
2<br />
3<br />
4<br />
7<br />
1<br />
5<br />
8<br />
7<br />
7<br />
2<br />
0<br />
3<br />
2<br />
3<br />
7<br />
2<br />
5<br />
9<br />
5<br />
1<br />
5<br />
6<br />
9<br />
2<br />
4<br />
2<br />
7<br />
8<br />
6<br />
2<br />
6<br />
2<br />
7<br />
7<br />
1<br />
2<br />
1<br />
2<br />
4<br />
5<br />
6<br />
9<br />
8<br />
1<br />
4<br />
1<br />
5<br />
6<br />
8<br />
5<br />
2<br />
7<br />
5<br />
6<br />
1<br />
1<br />
4<br />
0<br />
1<br />
1<br />
1<br />
2<br />
0<br />
7<br />
2<br />
2<br />
6<br />
7<br />
4<br />
2<br />
4<br />
7<br />
9<br />
5<br />
9<br />
7<br />
7<br />
0<br />
7<br />
2<br />
8<br />
6<br />
9<br />
2<br />
6<br />
6<br />
8<br />
3<br />
4<br />
0<br />
7<br />
8<br />
4<br />
6<br />
9<br />
6<br />
8<br />
9<br />
6<br />
6<br />
1<br />
7<br />
8<br />
6<br />
5<br />
4<br />
8<br />
5<br />
7<br />
3<br />
7<br />
0<br />
1<br />
1<br />
2<br />
5<br />
2<br />
4<br />
2<br />
6<br />
7<br />
0<br />
8<br />
6<br />
9<br />
1<br />
1<br />
5<br />
6<br />
9<br />
0<br />
2<br />
9<br />
3<br />
4<br />
3<br />
8<br />
3<br />
6<br />
4<br />
1<br />
6<br />
8<br />
0<br />
7<br />
0<br />
7<br />
7<br />
4<br />
8<br />
1<br />
5<br />
3<br />
4<br />
9<br />
9<br />
0<br />
2<br />
0<br />
6<br />
2<br />
1<br />
8<br />
2<br />
1<br />
1<br />
8<br />
1<br />
7<br />
0<br />
0<br />
9<br />
8<br />
1<br />
8<br />
6<br />
3<br />
9<br />
0<br />
9<br />
0<br />
6<br />
5<br />
2<br />
3<br />
2<br />
0<br />
0<br />
3<br />
2<br />
1<br />
8<br />
8<br />
9<br />
7<br />
4<br />
3<br />
2<br />
7<br />
0<br />
8<br />
8<br />
0<br />
1<br />
0<br />
2<br />
1<br />
1<br />
6<br />
3<br />
2<br />
2<br />
2<br />
2<br />
3<br />
1<br />
2<br />
7<br />
1<br />
0<br />
0<br />
9<br />
8<br />
0<br />
6<br />
6<br />
7<br />
8<br />
4<br />
7<br />
7<br />
1<br />
9<br />
7<br />
8<br />
4<br />
3<br />
4<br />
1<br />
9<br />
2<br />
1<br />
5<br />
3<br />
7<br />
8<br />
2<br />
3<br />
9<br />
7<br />
4<br />
6<br />
0<br />
1<br />
0<br />
2<br />
1<br />
9<br />
7<br />
4<br />
5<br />
9<br />
6<br />
8<br />
4<br />
4<br />
4<br />
6<br />
6<br />
6<br />
3<br />
3<br />
9<br />
8<br />
2<br />
4<br />
1<br />
2<br />
5<br />
7<br />
8<br />
8<br />
7<br />
9<br />
7<br />
9<br />
8<br />
0<br />
1<br />
3<br />
1<br />
0<br />
7<br />
7<br />
8<br />
2<br />
1<br />
2<br />
3<br />
6<br />
6<br />
5<br />
6<br />
1<br />
4<br />
9<br />
5<br />
3<br />
5<br />
6<br />
6<br />
3<br />
6<br />
1<br />
3<br />
0<br />
7<br />
1<br />
5<br />
0<br />
2<br />
5<br />
7<br />
3<br />
3<br />
2<br />
2<br />
7<br />
0<br />
6<br />
4<br />
8<br />
6<br />
9<br />
7<br />
5<br />
5<br />
6<br />
9<br />
8<br />
3<br />
6<br />
5<br />
1<br />
7<br />
2<br />
0<br />
9<br />
2<br />
7<br />
5<br />
9<br />
2<br />
0<br />
1<br />
9<br />
7<br />
5<br />
8<br />
6<br />
3<br />
9<br />
3<br />
1<br />
4<br />
6<br />
1<br />
1<br />
1<br />
2<br />
5<br />
7<br />
8<br />
3<br />
5<br />
4<br />
1<br />
7<br />
8<br />
1<br />
4<br />
8<br />
3<br />
4<br />
3<br />
4<br />
4<br />
2<br />
7<br />
8<br />
1<br />
4<br />
1<br />
1<br />
2<br />
7<br />
8<br />
2<br />
1<br />
1<br />
0<br />
2<br />
5<br />
4<br />
9<br />
7<br />
2<br />
0<br />
3<br />
5<br />
0<br />
3<br />
1<br />
0<br />
9<br />
1<br />
8<br />
3<br />
6<br />
8<br />
4<br />
8<br />
8<br />
1<br />
9<br />
3<br />
2<br />
5<br />
1<br />
0<br />
7<br />
3<br />
6<br />
8<br />
5<br />
3<br />
0<br />
8<br />
0<br />
4<br />
6<br />
8<br />
8<br />
2<br />
6<br />
0<br />
4<br />
5<br />
2<br />
4<br />
1<br />
1<br />
4<br />
4<br />
6<br />
0<br />
8<br />
4<br />
5<br />
3<br />
3<br />
6<br />
6<br />
0<br />
5<br />
9<br />
8<br />
6<br />
8<br />
1<br />
7<br />
9<br />
9<br />
1<br />
1<br />
1<br />
5<br />
0<br />
7<br />
4<br />
4<br />
9<br />
2<br />
8<br />
7<br />
2<br />
8<br />
1<br />
8<br />
4<br />
4<br />
1<br />
8<br />
0<br />
8<br />
1<br />
6<br />
9<br />
0<br />
9<br />
1<br />
1<br />
2<br />
4<br />
4<br />
0<br />
1<br />
7<br />
2<br />
7<br />
0<br />
5<br />
2<br />
1<br />
1<br />
0<br />
5<br />
5<br />
7<br />
6<br />
1<br />
5<br />
6<br />
1<br />
9<br />
6<br />
4<br />
3<br />
2<br />
7<br />
9<br />
1<br />
4<br />
6<br />
6<br />
6<br />
7<br />
4<br />
6<br />
2<br />
0<br />
8<br />
0<br />
8<br />
7<br />
8<br />
2<br />
7<br />
8<br />
5<br />
9<br />
9<br />
9<br />
1<br />
9<br />
9<br />
7<br />
3<br />
0<br />
4<br />
5<br />
8<br />
8<br />
6<br />
0<br />
2<br />
3<br />
3<br />
8<br />
9<br />
1<br />
1<br />
4<br />
5<br />
3<br />
9<br />
7<br />
3<br />
2<br />
8<br />
6<br />
2<br />
1<br />
0<br />
6<br />
8<br />
9<br />
4<br />
1<br />
8<br />
3<br />
5<br />
5<br />
4<br />
8<br />
2<br />
0<br />
4<br />
5<br />
4<br />
2<br />
9<br />
5<br />
6<br />
7<br />
2<br />
6<br />
1<br />
5<br />
0<br />
2<br />
7<br />
3<br />
7<br />
1<br />
9<br />
1<br />
9<br />
5<br />
9<br />
5<br />
3<br />
8<br />
8<br />
9<br />
8<br />
9<br />
8<br />
0<br />
1<br />
6<br />
4<br />
6<br />
0<br />
1<br />
4<br />
3<br />
6<br />
5<br />
7<br />
9<br />
8<br />
6<br />
9<br />
5<br />
2<br />
7<br />
8<br />
1<br />
4<br />
1<br />
9<br />
1<br />
1<br />
6<br />
4<br />
5<br />
1<br />
9<br />
1<br />
9<br />
2<br />
9<br />
0<br />
9<br />
9<br />
8<br />
6<br />
9<br />
3<br />
6<br />
1<br />
7<br />
7<br />
9<br />
7<br />
5<br />
1<br />
3<br />
2<br />
4<br />
1<br />
9<br />
4<br />
6<br />
6<br />
6<br />
3<br />
9<br />
1<br />
1<br />
5<br />
4<br />
7<br />
8<br />
7<br />
5<br />
0<br />
1<br />
5<br />
9<br />
4<br />
3<br />
1<br />
2<br />
4<br />
5<br />
4<br />
0<br />
8<br />
2<br />
7<br />
3<br />
8<br />
7<br />
8<br />
2<br />
7<br />
4<br />
2<br />
5<br />
9<br />
7<br />
1<br />
4<br />
0<br />
9<br />
6<br />
5<br />
3<br />
1<br />
1<br />
6<br />
1<br />
8<br />
8<br />
3<br />
0<br />
0<br />
3<br />
6<br />
1<br />
0<br />
4<br />
0<br />
2<br />
1<br />
5<br />
1<br />
4<br />
4<br />
9<br />
3<br />
1<br />
9<br />
3<br />
7<br />
5<br />
5<br />
2<br />
7<br />
8<br />
8<br />
8<br />
0<br />
4<br />
2<br />
3<br />
5<br />
6<br />
7<br />
4<br />
4<br />
7<br />
6<br />
3<br />
1<br />
8<br />
8<br />
9<br />
7<br />
5<br />
8<br />
8<br />
4<br />
5<br />
8<br />
0<br />
3<br />
2<br />
0<br />
6<br />
3<br />
4<br />
5<br />
1<br />
2<br />
2<br />
4<br />
0<br />
4<br />
9<br />
0<br />
0<br />
3<br />
4<br />
4<br />
7<br />
4<br />
3<br />
5<br />
2<br />
3<br />
4<br />
0<br />
6<br />
0<br />
8<br />
7<br />
6<br />
2<br />
2<br />
0<br />
8<br />
5<br />
8<br />
5<br />
6<br />
2<br />
4<br />
2<br />
5<br />
2<br />
3<br />
7<br />
9<br />
7<br />
3<br />
2<br />
5<br />
5<br />
0<br />
3<br />
2<br />
0<br />
1<br />
2<br />
9<br />
1<br />
2<br />
8<br />
3<br />
1<br />
1<br />
3<br />
3<br />
5<br />
0<br />
1<br />
9<br />
6<br />
6<br />
6<br />
2<br />
6<br />
9<br />
8<br />
6<br />
1<br />
2<br />
5<br />
8<br />
2<br />
1<br />
3<br />
8<br />
8<br />
3<br />
3<br />
1<br />
0<br />
7<br />
2<br />
4<br />
5<br />
7<br />
3<br />
7<br />
4<br />
3<br />
6<br />
0<br />
4<br />
0<br />
3<br />
8<br />
9<br />
3<br />
5<br />
0<br />
8<br />
0<br />
2<br />
9<br />
7<br />
3<br />
5<br />
1<br />
2<br />
3<br />
4<br />
9<br />
2<br />
1<br />
5<br />
6<br />
9<br />
0<br />
7<br />
9<br />
3<br />
0<br />
9<br />
0<br />
8<br />
0<br />
8<br />
7<br />
9<br />
3<br />
2<br />
7<br />
6<br />
6<br />
4<br />
8<br />
3<br />
7<br />
6<br />
7<br />
1<br />
6<br />
2<br />
6<br />
1<br />
0<br />
6<br />
6<br />
3<br />
7<br />
4<br />
3<br />
8<br />
0<br />
7<br />
1<br />
1<br />
2<br />
4<br />
1<br />
0<br />
3<br />
5<br />
9<br />
9<br />
5<br />
7<br />
5<br />
4<br />
4<br />
5<br />
9<br />
2<br />
3<br />
1<br />
8<br />
1<br />
2<br />
8<br />
8<br />
7<br />
7<br />
5<br />
2<br />
5<br />
5<br />
6<br />
7<br />
4<br />
5<br />
4<br />
2<br />
5<br />
2<br />
4<br />
4<br />
1<br />
5<br />
1<br />
6<br />
9<br />
9<br />
5<br />
4<br />
1<br />
6<br />
0<br />
6<br />
4<br />
6<br />
8<br />
6<br />
4<br />
4<br />
1<br />
9<br />
8<br />
2<br />
9<br />
3<br />
7<br />
8<br />
5<br />
5<br />
4<br />
8<br />
9<br />
8<br />
6<br />
3<br />
1<br />
2<br />
9<br />
2<br />
5<br />
6<br />
2<br />
8<br />
2<br />
6<br />
5<br />
2<br />
5<br />
2<br />
3<br />
9<br />
6<br />
0<br />
0<br />
1<br />
8<br />
5<br />
2<br />
6<br />
6<br />
8<br />
8<br />
4<br />
0<br />
6<br />
6<br />
9<br />
9<br />
8<br />
9<br />
8<br />
0<br />
7<br />
4<br />
3<br />
2<br />
9<br />
1<br />
0<br />
3<br />
5<br />
1<br />
4<br />
2<br />
3<br />
3<br />
6<br />
5<br />
7<br />
8<br />
7<br />
0<br />
4<br />
5<br />
9<br />
0<br />
3<br />
2<br />
4<br />
8<br />
6<br />
0<br />
8<br />
4<br />
2<br />
1<br />
1<br />
1<br />
8<br />
4<br />
0<br />
0<br />
1<br />
1<br />
5<br />
4<br />
6<br />
9<br />
9<br />
8<br />
7<br />
9<br />
2<br />
0<br />
2<br />
4<br />
1<br />
3<br />
6<br />
4<br />
0<br />
6<br />
2<br />
0<br />
7<br />
9<br />
2<br />
1<br />
7<br />
7<br />
1<br />
5<br />
5<br />
0<br />
6<br />
5<br />
9<br />
2<br />
8<br />
7<br />
7<br />
9<br />
0<br />
0<br />
8<br />
2<br />
2<br />
6<br />
9<br />
6<br />
9<br />
7<br />
4<br />
0<br />
4<br />
6<br />
9<br />
2<br />
9<br />
4<br />
6<br />
8<br />
6<br />
8<br />
5<br />
0<br />
9<br />
8<br />
7<br />
0<br />
0<br />
0<br />
9<br />
0<br />
6<br />
9<br />
5<br />
0<br />
0<br />
6<br />
2<br />
0<br />
8<br />
3<br />
6<br />
3<br />
3<br />
9<br />
5<br />
8<br />
1<br />
4<br />
1<br />
1<br />
6<br />
0<br />
6<br />
4<br />
8<br />
2<br />
6<br />
9<br />
3<br />
7<br />
6<br />
2<br />
9<br />
0<br />
8<br />
4<br />
6<br />
6<br />
7<br />
9<br />
0<br />
5<br />
5<br />
5<br />
0<br />
8<br />
5<br />
4<br />
3<br />
5<br />
7<br />
1<br />
4<br />
9<br />
6<br />
3<br />
7<br />
5<br />
7<br />
9<br />
7<br />
5<br />
6<br />
2<br />
6<br />
2<br />
6<br />
2<br />
0<br />
3<br />
0<br />
0<br />
1<br />
3<br />
3<br />
4<br />
7<br />
3<br />
9<br />
0<br />
5<br />
0<br />
9<br />
5<br />
2<br />
4<br />
0<br />
6<br />
6<br />
6<br />
5<br />
3<br />
8<br />
9<br />
4<br />
5<br />
7<br />
0<br />
7<br />
0<br />
4<br />
9<br />
7<br />
4<br />
7<br />
3<br />
7<br />
7<br />
2<br />
6<br />
4<br />
6<br />
2<br />
0<br />
1<br />
2<br />
7<br />
6<br />
9<br />
3<br />
2<br />
7<br />
9<br />
7<br />
5<br />
7<br />
4<br />
9<br />
9<br />
0<br />
8<br />
1<br />
0<br />
8<br />
5<br />
8<br />
9<br />
8<br />
6<br />
8<br />
2<br />
9<br />
0<br />
4<br />
5<br />
7<br />
5<br />
5<br />
0<br />
8<br />
9<br />
1<br />
2<br />
8<br />
6<br />
0<br />
4<br />
7<br />
2<br />
1<br />
2<br />
9<br />
0<br />
5<br />
2<br />
8<br />
0<br />
9<br />
8<br />
2<br />
4<br />
8<br />
4<br />
7<br />
9<br />
2<br />
0<br />
3<br />
1<br />
0<br />
0<br />
5<br />
0<br />
8<br />
5<br />
6<br />
9<br />
8<br />
3<br />
2<br />
7<br />
7<br />
1<br />
7<br />
1<br />
3<br />
2<br />
7<br />
4<br />
5<br />
0<br />
1<br />
8<br />
1<br />
0<br />
5<br />
7<br />
6<br />
6<br />
8<br />
2<br />
2<br />
9<br />
0<br />
5<br />
5<br />
4<br />
8<br />
8<br />
7<br />
3<br />
3<br />
9<br />
1<br />
4<br />
6<br />
2<br />
9<br />
1<br />
7<br />
8<br />
6<br />
2<br />
4<br />
5<br />
6<br />
2<br />
6<br />
4<br />
2<br />
7<br />
2<br />
0<br />
6<br />
2<br />
0<br />
6<br />
9<br />
1<br />
9<br />
2<br />
7<br />
5<br />
8<br />
9<br />
3<br />
3<br />
3<br />
8<br />
1<br />
2<br />
2<br />
2<br />
6<br />
2<br />
7<br />
8<br />
1<br />
3<br />
3<br />
5<br />
0<br />
2<br />
6<br />
9<br />
2<br />
9<br />
3<br />
1<br />
1<br />
2<br />
9<br />
8<br />
2<br />
1<br />
6<br />
5<br />
4<br />
9<br />
5<br />
4<br />
7<br />
7<br />
5<br />
3<br />
1<br />
7<br />
1<br />
4<br />
4<br />
5<br />
0<br />
2<br />
6<br />
5<br />
8<br />
7<br />
9<br />
3<br />
1<br />
2<br />
5<br />
5<br />
1<br />
3<br />
8<br />
1<br />
3<br />
9<br />
8<br />
6<br />
9<br />
6<br />
5<br />
8<br />
9<br />
0<br />
2<br />
9<br />
2<br />
5<br />
1<br />
0<br />
4<br />
3<br />
2<br />
3<br />
9<br />
5<br />
7<br />
0<br />
9<br />
2<br />
1<br />
7<br />
3<br />
1<br />
1<br />
4<br />
6<br />
8<br />
9<br />
8<br />
9<br />
6<br />
3<br />
0<br />
0<br />
2<br />
3<br />
8<br />
0<br />
2<br />
9<br />
5<br />
9<br />
9<br />
4<br />
7<br />
9<br />
0<br />
0<br />
9<br />
2<br />
7<br />
1<br />
6<br />
8<br />
9<br />
1<br />
4<br />
5<br />
9<br />
7<br />
6<br />
4<br />
4<br />
9<br />
2<br />
0<br />
5<br />
6<br />
0<br />
1<br />
8<br />
2<br />
2<br />
3<br />
8<br />
8<br />
2<br />
6<br />
3<br />
9<br />
1<br />
4<br />
8<br />
9<br />
1<br />
2<br />
9<br />
4<br />
2<br />
7<br />
9<br />
5<br />
6<br />
1<br />
7<br />
8<br />
7<br />
0<br />
7<br />
9<br />
1<br />
9<br />
2<br />
5<br />
8<br />
1<br />
3<br />
4<br />
0<br />
0<br />
3<br />
4<br />
9<br />
7<br />
1<br />
8<br />
9<br />
4<br />
7<br />
5<br />
5<br />
5<br />
6<br />
5<br />
0<br />
7<br />
4<br />
2<br />
1<br />
0<br />
0<br />
9<br />
2<br />
7<br />
4<br />
0<br />
3<br />
7<br />
8<br />
6<br />
5<br />
6<br />
4<br />
4<br />
5<br />
1<br />
8<br />
5<br />
1<br />
9<br />
8<br />
4<br />
9<br />
3<br />
4<br />
2<br />
4<br />
1<br />
8<br />
9<br />
8<br />
4<br />
6<br />
5<br />
5<br />
3<br />
3<br />
0<br />
2<br />
3<br />
3<br />
8<br />
6<br />
7<br />
3<br />
9<br />
8<br />
7<br />
0<br />
8<br />
4<br />
2<br />
9<br />
6<br />
3<br />
9<br />
8<br />
3<br />
7<br />
2<br />
4<br />
5<br />
5<br />
6<br />
6<br />
2<br />
7<br />
1<br />
6<br />
9<br />
3<br />
5<br />
8<br />
9<br />
9<br />
3<br />
0<br />
5<br />
1<br />
4<br />
8<br />
4<br />
1<br />
7<br />
6<br />
3<br />
9<br />
7<br />
6<br />
1<br />
3<br />
4<br />
6<br />
8<br />
1<br />
6<br />
6<br />
7<br />
4<br />
8<br />
0<br />
7<br />
3<br />
3<br />
7<br />
2<br />
8<br />
0<br />
4<br />
9<br />
8<br />
9<br />
9<br />
9<br />
2<br />
8<br />
7<br />
5<br />
5<br />
9<br />
8<br />
9<br />
2<br />
5<br />
1<br />
5<br />
3<br />
4<br />
4<br />
9<br />
0<br />
2<br />
7<br />
4<br />
4<br />
8<br />
4<br />
1<br />
0<br />
4<br />
3<br />
8<br />
4<br />
1<br />
3<br />
4<br />
3<br />
0<br />
1<br />
1<br />
3<br />
9<br />
9<br />
2<br />
1<br />
4<br />
1<br />
1<br />
6<br />
5<br />
8<br />
8<br />
1<br />
3<br />
4<br />
7<br />
3<br />
0<br />
6<br />
5<br />
8<br />
5<br />
7<br />
4<br />
5<br />
1<br />
7<br />
4<br />
3<br />
1<br />
3<br />
9<br />
3<br />
0<br />
5<br />
1<br />
2<br />
1<br />
0<br />
8<br />
7<br />
5<br />
4<br />
2<br />
3<br />
9<br />
1<br />
6<br />
4<br />
8<br />
2<br />
9<br />
6<br />
2<br />
1<br />
4<br />
6<br />
2<br />
1<br />
6<br />
4<br />
6<br />
0<br />
9<br />
0<br />
1<br />
5<br />
6<br />
8<br />
7<br />
5<br />
9<br />
4<br />
8<br />
5<br />
4<br />
9<br />
0<br />
0<br />
7<br />
2<br />
0<br />
0<br />
4<br />
4<br />
9<br />
3<br />
5<br />
9<br />
0<br />
5<br />
3<br />
2<br />
2<br />
0<br />
7<br />
4<br />
9<br />
6<br />
4<br />
9<br />
6<br />
0<br />
9<br />
6<br />
0<br />
5<br />
4<br />
9<br />
9<br />
8<br />
1<br />
7<br />
2<br />
1<br />
5<br />
9<br />
8<br />
8<br />
1<br />
4<br />
5<br />
0<br />
9<br />
3<br />
4<br />
0<br />
0<br />
2<br />
9<br />
7<br />
0<br />
2<br />
5<br />
0<br />
0<br />
6<br />
9<br />
1<br />
1<br />
1<br />
3<br />
8<br />
1<br />
6<br />
4<br />
0<br />
3<br />
2<br />
2<br />
6<br />
8<br />
7<br />
8<br />
0<br />
4<br />
7<br />
5<br />
8<br />
0<br />
9<br />
0<br />
5<br />
9<br />
2<br />
8<br />
6<br />
9<br />
9<br />
4<br />
4<br />
3<br />
4<br />
0<br />
4<br />
0<br />
2<br />
7<br />
1<br />
9<br />
6<br />
4<br />
8<br />
1<br />
1<br />
3<br />
7<br />
3<br />
1<br />
6<br />
2<br />
3<br />
5<br />
3<br />
9<br />
6<br />
2<br />
4<br />
4<br />
4<br />
9<br />
7<br />
1<br />
5<br />
4<br />
8<br />
1<br />
1<br />
5<br />
8<br />
6<br />
6<br />
6<br />
7<br />
4<br />
3<br />
9<br />
0<br />
4<br />
2<br />
9<br />
5<br />
9<br />
6<br />
8<br />
7<br />
9<br />
0<br />
4<br />
2<br />
4<br />
7<br />
5<br />
6<br />
8<br />
4<br />
5<br />
0<br />
4<br />
8<br />
5<br />
6<br />
0<br />
4<br />
9<br />
1<br />
6<br />
2<br />
4<br />
4<br />
5<br />
8<br />
8<br />
3<br />
3<br />
6<br />
9<br />
6<br />
7<br />
9<br />
0<br />
1<br />
6<br />
9<br />
0<br />
8<br />
7<br />
8<br />
4<br />
2<br />
7<br />
1<br />
2<br />
5<br />
7<br />
1<br />
3<br />
6<br />
1<br />
9<br />
0<br />
4<br />
6<br />
9<br />
0<br />
3<br />
7<br />
5<br />
8<br />
2<br />
4<br />
0<br />
6<br />
6<br />
1<br />
2<br />
7<br />
0<br />
1<br />
0<br />
1<br />
8<br />
9<br />
4<br />
9<br />
4<br />
3<br />
7<br />
1<br />
5<br />
5<br />
2<br />
9<br />
7<br />
7<br />
0<br />
3<br />
2<br />
7<br />
5<br />
3<br />
6<br />
2<br />
2<br />
7<br />
1<br />
0<br />
3<br />
0<br />
9<br />
4<br />
3<br />
1<br />
1<br />
5<br />
1<br />
7<br />
3<br />
6<br />
9<br />
8<br />
5<br />
6<br />
7<br />
5<br />
6<br />
0<br />
6<br />
8<br />
9<br />
9<br />
9<br />
5<br />
2<br />
4<br />
2<br />
7<br />
9<br />
9<br />
5<br />
5<br />
2<br />
9<br />
2<br />
7<br />
2<br />
6<br />
7<br />
7<br />
3<br />
0<br />
9<br />
3<br />
8<br />
1<br />
1<br />
5<br />
1<br />
3<br />
1<br />
8<br />
2<br />
8<br />
1<br />
3<br />
6<br />
3<br />
7<br />
1<br />
0<br />
4<br />
9<br />
2<br />
2<br />
3<br />
2<br />
8<br />
3<br />
8<br />
3<br />
6<br />
3<br />
3<br />
7<br />
9<br />
7<br />
0<br />
0<br />
5<br />
3<br />
1<br />
6<br />
7<br />
0<br />
6<br />
6<br />
1<br />
3<br />
9<br />
5<br />
7<br />
4<br />
9<br />
8<br />
7<br />
2<br />
4<br />
3<br />
5<br />
5<br />
7<br />
6<br />
6<br />
1<br />
1<br />
3<br />
7<br />
6<br />
4<br />
0<br />
7<br />
2<br />
4<br />
5<br />
7<br />
2<br />
6<br />
9<br />
6<br />
7<br />
0<br />
9<br />
5<br />
3<br />
3<br />
5<br />
2<br />
5<br />
7<br />
0<br />
1<br />
5<br />
9<br />
3<br />
8<br />
3<br />
3<br />
8<br />
6<br />
0<br />
6<br />
0<br />
6<br />
1<br />
4<br />
6<br />
5<br />
0<br />
7<br />
3<br />
0<br />
3<br />
4<br />
3<br />
0<br />
9<br />
2<br />
1<br />
8<br />
3<br />
5<br />
9<br />
2<br />
1<br />
0<br />
8<br />
7<br />
9<br />
5<br />
7<br />
1<br />
1<br />
4<br />
2<br />
0<br />
5<br />
9<br />
4<br />
8<br />
2<br />
4<br />
8<br />
0<br />
9<br />
4<br />
1<br />
1<br />
9<br />
1<br />
8<br />
6<br />
2<br />
7<br />
1<br />
3<br />
3<br />
9<br />
4<br />
5<br />
2<br />
9<br />
6<br />
3<br />
9<br />
6<br />
3<br />
8<br />
2<br />
2<br />
0<br />
0<br />
7<br />
4<br />
5<br />
9<br />
0<br />
0<br />
2<br />
5<br />
5<br />
0<br />
0<br />
3<br />
1<br />
7<br />
9<br />
8<br />
5<br />
6<br />
9<br />
4<br />
9<br />
7<br />
6<br />
1<br />
8<br />
5<br />
7<br />
3<br />
6<br />
3<br />
5<br />
2<br />
8<br />
5<br />
7<br />
4<br />
6<br />
0<br />
4<br />
9<br />
9<br />
6<br />
5<br />
4<br />
2<br />
2<br />
9<br />
3<br />
7<br />
6<br />
9<br />
1<br />
4<br />
5<br />
0<br />
6<br />
5<br />
2<br />
5<br />
1<br />
8<br />
8<br />
7<br />
7<br />
6<br />
9<br />
7<br />
1<br />
1<br />
1<br />
0<br />
5<br />
9<br />
8<br />
6<br />
9<br />
7<br />
4<br />
8<br />
4<br />
9<br />
5<br />
1<br />
6<br />
9<br />
4<br />
3<br />
0<br />
5<br />
3<br />
1<br />
4<br />
4<br />
2<br />
9<br />
3<br />
8<br />
4<br />
8<br />
7<br />
7<br />
8<br />
1<br />
0<br />
7<br />
2<br />
2<br />
6<br />
3<br />
3<br />
3<br />
6<br />
5<br />
7<br />
0<br />
0<br />
1<br />
5<br />
3<br />
2<br />
3<br />
4<br />
8<br />
7<br />
6<br />
8<br />
9<br />
2<br />
5<br />
5<br />
8<br />
9<br />
5<br />
0<br />
4<br />
2<br />
1<br />
3<br />
6<br />
3<br />
7<br />
6<br />
0<br />
4<br />
4<br />
8<br />
9<br />
6<br />
5<br />
3<br />
0<br />
2<br />
7<br />
4<br />
7<br />
8<br />
0<br />
2<br />
7<br />
6<br />
5<br />
6<br />
9<br />
1<br />
8<br />
9<br />
3<br />
3<br />
1<br />
1<br />
1<br />
7<br />
0<br />
5<br />
5<br />
7<br />
8<br />
5<br />
4<br />
4<br />
1<br />
7<br />
9<br />
5<br />
2<br />
3<br />
8<br />
1<br />
1<br />
0<br />
9<br />
5<br />
9<br />
8<br />
0<br />
9<br />
0<br />
5<br />
5<br />
1<br />
3<br />
2<br />
6<br />
9<br />
4<br />
5<br />
5<br />
8<br />
6<br />
1<br />
3<br />
4<br />
2<br />
5<br />
7<br />
8<br />
3<br />
4<br />
3<br />
0<br />
9<br />
2<br />
2<br />
9<br />
3<br />
0<br />
1<br />
3<br />
4<br />
2<br />
0<br />
8<br />
6<br />
3<br />
2<br />
0<br />
2<br />
8<br />
0<br />
4<br />
6<br />
2<br />
6<br />
8<br />
2<br />
7<br />
2<br />
3<br />
9<br />
3<br />
8<br />
6<br />
1<br />
0<br />
4<br />
6<br />
9<br />
2<br />
6<br />
1<br />
3<br />
0<br />
1<br />
2<br />
9<br />
0<br />
1<br />
2<br />
8<br />
7<br />
8<br />
2<br />
8<br />
5<br />
0<br />
8<br />
7<br />
9<br />
5<br />
1<br />
6<br />
1<br />
6<br />
7<br />
2<br />
8<br />
1<br />
6<br />
6<br />
6<br />
0<br />
4<br />
5<br />
4<br />
7<br />
3<br />
3<br />
1<br />
9<br />
2<br />
3<br />
0<br />
6<br />
4<br />
1<br />
6<br />
2<br />
2<br />
8<br />
8<br />
7<br />
5<br />
7<br />
5<br />
4<br />
4<br />
6<br />
7<br />
6<br />
9<br />
6<br />
1<br />
4<br />
5<br />
3<br />
1<br />
5<br />
5<br />
0<br />
9<br />
2<br />
6<br />
6<br />
6<br />
7<br />
4<br />
4<br />
7<br />
3<br />
9<br />
2<br />
5<br />
5<br />
4<br />
2<br />
6<br />
5<br />
9<br />
5<br />
2<br />
7<br />
8<br />
1<br />
6<br />
4<br />
1<br />
5<br />
7<br />
1<br />
6<br />
7<br />
6<br />
5<br />
1<br />
6<br />
2<br />
6<br />
3<br />
4<br />
1<br />
3<br />
0<br />
0<br />
0<br />
1<br />
9<br />
4<br />
4<br />
8<br />
5<br />
7<br />
2<br />
7<br />
3<br />
0<br />
7<br />
4<br />
0<br />
8<br />
6<br />
4<br />
6<br />
8<br />
1<br />
8<br />
7<br />
4<br />
4<br />
0<br />
2<br />
8<br />
9<br />
5<br />
9<br />
4<br />
0<br />
7<br />
9<br />
3<br />
2<br />
5<br />
9<br />
3<br />
7<br />
4<br />
6<br />
7<br />
2<br />
3<br />
2<br />
4<br />
2<br />
0<br />
1<br />
1<br />
4<br />
1<br />
2<br />
6<br />
6<br />
0<br />
6<br />
3<br />
2<br />
7<br />
3<br />
5<br />
4<br />
8<br />
9<br />
8<br />
6<br />
3<br />
4<br />
1<br />
0<br />
9<br />
7<br />
4<br />
7<br />
7<br />
0<br />
2<br />
9<br />
6<br />
6<br />
1<br />
2<br />
1<br />
4<br />
7<br />
2<br />
4<br />
2<br />
0<br />
2<br />
4<br />
9<br />
1<br />
3<br />
5<br />
6<br />
1<br />
2<br />
0<br />
5<br />
3<br />
7<br />
2<br />
4<br />
5<br />
8<br />
9<br />
6<br />
1<br />
4<br />
8<br />
9<br />
1<br />
6<br />
4<br />
0<br />
4<br />
9<br />
2<br />
5<br />
2<br />
0<br />
3<br />
3<br />
4<br />
9<br />
3<br />
3<br />
6<br />
0<br />
7<br />
2<br />
7<br />
1<br />
4<br />
4<br />
8<br />
0<br />
8<br />
0<br />
8<br />
4<br />
3<br />
2<br />
6<br />
9<br />
3<br />
8<br />
5<br />
6<br />
3<br />
5<br />
3<br />
9<br />
9<br />
6<br />
0<br />
6<br />
9<br />
2<br />
3<br />
0<br />
0<br />
9<br />
8<br />
8<br />
2<br />
7<br />
3<br />
2<br />
8<br />
8<br />
4<br />
8<br />
7<br />
6<br />
4<br />
7<br />
8<br />
6<br />
2<br />
5<br />
9<br />
4<br />
7<br />
8<br />
2<br />
3<br />
5<br />
0<br />
9<br />
5<br />
0<br />
5<br />
6<br />
8<br />
9<br />
2<br />
5<br />
7<br />
1<br />
9<br />
8<br />
5<br />
5<br />
7<br />
1<br />
4<br />
1<br />
5<br />
9<br />
9<br />
9<br />
3<br />
7<br />
2<br />
8<br />
1<br />
7<br />
5<br />
0<br />
4<br />
0<br />
1<br />
9<br />
1<br />
2<br />
3<br />
5<br />
2<br />
8<br />
3<br />
2<br />
0<br />
3<br />
2<br />
8<br />
9<br />
5<br />
8<br />
2<br />
5<br />
3<br />
6<br />
3<br />
4<br />
1<br />
4<br />
3<br />
7<br />
1<br />
8<br />
7<br />
2<br />
9<br />
3<br />
6<br />
8<br />
7<br />
7<br />
6<br />
9<br />
7<br />
7<br />
1<br />
8<br />
9<br />
4<br />
8<br />
5<br />
8<br />
7<br />
3<br />
9<br />
8<br />
1<br />
7<br />
9<br />
9<br />
5<br />
1<br />
5<br />
8<br />
1<br />
5<br />
8<br />
3<br />
3<br />
8<br />
3<br />
0<br />
8<br />
8<br />
0<br />
7<br />
7<br />
0<br />
1<br />
8<br />
2<br />
7<br />
3<br />
3<br />
1<br />
8<br />
8<br />
7<br />
4<br />
9<br />
5<br />
7<br />
5<br />
7<br />
5<br />
1<br />
1<br />
9<br />
8<br />
7<br />
8<br />
4<br />
5<br />
5<br />
8<br />
8<br />
5<br />
5<br />
0<br />
5<br />
6<br />
5<br />
9<br />
0<br />
7<br />
6<br />
2<br />
8<br />
8<br />
6<br />
3<br />
5<br />
5<br />
5<br />
2<br />
9<br />
7<br />
1<br />
7<br />
6<br />
0<br />
9<br />
4<br />
3<br />
2<br />
0<br />
5<br />
7<br />
5<br />
3<br />
2<br />
5<br />
8<br />
7<br />
9<br />
1<br />
6<br />
5<br />
5<br />
0<br />
5<br />
9<br />
4<br />
0<br />
2<br />
6<br />
2<br />
0<br />
0<br />
6<br />
2<br />
9<br />
3<br />
9<br />
2<br />
5<br />
8<br />
9<br />
4<br />
0<br />
0<br />
3<br />
0<br />
1<br />
3<br />
4<br />
0<br />
9<br />
9<br />
1<br />
0<br />
3<br />
7<br />
1<br />
5<br />
6<br />
4<br />
0<br />
7<br />
2<br />
2<br />
7<br />
4<br />
6<br />
4<br />
6<br />
8<br />
3<br />
1<br />
8<br />
6<br />
9<br />
4<br />
9<br />
9<br />
8<br />
7<br />
8<br />
7<br />
5<br />
8<br />
7<br />
9<br />
8<br />
6<br />
8<br />
9<br />
2<br />
7<br />
5<br />
8<br />
5<br />
0<br />
8<br />
0<br />
7<br />
6<br />
3<br />
9<br />
9<br />
5<br />
1<br />
8<br />
9<br />
2<br />
3<br />
5<br />
4<br />
9<br />
6<br />
4<br />
3<br />
1<br />
9<br />
5<br />
9<br />
3<br />
3<br />
9<br />
3<br />
6<br />
9<br />
8<br />
4<br />
4<br />
5<br />
3<br />
2<br />
6<br />
3<br />
0<br />
7<br />
9<br />
4<br />
3<br />
4<br />
2<br />
8<br />
9<br />
0<br />
3<br />
3<br />
9<br />
2<br />
4<br />
1<br />
7<br />
9<br />
6<br />
5<br />
4<br />
9<br />
9<br />
7<br />
2<br />
1<br />
7<br />
1<br />
3<br />
9<br />
3<br />
4<br />
3<br />
3<br />
2<br />
9<br />
3<br />
3<br />
6<br />
4<br />
4<br />
5<br />
7<br />
4<br />
7<br />
6<br />
1<br />
1<br />
6<br />
3<br />
8<br />
7<br />
3<br />
3<br />
3<br />
7<br />
9<br />
3<br />
4<br />
8<br />
7<br />
9<br />
6<br />
3<br />
6<br />
7<br />
0<br />
1<br />
5<br />
2<br />
3<br />
8<br />
4<br />
7<br />
7<br />
2<br />
8<br />
2<br />
2<br />
5<br />
1<br />
3<br />
9<br />
6<br />
7<br />
9<br />
8<br />
5<br />
4<br />
8<br />
1<br />
1<br />
0<br />
4<br />
3<br />
7<br />
3<br />
4<br />
8<br />
0<br />
0<br />
0<br />
9<br />
2<br />
9<br />
3<br />
6<br />
9<br />
4<br />
2<br />
1<br />
1<br />
4<br />
7<br />
0<br />
0<br />
4<br />
5<br />
1<br />
9<br />
7<br />
8<br />
7<br />
3<br />
9<br />
2<br />
3<br />
1<br />
4<br />
6<br />
1<br />
4<br />
3<br />
4<br />
2<br />
5<br />
3<br />
0<br />
2<br />
2<br />
4<br />
1<br />
3<br />
5<br />
0<br />
2<br />
1<br />
2<br />
1<br />
9<br />
4<br />
1<br />
7<br />
6<br />
0<br />
6<br />
2<br />
6<br />
0<br />
8<br />
4<br />
7<br />
9<br />
4<br />
8<br />
6<br />
0<br />
9<br />
1<br />
6<br />
8<br />
9<br />
0<br />
7<br />
1<br />
6<br />
0<br />
8<br />
2<br />
0<br />
1<br />
1<br />
1<br />
4<br />
8<br />
5<br />
0<br />
6<br />
6<br />
7<br />
6<br />
7<br />
1<br />
2<br />
8<br />
2<br />
6<br />
7<br />
4<br />
6<br />
8<br />
8<br />
4<br />
1<br />
0<br />
0<br />
4<br />
7<br />
5<br />
2<br />
6<br />
6<br />
0<br />
6<br />
4<br />
8<br />
2<br />
6<br />
3<br />
6<br />
1<br />
8<br />
4<br />
1<br />
7<br />
0<br />
6<br />
2<br />
5<br />
1<br />
8<br />
7<br />
0<br />
9<br />
9<br />
4<br />
4<br />
4<br />
1<br />
6<br />
3<br />
8<br />
6<br />
4<br />
2<br />
4<br />
9<br />
9<br />
0<br />
4<br />
6<br />
4<br />
4<br />
2<br />
8<br />
6<br />
6<br />
1<br />
4<br />
6<br />
4<br />
9<br />
1<br />
9<br />
8<br />
7<br />
3<br />
8<br />
1<br />
6<br />
1<br />
0<br />
0<br />
0<br />
5<br />
0<br />
3<br />
6<br />
9<br />
1<br />
5<br />
9<br />
4<br />
9<br />
3<br />
6<br />
0<br />
1<br />
1<br />
4<br />
1<br />
2<br />
2<br />
4<br />
1<br />
7<br />
2<br />
5<br />
3<br />
7<br />
5<br />
3<br />
1<br />
4<br />
4<br />
6<br />
9<br />
8<br />
5<br />
5<br />
3<br />
1<br />
3<br />
3<br />
4<br />
5<br />
9<br />
7<br />
5<br />
3<br />
8<br />
5<br />
0<br />
8<br />
9<br />
5<br />
2<br />
1<br />
8<br />
6<br />
3<br />
3<br />
9<br />
0<br />
8<br />
4<br />
8<br />
1<br />
7<br />
5<br />
9<br />
7<br />
9<br />
4<br />
6<br />
4<br />
8<br />
3<br />
8<br />
8<br />
6<br />
7<br />
5<br />
1<br />
9<br />
8<br />
7<br />
6<br />
2<br />
1<br />
5<br />
7<br />
1<br />
1<br />
0<br />
8<br />
4<br />
9<br />
6<br />
7<br />
1<br />
7<br />
4<br />
9<br />
4<br />
8<br />
6<br />
0<br />
2<br />
1<br />
2<br />
1<br />
4<br />
6<br />
1<br />
7<br />
0<br />
1<br />
6<br />
8<br />
4<br />
3<br />
5<br />
1<br />
1<br />
9<br />
2<br />
7<br />
3<br />
7<br />
8<br />
0<br />
4<br />
7<br />
5<br />
5<br />
7<br />
3<br />
3<br />
4<br />
1<br />
9<br />
3<br />
5<br />
4<br />
5<br />
6<br />
5<br />
7<br />
2<br />
6<br />
2<br />
6<br />
7<br />
6<br />
8<br />
9<br />
3<br />
3<br />
7<br />
5<br />
5<br />
4<br />
3<br />
7<br />
9<br />
2<br />
3<br />
7<br />
6<br />
4<br />
9<br />
7<br />
9<br />
1<br />
2<br />
9<br />
1<br />
0<br />
7<br />
0<br />
0<br />
7<br />
5<br />
4<br />
5<br />
7<br />
1<br />
3<br />
2<br />
4<br />
5<br />
0<br />
5<br />
1<br />
8<br />
1<br />
9<br />
5<br />
4<br />
6<br />
0<br />
1<br />
0<br />
4<br />
7<br />
3<br />
8<br />
1<br />
8<br />
5<br />
1<br />
2<br />
0<br />
7<br />
1<br />
6<br />
6<br />
1<br />
7<br />
4<br />
1<br />
7<br />
2<br />
2<br />
3<br />
0<br />
7<br />
8<br />
4<br />
9<br />
8<br />
1<br />
1<br />
5<br />
9<br />
3<br />
1<br />
0<br />
2<br />
3<br />
6<br />
3<br />
9<br />
5<br />
6<br />
5<br />
7<br />
0<br />
7<br />
2<br />
6<br />
5<br />
0<br />
2<br />
3<br />
0<br />
9<br />
2<br />
4<br />
1<br />
8<br />
2<br />
6<br />
6<br />
5<br />
9<br />
4<br />
4<br />
5<br />
8<br />
4<br />
8<br />
2<br />
4<br />
8<br />
6<br />
8<br />
3<br />
4<br />
9<br />
3<br />
4<br />
8<br />
5<br />
0<br />
8<br />
5<br />
7<br />
8<br />
0<br />
5<br />
5<br />
4<br />
3<br />
5<br />
2<br />
3<br />
2<br />
3<br />
8<br />
4<br />
5<br />
0<br />
5<br />
9<br />
6<br />
9<br />
8<br />
9<br />
5<br />
8<br />
4<br />
7<br />
5<br />
3<br />
0<br />
0<br />
3<br />
6<br />
7<br />
3<br />
4<br />
8<br />
7<br />
6<br />
8<br />
0<br />
9<br />
6<br />
8<br />
9<br />
7<br />
7<br />
1<br />
8<br />
6<br />
8<br />
4<br />
9<br />
5<br />
7<br />
9<br />
9<br />
8<br />
6<br />
5<br />
5<br />
3<br />
2<br />
3<br />
1<br />
6<br />
9<br />
2<br />
6<br />
7<br />
8<br />
3<br />
1<br />
7<br />
0<br />
9<br />
0<br />
3<br />
1<br />
2<br />
7<br />
5<br />
3<br />
7<br />
5<br />
5<br />
1<br />
7<br />
5<br />
1<br />
1<br />
7<br />
7<br />
6<br />
2<br />
7<br />
1<br />
8<br />
4<br />
2<br />
4<br />
8<br />
3<br />
4<br />
2<br />
5<br />
1<br />
6<br />
6<br />
4<br />
7<br />
3<br />
6<br />
8<br />
2<br />
6<br />
8<br />
8<br />
1<br />
3<br />
5<br />
8<br />
9<br />
9<br />
0<br />
4<br />
3<br />
4<br />
3<br />
8<br />
9<br />
7<br />
4<br />
2<br />
6<br />
2<br />
7<br />
9<br />
3<br />
4<br />
4<br />
0<br />
8<br />
9<br />
8<br />
8<br />
5<br />
6<br />
6<br />
2<br />
7<br />
7<br />
1<br />
0<br />
6<br />
6<br />
6<br />
2<br />
1<br />
5<br />
9<br />
3<br />
1<br />
3<br />
9<br />
5<br />
6<br />
3<br />
4<br />
3<br />
7<br />
4<br />
8<br />
8<br />
4<br />
2<br />
1<br />
5<br />
4<br />
4<br />
3<br />
0<br />
4<br />
6<br />
3<br />
7<br />
0<br />
6<br />
0<br />
3<br />
9<br />
4<br />
4<br />
5<br />
4<br />
0<br />
6<br />
7<br />
8<br />
8<br />
8<br />
7<br />
6<br />
0<br />
8<br />
7<br />
6<br />
5<br />
3<br />
6<br />
6<br />
4<br />
5<br />
2<br />
1<br />
9<br />
6<br />
5<br />
9<br />
6<br />
2<br />
2<br />
3<br />
4<br />
7<br />
4<br />
4<br />
2<br />
4<br />
9<br />
8<br />
6<br />
6<br />
6<br />
1<br />
6<br />
1<br />
7<br />
0<br />
0<br />
9<br />
9<br />
0<br />
0<br />
0<br />
7<br />
8<br />
2<br />
7<br />
3<br />
8<br />
6<br />
9<br />
6<br />
9<br />
0<br />
5<br />
3<br />
9<br />
0<br />
1<br />
2<br />
9<br />
6<br />
0<br />
5<br />
8<br />
7<br />
0<br />
1<br />
9<br />
2<br />
3<br />
3<br />
5<br />
8<br />
1<br />
8<br />
5<br />
5<br />
2<br />
2<br />
6<br />
0<br />
9<br />
1<br />
6<br />
2<br />
1<br />
9<br />
4<br />
9<br />
0<br />
8<br />
9<br />
9<br />
0<br />
9<br />
7<br />
0<br />
6<br />
6<br />
3<br />
4<br />
1<br />
6<br />
1<br />
9<br />
3<br />
7<br />
1<br />
7<br />
2<br />
6<br />
0<br />
0<br />
3<br />
2<br />
0<br />
0<br />
7<br />
0<br />
8<br />
0<br />
7<br />
2<br />
4<br />
4<br />
1<br />
1<br />
5<br />
1<br />
0<br />
4<br />
1<br />
3<br />
6<br />
1<br />
6<br />
3<br />
9<br />
8<br />
1<br />
1<br />
7<br />
3<br />
5<br />
5<br />
5<br />
7<br />
6<br />
9<br />
3<br />
0<br />
9<br />
5<br />
7<br />
0<br />
5<br />
1<br />
3<br />
2<br />
4<br />
4<br />
6<br />
2<br />
7<br />
7<br />
1<br />
9<br />
1<br />
9<br />
8<br />
9<br />
9<br />
3<br />
9<br />
5<br />
6<br />
8<br />
7<br />
4<br />
9<br />
7<br />
6<br />
4<br />
9<br />
1<br />
7<br />
0<br />
6<br />
2<br />
1<br />
4<br />
1<br />
4<br />
9<br />
1<br />
2<br />
2<br />
2<br />
0<br />
0<br />
2<br />
4<br />
4<br />
1<br />
8<br />
0<br />
4<br />
0<br />
4<br />
4<br />
1<br />
0<br />
5<br />
2<br />
0<br />
9<br />
2<br />
0<br />
5<br />
6<br />
6<br />
8<br />
2<br />
1<br />
9<br />
6<br />
5<br />
2<br />
8<br />
2<br />
7<br />
3<br />
6<br />
3<br />
8<br />
4<br />
6<br />
3<br />
9<br />
3<br />
6<br />
3<br />
6<br />
3<br />
3<br />
1<br />
8<br />
6<br />
2<br />
5<br />
8<br />
6<br />
5<br />
0<br />
3<br />
7<br />
5<br />
5<br />
4<br />
5<br />
3<br />
4<br />
7<br />
5<br />
6<br />
8<br />
5<br />
1<br />
2<br />
6<br />
7<br />
0<br />
7<br />
6<br />
8<br />
8<br />
1<br />
8<br />
8<br />
6<br />
5<br />
6<br />
9<br />
2<br />
7<br />
3<br />
1<br />
0<br />
4<br />
4<br />
3<br />
1<br />
2<br />
1<br />
8<br />
9<br />
4<br />
6<br />
7<br />
8<br />
8<br />
9<br />
4<br />
0<br />
8<br />
7<br />
6<br />
5<br />
4<br />
4<br />
5<br />
3<br />
1<br />
2<br />
2<br />
3<br />
6<br />
4<br />
5<br />
1<br />
8<br />
1<br />
6<br />
1<br />
2<br />
2<br />
2<br />
3<br />
6<br />
9<br />
5<br />
6<br />
8<br />
7<br />
9<br />
6<br />
2<br />
3<br />
9<br />
3<br />
2<br />
9<br />
6<br />
7<br />
1<br />
9<br />
5<br />
7<br />
2<br />
1<br />
4<br />
2<br />
8<br />
5<br />
0<br />
1<br />
5<br />
9<br />
5<br />
3<br />
0<br />
9<br />
8<br />
0<br />
0<br />
5<br />
6<br />
9<br />
8<br />
5<br />
4<br />
3<br />
9<br />
2<br />
3<br />
2<br />
7<br />
6<br />
7<br />
5<br />
4<br />
8<br />
5<br />
3<br />
9<br />
7<br />
4<br />
9<br />
0<br />
5<br />
5<br />
0<br />
4<br />
3<br />
5<br />
5<br />
9<br />
7<br />
1<br />
6<br />
3<br />
0<br />
2<br />
8<br />
0<br />
2<br />
7<br />
9<br />
6<br />
1<br />
0<br />
2<br />
5<br />
9<br />
1<br />
4<br />
3<br />
0<br />
7<br />
3<br />
0<br />
8<br />
2<br />
8<br />
2<br />
7<br />
7<br />
2<br />
4<br />
2<br />
3<br />
4<br />
6<br />
2<br />
0<br />
0<br />
5<br />
2<br />
1<br />
4<br />
1<br />
4<br />
5<br />
1<br />
4<br />
8<br />
8<br />
4<br />
8<br />
5<br />
0<br />
7<br />
8<br />
9<br />
0<br />
5<br />
6<br />
4<br />
6<br />
3<br />
1<br />
2<br />
6<br />
7<br />
1<br />
7<br />
0<br />
7<br />
9<br />
0<br />
3<br />
9<br />
3<br />
2<br />
5<br />
2<br />
5<br />
4<br />
0<br />
8<br />
5<br />
5<br />
0<br />
4<br />
6<br />
9<br />
9<br />
0<br />
3<br />
5<br />
3<br />
7<br />
3<br />
7<br />
3<br />
8<br />
3<br />
6<br />
Hauptvortragende: Holger Dette (Bochum)<br />
Irene Fonseca (Pittsburgh) Bernhard Keller (Paris)<br />
Matthias Kreck (Bonn) Shrawan Kumar (Chapel Hill)<br />
Ladislav Kvasz (Prag) Christian Lubich (Tübingen)<br />
Ken Ono (Atlanta) Francisco Santos (Santander)<br />
Marcus du Sautoy (Oxford) Simone Warzel (München)<br />
Podiumsdiskussion: Martin Grötschel (Berlin), Matthias Kreck (Bonn)<br />
Studierendenkonferenz Mathematik<br />
Organisation: Mathematisches Institut der Universität zu Köln<br />
Infos: www.mi.uni-koeln.de/dmv2011<br />
D<br />
201 1c○ G. Sweers<br />
Der Farbton jedes Quadrats in dem Bild wird bestimmt durch die entsprechende Ziffer aus der Dezimaldarstellung von π; die Intensität wird bestimmt durch ein Bild des Kölner Doms.<br />
16. AKMUI 2011 – Jahrestagung des Arbeitskrei-<br />
ses Mathematikunterricht und Informatik<br />
Soest, 23. – 25.09.2011<br />
http://didaktik-der-mathematik.de/ak/<br />
mui<br />
Vom 23.-25.9.2011 findet in Soest die Jahrestagung des Ar-<br />
beitskreises Mathematikunterricht und Informatik statt, zu<br />
der auch die an Mitglieder der <strong>Fachgruppe</strong> <strong>Computeralgebra</strong><br />
herzlich eingeladen sind. Das Tagungsthema lautet in diesem<br />
Jahr ” Verfügbare digitale Werkzeuge im Mathematikunter-<br />
richt richtig nutzen“. Dabei soll auf die Schulrealität – in der<br />
Handys, Whiteboards und Computerlabore existieren – ein-<br />
gegangen werden und Wege gezeigt werden, wie mit diesen<br />
Medien effektiver (und vielleicht auch besserer) Mathema-<br />
tikunterricht umgesetzt werden kann. Weitere Informationen<br />
und die ausführliche Einladung zur Tagung finden sich in<br />
Kürze auf der Webseite des Arbeitskreises.<br />
17. SYNASC 2011 – The 13th International Sym-<br />
posium on Symbolic and Numeric Algorithms<br />
for Scientific Computing<br />
Timisoara, Rumänien, 26. – 29.09.2011<br />
http://synasc11.info.uvt.ro/<br />
SYNASC aims to stimulate the interaction between the two<br />
scientific communities of symbolic and numeric computing<br />
and to exhibit interesting applications of the areas both in<br />
theory and in practice. The choice of the topic is motiva-<br />
ted by the belief of the organizers that the dialogue between<br />
the two communities is very necessary for accelerating the<br />
progress in making the computer a truly intelligent aid for<br />
mathematicians and engineers.<br />
The research papers accepted for the conference will be col-<br />
lected as post-proceedings published by IEEE Computer So-<br />
ciety Press (ISI Proceedings).<br />
Honorary Chairs of SYNASC 2011 are Bruno Buchberger<br />
(Johannes Kepler University, Austria) and Stefan Maruster<br />
(West University of Timisoara, Romania).<br />
18. INFORMATIK 2011 – Jahrestagung der GI<br />
TU Berlin, 04. – 07.10.2011<br />
http://www.informatik2011.de<br />
Unter dem Motto ” Informatik schafft Communities“ findet<br />
vom 4.-7.10.2011 die Jahrestagung ” Informatik 2011“ der<br />
Gesellschaft für Informatik in Berlin statt. Dazu sind zeit-<br />
gleich eine Reihe von Workshops und Tutorials zu aktuellen<br />
Themen der Informatik geplant.<br />
35
Berufungen<br />
Prof. Dr. Werner Bley (Kassel) hat einen Ruf auf eine W2-Professur für Mathematik am Lehrstuhl für Algebraische<br />
Geometrie an der Ludwig-Maximilians-Universität München angenommen.<br />
(http://www.mathematik.uni-muenchen.de/)<br />
Dr. Michael Dettweiler (Heidelberg) hat einen Ruf auf eine Professur an der Universität Bayreuth angenommen.<br />
(http://www.zahlentheorie.uni-bayreuth.de)<br />
Prof. Dr. Gilbert Greefrath hat zum 01.03.11 eine W2-Professur für Didaktik der Mathematik an der Westfälischen<br />
Wilhelms-Universität Münster angetreten. Seine Forschungsschwerpunkte sind der Einsatz von digitalen<br />
Werkzeugen und Realitätsbezüge im Mathematikunterricht.<br />
(http://www.greefrath.de)<br />
36
Aufnahmeantrag für Mitgliedschaft in der <strong>Fachgruppe</strong> <strong>Computeralgebra</strong><br />
(Im folgenden jeweils Zutreffendes bitte im entsprechenden Feld [ ] ankreuzen bzw. ausfüllen.)<br />
Titel/Name: Vorname:<br />
Privatadresse<br />
Straße/Postfach:<br />
PLZ/Ort: Telefon:<br />
E-mail: Telefax:<br />
Dienstanschrift<br />
Firma/Institution:<br />
Straße/Postfach:<br />
PLZ/Ort: Telefon:<br />
E-mail: Telefax:<br />
Gewünschte Postanschrift: [ ] Privatadresse [ ] Dienstanschrift<br />
1. Hiermit beantrage ich zum 1. Januar 201 die Aufnahme als Mitglied in die <strong>Fachgruppe</strong><br />
<strong>Computeralgebra</strong> (CA) (bei der GI: 0.2.1).<br />
2. Der Jahresbeitrag beträgt e 7,50 bzw. e 9,00. Ich ordne mich folgender Beitragsklasse zu:<br />
[ ] e 7,50 für Mitglieder <strong>einer</strong> der drei Trägergesellschaften<br />
[ ] GI Mitgliedsnummer:<br />
[ ] DMV Mitgliedsnummer:<br />
[ ] GAMM Mitgliedsnummer:<br />
Der Beitrag zur <strong>Fachgruppe</strong> <strong>Computeralgebra</strong> wird mit der Beitragsrechnung der Trägergesellschaft in Rechnung<br />
gestellt. (Bei Mitgliedschaft bei mehreren Trägergesellschaften wird dies von derjenigen durchgeführt, zu<br />
der Sie diesen Antrag schicken.) [ ] Ich habe dafür bereits eine Einzugsvollmacht erteilt. Diese wird hiermit<br />
für den Beitrag für die <strong>Fachgruppe</strong> <strong>Computeralgebra</strong> erweitert.<br />
[ ] e 7,50. Ich bin aber noch nicht Mitglied <strong>einer</strong> der drei Trägergesellschaften. Deshalb beantrage ich gleichzeitig<br />
die Mitgliedschaft in der<br />
[ ] GI [ ] DMV [ ] GAMM.<br />
und bitte um Übersendung der entsprechenden Unterlagen.<br />
[ ] e 9,00 für Nichtmitglieder der drei Trägergesellschaften. [ ] Gleichzeitig bitte ich um Zusendung von Informationen<br />
über die Mitgliedschaft in folgenden Gesellschaften:<br />
[ ] GI [ ] DMV [ ] GAMM.<br />
3. Die in dieses Formular eingetragenen Angaben werden elektronisch gespeichert. Ich bin damit einverstanden, dass<br />
meine Postanschrift durch die Trägergesellschaften oder durch Dritte nach Weitergabe durch eine Trägergesellschaft<br />
wie folgt genutzt werden kann (ist nichts angekreuzt, so wird c. angenommen).<br />
[ ] a. Zusendungen aller Art mit Bezug zur Informatik, Mathematik bzw. Mechanik.<br />
[ ] b. Zusendungen durch wiss. Institutionen mit Bezug zur Informatik, Mathematik bzw. Mechanik.<br />
[ ] c. Nur Zusendungen interner Art von GI, DMV bzw. GAMM.<br />
Ort, Datum: Unterschrift:<br />
Bitte senden Sie dieses Formular an:<br />
<strong>Fachgruppe</strong> <strong>Computeralgebra</strong><br />
Prof. Dr. Wolfram Koepf<br />
Institut für Mathematik<br />
Universität Kassel<br />
Heinrich-Plett-Str. 40<br />
34132 Kassel<br />
0561-804-4207, -4646 (Fax)<br />
koepf@mathematik.uni-kassel.de
<strong>Fachgruppe</strong>nleitung <strong>Computeralgebra</strong> 2011-2014<br />
Sprecherin:<br />
Prof. Dr. Eva Zerz<br />
Lehrstuhl D für Mathematik<br />
RWTH Aachen<br />
Templergraben 64, 52062 Aachen<br />
0241-80-94544, -92108 (Fax)<br />
eva.zerz@math.rwth-aachen.de<br />
http://www.math.rwth-aachen.de/˜Eva.Zerz/<br />
Fachreferentin Publikationen und Promotionen:<br />
Prof. Dr. Anne Frühbis-Krüger<br />
Institut für Algebraische Geometrie<br />
Welfengarten 1, 30167 Hannover<br />
0511-762-3592<br />
fruehbis-krueger@math.uni-hannover.de<br />
http://www.mathematik.uni-kl.de/˜anne<br />
Fachreferent Computational Engineering,<br />
Vertreter der GAMM:<br />
Prof. Dr. Klaus Hackl<br />
Lehrstuhl für Allgemeine Mechanik<br />
Ruhr-Universität Bochum<br />
Universitätsstr. 150, 44780 Bochum<br />
0234-32-26025, -14154 (Fax)<br />
klaus.hackl@rub.de<br />
http://www.rub.de/lam<br />
Fachreferentin Fachhochschulen:<br />
Prof. Dr. Elkedagmar Heinrich<br />
Fachbereich Informatik, Hochschule für Technik,<br />
Wirtschaft und Gestaltung Konstanz<br />
Brauneggerstr. 55, 78462 Konstanz<br />
07531-206-343, -559 (Fax)<br />
heinrich@htwg-konstanz.de<br />
http://www.in.fh-konstanz.de/inhalte/de/KONTAKT/<br />
persseiten_nbc/heinrich.html<br />
Fachreferent CA-Systeme und -Bibliotheken:<br />
Prof. Dr. Gregor Kemper<br />
Zentrum Mathematik – M11<br />
Technische Universität München<br />
Boltzmannstr. 3, 85748 Garching<br />
089-289-17454, -17457 (Fax)<br />
kemper@ma.tum.de<br />
http://www-m11.ma.tum.de/˜kemper<br />
Vertreter der DMV:<br />
Prof. Dr. Wolfram Koepf<br />
Institut für Mathematik<br />
Universität Kassel<br />
Heinrich-Plett-Str. 40, 34132 Kassel<br />
0561-804-4207, -4646 (Fax)<br />
koepf@mathematik.uni-kassel.de<br />
http://www.mathematik.uni-kassel.de/˜koepf<br />
Fachreferent CA an der Hochschule:<br />
Prof. Dr. Gunter Malle<br />
Fachbereich Mathematik<br />
Technische Universität Kaiserslautern<br />
Gottlieb-Daimler-Straße, 67663 Kaiserslautern<br />
0631-205-2264, -3989 (Fax)<br />
malle@mathematik.uni-kl.de<br />
http://www.mathematik.uni-kl.de/˜malle<br />
Fachexperte Schule:<br />
OStR Jan Hendrik Müller<br />
Rivius-Gymnasium der Stadt Attendorn<br />
Westwall 48, 57439 Attendorn<br />
02722-5953 (Sekretariat)<br />
jan.mueller@math.uni-dortmund.de<br />
www.mathebeimueller.de<br />
Redakteur Rundbrief:<br />
Dr. Michael Cuntz<br />
Fachbereich Mathematik<br />
Technische Universität Kaiserslautern<br />
Postfach 3049, 67653 Kaiserslautern<br />
0631-205-2515<br />
cuntz@mathematik.uni-kl.de<br />
http://www.mathematik.uni-kl.de/˜cuntz<br />
Stellvertretender Sprecher:<br />
Prof. Dr. Florian Heß<br />
Carl-von Ossietzky Universität Oldenburg<br />
Institut für Mathematik, 26111 Oldenburg<br />
0441-798-2906, -3004 (Fax)<br />
florian.hess@uni-oldenburg.de<br />
http://www.staff.uni-oldenburg.de/florian.hess<br />
Fachexperte Lehre und Didaktik:<br />
Prof. Dr. Gilbert Greefrath<br />
Universität zu Köln<br />
Seminar für Mathematik und ihre Didaktik<br />
Gronewaldstraße 2, 50931 Köln<br />
0221-470-4755<br />
g.greefrath@uni-koeln.de<br />
http://www.greefrath.de<br />
Fachreferent Physik:<br />
Dr. Thomas Hahn<br />
Max-Planck-Institut für Physik<br />
Föhringer Ring 6, 80805 München<br />
089-32354-300, -304 (Fax)<br />
hahn@feynarts.de<br />
http://wwwth.mppmu.mpg.de/members/hahn<br />
Fachexperte Industrie:<br />
Prof. Dr. Michael Hofmeister<br />
Siemens AG<br />
Corporate Technology<br />
Modeling, Simulation, Optimization<br />
Otto-Hahn-Ring 6, 81739 München<br />
089-636-49476, -42284 (Fax)<br />
michael.hofmeister@siemens.com<br />
http://www.siemens.com<br />
Fachreferent Schwerpunktprogramm 1489:<br />
Prof. Dr. Jürgen Klüners<br />
Mathematisches Institut der Universität Paderborn<br />
Warburger Str. 100, 33098 Paderborn<br />
05251-60-2646, -3516 (Fax)<br />
klueners@math.uni-paderborn.de<br />
http://www2.math.uni-paderborn.de/people/<br />
juergen-klueners.html<br />
Fachreferent Themen und Anwendungen:<br />
Prof. Dr. Martin Kreuzer<br />
Fakultät für Informatik und Mathematik<br />
Universität Passau<br />
Innstr. 33, 94030 Passau<br />
0851-509-3120, -3122 (Fax)<br />
martin.kreuzer@uni-passau.de<br />
http://www.fim.uni-passau.de/˜kreuzer<br />
Vertreter der GI:<br />
Prof. Dr. Ernst W. Mayr<br />
Lehrstuhl für Effiziente Algorithmen<br />
Fakultät für Informatik<br />
Technische Universität München<br />
Boltzmannstraße 3, 85748 Garching<br />
089-289-17706, -17707 (Fax)<br />
mayr@in.tum.de<br />
http://www.in.tum.de/˜mayr/<br />
Koordinator Internetauftritt:<br />
Prof. Dr. Hans-Gert Gräbe<br />
Institut für Informatik<br />
Universität Leipzig<br />
Postfach 10 09 20, 04009 Leipzig<br />
0341-97-32248<br />
graebe@informatik.uni-leipzig.de<br />
http://www.informatik.uni-leipzig.de/˜graebe<br />
Redakteurin Rundbrief:<br />
Dr. Gohar Kyureghyan<br />
Otto-von-Guericke Universität Magdeburg<br />
Institut für Algebra und Geometrie<br />
Universitätsplatz 2, 39106 Magdeburg<br />
0391-67-11650, -11213 (Fax)<br />
gohar.kyureghyan@ovgu.de<br />
http://fma2.math.uni-magdeburg.de/˜gkyureg
Werbeseite Texas Instruments
Werbeseite Maplesoft