Logikprogrammering

7,5 hp

Kursplan, Avancerad nivå, 1DL022

Det finns en senare version av kursplanen.
Kod
1DL022
Utbildningsnivå
Avancerad nivå
Huvudområde(n) med fördjupning
Datavetenskap A1N
Betygsskala
Med beröm godkänd (5), Icke utan beröm godkänd (4), Godkänd (3), Underkänd (U)
Fastställd av
Teknisk-naturvetenskapliga fakultetsnämnden, 6 november 2007
Ansvarig institution
Institutionen för informationsteknologi

Behörighetskrav

120 hp med Programmeringsteknik MN1 och MN2,

Datastrukturer MN1 och Logik MN1, eller motsvarande kunskaper.

Funktionell programmering MN1 och Automatateori rekommenderas.

Mål

För godkänt betyg ska studenten kunna

  • definiera och använda grundläggande koncept i logikprogrammering.
  • manuellt analysera och exekvera enkla logiska program map korrekthet och effektivitet.
  • formulera enkla problem i logik som kan exekveras som logisk program.
  • implementera enkla algoritmer och datastrukturer korrekt i logikprogrammering.
  • använda logikprogrammeringens starka sidor (unifiering, backtracking och grammatik) för att lösa enkla kombinatoriska problem och för att behandla naturligt språk.
  • förklara hur logikprogrammering skiljer sig från andra sätt att programmera.

Det övergripande målet är att bredda studenternas perspektiv på programmering.

Innehåll

Grundläggande koncept: relationer, regler unifiering, rekursion.

Relation mellan logik och logikprogrammering: semantik, sundhet och fullständighet.

Programmering i ett logiskt språk, t.ex. Prolog.

Kodning av algoritmer och datastrukturer; lösning av sök- och villkorsproblem.

Jämförelser med imperativ, objektorienterad och funktionell programmering.

Grammatikregler.

Implementeringstekniker: (meta)interpretering

och kompilering.

Tillämpningar inom artificiell intelligens: problemlösning och behandling av naturligt språk.

Undervisning

Föreläsningar, gästföreläsningar, lektioner och laborationer.

Examination

Skriftligt prov (6 hp) samt inlämningsuppgifter (1,5 hp). Frivilliga uppgifter kan ge högre betyg.

FÖLJ UPPSALA UNIVERSITET PÅ

Uppsala universitet på facebook
Uppsala universitet på Instagram
Uppsala universitet på Youtube
Uppsala universitet på Linkedin