T-79.194 Tietojenkäsittelyteorian seminaari

Kevät 2003

Kokeellinen osuus

Yleistä

Testeihin käytettävä kone on tt-dhcp-89.tt.hut.fi, johon teille on luotu käyttäjätunnukset.

Konetta ylläpitää Matti Järvisalo (mjj@tcs.hut.fi), jonka puoleen voi kääntyä ongelmatapauksissa.

Kokeet

Tavoitteena on testata tutkittavaa järjestelmää ainakin seuraavilla testitapauksilla: Näiden lisäksi voi käyttää testitapauksina esim. jotain kirjallisuudessa esitettyä testiä. Tällainen ylimääräinen työ vaikuttaa tietysti positiivisesti arvosanaan.

Vastaanotot

Kokeelliseen osaan liittyen järjestetään viikoilla 7-9 vastaanottotunti (ks. alla), jossa voi saada apua kokeellisen osuuden tekemisessä esiin tulleisiin ongelmiin.

Käytännön ohjeita

Toteutuvuustarkistimet löytyvät polusta /lhome/solvers/ ja instanssigeneraattorit polusta /lhome/generators/. Kaikki tarvittavat ohjelmistot (tarkistimet zchaff, 2clseq, sp ja unitwalk, sekä generaattorit makewff, genfacbm ja okgenerator) on linkattu polkuun /lhome/bin/. Tämä hakemisto on lisätty käyttäjätunnuksienne PATH-muuttujaan, joten ohjelmien pitäisi toimia sellaisenaan komentoriviltä.

SAT-instanssien syötemuoto DIMACS

Käytettävien toteutuvuustarkistimien syötemuoto on ns. DIMACS-muoto. Esimerkki DIMACS-muotoisesta instanssista:

c kommentti
p cnf 5 7
-1 3 2 0
4 -3 5 1 0
2 5 0
-5 4 2 0
 1 0
1 4 -5 0
3 -4 0
Kirjaimella c alkavat rivit ovat siis kommenttirivejä (tarkastin ei huomioi näitä). Kirjaimella p alkava rivi yllä kertoo, että instanssi on konjunktiivisessa normaalimuodossa (cnf), ja että instanssissa on viisi (5) muuttujaa ja seitsemän (7) klausuulia. Tämän jälkeen tulevat rivit vastaavat klausuuleja; jokaista muuttujaa vastaa tietty kokonaisluku välillä 1 - 5, ja miinus-merkki muuttujan edessä vastaa negaatiota. Nolla-merkki kertoo rivin loppumisesta.

SAT-instanssit

Valmiit instanssit

Tavoitteena on tarkistaa 13 mallintarkastusinstanssin toteutuvuus. Instanssit löytyvät polusta /lhome/instances/bmc/.

SAT-instanssien generointi

Ylimääräistä

Yleisesti käytettyjä testi-instansseja löytyy muun muassa Satlib:stä, http://www.intellektik.informatik.tu-darmstadt.de/SATLIB/benchm.html

OKGenerator luo satunnaisia SAT-instansseja pohjautuen AES128:aan (128-bittiseen Advanced Encryption Standardiin eli Rjindael-lohkosalaimeen). Käyttö: kokeile komentoa okgenerator -h, kts. lisäksi /lhome/generators/OKRandGen1_3/Documentation/ -hakemiston tiedostoja Usage ja Examples.

Kokeet käytännössä

Linkkejä