Semantic and Declarative Technologies Course -- AIT 2024 Spring Semester

This page contains information on the Semantic and Declarative Technologies Course -- AIT 2024 Spring Semester


Slides of the present, 2024 Spring semester

Course information

The course rules can be downloaded from here.

ETS - the Electronic Teacher Support system

The login page of ETS is available here. Sometimes you have to press the Reload button, possibly several times, for the login page to appear. Some browsers may also ask you for additional confirmation as they consider this an "unsafe" site.

For logging into ETS you will need a user code (given by us) and a password (chosen by you). Your user code is obtained by concatenating your last name(s) and the first name, in this order, and taking the first six letters of this string (omitting spaces, hyphens, etc). If you have provided a preferred first name in parentheses, that will be used and all the other non-last names ignored. For example: the user code for "Fui Si (Chris) Won" is WONCHR.

When you first log in:

  1. enter your user code, leave the password field blank;
  2. check the email address in the form displayed and edit it, if needed, then press the Go button;
  3. wait until you receive a generated password at the email address provided by you;
  4. enter this password in the second form displayed;
  5. from now on you can access the services of ETS using this password.
You can change your email and password anytime using the menu item "My data". Please do not use a valuable password here.

Practice and Homework tasks

Mid-term test

Sample mid-term tests are available: sample 1, sample 2, solutions: sample 1, sample 2,


All assignments are to be submitted via the ETS Electronic Teacher Support (ETS) tool.

Assignment 1

Solving a Sudoku puzzle: .pdf.
You can download the test cases from here.

Deadline : Monday, Apr-03-2024
Please read some important advice given here.
If (and only if) you think you are unable to solve the problem, please read the hints available from this page.

There is some information on how to handle subgrids without recursion here.

You can discuss approaches and algorithms, but no code pieces should be shared!

Assignment 2

Solving a Skyscraper Sudoku puzzle. Task description: .pdf.

Deadline: Wednesday, May 1st, 2024.

A description of Skyscraper Sudoku rules can be found here.
You can download the test cases from here.

Here is a related video. A simpler version of the puzzle can be played online here.

Lots of Skyscraper Sudoku puzzles can be downloaded from here.


The finals are split into two parts: a sit-in part on the Semantic Web, and a take-home part on CLPFD programming.

You will write the sit-in part (Semantic Web) of the final test on Wednesday, May 15th 2024 at 2 pm.
The sample final test (Semantic Web part) can be downloaded from here and its solution from here.

The CLPFD part of the final test can be downloaded from here. It can be submitted and tested using ETS.
CLPFD part deadline: midnight of Thursday 16th May.
The CLPFD part is related to the end view puzzle, see e.g. here.
Newly added: Some additional hints are available here.

This is the definition of the predicate used in testing the submission:

var_domlist(Var, DomainAsList) :- fd_dom(Var, Range), X in Range, findall(X, indomain(X), DomainAsList).

Last modified by Peter Szeredi,, on Apr-22-2024.