Ects: 5
Predavanja: 2
Vježbi: 2
Cilj predmeta:
Usvajanje logičkog jezika i njegove upotrebe u preciziranju zamisli i argumentiranju. Usvajanje osnovnih pojmova teorije skupova (skup, relacija, funkcija, struktura) i njene upotrebe u modeliranju problema. Usvajanje osnovnih pojmova teorije izračunljivosti i njene upotrebe u algoritamskom rješavanju problema.
Sadržaj predmeta:
MATEMATIČKI JEZIK. Analiza i usporedba s prirodnim jezikom. LOGIČKI JEZIK VEZNIKA. Sintaksa, semantika, logički pojmovi, tablice istinitosti, stabla opovrgavanja, prirodna dedukcija, prevođenje i analiza, primjena na logičke sklopove. LOGIČKI JEZIK PREDIKATA. Sintaksa, semantika, logički pojmovi, stabla opovrgavanja, prirodna dedukcija, prevođenje i analiza, granice logike, primjena na logičko programiranje i ispitivanje korektnosti softwarea i hardwarea. TEORIJA SKUPOVA. Pojam skupa, relacije, funkcije i matematičke strukture, primjena na baze podataka, funkcijsko programiranje, strukture podataka i kriptografiju simetričnog ključa. IZRAČUNLJIVOST. Pojmovi izračunljivosti i složenosti računa, primjena na kriptografiju asimetričnog ključa.
Kompetencije:
Razumijevanje i upotreba logičkih jezika i teorije skupova u modeliranju, postavljanju i rješavanju problema, te analiza algoritamskih rješenja.
Ishodi učenja:
Student će, nakon polaganja ovog predmeta moći: 1) razlikovati logičke i nelogičke pojmove 2) identificirati razne sintaktičke konstrukcije u logičkim jezicima 3) ispitivati denotaciju i istinitost u danoj interpretaciji jezika 4) ispitivati ispravnosti argumentacije pomoću stabala opovrgavanja 5) formulirati dokazivanje u sustavu prirodne dedukcije i ispitivati njegovu ispravnost 6) identificirati osnovne matematičke pojmove 7) formulirati zamisli u jeziku skupova 8) uspoređivati vremenske složenosti algoritama 9) identificirati osnovne kriptografske pojmove.