Leerdoelen
Na afloop van deze cursus kunnen de deelnemers:
-
Berekeningen in functionele talen modelleren met behulp van
herschrijfsystemen (termherschrijfsystemen, lambda-calculus).
Berekeningen in herschrijfsystemen analyseren, bijvoorbeeld
confluentie- en terminatiegedrag.
-
Alternatieve state- en geheugenmodellen aangeven voor het modelleren
van imperatieve talen.
-
Semantiek van een taal uit de praktijk modelleren. Daarvoor geschikte
technieken selecteren en deze zo nodig enigszins uitbreiden. Hiermee een
case-study uitvoeren. De resultaten op professionele wijze rapporteren
en tegenover collega-semantici verantwoorden.
Beginvereisten
Je hebt programmeerervaring met imperatieve en functionele talen. Verder kun je:
-
(programmeer)talen en taaluitbreidingen specificeren met behulp van contextvrije grammatica's;
-
operationele semantiek van imperatieve taalconstructies formuleren via
natuurlijke semantiek (ns) en via structurele operationele semantiek (sos);
berekenbaarheid van numerieke operaties aantonen;
-
helder formuleren, zowel bij het motiveren van oplossingen als het
weergeven van wiskundige redeneringen.
Deze voorkennis kun je opbouwen via de cursussen rond programmeren en de cursussen Talen en Automaten, Semantiek en Correctheid en Beweren en Bewijzen.