Leerdoelen
Na afloop van deze cursus kunnen de deelnemers:
-
Betekenis van imperatieve taalconstructies vastleggen met behulp van
inductieve technieken zoals toestandsovergangssystemen.
-
Het effect van verschillende ontwerpkeuzen verklaren.
-
Berekeningen in imperatieve talen analyseren, bijvoorbeeld
terminatiegedrag en semantische equivalentie.
-
Eigenschappen van programma's aantonen met behulp van correctheidscalculi.
Beginvereisten
Om deze cursus succesvol te kunnen volgen voldoe je aan de volgende voorwaarden.
Je hebt programmeerervaring met imperatieve programmeertalen. Verder kun je:
-
de taal van de predicatenlogica gebruiken om beweringen te formuleren;
in redeneringen de elementaire stappen onderscheiden en bewijzen weergeven
in een geschikt afleidingssysteem;
-
(programmeer)talen en taaluitbreidingen specificeren met behulp van
reguliere expressies en contextvrije grammatica's;
-
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, Berekenbaarheid, Beweren en bewijzen.