Rakendusliku loogika süvakursus: erinevus redaktsioonide vahel

Allikas: Lambda
Mine navigeerimisribale Mine otsikasti
Zingel (arutelu | kaastöö)
Resümee puudub
 
(ei näidata 2 kasutaja 154 vahepealset redaktsiooni)
1. rida: 1. rida:
Ainekood: ITV0800<br>
Ainekood: ITV0081<br>
Lektor: Tiina Zingel<br>
Lektor: Tanel Tammet<br>
Kontakt: tiina.zingel@ttu.ee<br><br>
Kontakt: tanel.tammet@ttu.ee, 6203457, TTÜ IT-426<br>
==Loengute materjalid. ==
Arhiiv: [[ITV0081 arhiiv 2014|2013]], [[ITV0081 arhiiv 2012|2012]]
1. Meeldetuletus lausearvutusest. <br>
 
2. Meeldetuletus predikaatarvutusest. <br>
 
3. Tuletussüsteemid. <br>
== Eksam ==
4. Sekventsarvutus. <br>
 
5. [[Sissejuhatus automaattõestamisse.]] <br>
Aeg ja koht (kaks eraldi aega):
6. [[Media:RakLoogika_5_1.ppt|Resolutsioonimeetod lausearvutuses.]]<br>
 
7. Davis-Putnami meetod. <br>
* 4. juuni, neljapäev, kell 10:00 ruumis <font color="red"><b>ICT-A1</b></font>, ülesanded saab samas Ago Lubergi käest (IT maja on esialgu planeeritud SOC-210 asemel, kuna T. Tammet peab olema magistrikaitsmise komisjonis)
* 11. juuni, neljapäev, kell 10:00 ruumis <b>ICT-A2</b> (IT-maja)
 
== Eksamiküsimused ==
 
 
Lausearvutus:
 
* Ülesanded lahendamiseks DPLL-ga (paar väikest lausearvutuse valemit, mille vastuolulisus või mudel leida käsitsi DPLL algoritmi abil (splitting ja unit propagation), st joonistada otsingupuu)
* Osata tõestada teoreem 17.5  (muutujateta resolutsioonimeetodi  täielikkus) lk 307 Prank, Tamme, Tammeti õpikust.
 
Predikaatarvutus:
 
* Ülesanded lahendamiseks: skolemiseerimine ja normaalkujule viimine.
* Ülesanded lahendamiseks: unifitseerimine.
* Ülesanded lahendamiseks: vastuolu tuletamine ilma võrduseta.
* Ülesanded lahendamiseks: vastuolu tuletamine võrdusega.
* Ülesanded lahendamiseks: Knuth-Bendixi täielikustamine.
 
Kõik ülesanded antakse Otteri kujul (muutujad suurte tähtedega) ja vaja on kirjutada välja detailne tõestus, samas otsingut ei ole vaja välja kirjutada. Unifitseerimise juures on vastuseks unifikaator, Knuth-Bendixi puhul on tulemuseks täielikustatud võrduste hulk.
 
Mõne ülesande juures võib juhtuda, et tõestust ei olegi (ei ole vastuoluline). Sel juhul selgitada, miks ei ole vastuoluline.
 
== Häid linke ==
 
https://news.ycombinator.com/item?id=9565577
http://wiremask.eu/hackingweek-2015-reverse-4/
 
== Koht ja aeg ==
 
Semester: kevad<br>
Hindamine: 60% eksam + 40% praktikumid<br>. Kolm kohustuslikku praktikumi, üks valikuline.
Loengud: iga neljapäev kell  12:00-13:30 ruumis IT-A2<br>
Praktikumid: neljapäeviti paarisnädalatel kell 10:00-11:30 ruumis IT-637<br>
 
== Soovitatav kirjandus:==
 
* T.Tamme, T.Tammet, R.Prank.  [http://dspace.utlib.ee/dspace/bitstream/handle/10062/24397/9985562313.pdf Loogika: mõtlemisest tõestamiseni. TÜ Kirjastus, 2002]
* [[Media:Geoffreasoningnotes.pdf|Geoff reasoning course notes]]
 
== Lahendajad testimiseks ==
 
Test and compare simple propositional solver algorithms:
 
Latest:
 
* [http://logictools.org Proper logictools site]
 
Old versions:
 
* [http://dijkstra.cs.ttu.ee/~tammet/logictools/proplogic.html Uuem, arenduses versioon]
* [http://dijkstra.cs.ttu.ee/~tammet/proplogic.html Vana versioon]
 
== Kodused ülesanded ==
 
Esimesed kolm ülesannet on kohustuslikud, neljas on vabatahtlik ja annab potentsiaalselt suure hulga lisapunkte.
 
* 26. veebruar: käsitsi [[lausearvutuse ja lihtsamate predikaatarvutuse ülesannete lahendamine]].
* 12 või 26 märts: lausearvutuse tõestajatega eksperimenteerimine. Vali kas lihtsam variant [[Prax 2: lausearvutuse lahendajatega eksperimenteerimine]] või keerukam variant: [[Prax 2: lihtsa DPLL lahendaja realiseerimine]]
* [[Prax3: tõestajatega eksperimenteerimine 2015]]
* Vabatahtlik [[Prax4: induktiivne tõestus 2015]]
 
== Loenguteemad ja materjalid ==
 
=== 1. Sissejuhatus. Süntaks ja semantika. ===
 
5. veebruar
 
[[Media:RakLoogika_1_tz_tt-1.ppt|Loengukonspekt (ppt)]] <br>
 
=== 2. Resolutsioonimeetod ja DPLL lausearvutuses ===
 
12. veebruar.
 
NB! Praktikum kell 10.
 
[[Media:RakLoogika_2_tz_tt-1.ppt|Loengukonspekt (ppt)]]
 
Täiendavalt väga detailne kolmeosaline loengukomplekt  Eugene Goldbergilt: [http://eigold.tripod.com/presentations/Lecture1.zip loeng1], [http://eigold.tripod.com/presentations/Lecture2.zip loeng2],[http://eigold.tripod.com/presentations/Lecture3.zip loeng3]
 
=== 3. DPLL optimeeringud ja algus: resolutsioonimeetod predikaatarvutuses: põhialgoritm ===
 
19. veebruar.
 
=== 4. Resolutsioonimeetod predikaatarvutuses: põhialgoritm jätkub ===
 
26. veebruar.
 
NB! Praktikum kell 10. Esimese ülesannetekomplekti vastuste tähtaeg.
 
Vaata kindlasti ka: [http://dijkstra.cs.ttu.ee/~tammet/proplogic.html Test and compare simple propositional solver algorithms]
 
=== 4. Resolutsioonimeetod predikaatarvutuses: põhialgoritm jätkub ===
 
5. märts.
 
=== 5. Resolutsioonimeetod predikaatarvutuses: strateegiad ===
 
12. märts
 
=== 6. Võrdus predikaatarvutuses ===
 
19. märts.
 
=== 6. Võrdus predikaatarvutuses jätkub: termiteisendussüsteemid ===
 
26. märts.
 
 
== <font color="red">Kursuse lõpu-tegevused</font> ==
 
30. aprill loeng: Tanel jätkab verifitseerimisega.
 
7. mai: eelviimane prax.
 
7. mai loeng: Tanel räägib mitte-verifitseerimisrakendustest.
 
14. mai: Juhan räägib SMT-solveritest
 
21. mai: eksamiülevaade jms.
 
21. mai: viimane prax, hiljemalt selleks ajaks vaja esitada oma tööd!!! Kes on
 
== Vanad 2012 aasta loengute materjalid ==
 
# [http://www.tud.ttu.ee/~zingel/RakLoogika_1.ppt Meeldetuletus lausearvutusest. (ppt)] <br>
# [http://www.tud.ttu.ee/~zingel/RakLoogika_2.ppt Meeldetuletus predikaatarvutusest. (ppt)] <br>
# [[Sekventsarvutus.]]
# [[Tõestuseotsingu strateegiad.]] <br>
# [[Media:RakLoogika_7.ppt|Unifitseerimine. (ppt)]] <br>
# [[Sissejuhatus automaattõestamisse.]] <br>
# [[Media:RakLoogika_5_2.ppt|Davis-Putnami meetod. (ppt)]] <br>
# [[Media:RakLoogika_5_1.ppt|Resolutsioonimeetod lausearvutuses. (ppt)]]<br>
# [[Media:RakLoogika_8.ppt|Resolutsioonimeetod predikaatarvutuses. (ppt).]]<br>
# [[Media:RakLoogika_10.ppt|Resolutsioonistrateegiad. (ppt)]]<br>
# [[Media:RakLoogika_9.ppt|Võrdusega predikaatarvutus. (ppt)]]<br>
# [[Mitteklassikalised loogikad.]] <br>
 
 
== Eksam ==
 
<b>NB! see on näitekirjeldus 2013 eksamist: 2015 eksam tuleb veidi teistsugune</b>
 
Eksamil on küsimusi kolmest teemast:
 
* Lausearvutus:
** Lausearvutuse semantika (tõeväärtustabelid)
** DPLL: oskus teha väikest näidet käsitsi. Liigagi põhjalikud materjalid ntx siit: [[Media:SatLecture1.ppt]], [[Media:SatLecture2.ppt]],[[Media:SatLecture3.ppt]]
* Predikaatarvutus:
** Arusaamine järgmiste materjalide tasemel:
*** [http://dspace.utlib.ee/dspace/bitstream/handle/10062/24397/9985562313.pdf Loogika: mõtlemisest tõestamiseni. TÜ Kirjastus, 2002], semantika ehk mudelite osa & teor tõestamise osa.
*** [[Media:Geoffreasoningnotes.pdf|Geoff reasoning course notes]]
*** Võrdus [[Media:Equality_lecture15.ppt]] ja [[Media:Rewritesystems.pdf‎]]
** Oskus teha resolutsioonimeetodi ülesandeid: unifitseerimine ja väikeste näidete lahendamine, seejuures baasstrateegiad.
** Oskus kodeerida väikesi ülesandeid predikaatarvutusse.
 
* Indekseerimine:
** McCune klassikalise artikli tasemel: [[Media: Mccuneindexing.pdf]]
** Oskus ehitada väikesi discrimination tree indeksipuid (trie termi jaoks).

Viimane redaktsioon: 3. juuni 2015, kell 17:15

Ainekood: ITV0081
Lektor: Tanel Tammet
Kontakt: tanel.tammet@ttu.ee, 6203457, TTÜ IT-426
Arhiiv: 2013, 2012


Eksam

Aeg ja koht (kaks eraldi aega):

  • 4. juuni, neljapäev, kell 10:00 ruumis ICT-A1, ülesanded saab samas Ago Lubergi käest (IT maja on esialgu planeeritud SOC-210 asemel, kuna T. Tammet peab olema magistrikaitsmise komisjonis)
  • 11. juuni, neljapäev, kell 10:00 ruumis ICT-A2 (IT-maja)

Eksamiküsimused

Lausearvutus:

  • Ülesanded lahendamiseks DPLL-ga (paar väikest lausearvutuse valemit, mille vastuolulisus või mudel leida käsitsi DPLL algoritmi abil (splitting ja unit propagation), st joonistada otsingupuu)
  • Osata tõestada teoreem 17.5 (muutujateta resolutsioonimeetodi täielikkus) lk 307 Prank, Tamme, Tammeti õpikust.

Predikaatarvutus:

  • Ülesanded lahendamiseks: skolemiseerimine ja normaalkujule viimine.
  • Ülesanded lahendamiseks: unifitseerimine.
  • Ülesanded lahendamiseks: vastuolu tuletamine ilma võrduseta.
  • Ülesanded lahendamiseks: vastuolu tuletamine võrdusega.
  • Ülesanded lahendamiseks: Knuth-Bendixi täielikustamine.

Kõik ülesanded antakse Otteri kujul (muutujad suurte tähtedega) ja vaja on kirjutada välja detailne tõestus, samas otsingut ei ole vaja välja kirjutada. Unifitseerimise juures on vastuseks unifikaator, Knuth-Bendixi puhul on tulemuseks täielikustatud võrduste hulk.

Mõne ülesande juures võib juhtuda, et tõestust ei olegi (ei ole vastuoluline). Sel juhul selgitada, miks ei ole vastuoluline.

Häid linke

https://news.ycombinator.com/item?id=9565577 http://wiremask.eu/hackingweek-2015-reverse-4/

Koht ja aeg

Semester: kevad
Hindamine: 60% eksam + 40% praktikumid
. Kolm kohustuslikku praktikumi, üks valikuline. Loengud: iga neljapäev kell 12:00-13:30 ruumis IT-A2
Praktikumid: neljapäeviti paarisnädalatel kell 10:00-11:30 ruumis IT-637

Soovitatav kirjandus:

Lahendajad testimiseks

Test and compare simple propositional solver algorithms:

Latest:

Old versions:

Kodused ülesanded

Esimesed kolm ülesannet on kohustuslikud, neljas on vabatahtlik ja annab potentsiaalselt suure hulga lisapunkte.

Loenguteemad ja materjalid

1. Sissejuhatus. Süntaks ja semantika.

5. veebruar

Loengukonspekt (ppt)

2. Resolutsioonimeetod ja DPLL lausearvutuses

12. veebruar.

NB! Praktikum kell 10.

Loengukonspekt (ppt)

Täiendavalt väga detailne kolmeosaline loengukomplekt Eugene Goldbergilt: loeng1, loeng2,loeng3

3. DPLL optimeeringud ja algus: resolutsioonimeetod predikaatarvutuses: põhialgoritm

19. veebruar.

4. Resolutsioonimeetod predikaatarvutuses: põhialgoritm jätkub

26. veebruar.

NB! Praktikum kell 10. Esimese ülesannetekomplekti vastuste tähtaeg.

Vaata kindlasti ka: Test and compare simple propositional solver algorithms

4. Resolutsioonimeetod predikaatarvutuses: põhialgoritm jätkub

5. märts.

5. Resolutsioonimeetod predikaatarvutuses: strateegiad

12. märts

6. Võrdus predikaatarvutuses

19. märts.

6. Võrdus predikaatarvutuses jätkub: termiteisendussüsteemid

26. märts.


Kursuse lõpu-tegevused

30. aprill loeng: Tanel jätkab verifitseerimisega.

7. mai: eelviimane prax.

7. mai loeng: Tanel räägib mitte-verifitseerimisrakendustest.

14. mai: Juhan räägib SMT-solveritest

21. mai: eksamiülevaade jms.

21. mai: viimane prax, hiljemalt selleks ajaks vaja esitada oma tööd!!! Kes on

Vanad 2012 aasta loengute materjalid

  1. Meeldetuletus lausearvutusest. (ppt)
  2. Meeldetuletus predikaatarvutusest. (ppt)
  3. Sekventsarvutus.
  4. Tõestuseotsingu strateegiad.
  5. Unifitseerimine. (ppt)
  6. Sissejuhatus automaattõestamisse.
  7. Davis-Putnami meetod. (ppt)
  8. Resolutsioonimeetod lausearvutuses. (ppt)
  9. Resolutsioonimeetod predikaatarvutuses. (ppt).
  10. Resolutsioonistrateegiad. (ppt)
  11. Võrdusega predikaatarvutus. (ppt)
  12. Mitteklassikalised loogikad.


Eksam

NB! see on näitekirjeldus 2013 eksamist: 2015 eksam tuleb veidi teistsugune

Eksamil on küsimusi kolmest teemast:

  • Indekseerimine:
    • McCune klassikalise artikli tasemel: Media: Mccuneindexing.pdf
    • Oskus ehitada väikesi discrimination tree indeksipuid (trie termi jaoks).