Upload
others
View
7
Download
0
Embed Size (px)
Citation preview
Matematická logika
Ondrej Lengál
Fakulta informacních technologiíVysoké ucení technické v Brne
IDM’20[preloženo 23. listopadu 2020]
Logika
(Matematická) logika: oblast matematiky zabývající se univerzálnímiprincipy usuzování v ruzných formálních systémech
usuzování: základní pravdy, odvozovací pravidla, dukazformální systém (príklady: logika, algebra, programovací jazyk)
ale takéjazykI jaké skutecnosti jsou vyjádritelné v daném jazyceI expresivita
FIT VUT Matematická logika IDM’20 2 / 65
Strucná historie logiky
Aristoteles (4. stol. pred n.l.): základy logiky, sylogismyLeibniz (17. stol.): myšlenka mechanizace usuzováníBoole (19. stol.): logika jako algebraprelom 19. a 20. století:I krize v základech matematiky (logika a teorie množin)
Russell: Russelluv paradox (paradox v naivní teorii množin)
20. století:I David Hilbert: cíl vystavení matematiky na formálních základech
• axiomatické systémy (Zermelo-Fraenkelova teorie množin,Peanovy axiomy pro aritmetiku prirozených císel, . . . )
I Kurt Gödel (narozen v Brne): limity formálních systému (nelzedokázat jejich bezespornost, pokud jsou dostatecne silné)
I Alan Turing („otec informatiky“):• usuzování nelze mechanizovat• základy umelé inteligence (založené na logice)
K. Gödel
A. Turing
FIT VUT Matematická logika IDM’20 3 / 65
Logika a informatikaSoucasnost:
Logika je základní pilír informatiky:I hardware: výroková (Booleova) logikaI databáze: predikátová logika 1. rádu (SQL)I programovací jazyky: teorie typu (logika vyššího rádu)I verifikace: predchozí + temporální logiky (LTL/CTL), . . .I umelá inteligence: predikátová logika 1. rádu, modální logiky, . . .I syntéza: predikátová logika 1./2. ráduI kryptografie: interaktivní/pravdepodobnostní dukazové systémy,
zero-knowledge dukazy (kryptomeny)I rízení: fuzzy logikaI . . .
Pocítace pomáhají v matematice:I Vycerpávající enumerace konecných domén, napr.
• Problém 4 barev (1976, 1936 prípadu, specializovaný SW),• Problém Booleovských Pythagorejských trojic (2016, 200 TiB dukaz)
I Automatická dedukce vet, napr. Robbinsova domnenka (1996)I Formalizace a mechanické overování matematických dukazu:
• Problém 4 barev (2005, dukaz pomocí theorem proveru)• Keplerova domnenka (2014, formalizace kontroverz. dukazu z 2003)
FIT VUT Matematická logika IDM’20 4 / 65
Logika v informatice — Specifikace https://rise4fun.com/Vcc/
unsigned lsearch(int elt, int* ar, unsigned sz)_(requires \thread_local_array(ar, sz))_(ensures \result != UINT_MAX ==> ar[\result] == elt)_(ensures \forall unsigned i; i < sz && i < \result ==> ar[i] != elt)_(decreases 0)
{unsigned i;for (i = 0; i < sz; i++)_(invariant \forall unsigned j; j < i ==> ar[j] != elt)
{if (ar[i] == elt) return i;
}return UINT_MAX;
}
FIT VUT Matematická logika IDM’20 5 / 65
Logika a informatikaFormalizace
Potreba umet precizne formulovat myšlenky a chápat dusledky.
PríkladLidstvo zkonstruuje umelou superinteligenci s neomezenou mocí. Co má být jejím cílem?
Maximalizovat individuální blaho lidstva?
∀x ∈ People : is_maximal(happiness(x))
Maximalizovat celkové blaho lidstva?
is_maximal( ∑
x∈Peoplehappiness(x)
)Maximalizovat prumerné blaho lidstva?
is_maximal
(∑x∈People happiness(x)
|People|
)FIT VUT Matematická logika IDM’20 6 / 65
Výroková (Booleova) logika
FIT VUT Matematická logika IDM’20 7 / 65
Výroková logikaVýroková logika:
usuzování o výrocíchvýrok:
prvotní (atomický, jednoduchý): základní tvrzení, u nehož dává smysl uvažovat, zdaje ci není pravdivé; príklady:I “Sníh je bílý.”I “Cena rohlíku je 8 Kc.”I “1 + 1 = 2”I každé dva prvotní výroky jsou nezávislé
složený: sestrojený z jiných výroku pomocí výrokových spojekI Neplatí “sníh je bílý.”I “Sníh je bílý” a “cena rohlíku je 8 Kc.”I “Sníh je bílý” nebo “cena rohlíku je 8 Kc.”I Pokud “sníh je bílý,” pak “cena rohlíku je 8 Kc.”I “Sníh je bílý” práve, když “cena rohlíku je 8 Kc.”
je pravdivý nebo nepravdivý: urcíme na základe pravdivosti prvotních výroku asémantiky výrokových spojek
FIT VUT Matematická logika IDM’20 8 / 65
Výroková formule
Výroková promenná:nahrazuje konkrétní prvotní výrokybereme ze (spocetné) množiny X = {X,Y, . . .}
Výroková formulevznikne z výrokových promenných použitím výrokových (logických, pravdivostních,Booleovských) spojekmá pravdivostní hodnotu danou ohodnocením výrokových promenných
FIT VUT Matematická logika IDM’20 9 / 65
Výroková logika
Logika je jazyk, má tedy syntaxi (pravidla, která urcují, jak se vytvorí fráze jazyka)a sémantiku (prirazení významu frázím).
Syntaxe: je dánaI abecedou: množina symbolu: X ] {1, 0,¬,∧,∨,→,↔, (, )}
1 . . . pravda (true, T , tt , >)0 . . . nepravda (false, F , ff , ⊥)¬ . . . negace (ne, not)∧ . . . konjunkce (a, and)∨ . . . disjunkce (nebo, or)→ . . . (materiální) implikace (když . . . , pak . . . )↔ . . . (materiální) bikondicionál (ekvivalence, iff, . . . práve když . . . )
I gramatikou: pravidla, jak ze symbolu vytváret fráze
FIT VUT Matematická logika IDM’20 10 / 65
Výroková logika — gramatikaVýroková formule: (znacíme písmeny recké abecedy)
ϕ ::= 0 | 1 | X | (¬ϕ1) |(ϕ1 ∧ ϕ2) | (ϕ1 ∨ ϕ2) |(ϕ1→ϕ2) | (ϕ1↔ϕ2)
kde X je promenná z množiny promenných X
Príklad((X ∧ (¬Y ))→Z) je formuleX(Y ∨ Z) není formuleX ∧ Y ∨ Z není formuleY je formule
ϕ(X1, . . . , Xn) znací, že promenné vyskytující se ve ϕtvorí podmnožinu {X1, . . . , Xn}
FIT VUT Matematická logika IDM’20 11 / 65
Výroková logika — sémantika
Sémantika urcuje co vytvorené fráze znamenajíOhodnocení promenných
funkce I : X→ {0, 1}príklad: I = {X 7→ 1, Y 7→ 0, . . .}
Sémantika výrokové formule:definována induktivne dle pravdivostní tabulky (ph(ϕ): pravd. hodnota formule ϕ):
ph(ϕ) ph(ψ) ph(¬ϕ) ph(ϕ ∧ ψ) ph(ϕ ∨ ψ) ph(ϕ→ψ) ph(ϕ↔ψ)
0 0 1 0 0 1 10 1 1 0 1 1 01 0 0 0 1 0 01 1 0 1 1 1 1
Formálneji: Necht’ V je množina všech ohodnocení promenných, tj. V = (X→ {0, 1}).Potom sémantika výrokové formule je funkce J·K : V→ {0, 1}, napr. JϕK, definovánainduktivne pomocí pravdivostní tabulky.
FIT VUT Matematická logika IDM’20 12 / 65
Výroková logika — sémantika
Príklad
ϕ = ((X ∧ (¬Y ))→X)
X Y ¬Y X ∧ (¬Y ) ϕ
0 00 11 01 1
Kolik existuje výrokových formulí nad promennými {X,Y }?Kolik existuje výrokových formulí nad promennými X?Kolik existuje výrokových formulí nad promennými {X,Y } s ruznou sémantikou?Tedy, kolik existuje ruzných logických binárních spojek?
FIT VUT Matematická logika IDM’20 13 / 65
Výroková logika — sémantika
Príklad
ψ = ((X↔Y )→Z)
X Y Z X↔Y ψ
0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1
Kolik existuje výrokových formulí nad promennými {X,Y, Z} s ruznou sémantikou?
FIT VUT Matematická logika IDM’20 14 / 65
Výroková logika — syntaxe (závorky)
Závorkyslouží k lineárnímu zápisu syntaktického stromu formule
((X∧(¬Y ))→X) je zápis stromu
→
∧
X ¬
Y
X
casto je vynecháváme:I u korene stromu
• tj. místo (X ∧ Y ) píšeme X ∧ YI u asociativních spojek (∧, ∨,↔)
• tj. místo ((X ∧ (Y ∧W )) ∧ Z) ∨ U píšeme (X ∧ Y ∧W ∧ Z) ∨ UI je-li dána precedencí (používat strídme)
• {¬} > {∧,∨} > {→,↔}
FIT VUT Matematická logika IDM’20 15 / 65
Výroková logika — pojmy
model formule ϕ:je ohodnocení promenných I, které splnuje ϕI tj. ϕ má pri I hodnotu 1 (true)
znacíme I |= ϕ
opak (I nesplnuje ϕ) znacíme I 6|= ϕ
splnitelnost (satisfiability):formule ϕ je splnitelná, pokud má modeltj. existuje ohodnocení promenných I takové, že I |= ϕ
množina formulí F je splnitelná, pokud je splnitelnákonjunkce F , tj. následující formule:∧
ϕi∈Fϕi
FIT VUT Matematická logika IDM’20 16 / 65
Výroková logika — pojmyplatnost (validity):
formule ϕ je platná (tautologie) pokud I |= ϕ pro všechnaohodnocení Iznacíme |= ϕ
opaku (formule není platná) ríkáme neplatnostI (znacíme 6|= ϕ)
kontradikce (nesplnitelnost, unsatisfiability):formule ϕ je kontradikce pokud nemá modeltj. neexistuje ohodnocení promenných I takové, že I |= ϕ
pozor: |= ¬ϕ není ekvivalentní 6|= ϕ
Platí následující dualita:formule ϕ je platná práve když formule ¬ϕ je nesplnitelnáformule ϕ je splnitelná práve když formule ¬ϕ je neplatná
FIT VUT Matematická logika IDM’20 17 / 65
Výroková logika
Urcování zda je formule platná/splnitelná/. . . :ad hoc algebraické metodypravdivostní tabulka (muže být velká)dukaz ve formálním systémuI formální systém Hilbertova typu (prednáška L. Holíka)I sémantický argument (tableau; Smullyan)I prirozená dedukce (Gentzen)I rezoluce
FIT VUT Matematická logika IDM’20 18 / 65
Výroková logika — pojmy
PríkladUrcete, zda je následující formule a) platná, b) nesplnitelná, c) neplatná, ale splnitelná.
ψ = ((X↔Y )→Z)
X Y Z X↔Y ψ
0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1
FIT VUT Matematická logika IDM’20 19 / 65
Výroková logika — pojmylogická ekvivalence:
formule ϕ a ψ jsou ekvivalentní pokud je formule ϕ↔ψ tautologieznacíme ϕ⇔ ψ
ϕ⇔ ψ když pro každé ohodnocení I platí, že I |= ϕ práve tehdy když I |= ψ
logický dusledek:formule ψ je logickým dusledkem formule ϕ pokud je formule ϕ→ψ tautologieznacíme ϕ⇒ ψ
ϕ⇒ ψ když pro každé ohodnocení I platí, že pokud I |= ϕ, pak i I |= ψ
pro množinu formulí F definujeme F ⇒ ψ tehdy, když(∧
ϕi∈F ϕi
)⇒ ψ
Jaký je rozdíl mezi ϕ↔ψ a ϕ⇔ ψ?ϕ↔ψ je formule výrokové logikyϕ⇔ ψ je tvrzení o formulích ϕ a ψ v metajazyce. Není to formule.
Podobne pro ϕ→ψ a ϕ⇒ ψ.
FIT VUT Matematická logika IDM’20 20 / 65
Výroková logika
substituce:pokud |= ϕ(X1, . . . , Xn), pak platí |= ϕ(ψ1, . . . , ψn)
ϕ(ψ1, . . . , ψn) vznikla dosazením formulí ψ1 za X1, . . . , ψn za Xn
modus ponens (pravidlo odloucení):pokud |= ϕ a |= ϕ→ψ, pak platí |= ψ
„Jestliže prší, je mokro. Prší, tedy je mokro.“
modus tollens (pravidlo poprení):pokud |= ¬Y a |= X→Y , pak platí |= ¬X„Jestliže prší, je mokro. Není mokro, tedy neprší.“
FIT VUT Matematická logika IDM’20 21 / 65
Výroková logika — pojmyPlatnost a splnitelnost jsou velmi duležité pojmy.
Tautologieduležité v logickém usuzování (zajímají nás platné formule)jsou formule ϕ takové, že ϕ⇔ 1
urcují strukturu platných formulí (použití i v predikátové logice)z hlediska napr. návrhu HW nezajímavé
Splnitelnostduležité pri hledání rešenímnoho problému lze prevést na formuli výrokové logiky tak, že daný problém p márešení práve když formule ϕp je splnitelnákonecný stavový prostorz modelu ϕp pak lze získat rešení pSAT solvery (MiniSat, Glucose, Treengeling, . . . )
FIT VUT Matematická logika IDM’20 22 / 65
Výroková logika — další spojkydalší binární logické spojky:⊕: exkluzivní disjunkce (exkluzivní or, xor, nonekvivalence):I ϕ⊕ψ def⇔ ¬(ϕ↔ψ)I použití v HW (parita: detekce chyb), kryptografii, . . .
↓: Peircova šipka (nor):I ϕ ↓ψ def⇔ ¬(ϕ ∨ ψ)
↑: Shefferuv operátor (nand):I ϕ ↑ψ def⇔ ¬(ϕ ∧ ψ)I casto používaný v HW (jednoduchá impl. v technologii CMOS)
úplný systém logických spojek:množina spojek S taková, že pro každou formuli ϕ existujeformule ϕS využívající pouze spojky z množiny S a ϕ⇔ ϕS
I príklady: {¬,∨}, {¬,∧}, {¬,→}, {↑}, {↓}I pr. neúplného systému log. spojek: {∧,∨,→,↔}
(a kterákoliv podmnožina)
NAND v CMOSA ↑B
FIT VUT Matematická logika IDM’20 23 / 65
Výroková logika — Booleova algebra({0, 1},∧,∨,¬, 0, 1) tvorí Booleovu algebru.
rovnost ϕ = ψ je definována jako logická ekvivalence ϕ⇔ ψnapr. (X ∧ Y ) ∨X = X
X ∧ (Y ∧ Z) ⇔ (X ∧ Y ) ∧ Z (asociativita)X ∨ (Y ∨ Z) ⇔ (X ∨ Y ) ∨ Z (asociativita)X ∧ (Y ∨ Z) ⇔ (X ∧ Y ) ∨ (X ∧ Z) (distributivita)X ∨ (Y ∧ Z) ⇔ (X ∨ Y ) ∧ (X ∨ Z) (distributivita)¬(X ∧ Y ) ⇔ ¬X ∨ ¬Y (De Morganuv zákon)¬(X ∨ Y ) ⇔ ¬X ∧ ¬Y (De Morganuv zákon)
F ⇔ ¬¬F (dvojitá negace)
X ∨X ⇔ X X ∧X ⇔ X (idempotence)X ∨ 0 ⇔ X X ∧ 1 ⇔ X (neutralita)X ∨ 1 ⇔ 1 X ∧ 0 ⇔ 0 (anihilace)
X ∧ ¬X ⇔ 0 X ∨ ¬X ⇔ 1 (komplementarita)
FIT VUT Matematická logika IDM’20 24 / 65
Výroková logika — další ekvivalence
X→Y ⇔ ¬X ∨ Y (implikace)X→Y ⇔ ¬(X ∧ ¬Y ) (implikace)X↔Y ⇔ (X→Y ) ∧ (Y →X) (bikondicionál)
Ekvivalence lze použít pro algebraické úpravy formulí.
PríkladPreved’te formuli (X ∧ ¬Y ) ∨ ¬Z do tvaru, ve kterém se vyskytují pouze spojky ¬ a→.
(X ∧ ¬Y ) ∨ ¬Z ⇔ ¬¬(X ∧ ¬Y ) ∨ ¬Z (dvojitá negace)⇔ ¬(X→Y ) ∨ ¬Z (implikace)⇔ (X→Y )→¬Z (implikace)
FIT VUT Matematická logika IDM’20 25 / 65
Výroková logika — Normální formy — NNF
Negacní normální forma (NNF)obsahuje pouze spojky ∧, ∨ a ¬¬ se vyskytuje pouze pred promennými
PríkladNecht’
ϕ : ¬(X→¬(X ∧ Y )).
Formuleψ : X ∧ Y
je ekvivalentní formuli ϕ a je v NNF.
FIT VUT Matematická logika IDM’20 26 / 65
Výroková logika — Normální formy — NNFPrevod do NNF:
1 postupná eliminace všech výskytu spojky↔ pomocí ekvivalence
ϕ↔ψ ⇔ (ϕ→ψ) ∧ (ψ→ϕ)
2 postupná eliminace všech výskytu spojky→ pomocí ekvivalence
ϕ→ψ ⇔ ¬ϕ ∨ ψ
3 propagování negací k promenným pomocí De Morganových zákonu:
¬(ϕ ∧ ψ) ⇔ ¬ϕ ∨ ¬ψ¬(ϕ ∨ ψ) ⇔ ¬ϕ ∧ ¬ψ
Pritom, kdykoliv to jde, zjednodušovat.
PríkladPreved’te formuli ¬(X→¬(X ∧ Y )) do NNF.
¬(X→¬(X ∧ Y ))(implikace)⇔ ¬(¬X ∨ ¬(X ∧ Y ))
(De Morgan)⇔ X ∧ (X ∧ Y )(asoc. & idem.)⇔ X ∧ Y
FIT VUT Matematická logika IDM’20 27 / 65
Výroková logika — Normální formy — DNF
Disjunktivní normální forma (DNF, nekdy též sum of products):je disjunkce konjunkcí literálu: ∨
i
∧j
`i,j
literál je promenná (X) nebo její negace (¬X)
PríkladNecht’
ϕ : (X ∧ ¬¬Y ) ∨ (Z→W ).
Formuleψ : (X ∧ Y ) ∨ ¬Z ∨W
je ekvivalentní formuli ϕ a je v DNF.
FIT VUT Matematická logika IDM’20 28 / 65
Výroková logika — Normální formy — DNF
Prevod do DNF:algebraické úpravy
1 prevod do NNF2 použití distributivních zákonu
z pravdivostní tabulky1 Najdeme množinu ohodnocení R které mají hodnotu 1.2 Pro každé ohodnocení I ∈ R vytvoríme formuli
kI =
( ∧x∈X
I(x)=0
¬x
)∧
( ∧x∈X
I(x)=1
x
).
3 Výsledná formule vznikne disjunkcí formulí kI :
ϕ =∨I∈R
kI .
PríkladX Y Z ϕ
0 0 0 00 0 1 10 1 0 00 1 1 01 0 0 01 0 1 11 1 0 01 1 1 1
ϕ = (¬X ∧ ¬Y ∧ Z) ∨(X ∧ ¬Y ∧ Z) ∨(X ∧ Y ∧ Z)
FIT VUT Matematická logika IDM’20 29 / 65
Výroková logika — Normální formy — CNF
Konjunktivní normální forma (CNF, nekdy též product of sums):je konjunkce disjunkcí literálu ∧
i
∨j
`i,j
PríkladNecht’
ϕ : (X ∧ ¬¬Y ) ∨ (Z→W ).
Formule
ψ : (X ∨ ¬Z ∨W ) ∧ (Y ∨ ¬Z ∨W )
je ekvivalentní formuli ϕ a je v CNF.
FIT VUT Matematická logika IDM’20 30 / 65
Výroková logika — Normální formy — CNF
Prevod do CNF:algebraické úpravy
1 prevod do NNF2 použití distributivních zákonu
z pravdivostní tabulky1 Najdeme množinu ohodnocení R které mají hodnotu 0.2 Pro každé ohodnocení I ∈ R vytvoríme formuli
kI =
( ∨x∈X
I(x)=0
x
)∨
( ∨x∈X
I(x)=1
¬x
).
3 Výsledná formule vznikne konjunkcí formulí kI :
ϕ =∧I∈R
kI .
PríkladX Y Z ϕ
0 0 0 10 0 1 10 1 0 10 1 1 01 0 0 11 0 1 01 1 0 11 1 1 0
ϕ = (X ∨ ¬Y ∨ ¬Z) ∧(¬X ∨ Y ∨ ¬Z) ∧(¬X ∨ ¬Y ∨ ¬Z)
FIT VUT Matematická logika IDM’20 31 / 65
Predikátová logika 1. rádu
FIT VUT Matematická logika IDM’20 32 / 65
Predikátová logika
Predikátová logika 1. rádu (First-Order Logic, FOL)zabývá se tvrzeními o entitách, jejich vlastnostech a vztazíchstaví na výrokové logiceinterpretuje („dívá se dovnitr“) výrokuuvažuje entity z univerza—tyto jsou oznaceny termyzkonstruovanými z promenných a funkcí, napr.I x, 5, f(x, 2), 40 + 2, fatherOf (motherOf (x)), head("abc"), sin(y)
výroky jsou nahrazeny predikáty nad termy, napr.I x = y, even(x), p(x, y, z), isFatherOf (x, y)
zavádí kvantifikátory pro vyjádrení vlastností entit z univerza:I ∀x — univerzální kvantifikátor (všechny entity x splnují vlastnost)I ∃x — existencní kvantifikátor (nejaká entita x splnuje vlastnost)
(v logice 2. a vyššího rádu se dá kvantifikovat pres relace; zdese tímto zabývat nebudeme)
FIT VUT Matematická logika IDM’20 33 / 65
Predikátová logikaPríklad
Všichni muži jsou smrtelní. Sokrates je muž. Tedy Socrates je smrtelný.(∀x(man(x)→mortal(x)) ∧man(Socrates)
)→mortal(Socrates)
Existuje nekonecne mnoho prvocísel.
∀x∃y(y > x ∧ ∀z
((z 6= 1 ∧ z 6= y)→∀w(wz 6= y)
))Relace R je tranzitivní. ∀x∀y∀z( (R(x, y) ∧R(y, z))→R(x, z) )
Uvažujme tabulky R[jmeno, id] a S[id, vek] v SQL databáziselect R.jmeno from R join S on R.id = S.id where S.vek = 42
∃z(R(x, z) ∧ S(z, 42))
Velká Fermatova veta
∀n∀x∀y(n > 2 → ∀z(xn + yn 6= zn)
)FIT VUT Matematická logika IDM’20 34 / 65
Predikátová logika — syntaxeSyntaxe:
Abeceda:I logické spojky: ¬,∧,∨,→,↔, (· · · ) (z výrokové logiky)I promenné: x, y, . . . , x1, x2, . . .I kvantifikátory: ∀,∃I závorky: (, )
I F : funkcní symboly (s /aritou ): f/2, +/2, sin/1, fatherOf/1, π/0• nulární funkce (arita 0): konstanty• použití: f(a, 3), +(40, 2), sin(x), fatherOf (Luke), π()• casto však píšeme: 40 + 2 [pro +(40, 2)], π [pro π()], . . .
I P: predikátové symboly (s /aritou ): p/3, isJedi/1, </2
• použití: p(a, x, 9), isJedi(Anakin), < (x, π)• casto však píšeme: x < π [pro <(x, π)], . . .
I predikátový symbol rovnosti =/2
Signatura 〈F ,P〉 = funkcní + predikátové symbolyI muže být chápána jako parametr
Jazyk: je jednoznacne dán signaturou
FIT VUT Matematická logika IDM’20 35 / 65
Predikátová logika — syntaxePríklad
jazyk teorie usporádání: 〈F = ∅,P = {</2}〉I žádný funkcní symbolI jeden binární predikátový symbol <
jazyk teorie grup: 〈F = {·/2, e/0},P = ∅〉I binární funkcní symbol · (grupová operace násobení)I nulární funkcní symbol e pro neutrální prvek
jazyk teorie množin: 〈F = ∅,P = {∈/2}〉jazyk teorie polí: 〈F = {·[·]r/2, ·[·]
w/3},P = ∅〉
I binární funkcní symbol ctení z pole ·[·]r, napr., A[i]rI ternární funkcní symbol zápisu do pole ·[·, ·]w, napr., A[i, y]w (zápis y na index i v poli A)
jazyk teorie seznamu: 〈F = {cons/2, car/1, cdr/1},P = {atom/1}〉jazyk elementární (tzv. Peanovy) aritmetiky: 〈F = {zero/0, S/1,+/2, ·/2},P = ∅〉
FIT VUT Matematická logika IDM’20 36 / 65
Predikátová logika — syntaxe
Gramatika: formule jsou tvoreny z termuterm (bude nabývat hodnoty z univerza):
t ::= x | f(t1, . . . , tn)
kde x ∈ X a f je funkcní symbol s aritou n.(speciálne, konstanta c je též term)príklady termu:I x, 5, f(x, 2), 40 + 2, car(cons(x, y)), head("abc"), sin y
FIT VUT Matematická logika IDM’20 37 / 65
Predikátová logika — syntaxeGramatika (pokr.):
atomická formule:ϕatom ::= p(t1, . . . , tn)
pro predikátový symbol p/n a termy t1, . . . , tn(platí i když p je symbol rovnosti =)formule:
ϕ ::= ϕatom | (¬ϕ1) |(ϕ1 ∧ ϕ2) | (ϕ1 ∨ ϕ2) |(ϕ1→ϕ2) | (ϕ1↔ϕ2) |(∀xϕ1) | (∃xϕ1)
I kde x je promenná z množiny promenných XI (závorky opet casto vynecháváme)
príklady formulí:I ∃x(40 + x = 42 ∧ 40x = 80),I ∀x(tan(x) = sin(x)
cos(x) ),I atom(car(cons(x, y))),I ∀x(∃y(x = y · y ∨ x = −y · y))
FIT VUT Matematická logika IDM’20 38 / 65
Predikátová logika — syntaxevýskyty promenných ve formuli:
vázaný: výskyt v rozsahu platnosti kvantifikátoruI napr. BOUND( ∃x(x = 4 ∧ ¬(y = 5)) ) = {x}
volný: výskyt, který není vázaný žádným kvantifikátoremI napr. FREE( x = 4 ∧ (∃y(y = 5)) ) = {x}
FREE(. . .) a BOUND(. . .) jsou symboly metajazykapromenná muže mít ve formuli jak vázaný, tak i volný výskyt
Príklad
∀x( p(f(x), y)→∀y(p(f(x), y)) )I x se vyskytuje jen vázané
I y se vyskytuje volné (antecedent) i vázané (konsekvent)
casto píšeme ϕ(x1, . . . , xn) když FREE(ϕ) ⊆ {x1, . . . , xn}I x1, . . . , xn slouží jako „rozhraní“ k ϕ
ϕ je uzavrená (také výrok) když FREE(ϕ) = ∅FIT VUT Matematická logika IDM’20 39 / 65
Predikátová logika — sémantikaSémantika predikátové logiky:
symboly jazyka dosud nemely žádný významsložitejší než pro výrokovou logiku
Realizace (interpretace): I = (DI , αI):
dává symbolum jazyka významI formule muže v nekteré realizaci platit, a v jiné ne
doména (univerzum diskurzu) DI : neprázdná množinaI napr., N, {0, 1, 2, 3, 4}, R3, People, List [N], . . .
ohodnocení αI obsahující:I pro každý funkcní symbol f/n funkci fI :
n︷ ︸︸ ︷DI × . . .×DI → DI
• napr., αI(+) = {(0, 0) 7→ 0, (0, 1) 7→ 1, (1, 0) 7→ 1, (1, 1) 7→ 2, . . .}• pro konstanty tedy jednu hodnotu, napr., αI(π) = {() 7→ 3.14}
I pro každý predikátový symbol p/n relaci pI ⊆n︷ ︸︸ ︷
DI × . . .×DI
• napr., αI(</2) = {(0, 1), (0, 2), (1, 2), . . .}• napr., αI(even/1) = {0, 2, 4, . . .}• napr., αI(edge/2) = {(v1, v2), (v2, v3), . . .}
I ohodnocení promenných z X na hodnotu z DI , napr., x 7→ 42
FIT VUT Matematická logika IDM’20 40 / 65
Predikátová logika — realizace
PríkladPríklady realizací jazyka se signaturou 〈F = {+/2},P = ∅〉:
Scítání v N: I = (N, αI) kdeI αI(+) = (+N) (scítání prirozených císel)
Scítání v R3: I = (R3, αI) kdeI αI(+) = {((x1, y1, z1), (x2, y2, z2)) 7→ (x1 +R x2, y1 +R y2, z1 +R z2) | . . .}
Spojení v Booleove algebre: I = ({0, 1}, αI) kdeI αI(+) = {(0, 0) 7→ 0, (0, 1) 7→ 1, (1, 0) 7→ 1, (1, 1) 7→ 1}
Modulární scítání v {0, 1, 2}: I = ({0, 1, 2}, αI) kdeI αI(+) = {(x, y) 7→ (x+ y mod 3) | x, y ∈ {0, 1, 2}}
FIT VUT Matematická logika IDM’20 41 / 65
Predikátová logika — realizace
PríkladPríklady realizací jazyka se signaturou 〈F = {+/2, ·/2,−/1},P = {E/1}〉:
Scítání, násobení a opacné císlo v Z: I = (Z, αI) kdeI αI(+) = (+Z) (scítání celých císel)I αI(·) = (·Z) (násobení celých císel)I αI(−) = {x 7→ (0−Z x) | x ∈ Z}I αI(E) = {. . . ,−4,−2, 0, 2, 4, . . .}
Disjunkce, konjunkce a negace v Booleove algebre: I = ({0, 1}, αI) kdeI αI(+) = {(0, 0) 7→ 0, (0, 1) 7→ 1, (1, 0) 7→ 1, (1, 1) 7→ 1}I αI(·) = {(0, 0) 7→ 0, (0, 1) 7→ 0, (1, 0) 7→ 0, (1, 1) 7→ 1}I αI(−) = {0 7→ 1, 1 7→ 0}I αI(E) = {0}
FIT VUT Matematická logika IDM’20 42 / 65
Predikátová logika — sémantika
Sémantika formule predikátové logikyzáleží na realizaci I = (DI , αI)
obecne nelze vyjádrit pravdivostní tabulkouI DI muže být nekonecná (spocetná, ale i nespocetná)
zjistíme pravdivost atomických predikátu,potom propagujeme nahoruhodnota termu t v realizaci I:I definována induktivne následujícím rozšírením αI [t]
pro f/n kde fI = αI(f):
αI [f(t1, . . . , tn)]def= fI(αI [t1], . . . , αI [tn])
(αI [x] pro x ∈ X a αI [c] pro konstantu c/0 jsou jiždefinovány v realizaci I)
FIT VUT Matematická logika IDM’20 43 / 65
Predikátová logika — sémantikasémantika formule ϕ predikátové logiky:
urcuje, zda v dané realizaci I formule platí (I |= ϕ), nebo ne (I 6|= ϕ)definována induktivne:
1 pro predikátový symbol p/n a termy t1, . . . , tn platí
I |= p(t1, . . . , tn) práve když (αI [t1], . . . , αI [tn]) ∈ pI kde pI = αI [p]
(pro rovnost: I |= (t1 = t2) práve když αI [t1] a αI [t2] znací stejný prvek z DI )2 pro výrokové spojky:
I |= ¬ψ práve když I 6|= ψI |= ψ1 ∧ ψ2 práve když I |= ψ1 a zároven I |= ψ2
I |= ψ1 ∨ ψ2 práve když I |= ψ1 nebo I |= ψ2
I |= ψ1→ψ2 práve když pokud I |= ψ1 pak I |= ψ2
I |= ψ1↔ψ2 práve když I |= ψ1 a zároven I |= ψ2, nebo I 6|= ψ1 a zároven I 6|= ψ2
3 pro kvantifikátory:• variant I / {x 7→ v} realizace I je realizace získaná z I nahrazením x 7→ ? za x 7→ v v αI
• I |= ∀xϕ práve když pro všechny prvky v ∈ DI platí I / {x 7→ v} |= ϕI |= ∃xϕ práve když existuje prvek v ∈ DI takový, že I / {x 7→ v} |= ϕ
FIT VUT Matematická logika IDM’20 44 / 65
Predikátová logika — sémantikaPríkladUvažujme jazyk L predikátové logiky prvního rádu se signaturou〈F = {+/2,−/1},P = {Z/1}〉 a jeho realizaci IL = ({a, b, c}, αIL) kde
αIL(+) =
(a, a) 7→ a (a, b) 7→ b (a, c) 7→ c(b, a) 7→ b (b, b) 7→ c (b, c) 7→ a(c, a) 7→ c (c, b) 7→ a (c, c) 7→ b
αIL(−) = {a 7→ a, b 7→ c, c 7→ b}αIL(Z) = {a}
Urcete, zda následující formule platí v realizaci IL: ∀x∀y(Z(x)→x+ y = y)
FIT VUT Matematická logika IDM’20 45 / 65
Predikátová logika — pojmy
model formule ϕ:je realizace I taková, že I |= ϕ
splnitelnost (satisfiability):formule ϕ je splnitelná pokud má modeltj. existuje realizace I s doménou DI a ohodnocenímfunkcních, predikátových symbolu a promenných αI
takové, že I |= ϕ
FIT VUT Matematická logika IDM’20 46 / 65
Predikátová logika — pojmy
logická platnost:formule ϕ je logicky platná pokud platí ve všech realizacích daného jazyka, tj. provšechny domény a ohodnocení funkcních, predikátových symbolu a promennýchznacíme |= ϕ
(ekvivalentní pojmu tautologie ve výrokové logice)
PríkladJe následující formule logicky platná?
ϕ : 1 + 1 = 2
proc?
FIT VUT Matematická logika IDM’20 47 / 65
Predikátová logika — pojmy
logická ekvivalence:formule ϕ a ψ jsou logicky ekvivalentní pokud je formuleϕ↔ψ logicky platná(nebo: jestliže pro libovolnou realizaci I daného jazyka platíI |= ϕ práve když I |= ψ)znacíme ϕ⇔ ψ
logický dusledek:formule ψ je logickým dusledkem formule ϕ pokud je formuleϕ→ψ logicky platná(nebo: jestliže pro libovolnou realizaci I daného jazyka platí:pokud I |= ϕ, pak I |= ψ)znacíme ϕ⇒ ψ
FIT VUT Matematická logika IDM’20 48 / 65
Predikátová logika — ekvivalence
ekvivalence z výrokové logiky plus následující:
∀xϕ ⇔ ¬∃x(¬ϕ) ∃xϕ ⇔ ¬∀x(¬ϕ)∀xϕ ⇔ ϕ ∃xϕ ⇔ ϕ pokud x /∈ FREE(ϕ)
∀x(ϕ ∨ ψ) ⇔ (∀xϕ) ∨ ψ ∃x(ϕ ∧ ψ) ⇔ (∃xϕ) ∧ ψ pokud x /∈ FREE(ψ)
∀x(ϕ→ψ) ⇔ (∃xϕ)→ψ ∃x(ϕ→ψ) ⇔ (∀xϕ)→ψ pokud x /∈ FREE(ψ)
∀x(ϕ→ψ) ⇔ ϕ→(∀xψ) ∃x(ϕ→ψ) ⇔ ϕ→(∃xψ) pokud x /∈ FREE(ϕ)
(∀x(ϕ(x))) ∧ (∀y(ψ(y))) ⇔ ∀x(ϕ(x) ∧ ψ(x)) pokud x /∈ FREE(ψ)
(∃x(ϕ(x))) ∨ (∃y(ψ(y))) ⇔ ∃x(ϕ(x) ∨ ψ(x)) pokud x /∈ FREE(ψ)
FIT VUT Matematická logika IDM’20 49 / 65
Predikátová logika — ekvivalence
PríkladPreved’te následující formuli do tvaru, ve kterém jsou kvantifikátory co nejhloubeji:
¬∀x∃y(¬((p(x) ∧ r(x))→ r(y)
))⇔
⇔ ¬∀x(¬∀y
((p(x) ∧ r(x))→ r(y)
))⇔ ¬¬∃x∀y
((p(x) ∧ r(x))→ r(y)
)⇔ ∃x∀y
((p(x) ∧ r(x))→ r(y)
)⇔ ∃x
((p(x) ∧ r(x))→∀y(r(y))
)⇔(∀x(p(x) ∧ r(x))
)→∀y(r(y))
⇔((∀x(p(x))
)∧(∀x(r(x))
))→∀y(r(y))
FIT VUT Matematická logika IDM’20 50 / 65
Predikátová logika — Substituce
Substituce termu t za promennou x ve formuli ϕ:formule ϕ[x/t] vzniklá z ϕ výmenou všech volných výskytu x za t
Príklad (x = y ∧ ∀x(y ≤ x)
)[y/z + 42] x = z + 42 ∧ ∀x(z + 42 ≤ x)
Prejmenování promenných: speciální prípad substituce
Príklad (x = y ∧ ∀x(y ≤ x)
)[x/z] z = y ∧ ∀x(y ≤ x)(
∀x∀y(x = y→¬(y < x)))[x/z] z = ∀x∀y(x = y→¬(y < x)(
x = y ∧ ∀x(y ≤ x))[y/x] x = x ∧ ∀x(x ≤ x)
FIT VUT Matematická logika IDM’20 51 / 65
Predikátová logika — Substituce
Substituovatelnost: term t je substituovatelný za x do formule ϕ pokud platí, že:žádný volný výskyt promenné x ve ϕ neleží v oboru platnosti kvantifikátoru ∃y nebo∀y kde y je promenná obsažená v termu t
PríkladJe term z2 substituovatelný za promennou y ve formuli ∃x(x = y)?
Je term x+ 42 substituovatelný za promennou y ve formuli ∃x(x = y)?
Pokud je ϕ formule, x promenná a t term substituovatelný za x do ϕ, pak platí následujícídusledky:
∀xϕ ⇒ ϕ[x/t]
ϕ[x/t] ⇒ ∃xϕ
FIT VUT Matematická logika IDM’20 52 / 65
Predikátová logika — Normální formy — PNFPrenexní normální forma (PNF):
formule je ve forme
ϕ = Q1x1 . . . . Qnxn︸ ︷︷ ︸prefix
(ψ(x1, . . . , xn, y1, . . . , ym)︸ ︷︷ ︸
matice
)kde Qi ∈ {∀, ∃} a ψ neobsahuje kvantifikátory; {y1, . . . , ym} = FREE(ϕ)
PríkladNecht’
ϕ : ∀n(n > 2 → ¬∃x∃y∃z(xn + yn = zn)
).
Pak
ψ : ∀n∀x∀y∀z(n > 2 → ¬(xn + yn = zn)
)je formule v PNF ekvivalentní s ϕ.
FIT VUT Matematická logika IDM’20 53 / 65
Predikátová logika — Normální formy — PNFPrevod do PNF:
1 eliminace zbytecných kvantifikátoru: Qxϕ ϕ pro Q ∈ {∃,∀} pokud x /∈ FREE(ϕ)
2 postupná eliminace všech výskytu spojky↔: ϕ↔ψ (ϕ→ψ) ∧ (ψ→ϕ)
3 prejmenování promenných:I dokud existuje x ∈ X které
• je v pruniku FREE(ϕ) a BOUND(ϕ) nebo• je kvantifikováno více než jednou
pak nahrad’ ve ϕ podformuli Qxψ (pro Q ∈ {∃,∀}) za formuli Qy(ψ[x/y])• kde y je nová promenná, která nemá ve ϕ výskyt
4 presun negace dovnitr:¬∃xϕ ∀x(¬ϕ) ¬(ϕ ∧ ψ) ¬ϕ ∨ ¬ψ ¬(ϕ→ψ) ϕ ∧ ¬ψ¬∀xϕ ∃x(¬ϕ) ¬(ϕ ∨ ψ) ¬ϕ ∧ ¬ψ ¬¬ϕ ϕ
5 presun kvantifikátoru doleva:
Qx(ϕ) ∧ ψ Qx(ϕ ∧ ψ) Qx(ϕ)→ψ Qx(ϕ→ψ)
Qx(ϕ) ∨ ψ Qx(ϕ ∨ ψ) ϕ→Qx(ψ) Qx(ϕ→ψ)
pro Q ∈ {∃,∀}, kde Q je kvantifikátor „opacný“ ke Q (∃ 7→ ∀ a ∀ 7→ ∃).FIT VUT Matematická logika IDM’20 54 / 65
Predikátová logika — Normální formy — PNF
PríkladPreved’te následující formuli do PNF.
∀n(n > 2 → ¬∃x∃y∃z(xn + yn = zn)
)⇔
⇔ ∀n(n > 2 → ∀x¬∃y∃z(xn + yn = zn)
)⇔ ∀n
(n > 2 → ∀x∀y¬∃z(xn + yn = zn)
)⇔ ∀n
(n > 2 → ∀x∀y∀z(¬(xn + yn = zn))
)⇔ ∀n∀x
(n > 2 → ∀y∀z(¬(xn + yn = zn))
)⇔ ∀n∀x∀y
(n > 2 → ∀z(¬(xn + yn = zn))
)⇔ ∀n∀x∀y∀z
(n > 2 → ¬(xn + yn = zn)
)FIT VUT Matematická logika IDM’20 55 / 65
Predikátová logika — Normální formy — PNFPríkladPreved’te následující formuli do PNF.∀y(∃x(P (x, y))→Q(y, z)
)∧ ¬∃z
(∀x(R(x, y) ∨Q(x, y)
))⇔
⇔ ∀y(∃x(P (x, y))→Q(y, z)
)∧ ¬∀x
(R(x, y) ∨Q(x, y)
)⇔ ∀y
(∃x(P (x, y))→Q(y, z)
)∧ ¬∀u
(R(u, y) ∨Q(u, y)
)⇔ ∀y
(∃x(P (x, y))→Q(y, z)
)∧ ∃u
(¬(R(u, y) ∨Q(u, y)
))⇔ ∀y
((∃x(P (x, y))→Q(y, z)
)∧ ∃u
(¬(R(u, y) ∨Q(u, y))
))⇔ ∀y∃u
((∃x(P (x, y))→Q(y, z)
)∧ ¬(R(u, y) ∨Q(u, y)
))⇔ ∀y∃u
(∀x(P (x, y)→Q(y, z)
)∧ ¬(R(u, y) ∨Q(u, y)
))⇔ ∀y∃u∀x
((P (x, y)→Q(y, z)
)∧ ¬(R(u, y) ∨Q(u, y)
))FIT VUT Matematická logika IDM’20 56 / 65
Predikátová logika 1. rádu — Teorie
FIT VUT Matematická logika IDM’20 57 / 65
Predikátová logika 1. rádu — Teorie
logická platnost formule ( |= ϕ ) mluví o pravdivosti ve všechrealizacíchcasto nás zajímá platnost jen v urcitých realizacíchI napr. platí 1 + 1 = 2 ve standardním modelu PA (N,+N)?
teorie slouží pro formalizaci matematických struktur pomocíjazyka logiky
Teorie T je definována prostrednictvím:
axiomu AT : množina uzavrených σT -formulí
I ne nutne konecná schéma axiomuI axiomy omezují realizace, o kterých chceme mluvit
• T -realizace: realizace jazyka se signaturou σT splnující AT
(nekdy se uvádí i signatura σT = 〈FT ,PT 〉:I množina funkcních a predikátových symbolu teorie TI σT -formule: formule nad signaturou σT )
FIT VUT Matematická logika IDM’20 58 / 65
Predikátová logika 1. rádu — Teorie
T -realizace: realizace I jazyka se signaturou σT taková, že
I |= ϕA pro všechny formule ϕA ∈ AT
T -platnost: formule ϕ je T -platná pokud platí ve všechT -realizacíchI znacíme T |= ϕ
T -splnitelnost: formule ϕ je T -splnitelná pokud platív nejaké T -realizaci
FIT VUT Matematická logika IDM’20 59 / 65
Predikátová logika 1. rádu — Teorie — Príklady
Teorie cástecného usporádáníSignatura: σ≤ = 〈F = ∅,P = {≤/2}〉Axiomy:
1 ∀x(x ≤ x) (reflexivita)2 ∀x∀y
((x ≤ y ∧ y ≤ x) → x = y
)(antisymetrie)
3 ∀x∀y∀z((x ≤ y ∧ y ≤ z) → x ≤ z
)(transitivita)
Teorie ostrého usporádáníSignatura: σ< = 〈F = ∅,P = {</2}〉Axiomy:
1 ∀x∀y(x < y → ¬(y < x)
)(asymetrie)
2 ∀x∀y∀z((x < y ∧ y < z) → x < z
)(transitivita)
3 lineární ostré usporádání:∀x∀y(x < y ∨ x = y ∨ y < x) (linearita)
4 husté lineární ostré usporádání:∀x∀y
(x < y → ∃z(x < z ∧ z < y)
)(hustota)
FIT VUT Matematická logika IDM’20 60 / 65
Predikátová logika 1. rádu — Teorie — Príklady
Teorie grupSignatura: σG = 〈F = {·/2, e/0},P = ∅〉Axiomy:
1 ∀x∀y∀z(x · (y · z) = (x · y) · z
)(asociativita)
2 ∀x(x · e = x ∧ e · x = x) (neutrální prvek)
3 ∀x∃y(x · y = e ∧ y · x = e) (inverzní prvek)
4 komutativní grupy
∀x∀y(x · y = y · x) (komutativita)
FIT VUT Matematická logika IDM’20 61 / 65
Predikátová logika 1. rádu — Teorie — Príklady
Peanova aritmetika (prvorádová teorie prirozených císel):Signatura: σPA = 〈F = {0, S,+, ·},P = ∅〉I 0/0 je konstantaI S/1 je unární funkcní symbol (nazývaný následník)I +/2 a ·/2 jsou binární funkcní symboly
Axiomy:1 ∀x
(¬(S(x) = 0)
)(nula)
2 ∀x∀y(S(x) = S(y) → x = y
)(následník)
3 (schéma axiomu) pro každou σPA-formuli ϕ s práve jednou volnou promennou:(ϕ(0) ∧ ∀x
(ϕ(x)→ϕ(S(x))
))→ ∀x(ϕ(x)) (indukce)
4 ∀x(x+ 0 = x) (plus nula)5 ∀x∀y(x+ S(y) = S(x+ y)) (následník plus)6 ∀x(x · 0 = 0) (krát nula)7 ∀x∀y(x · S(y) = x · y + x) (následník krát)
FIT VUT Matematická logika IDM’20 62 / 65
Predikátová logika 1. rádu — Teorie — PríkladyTeorie množin (Zermelova-Fraenkelova teorie množin s axiomem výberu — ZFC):
Signatura: σZFC = 〈F = ∅,P = {∈/2}〉Axiomy:
1 ∀x∀y(x = y ↔ ∀z(z ∈ x ↔ z ∈ y)
)(extenzionalita)
2 ∀x(∃a(a ∈ x) → ∃y
(y ∈ x ∧ ¬∃z(z ∈ y ∧ z ∈ x)
))(fundovanost)
3 (schéma axiomu) pro každou σZFC -formuli ϕ s práve jednou volnou promennou:
∀a∃b∀x(x ∈ b ↔ (x ∈ a ∧ ϕ(x))
)(vydelení)
4 ∀x∀y∃z(x ∈ z ∧ y ∈ z) (dvojice)5 ∀a∃b∀x
(x ∈ b ↔ ∃y(x ∈ y ∧ y ∈ a)
)(sjednocení)
6 (schéma axiomu) pro každou σZFC -formuli ϕ: (nahrazení)
∀~y∀w(∀x((x ∈ w → ∃!zϕ(x, z, ~y)
)→ ∃s
(∀x(x ∈ w → ∃z(z ∈ s ∧ ϕ(x, z, ~y)))
))kde ∃!zψ(z, ~u) je zkrácený zápis ∃z
(ψ(z, ~u) ∧ ∀z′(ψ(z′, ~u) → z = z′))
)7 ∃a
(∅ ∈ a ∧ ∀x(x ∈ a → x ∪ {x} ∈ a)
)(nekonecno)
8 ∀x∃y∀z(z ⊆ x → z ∈ y) (potencní množina)kde ∅ ∈ a, x ∪ {x} ∈ a a z ⊆ x jsou standardní zkrácené zápisy
9 ∀x(¬(∅ ∈ x) → ∃f
((f : x→
⋃x) ∧ ∀a(a ∈ x → f(a) ∈ a)
))(výber)
FIT VUT Matematická logika IDM’20 63 / 65
Predikátová logika 1. rádu — Teorie
FOL teorie v informatice: napr.celocíselná lineární algebra (PA bez ·/2)teorie políteorie bitových vektorureálná aritmetika
Nástroje:SMT solvery: existencne kvantifikované formule — hledání rešeníI Z3, CVC4, Yices, STP, MathSAT, . . .
automatizované theorem provery: automatické dokazování matematických vetI Vampire, E, Prover9, Satallax. . .
interaktivní theorem provery: interaktivní dokazování matematických vetI Coq, HOL/Isabelle, Lean, . . .
FIT VUT Matematická logika IDM’20 64 / 65
Literatura
[ A.R. Bradley and Z. Manna. The Calculus of Computation. ][ H.-D. Ebbinghaus, J. Flum, and W. Thomas. Mathematical Logic. ][ A. Doxiadis and C. Papadimitriou. Logicomix. ]https://wiki.lesswrong.com/wiki/Highly_Advanced_Epistemology_101_for_Beginners
[ E. Yudkowsky. Rationality: From AI to Zombies. ]
FIT VUT Matematická logika IDM’20 65 / 65