De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Sparkle een bewijssysteem voor Clean Maarten de Mol Katholieke Universiteit Nijmegen 11 januari 2002.

Verwante presentaties


Presentatie over: "Sparkle een bewijssysteem voor Clean Maarten de Mol Katholieke Universiteit Nijmegen 11 januari 2002."— Transcript van de presentatie:

1 Sparkle een bewijssysteem voor Clean Maarten de Mol Katholieke Universiteit Nijmegen 11 januari 2002

2 Overzicht Inleiding: waarom een bewijssysteem? Korte beschrijving van Sparkle: Implementatie Doelgroep Vogelvlucht Demonstratie Sparkle in het onderwijs.

3 Inleiding (1) Idee: annoteren van functionele programma’s met eigenschappen. Extra informatie voor de lezer Doel: formeel aantonen dat die eigenschappen correct zijn. Eigenschap wordt certificaat Meer vertrouwen in programma

4 Inleiding (2) Methode: formeel redeneren. Nodig: formele definities van: semantiek van programmeertaal logica bovenop deze semantiek redeneerstappen binnen deze logica Voordeel: betrouwbaarheid Nadeel: moeilijk uit te voeren Hulpmiddel: bewijssysteem: Sparkle.

5 Sparkle: implementatie Geschreven in Clean 2.0: Ongeveer 55.000 regels code Gebruikt bibliotheken: Clean 2.0 compiler(±40.000 regels code) Object I/O(±40.000 regels code) Sparkle is een van de grootste applicaties geschreven in Clean. Ontwikkeltijd: 3 jaar.

6 Sparkle: doelgroep Sparkle is sterk gekoppeld aan de programmeertaal Clean: Bewijzen over Clean-programma’s Gemaakt door Clean-programmeurs Sparkle zal vooral als zij-activiteit door niet experts gebruikt worden. Andere invalshoek dan bij generieke bewijssystemen zoals PVS, Coq, Isabelle

7 Sparkle: vogelvlucht Belangrijkste eigenschappen van een bewijssysteem: Specificatietaal voor programma’s Specificatietaal voor eigenschappen Bibliotheek van redeneerstappen Ondersteuning bij het maken van bewijzen

8 Sparkle: specificatie Programma: Deel van Clean 2.0: (bijna ook van Haskell) Functionele programmeertaal Laziness, sharing, strictheids annotaties Eigenschap: Eerste orde propositie logica Uitgebreid met gelijkheid op expressies  xs::[Int] : xs    heapSort xs = myOwnSort xs

9 Sparkle: bewijzen Bibliotheek van 42 redeneerstappen: Geleend van andere bewijssystemen Gespecialiseerd op Clean Ondersteuning bij bewijzen door: Automatisch genereren van hints Automatisch toepassen van hints Mogelijkheid om redeneerstap toe te passen alleen met behulp van klikken

10 Sparkle in het onderwijs Leerdoelen: Laten zien dat formele bewijzen maken over functionele programma’s (relatief) makkelijk is. Sparkle kan daarvoor worden gebruikt: Ondersteunt Clean 2.0 Uitgebreide user interface Kleine bewijzen zijn zeer eenvoudig

11 Sparkle: downloaden Sparkle heeft een eigen website: http://www.cs.kun.nl/Sparkle Sparkle zit in de standaard Clean- distributie: http://www.cs.kun.nl/~clean Probeer het eens uit!


Download ppt "Sparkle een bewijssysteem voor Clean Maarten de Mol Katholieke Universiteit Nijmegen 11 januari 2002."

Verwante presentaties


Ads door Google