Skip to ContentSkip to Navigation
Over onsNieuws en agendaNieuwsberichten

Colloquium Computer Science S. de Gouw

18 januari 2017

Date:                      

Wednesday, January 18 2017

Speaker:

Stijn de Gouw ( Open University and CWI, Amsterdam)

Room:

5161.0253 (Bernoulliborg)

Time:

15.00

Title:

Showing that Android's, Java's and Python's sorting algorithm is broken, and formally proving the fix


Abstract:

Tim Peters developed the Timsort hybrid sorting algorithm in 2002. It is a clever combination of ideas from merge sort and insertion sort, and designed to perform well on real world data. TimSort was first developed for Python, but later ported to Java (where it appears as java.util.Collections.sort and java.util.Arrays.sort) by Joshua Bloch (the designer of Java Collections who also pointed out that most binary search algorithms were broken ). TimSort  is today used as the default sorting algorithm for Android SDK, Sun’s JDK and OpenJDK. Given the popularity of these platforms this means that the number of computers, cloud services and mobile phones that use TimSort for sorting is well into the billions.

Fast forward to 2015. After we had successfully verified Counting and Radix sort implementations in Java ( J. Autom. Reasoning 53(2), 129-139 ) with a formal verification tool called KeY , we were looking for a new challenge.  TimSort seemed to fit the bill, as it is rather complex and widely used. Unfortunately, we weren’t able to prove its correctness. A closer analysis showed that this was, quite simply, because TimSort was broken and our theoretical considerations finally led us to a path towards finding the bug (interestingly, that bug appears already in the Python implementation). In this presentation, we show how we did it.

                           

Colloquium coordinators are Prof.dr. M. Aiello (e-mail : M.Aiello@rug.nl ) and

Prof.dr. M. Biehl (e-mail: M.Biehl@rug.nl )

http://www.rug.nl/research/jbi/news/colloquia/computerscience

Laatst gewijzigd:07 juni 2018 10:59

Meer nieuws

  • 11 september 2018

    Van Klokhuis-vraag naar Veni-subsidie

    Als kind was Jorrig Vogels al gefascineerd door taal en vergeleek hij de verschillende woorden voor ingrediënten op verpakkingen. Een jaar terug sleepte de taalonderzoeker een Veni-beurs in de wacht. ‘Taal heeft iets telepathisch: het beeld dat ík in...

  • 07 september 2018

    Constructief overleg – gezamenlijke overeenkomst

    Na een intensief en constructief gesprek met de actievoerende studenten van studentenpartij DAG en ROOD (jongeren SP) is donderdagavond een gezamenlijke overeenkomst bereikt op vier punten, vooral gericht op de lange termijn.

  • 04 september 2018

    Weg met die systeemplafonds

    Als Zuidlarens jongetje vond hij al die oude gebouwen in de stad Groningen maar niks. De interesse in historische panden kwam pas later, tijdens zijn studie Bouwkunde. Als bouwkundige is René Bosscher nu verantwoordelijk voor de buitenkant van de gebouwen...