PředmětyPředměty(verze: 970)
Předmět, akademický rok 2024/2025
   Přihlásit přes CAS
Formal Mathematics and Proof Assistants - NMMB566
Anglický název: Formal Mathematics and Proof Assistants
Zajišťuje: Katedra algebry (32-KA)
Fakulta: Matematicko-fyzikální fakulta
Platnost: od 2023
Semestr: letní
E-Kredity: 3
Rozsah, examinace: letní s.:2/0, Zk [HT]
Počet míst: neomezen
Minimální obsazenost: neomezen
4EU+: ne
Virtuální mobilita / počet míst pro virtuální mobilitu: ne
Stav předmětu: nevyučován
Jazyk výuky: angličtina, čeština
Způsob výuky: prezenční
Garant: Mgr. Josef Urban, Ph.D.
RNDr. Martin Suda, Ph.D.
Třída: M Mgr. MMIB
M Mgr. MMIB > Volitelné
Kategorizace předmětu: Matematika > Algebra
Neslučitelnost : NMMB568
Záměnnost : NMMB568
Je neslučitelnost pro: NMMB568
Je záměnnost pro: NMMB568
Výsledky anket   Termíny zkoušek   Rozvrh   Nástěnka   
Anotace -
The topic of the course are formal (computer-understandable) mathematics and proof assistants (interactive theorem provers). A proof assistent is a tool to assist with the development of formal proofs by human-machine collaboration. The language of communication is some variant of formal logic and the main aim a high level of assurance that the proven actually holds.We will have a look at the proof assistent Lean, study its theoretical foundations and explore the ways in which it can be used to develop theories, model systems, and prove theorems in computer science.
Poslední úprava: Žemlička Jan, doc. Mgr. et Mgr., Ph.D. (02.01.2024)
Podmínky zakončení předmětu

Předmět je zakončen ústní zkouškou.

Poslední úprava: Žemlička Jan, doc. Mgr. et Mgr., Ph.D. (21.05.2021)
Literatura -

Blanchette et at. The Hitchhiker's Guide to Logical Verification (available online)

Jeremy Avigad, Leonardo de Moura, and Soonho Kong. Theorem Proving in Lean (available online)

Poslední úprava: Žemlička Jan, doc. Mgr. et Mgr., Ph.D. (07.12.2022)
Požadavky ke zkoušce -

Požadavky budou upřesněny.

Poslední úprava: Žemlička Jan, doc. Mgr. et Mgr., Ph.D. (21.05.2021)
Sylabus -

Většinou se budeme řídit textem The Hitchhiker's Guide to Logical Verification:

Základy:

  • definice a výroky,
  • Backward Proofs, Forward Proofs,

(kvantifikátory, spojky, taktiky, věty jako typy / důkazy jako termy).

Funkcionálně-logické programování:

  • funkcionální programování,
  • induktivní predikáty,
  • monády,

(základní datové struktury, důkazy indukcí, aritmetické taktiky).

Sémantika programů:

  • operační sémantika,
  • Hoareova logika,
  • denotační sémantika,

(small-step/big-step, částečná vs. úplná správnost, monotónní funkce, svazy a pevné body).

Matematika:

  • logické základy matematiky,
  • základní matematické struktury,
  • racionální a reálná čísla,

(základní principy, podtypy, kvocientové typy, třídy typů).

Poslední úprava: Žemlička Jan, doc. Mgr. et Mgr., Ph.D. (07.12.2022)
 
Univerzita Karlova | Informační systém UK