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

Slides:



Advertisements
Verwante presentaties
Stappenplan implementatie XBRL/SBR
Advertisements

Presentatie programma Access applicatie kopersbegeleiding
Autisme en Mindmap Thuis en op School
Educational model for assessment
Welkom. Wat gaan we doen? • Data leren gebruiken als startpunt van verhalen • Naar de IATI set kijken van buitenlandse zaken.
Landelijke campagne bedrijfstakpensioenfondsen Bpf Bouw, 2 maart 2010 Marjolein Zaal Manager Communicatie VB.
Alumni-portals gezien vanuit een ICT-perspectief Robert van ‘t Sant.
Concept Voorstellen. Het Concept Ons definitieve concept is een informatieve website met informatie over de uitgaansgebieden en uitgaansgelegenheden in.
E-RADEN Roadmap. AGENDA • Overzicht van nieuwe ontwikkelingen 2009 • Interfaces • Document Types : Meta-data • E-raden gratis ? • Perspectieven.
Metadata proces april 2009 train de trainers. Waar in het werkproces metadata Binnen de organisatie zal afgesproken moeten worden van welke data er metadata.
Een rondleiding in dé ICT-webwinkel voor het onderwijs.
23 JANUARI 2007 MBO CENTRAALMBO CENTRAAL Ageeth Jorna (lekker-werken.nl)
Jeugd in beweging Weert 14 oktober 2013 Jeugd in beweging.
Uitwerking tentamen Functioneel Programmeren 29 januari 2009.
Inleiding programmeren in C++ Life Science & Technology 19 januari Universiteit Leiden.
Handreikingen Voor de C-kandidaat
Inleiding Programmeren met Visual Basic Karl Moens.
Hogeschool HZ Zeeland 19 augustus 2003augustus 2003 Data Structuren & Algoritmen Week 5.
Instructie Programmeren Task 1 5JJ70. Task 1.1: Hello World Klik naast de laatste accolade in de grijze kantlijn om een breakpoint neer te zetten, anders.
Automatisch Redeneren in de praktijk
Cobian Backup 8 Welkom op de Cobian presentatie.
Eric Sieverts Sector Innovatie & Ontwikkeling Universiteitsbibliotheek Utrecht Instituut voor Media- & Informatie Management Hogeschool van Amsterdam Moderne.
Logisch redeneren in wiskunde C
De koektrommel of de grabbelton
Exploratie van de ontwerpruimte 3. Prototypes, emulatie en simulatie Prof. dr. ir. Dirk Stroobandt Academiejaar
© Universiteitsbibliotheek Groningen METIS Aanleverloket Metis/Repositories Henk Druiven Henk Ellermann Afdeling Digitale Bibliotheek Vz. Universiteitsbibliotheek/RuG.
1 Het probleem RO Milieu Landbouw SocZekerheid Etc. LerenWerkenWonenPensioenEtc. Overheids- organisatie Burger ??? Regelgeving per domein Vraag op levensmoment.
ICT-rijk bewegen in 3 VWO / HAVO Het implementeren van de nieuwe functionaliteit van Coach 6, vanuit een didactisch oogpunt bekeken Ron Vonk Archimedes.
Meten bij marktonderzoek
Visual Basic .NET voor studenten
Meten bij marktonderzoek
Kennisuitwisseling in LOK Landelijk onderwijsweb Kennistechnologie Evert van de Vrie Kennisuitwisseling in LOK Landelijk onderwijsweb Kennistechnologie.
Designing Knowledge Systems b Hoofdstuk 11 van Knowledge Engineering and Management. The CommonKADS Methodology. b A.Th. Schreiber, J.M. Akkermans, A.A.Anjewierder,
Webapplicaties: de clientkant in het universitaire onderwijs Sylvia Stuurman – Herman Koppelman Faculteit Informatica.
Hogeschool HZ Zeeland 19 augustus 2003augustus 2003 Data Structuren & Algoritmen Week 4.
LauwersCollege Buitenpost Java Applet programma dat op een website zichtbaar is Java Application programma dat zelfstandig werkt Javascript Scripttaal.
Een Module over Model Checking voor het VWO Frits Vaandrager1, David Jansen1 & Els Koopmans2 1Radboud Universiteit Nijmegen 2Olympus College Arnhem.
Op weg naar professioneel asset management
De Syntax-Semantiekredenering van Searle Doctoraalexamen Eline Spauwen 25 mei 2007 Searles kritiek op Harde KI.

1 4 aug 2005 KC Software Engineering. 2 4 aug 2005 Programma Inleiding Enquête Methodes Tools Discussie Diner Workshop.
Richard Maalman. I NHOUD Google Analytics Datavisualisatie Voordelen Nadelen.
Deze PowerPoint gaat over de website leukedingetjes1.weebly.com!
SILVERPAINT+® HET BESTE MERK VOOR AL UW BUITENWERK
Bezoekersgerichte teksten
Concept presentatie A3. 1. Narrowcasting in past, present, future; 2. Het concept; 3. Checklist; 4. Opstarten van het concept & Casus; 5. Vragen van publiek.
.NET-productiviteit verhogen met een gepast gebruikt van lambda's en F# TETRA project proposal 2015.
AI Kaleidoscoop Werkcollege 1: AI Overzicht Radu Serban
Interfaces Hoofdstuk 23 Hoofdstuk 23.
Het gebruik van FP op een meeloopdag voor middelbare scholieren Paul de Mast.
Kennismanagement & Sociale media
Tircms03-p les 1 C++ voor C-kenners Voor Technische Informatica.
Programmeren.

Java Objectgeoriënteerd Programmeren in Java met BlueJ Hoofdstuk 8: Gebruikersinterface © 2014, Gertjan Laan, versie 2.
Buy Your Pin | Why do it yourself? |. Koop de DIYs die je nooit zou maken Bij Buy your Pin kan je eindelijk al die leuke pins die je opgeslagen hebt maar.
Footer leeghouden ivm logo #ad0006 R: 173 G: 0 B: 6 #005dad R: 0 G: 93 B: 173 #3f3f3f R: 63 G: 63 B: 63 #00ad51 R: 0 G: 173 B: 81 #ffad00 R: 255 G: 173.
Functional Web Applications Implementation and Use of Client-Side Interpreters Jan Martin Jansen.
De definitie van een object. Een object is een verzameling van eigenschappen en bewerkingen. Veel voorkomende objecten zijn: D (display) Gui (user interface)
Programmeren. Wat is programmeren? Het schrijven van opdrachten voor de processor De processor “spreekt” machinetaal:
Veerle Nuytemans, Sophie Traen, Robin Pellegrims, Peter Nelissen.
Programmeren.
ICT toepassen in de wiskundeles
Virtuele labs bij natuurkunde en scheikunde onderwijs
Objectgeoriënteerd Programmeren
De programmeertaal C++
ETUDE Toetsservicesysteem
Software Development fundamentals
Java Masterclass Sar Maroof.
DCAT en uiteraard DCAT-AP-NL ....
Transcript van de presentatie:

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

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

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

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.

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

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

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

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

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

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

Sparkle: downloaden Sparkle heeft een eigen website: Sparkle zit in de standaard Clean- distributie: Probeer het eens uit!