2007/2008

02153 Deklarativ Modellering

Engelsk titel: 


Declarative Modelling

Sprog:


Point (ECTS )

  10

Kursustype:   

 
Civil- Grundlæggende kursus


Skemaplacering:

E4

 

Undervisningsform:

Forelæsninger og øvelser

Kursets varighed:

13-uger

Eksamensplacering:

E4A,   F4A 

Evalueringsform:

Varighed eksamen:

Hjælpemidler:

Bedømmelsesform:

Pointspærring:

Obligatoriske forudsætninger:

                                          

Overordnede kursusmål:

Kursusmålet er at give de studerende en introduktion til nogle af de grundlæggende deklarative formalismer fra formel datalogi, der kan benyttes til at beskrive, analysere og evaluere aspekter af IT-systemer.
Det omfatter såvel teoretiske indsigter som praktiske færdigheder i relevante højniveau-programmeringssprog.


Læringsmål:

En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:

  • relatere forskellige slags bevissystemer
  • konstruere formelle beviser i elementære logikker
  • udnytte udvalgte klassiske og ikke-klassiske logikker
  • benytte "backtracking" algoritmen til simpel problemløsning
  • analysere effekten af et deklarativt program
  • etablere et funktionelt design for et givet problem, således at hovedbegreberne for problemet direkte kan spores i designet
  • beherske logiske og funktionelle tilgange til programmering ved at definere rekursive prædikater og funktioner
  • kommunikere løsninger til problemer på en klar og præcis måde
  • aflede typer for funktionelle programmer
  • anvende begrebet om funktioner som "first-class citizens"
  • bevise programkorrekthed baseret på en given metode
  • formulere programkorrekthed og evaluere forskellige bevisstrategier, og foretage beviser


Kursusindhold:

Den logiske del af kurset dækker logikprogrammering (især Prolog som et "rapid prototyping" værktøj), elementære logikker (herunder propositionelle og første-ordens-logikker), ikke-klassiske logikker (for eksempel temporale logikker), bevissystemer (deduktive systemer og/eller refutationssystemer), og problemløsningsteknikker (såsom "backtracking" algoritmen).

Den funktionelle del af kurset dækker funktionsprogrammering, deklarativ modellering ved brug af et funktionsprogrammeringssprog med et stærkt typebegreb, funktioner som "first-class citizens", programkorrekthed, problemløsningsteknikker, og "rapid prototyping".


Kursusansvarlig:

Flemming Nielson, 322, 106, (+45) 4525 3735, nielson@imm.dtu.dk  
Jørgen Villadsen, 322, 132, (+45) 4525 3733, jv@imm.dtu.dk  

Institut:

02 Institut for Informatik og Matematisk Modellering

Tilmelding:

I CampusNet

Nøgleord:

Deklarativ Modellering, Formelle Logiske Systemer, Logikprogrammering, Funktionsprogrammering, Programkorrekthed
Sidst opdateret: 23. januar, 2008