Informationsteknik – Deklarativ programmering

Kurskod I160403
Studiepoäng 8
Lärandemål

Efter avslutad kurs skall den studerande behärska användningen av ett deklarativt språk för programmering.

För att uppfylla målet skall den studerande behärska
– Syntaxen för program i Prolog
– Faktasatser, regler, frågor
– Resolutionsmetoden
– Unifiering
– Backtracking
– Listor och rekursiva program
– En programmeringsmiljö för deklarativ programmering inklusive debugginghjälpmedel
– Inbyggda metapredikat för negation och alla svar
– Att spara predikat, termer och atomer på fil
– Att läsa predikat, termer och atomer från fil
– Välkända algoritmer för sortering och sökning för deklarativa program
– Deklarativ och procedurell tolkning av program
– Dokumentation av programkod
– Läsa programkod och införa ändringar i befintlig programkod
– Problemlösning med hjälp av deklarativ programmering

After completion of the course the student is expected to be proficient in a declarative language for programming.
To comply with the learning outcomes the student is expected to know:
• The syntax for programs in Prolog
• Facts, conditional clauses and questions
• The resolution method
• Unification
• Backtracking
• Lists and recursive programs
• A programming interface for declarative programming including debugging tools
• Built-in meta-predicates for negation and all answers
• Saving predicates, terms and atoms on file
• Reading predicates, terms and atoms from file
• Well known algorithms for sorting and searching for declarative programs
• Declarative and procedural interpretation of programs
• Documentation of source code
• Reading source code and introducing changes into existing source code
• Problem Solving using declarative programming

Innehåll

Syntax för Prologprogram
Slutsatsdragning i Prolog
Problemlösning i deklarativa språk
Datastrukturer
Aritmetik
Hantering av indata och utdata
Inbyggda predikat
Operationer på datastrukturer – sökning, sortering
Generella principer för god programmering
Deklarativ och procedurell tolkning
Metaprogram

Syntax for Prolog-programs
Conclusions in Prolog
Problem solving in declarative languages
Data structures
Arithmetic
Handling of input and output data
Built-in predicates
Operations on data structures – searching, sorting
General principles for good programming
Declarative and procedural interpretation
Meta programs

Närvaro

Obligatorisk närvaro vid laborationer samt vid presentation och genomgång av inlämningsuppgifterna.

Obligatory presence at laboratory lessons and presentation and review of the assignments.

Vitsordsskala

VG, G (för betygssättning)

Ämnesområde

Informationsteknik

Utbildningsprogram

Utbildningsprogrammet för informationsteknik

Examination

Skriftlig tentamen samt godkända inlämningsuppgifter.

Written exam and passed assignments.

Kurslitteratur och studiematerial

Bratko, I. (2011). Prolog programming for artificial intelligence. 4. ed. Wokingham: Addison-Wesley. 696 s. Bibliotekskatalogen

Undervisningsmaterial (högskolan tillhandahåller)

Webbaserat material

Web based material.

Förkunskaper

Motsvarande Logik 7 sp och Programmering 1 8 sp.

Prerequisites Logic (7 ECTS) and Programming 1 (8 ECTS) or corresponding.

Dokumentering

Godkänt vitsord noteras i studiekort. U, G eller VG (Vid validering används vitsordet Godkänd).

Passed grade will be noted in the study card.
U= Fail
G= Pass
VG= Pass with distinction
For validation the grade G, pass, will be used.

Arbetsformer

Föreläsningar, lektioner, laborationer, inlämningsuppgifter.

Lectures, seminars, laboratory lessons, assignments.

Utskriven 19 april 2024 kl 06:02