Formální sémantika SQL dotazů
|
|
- Vladislav Staněk
- před 5 lety
- Počet zobrazení:
Transkript
1 Formální sémantika SQL dotazů Radovan Jankovič Ondřej Staněk podle M. Negri, G. Pelagatti, L. Sbattella: Formal Semantics of SQL Queries, 1991
2 Formálna sémantika SQL dotazov Rozšírený trojhodnotový predikátový kalkul (E3VPC) Preklad SQL do E3VPC Ekvivalencia SQL dotazov
3 Štruktúra výrazu E3VPC t(...) = target list zloženie výsledku, kde sú premenné viazané k reláciám (tabuľkám). Výber konkrétnych atribútov (stĺpcov) vo výsledku je vynechaný.
4 Štruktúra výrazu E3VPC je predikátová formula, určujúca podmienky pre voľné premenné - interpretačný operátor aplikovaný na formulu špecifikuje vyhodnotenie NULL hodnôt. Rekurzívna definícia: termy predikáty formuly.
5 Termy Konštanty sú termy. Pre každú premennú a termy. a atribút sú Pre výraz S, atribút A a agregačnú funkciu f je term. Agregačná funkcia je jedna z COUNT, AVG, SUM, MIN, MAX, COUNTD, AVGD a SUMD.
6 Aritmetika a atomické predikáty Používajú sa štandartné aritmetické a porovnávacie operátory a operátor porovnania NULL hodnôt. Ak sú x a y termy a * operátor porovnania, potom x*y je atomický predikát. T (true), F (false) a U (unknown) sú atomické predikáty. Ak P je atomický predikát, potom aj je atomický predikát.
7 Predikátové formuly Atomický predikát je predikátovou formulou. Ak P a Q sú predikátové formuly, potom aj sú formuly. Nech je výraz E3VPC a formula. Potom sú predikátové formuly. predikátová
8 Interpretácia NULL nie je korektným výrazom E3VPC. (Patrí NULL do výsledku?) Je potrebný interpretačný operátor prevádzajúci trojhodnotovú logiku na dvojhodnotovú.
9 Interpretácia NULL Predikát Q(x) je pozitívne interpretovaným ekvivalentom P(x), ak platí Podobne Q(x) je negatívnou interpretáciou P(x), ak
10 Kompaktné formy znamená: existuje prvok x z danej množiny, pre ktorý P(x). P(x) nemá interpretačný operátor, preto ak je množina neprázdna, hodnota T sa nevyskytuje a aspoň jedna hodnota je U (unknown), je celá formula rovná U. Podobne.
11 Syntax SQL Definíciu ANSI SQL z r možno napísať ako (takmer) gramatiku s 50 prepisovacími pravidlami, kde výsledný dotaz vzniká postupným nahradzovaním neterminálov (v ľubovoľnom poradí).
12 Syntax SQL - príklady... <QUERY> SELECT [ALL DISTINCT] <SELECT LIST> <FRCLAUSE> [<WHCLAUSE>] [GBCLAUSE] [HCLAUSE] <WHERE SEARCH COND> Boolean expression of <WPRED> <SIMPLE PRED> <COL OR VAL> <comp op> <COL OR VAL> <COMPLEX IN PRED> <FUNC SPEC> IN <SUBQ> <SUBQ> SELECT [ALL DISTINCT] <SELECT LIST> <FRCLAUSE> [<WHCLAUSE>] [GBCLAUSE] [HCLAUSE]
13 Preklad SQL do E3VPL Na preklad do E3VPL stačí 33 pravidiel, ktoré sú spárované s niektorými zo syntaktických pravidiel SQL. Preklad základného neterminálu: Používa sa záporná interpretácia, čo zodpovedá sémantike SQL.
14 Kontextový preklad V niektorých prípadoch je možných viac ciest prekladu, použité pravidlo závisí od kontextu výskytu neterminálu. Príklad:
15 Preklad komplexného dotazu Databáza oddelení a ich zamestnancov obsahuje dve relácie: DEPT(d#, nofemp, location, manager) a EMP(e#, d#, residence) Chceme získať mená manažérov oddelení, ktorých všetci zamestnanci bývajú v lokalite svojho oddelenia a priemerný počet zamestnancov oddelení spravovaných týmto manažérom je vyšší než 500.
16 Dotaz v SQL SELECT d.manager FROM DEPT d WHERE d.location = ALL SELECT e.residence FROM EMP e WHERE e.d# = d.d# GROUP BY d.manager HAVING AVG(d.nofemp) > 500
17 Preklad do E3VPC Po použití prvého pravidla získame Rozložíme podmienku WHERE na Preklad poddotazu sa rozpadol na dve časti, aby vznikla korektná výroková formula:
18 Preklad do E3VPC Podmienku HAVING preložíme najprv na a následne na (Pre úplnosť pripojená aj klauzula GROUP BY.)
19 Preklad do E3VPC Po preložení GBCLAUSE získame výslednú formulu (Pomocou notácie sa vnútorná formula odkazuje na premennú vo vonkajšej a vymedzuje tak podskupinu oddelení určenú manažérom => GROUP BY.)
20 Formální sémantika SQL dotazů Ondřej Staněk Dotazovací jazyky I (NDBI001)
21 Ekvivalence SQL dotazů Motivace: Lze obecně rozhodnout zda jsou dva syntakticky rozdílné SQL dotazy sémanticky ekvivalentní? Formální model E3VPC zachycuje sémantiku SQL Transformujeme SQL dotazy do E3VPC, pak řešíme problém ekvivalence dvou E3VPC výrazů Definition SQL dotazy Q 1, Q 2 jsou sémanticky ekvivalentní právě tehdy když TR<Q 1 > TR<Q 2 > jak ale poznat ekvivalenci dvou E3VPC výrazů? Úvaha ve dvouhodnotové predikátové logice dokážeme rozhodnout ekvivalenci dvou výrazů chceme metody klasické predikátové logiky aplikovat na trojhodnotový E3VPC
22 Ekvivalence SQL dotazů Motivace: Lze obecně rozhodnout zda jsou dva syntakticky rozdílné SQL dotazy sémanticky ekvivalentní? Formální model E3VPC zachycuje sémantiku SQL Transformujeme SQL dotazy do E3VPC, pak řešíme problém ekvivalence dvou E3VPC výrazů Definition SQL dotazy Q 1, Q 2 jsou sémanticky ekvivalentní právě tehdy když TR<Q 1 > TR<Q 2 > jak ale poznat ekvivalenci dvou E3VPC výrazů? Úvaha ve dvouhodnotové predikátové logice dokážeme rozhodnout ekvivalenci dvou výrazů chceme metody klasické predikátové logiky aplikovat na trojhodnotový E3VPC
23 Kanonická forma E3VPC Definition Výraz E3VPC je v kanonické formě, pokud: 1 každý atomický predikát je opatřen interpretačním operátorem 2 nikde jinde ve výrazu se interpretační operátory nevyskytují 3 výraz neobsahuje kompaktní formy Example x in R : Q(x) F P(x) T
24 Kanonická forma E3VPC Definition Výraz E3VPC je v kanonické formě, pokud: 1 každý atomický predikát je opatřen interpretačním operátorem 2 nikde jinde ve výrazu se interpretační operátory nevyskytují 3 výraz neobsahuje kompaktní formy Example x in R : Q(x) F P(x) T
25 Pravidla pro úpravu do kanonické formy E3VPC 1 P(x) Q(x) α P(x) α Q(x) α 2 P(x) Q(x) α P(x) α Q(x) α 3 P(x) α P(x) α P(x) α β P(x) α 4 5 x in R : P(x) α x in R : P(x) α 6 x in R : P(x) α x in R : P(x) α Připomenutí α značí interpretační operátor α {T,F }
26 Pravidla pro úpravu do kanonické formy E3VPC Dále k úpravám používáme běžné operace predikátového kalkulu to můžeme, neboť je-li tříhodnotová formule ošetřena interpretačním operátorem, stává se z ní dvouhodnotová formule. S těmi již můžeme pracovat běžným způsobem. Pozor v tříhodnotové logice neplatí pravidlo tautologie: pravidlo kontradikce: P(x) P(x) 1 P(x) P(x) 0
27 Pravidla pro úpravu do kanonické formy E3VPC dále se nám k úpravám hodí tyto věty: Theorem { x in R : P(x) α} Q(x) β x in R : P(x) α Q(x) β Proof. { x in R : P(x) α} Q(x) β { x in R : P(x) α Q(x) } β (běžné pravidlo predikátového kalkulu) x in R : P(x) α Q(x) β (pravidlo č. 5) x in R : P(x) α β Q(x) β (pravidlo č. 2) x in R : P(x) α Q(x) β (pravidlo č. 2)
28 Pravidla pro úpravu do kanonické formy E3VPC dále se nám k úpravám hodí tyto věty: Theorem { x in R : P(x) α} Q(x) β x in R : P(x) α Q(x) β Proof. { x in R : P(x) α} Q(x) β x in R : P(x) α Q(x) β (běžné pravidlo predikátového kalkulu) x in R : P(x) α Q(x) β (pravidlo č. 6) x in R : P(x) α β Q(x) β (pravidlo č. 1) x in R : P(x) α β Q(x) β (pravidlo č. 3) x in R : P(x) α Q(x) β (pravidlo č. 4)
29 Critical Equivalence Set Množina kritické ekvivalence Definition Množina kanonických E3VPC výrazů je kriticky ekvivalentní, pokud všechny výrazy v ní obsažené mají identickou strukturu, až na typ interpretace jednotlivých atomických predikátů Example Mějmě dva SQL dotazy Q 1,Q 2, jejichž transformace do E3VPC vypadá takto: TR Q 1 = {x } in R : P(x) F TR Q 2 = {x } in R : P(x) T Tyto dva dotazy vrací vždy stejné výsledky za předpokladu, že v databázi nejsou null hodnoty. Pokud však pro nějaké x R je predikát P(x) = U, bude obsažen ve výsledku dotazu Q 2, nikoliv však v Q 1.
30 Critical Equivalence Set Množina kritické ekvivalence Definition Množina kanonických E3VPC výrazů je kriticky ekvivalentní, pokud všechny výrazy v ní obsažené mají identickou strukturu, až na typ interpretace jednotlivých atomických predikátů Example Mějmě dva SQL dotazy Q 1,Q 2, jejichž transformace do E3VPC vypadá takto: TR Q 1 = {x } in R : P(x) F TR Q 2 = {x } in R : P(x) T Tyto dva dotazy vrací vždy stejné výsledky za předpokladu, že v databázi nejsou null hodnoty. Pokud však pro nějaké x R je predikát P(x) = U, bude obsažen ve výsledku dotazu Q 2, nikoliv však v Q 1.
31 Critical Equivalence Set Množina kritické ekvivalence Fact Důležité pozorování: Ačkoliv pravidla pro překlad do E3VPC používají pouze false interpretované operátory ( F ), interpretační operátory true ( T ) se mohou objevit při použití pravidel úpravy do kanonické formy: P(x) F P(x) T (instance pravidla 3) P(x) T F P(x) T (instance pravidla 4)
32 Příklad (téměř) ekvivalentních dotazů - formálně Mějme schéma dvou relací R(A 1,...,A i,...a n ), S(B 1,...,B i,...,b j,...b m ). Uvažujeme těchto pět SQL dotazů: Q 1 : SELECT * FROM R x WHERE NOT EXISTS SELECT * FROM S y WHERE x.a i =y.b i y.b j P Q 4 : SELECT * FROM R x WHERE P = ALL SELECT y.b j FROM S y WHERE x.a i = y.b i Q 2 : SELECT * FROM R x WHERE NOT P SOME SELECT y.b j FROM S y WHERE x.a i = y.b i Q 5 : SELECT * FROM R x WHERE x.a i NOT IN SELECT y.b i FROM S y WHERE y.b j P Q 3 : SELECT * FROM R x WHERE NOT x.a i IN SELECT y.b i FROM S y WHERE x.b j P
33 Příklad (téměř) ekvivalentních dotazů - méně formálně Mějme tabulku společností SPOL(ič#, jméno,..), a tabulku faktur FAKT (ič#,čf #,stav,částka,...). Uvažujeme těchto pět SQL dotazů: Q 1 : SELECT * FROM SPOL s WHERE NOT EXISTS SELECT * FROM FAKT f WHERE s.ič=f.ič f.stav Z Q 4 : SELECT * FROM SPOL s WHERE Z = ALL SELECT f.stav FROM FAKT f WHERE s.ič = f.ič Q 2 : SELECT * FROM SPOL s WHERE NOT Z SOME SELECT f.stav FROM FAKT f WHERE s.ič = f.ič Q 3 : SELECT * FROM SPOL s WHERE NOT s.ič IN SELECT f.ič FROM FAKT f WHERE f.stav Z Q 5 : SELECT * FROM SPOL s WHERE s.ič NOT IN SELECT f.ič FROM FAKT f WHERE f.stav Z Poznámka atribut f.stav nabývá hodnot P (potrvrzeno), Z (zamítnuto) a null (zatím nerozhodnuto)
34 Příklad (téměř) ekvivalentních dotazů - méně formálně Mějme tabulku společností SPOL(ič#, jméno,..), a tabulku faktur FAKT (ič#,čf #,stav,částka,...). Uvažujeme těchto pět SQL dotazů: Q 1 : SELECT * FROM SPOL s WHERE NOT EXISTS SELECT * FROM FAKT f WHERE s.ič=f.ič f.stav Z Q 4 : SELECT * FROM SPOL s WHERE Z = ALL SELECT f.stav FROM FAKT f WHERE s.ič = f.ič Q 2 : SELECT * FROM SPOL s WHERE NOT Z SOME SELECT f.stav FROM FAKT f WHERE s.ič = f.ič Q 3 : SELECT * FROM SPOL s WHERE NOT s.ič IN SELECT f.ič FROM FAKT f WHERE f.stav Z Q 5 : SELECT * FROM SPOL s WHERE s.ič NOT IN SELECT f.ič FROM FAKT f WHERE f.stav Z Poznámka atribut f.stav nabývá hodnot P (potrvrzeno), Z (zamítnuto) a null (zatím nerozhodnuto)
35 Překlad SQL dotazů Q 1,...Q 5 do E3VPC Pro zjednodušení zápisu substituujeme predikáty: P(f ) za f.stav Z P(f ) značí faktura f nebyla zamítnuta, ekvivalentně faktura f byla potvrzena Q(s,f ) za s.ič = f.ič Q(s, f ) značí společnost s vystavila fakturu f
36 Sémantika dotazu Q 1 Dotaz Q 1 (SQL) SELECT * FROM SPOL s WHERE NOT EXISTS SELECT * FROM FAKT f WHERE s.ič = f.ič f.stav Z Překlad TR<Q 1 > (E3VPC) { s in SPOL : {f in FAKT : Q(s,f ) P(f ) F } } F Dotaz Q 1 (běžný jazyk) doslovně: Vyber společnosti pro které je množina jejích potvrzených faktur prázdná. ekvivalentně: Společnosti, které nemají žádnou potvrzenou fakturu? Vrátí dotaz i společnost, o jejíž faktuře ještě nebylo rozhodnuto? (tj. P(f ) = U)?
37 Sémantika dotazu Q 1 Dotaz Q 1 (SQL) SELECT * FROM SPOL s WHERE NOT EXISTS SELECT * FROM FAKT f WHERE s.ič = f.ič f.stav Z Překlad TR<Q 1 > (E3VPC) { s in SPOL : {f in FAKT : Q(s,f ) P(f ) F } } F Dotaz Q 1 (běžný jazyk) doslovně: Vyber společnosti pro které je množina jejích potvrzených faktur prázdná. ekvivalentně: Společnosti, které nemají žádnou potvrzenou fakturu? Vrátí dotaz i společnost, o jejíž faktuře ještě nebylo rozhodnuto? (tj. P(f ) = U)?
38 Sémantika dotazu Q 1 Dotaz Q 1 (SQL) SELECT * FROM SPOL s WHERE NOT EXISTS SELECT * FROM FAKT f WHERE s.ič = f.ič f.stav Z Překlad TR<Q 1 > (E3VPC) { s in SPOL : {f in FAKT : Q(s,f ) P(f ) F } } F Dotaz Q 1 (běžný jazyk) doslovně: Vyber společnosti pro které je množina jejích potvrzených faktur prázdná. ekvivalentně: Společnosti, které nemají žádnou potvrzenou fakturu? Vrátí dotaz i společnost, o jejíž faktuře ještě nebylo rozhodnuto? (tj. P(f ) = U)?
39 Sémantika dotazu Q 4 Dotaz Q 4 (SQL) SELECT * FROM SPOL s WHERE Z = ALL SELECT f.stav FROM FAKT f WHERE s.ič = f.ič Překlad TR<Q 4 > (E3VPC) { s in SPOL : {f in FAKT : Q(s,f ) F } } P(f ) F Dotaz Q 4 (běžný jazyk) Vyber takové společnosti, jejichž všechny faktury jsou zamítnuté? Vrátí dotaz i firmu, o jejíž faktuře ještě nebylo rozhodnuto? (tj. P(f ) = U)?
40 Sémantika dotazu Q 4 Dotaz Q 4 (SQL) SELECT * FROM SPOL s WHERE Z = ALL SELECT f.stav FROM FAKT f WHERE s.ič = f.ič Překlad TR<Q 4 > (E3VPC) { s in SPOL : {f in FAKT : Q(s,f ) F } } P(f ) F Dotaz Q 4 (běžný jazyk) Vyber takové společnosti, jejichž všechny faktury jsou zamítnuté? Vrátí dotaz i firmu, o jejíž faktuře ještě nebylo rozhodnuto? (tj. P(f ) = U)?
41 Sémantika dotazu Q 4 Dotaz Q 4 (SQL) SELECT * FROM SPOL s WHERE Z = ALL SELECT f.stav FROM FAKT f WHERE s.ič = f.ič Překlad TR<Q 4 > (E3VPC) { s in SPOL : {f in FAKT : Q(s,f ) F } } P(f ) F Dotaz Q 4 (běžný jazyk) Vyber takové společnosti, jejichž všechny faktury jsou zamítnuté? Vrátí dotaz i firmu, o jejíž faktuře ještě nebylo rozhodnuto? (tj. P(f ) = U)?
42 Překlad SQL dotazů Q 1,...Q 5 do E3VPC { s in SPOL : {f in FAKT : Q(s,f ) P(f ) F } } F { s in SPOL : {f in FAKT : Q(s,f ) F } }P(f ) F { s in SPOL : {f in FAKT : P(f ) F } }Q(s,f ) F { s in SPOL : {f in FAKT : Q(s,f ) F } } P(f ) F { s in SPOL : {f in FAKT : P(f ) F } } Q(s,f ) F? Jsou nějaké z těchto dotazů úplně ekvivalentní, tedy vrací vždy stejné výsledky i na databázích s nulovými hodnotami?
43 Překlad SQL dotazů Q 1,...Q 5 do E3VPC { s in SPOL : {f in FAKT : Q(s,f ) P(f ) F } } F { s in SPOL : {f in FAKT : Q(s,f ) F } }P(f ) F { s in SPOL : {f in FAKT : P(f ) F } }Q(s,f ) F { s in SPOL : {f in FAKT : Q(s,f ) F } } P(f ) F { s in SPOL : {f in FAKT : P(f ) F } } Q(s,f ) F? Jsou nějaké z těchto dotazů úplně ekvivalentní, tedy vrací vždy stejné výsledky i na databázích s nulovými hodnotami?
44 Kanonické formy překladů TR < Q 1 >,...TR < Q 5 > 1 f in FAKT : Q(s,f ) T P(f ) T 2 f in FAKT : Q(s,f ) T P(f ) F 3 f in FAKT : Q(s,f ) F P(f ) T 4 = 2. 5 = 3. Fact Dotaz Q 2 i Q 4 vrátil společnosti, jejichž každá faktura byla zamítnuta Dotaz Q 1 vrátil společnosti, jejichž každá faktura byla buďto zamítnuta a nebo o jejím zamítnutí ještě nebylo rozhodnuto (zatím má její atribut f.stav hodnotu null)? Jaká je sémantika dotazu Q 3, resp. Q 5?
45 Kanonické formy překladů TR < Q 1 >,...TR < Q 5 > 1 f in FAKT : Q(s,f ) T P(f ) T 2 f in FAKT : Q(s,f ) T P(f ) F 3 f in FAKT : Q(s,f ) F P(f ) T 4 = 2. 5 = 3. Fact Dotaz Q 2 i Q 4 vrátil společnosti, jejichž každá faktura byla zamítnuta Dotaz Q 1 vrátil společnosti, jejichž každá faktura byla buďto zamítnuta a nebo o jejím zamítnutí ještě nebylo rozhodnuto (zatím má její atribut f.stav hodnotu null)? Jaká je sémantika dotazu Q 3, resp. Q 5?
46 Sémantika dotazu Q 5 Dotaz Q 5 (SQL) SELECT * FROM SPOL s WHERE s.ič NOT IN SELECT f.ič FROM FAKT f WHERE f.stav Z Překlad TR<Q 5 > (E3VPC) { s in SPOL : {f in FAKT : P(f ) F } } Q(s,f ) F Dotaz Q 5 (běžný jazyk) Vyber takové společnosti, které nemají žádnou potvrzenou fakturu vrátí společnosti, jejichž všechny faktury byly zamítnuty a nebo o jejich zamítnutí ještě nebylo rozhodnuto co se stane, když se v databázi vyskytne potvrzená faktura s atributem f.ič = null? Pro tuto fakturu bude predikát Q(s,f ) = U a tedy nevíme, které společnosti faktura v databázi patří. Jak to ovlivní výsledky dotazů Q 1,Q 4,Q 5?
47 Sémantika dotazu Q 5 Dotaz Q 5 (SQL) SELECT * FROM SPOL s WHERE s.ič NOT IN SELECT f.ič FROM FAKT f WHERE f.stav Z Překlad TR<Q 5 > (E3VPC) { s in SPOL : {f in FAKT : P(f ) F } } Q(s,f ) F Dotaz Q 5 (běžný jazyk) Vyber takové společnosti, které nemají žádnou potvrzenou fakturu vrátí společnosti, jejichž všechny faktury byly zamítnuty a nebo o jejich zamítnutí ještě nebylo rozhodnuto co se stane, když se v databázi vyskytne potvrzená faktura s atributem f.ič = null? Pro tuto fakturu bude predikát Q(s,f ) = U a tedy nevíme, které společnosti faktura v databázi patří. Jak to ovlivní výsledky dotazů Q 1,Q 4,Q 5?
48 Sémantika dotazu Q 5 Dotaz Q 5 (SQL) SELECT * FROM SPOL s WHERE s.ič NOT IN SELECT f.ič FROM FAKT f WHERE f.stav Z Překlad TR<Q 5 > (E3VPC) { s in SPOL : {f in FAKT : P(f ) F } } Q(s,f ) F Dotaz Q 5 (běžný jazyk) Vyber takové společnosti, které nemají žádnou potvrzenou fakturu vrátí společnosti, jejichž všechny faktury byly zamítnuty a nebo o jejich zamítnutí ještě nebylo rozhodnuto co se stane, když se v databázi vyskytne potvrzená faktura s atributem f.ič = null? Pro tuto fakturu bude predikát Q(s,f ) = U a tedy nevíme, které společnosti faktura v databázi patří. Jak to ovlivní výsledky dotazů Q 1,Q 4,Q 5?
49 Univerzálně kvantifikované SQL dotazy v E3VPC {y in S : Q(x,y) P(y) α } β {y in S : Q(x,y) α }P(y) β {y in S : P(y) α }Q(x,y) β {y in S : Q(x,y) α } P(y) β {y in S : P(y) α } Q(x,y) β α = F vždy, nebot vyhledávací podmínka (search condition) v SQL je vždy interpretována false β závisí na struktuře vnějšího dotazu.
50 Univerzálně kvantifikované SQL dotazy v E3VPC {y in S : Q(x,y) P(y) α } β {y in S : Q(x,y) α }P(y) β {y in S : P(y) α }Q(x,y) β {y in S : Q(x,y) α } P(y) β {y in S : P(y) α } Q(x,y) β α = F vždy, nebot vyhledávací podmínka (search condition) v SQL je vždy interpretována false β závisí na struktuře vnějšího dotazu.
51 Ekvivalentní kanonické formy TR < Q 1 >,...TR < Q 5 > pro univerzálně kvantifikované dotazy 1 y in S : Q(x,y) α P(f ) α 2 y in S : Q(x,y) α P(f ) β 3 y in S : Q(x,y) β P(f ) α 4 = 2. 5 = 3. Tyto výrazy jsou identické pouze pokud β = α. Toto ale obecně neplatí, což je příčinou vzinku množin kritické ekvivalence.
52 Ekvivalentní kanonické formy TR < Q 1 >,...TR < Q 5 > pro univerzálně kvantifikované dotazy 1 y in S : Q(x,y) α P(f ) α 2 y in S : Q(x,y) α P(f ) β 3 y in S : Q(x,y) β P(f ) α 4 = 2. 5 = 3. Tyto výrazy jsou identické pouze pokud β = α. Toto ale obecně neplatí, což je příčinou vzinku množin kritické ekvivalence.
53 Existenčně kvantifikované SQL dotazy v E3VPC {y in S : Q(x,y) P(y) α } β {y in S : Q(x,y) α }P(y) β {y in S : P(y) α }Q(x,y) β {y in S : Q(x,y) α } P(y) β {y in S : P(y) α } Q(x,y) β stejně jako u univerzálně kvantifikovaných dotazů platí α = F vždy, nebot vyhledávací podmínka (search condition) v SQL je vždy interpretována false β závisí na struktuře vnějšího dotazu
54 Ekvivalentní kanonické formy pro existenčně kvantifikované dotazy 1 y in S : Q(x,y) α P(y) α 2 y in S : Q(x,y) α P(y) β 3 y in S : Q(x,y) β P(y) α 4 = 2. 5 = 3. Tyto výrazy jsou identické pouze pokud β = α. Víme, že α = F vždy. Aby existenční kvantifikátor způsobil existenci množiny kritické ekvivalence, musí být β = T. To nastává pouze pokud je součástí vnějšího univerzálně kvantifikovaného predikátu.
55 Ekvivalentní kanonické formy pro existenčně kvantifikované dotazy 1 y in S : Q(x,y) α P(y) α 2 y in S : Q(x,y) α P(y) β 3 y in S : Q(x,y) β P(y) α 4 = 2. 5 = 3. Tyto výrazy jsou identické pouze pokud β = α. Víme, že α = F vždy. Aby existenční kvantifikátor způsobil existenci množiny kritické ekvivalence, musí být β = T. To nastává pouze pokud je součástí vnějšího univerzálně kvantifikovaného predikátu.
56 Shrnutí Ekvivalence ekvivalenci dvou SQL dotazů lze rozhodnout překladem do rozšířené tříhodnotové predikátové logiky (E3VPC) a následnou úpravou na kanonický tvar E3VPC je výrazově silnější než SQL Množiny kritické ekvivalence dotazy v kriticky ekvivalentní množině vrací stejné výsledky na databázi bez null hodnot. Jsou-li však v databázi null hodnoty, chovají se rozdílně. dotazy bez univerzálního (všeobecného) kvantifikátoru nikdy netvoří množiny kritické ekvivalence dotazy s univerzálním kvantifikátorem vždy tvoří množiny kritické ekvivalence
Formální sémantika SQL dotazování
Formální sémantika SQL dotazování Elina Hazaran Zuzana Vytisková 6.11. 2012 podle M. Negri, G. Pelagatti, L. Sbattela, 1991 Základní pojmy Formální logický model Pravidla pro překlad SQL dotazů do tohoto
VíceDatabázové systémy. * relační kalkuly. Tomáš Skopal. - relační model
Databázové systémy Tomáš Skopal - relační model * relační kalkuly Osnova přednášky relační kalkuly doménový n-ticový Relační kalkuly využití aparátu predikátové logiky 1. řádu pro dotazování rozšíření
VícePredikátová logika. prvního řádu
Predikátová logika prvního řádu 2 Predikát Predikát je n-ární relace - vyjadřuje vlastnosti objektů a vztahy mezi objekty - z jednoduchého výroku vznikne vypuštěním alespoň jednoho jména objektu (individua)
VíceDatabáze I. Přednáška 6
Databáze I Přednáška 6 SQL aritmetika v dotazech SQL lze přímo uvádět aritmetické výrazy násobení, dělení, sčítání, odčítání příklad z minulé přednášky: zdvojnásobení platu všem zaměstnancům UPDATE ZAMESTNANEC
Více2.2 Sémantika predikátové logiky
14 [101105-1155] 2.2 Sémantika predikátové logiky Nyní se budeme zabývat sémantikou formulí, tj. jejich významem a pravdivostí. 2.2.1 Interpretace jazyka predikátové logiky. Interpretace predikátové logiky
VíceVýroková a predikátová logika - XII
Výroková a predikátová logika - XII Petr Gregor KTIML MFF UK ZS 2018/2019 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - XII ZS 2018/2019 1 / 15 Rezoluční metoda v PL Rezoluční důkaz Obecné
VíceKapitola 4: SQL. Základní struktura
- 4.1 - Kapitola 4: SQL Základní struktura Množinové operace Souhrnné funkce Nulové hodnoty Vnořené poddotazy (Nested sub-queries) Odvozené relace Pohledy Modifikace databáze Spojené relace Jazyk definice
VíceSémantika predikátové logiky
Sémantika predikátové logiky pro analýzu sémantiky potřebujeme nejprve specifikaci jazyka (doména, konstanty, funkční a predikátové symboly) příklad: formální jazyk s jediným binárním predikátovým symbolem
VíceÚvod do databázových systémů
Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Katedra informatiky Database Research Group Úvod do databázových systémů Cvičení 3 Ing. Petr Lukáš petr.lukas@vsb.cz
VíceDotazování v relačním modelu a SQL
Databázové systémy Dotazování v relačním modelu a SQL Petr Krajča Katedra informatiky Univerzita Palackého v Olomouci Petr Krajča (UP) KMI/YDATA: Přednáška II. 14. říjen, 2016 1 / 35 Opakování Relační
VíceÚvod do databázových systémů
Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Úvod do databázových systémů Cvičení 3 Ing. Petr Lukáš petr.lukas@vsb.cz Ostrava, 2014 Opakování 4 fáze vytváření
VíceVýroková a predikátová logika - X
Výroková a predikátová logika - X Petr Gregor KTIML MFF UK ZS 2018/2019 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - X ZS 2018/2019 1 / 16 Rozšiřování teorií Extenze o definice Rozšiřování
Více6. blok část B Vnořené dotazy
6. blok část B Vnořené dotazy Studijní cíl Tento blok je věnován práci s vnořenými dotazy. Popisuje rozdíl mezi korelovanými a nekorelovanými vnořenými dotazy a zobrazuje jejich použití. Doba nutná k nastudování
VíceKIV/ZIS cvičení 5. Tomáš Potužák
KIV/ZIS cvičení 5 Tomáš Potužák Úvod do SQL (1) SQL (Structured Query Language) je standardizovaný strukturovaný dotazovací jazyk pro práci s databází Veškeré operace v databázi se dají provádět pomocí
VíceVýroková logika. Sémantika výrokové logiky
Výroková logika Výroková logika se zabývá vztahy mezi dále neanalyzovanými elementárními výroky. Nezabývá se smyslem těchto elementárních výroků, zkoumá pouze vztahy mezi nimi. Elementární výrok je takový
VíceDatabáze SQL SELECT. David Hoksza http://siret.cz/hoksza
Databáze SQL SELECT David Hoksza http://siret.cz/hoksza Osnova Úvod do SQL Základní dotazování v SQL Cvičení základní dotazování v SQL Structured Query Language (SQL) SQL napodobuje jednoduché anglické
VíceUnární je také spojka negace. pro je operace binární - příkladem může být funkce se signaturou. Binární je velká většina logických spojek
Otázka 06 - Y01MLO Zadání Predikátová logika, formule predikátové logiky, sentence, interpretace jazyka predikátové logiky, splnitelné sentence, tautologie, kontradikce, tautologicky ekvivalentní formule.
VíceÚvod do TI - logika Predikátová logika 1.řádu (4.přednáška) Marie Duží marie.duzi@vsb.cz
Úvod do TI - logika Predikátová logika 1.řádu (4.přednáška) Marie Duží marie.duzi@vsb.cz Jednoduché úsudky, kde VL nestačí Všechny opice mají rády banány Judy je opice Judy má ráda banány Z hlediska VL
VíceÚvod do databázových systémů
Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Úvod do databázových systémů Cvičení 4 Ing. Petr Lukáš petr.lukas@vsb.cz Ostrava, 2014 Opakování Klauzule příkazu
VíceCo bude výsledkem mého SELECTu? RNDr. David Gešvindr MVP: Data Platform MCSE: Data Platform MCSD: Windows Store MCT
Co bude výsledkem mého SELECTu? RNDr. David Gešvindr MVP: Data Platform MCSE: Data Platform MCSD: Windows Store MCT david@wug.cz @gesvindr Logické zpracování dotazu Jazyk T-SQL je deklarativní Popisujeme,
VíceVýroková a predikátová logika - IX
Výroková a predikátová logika - IX Petr Gregor KTIML MFF UK ZS 2015/2016 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - IX ZS 2015/2016 1 / 16 Tablo metoda v PL Důsledky úplnosti Vlastnosti
VíceJazyk SQL 2. Michal Valenta. Katedra softwarového inženýrství FIT České vysoké učení technické v Praze c M.Valenta, 2011 BI-DBS, ZS 2011/12
Jazyk SQL 2 Michal Valenta Katedra softwarového inženýrství FIT České vysoké učení technické v Praze c M.Valenta, 2011 BI-DBS, ZS 2011/12 https://edux.fit.cvut.cz/courses/bi-dbs/ M.Valenta (FIT ČVUT) Jazyk
VíceVýroková a predikátová logika - VIII
Výroková a predikátová logika - VIII Petr Gregor KTIML MFF UK ZS 2017/2018 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - VIII ZS 2017/2018 1 / 21 Tablo Tablo metoda v PL - rozdíly Formule
VíceOkruh č.3: Sémantický výklad predikátové logiky
Okruh č.3: Sémantický výklad predikátové logiky Predikátová logika 1.řádu formalizuje úsudky o vlastnostech předmětů a vztazích mezi předměty pevně dané předmětné oblasti (univerza). Nebudeme se zabývat
VíceVýroková a predikátová logika - IX
Výroková a predikátová logika - IX Petr Gregor KTIML MFF UK ZS 2013/2014 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - IX ZS 2013/2014 1 / 15 Korektnost a úplnost Důsledky Vlastnosti teorií
VíceJazyk SQL 1. Michal Valenta. Katedra softwarového inženýrství FIT České vysoké učení technické v Praze c Michal Valenta, 2012 BI-DBS, ZS 2011/12
Jazyk SQL 1 Michal Valenta Katedra softwarového inženýrství FIT České vysoké učení technické v Praze c Michal Valenta, 2012 BI-DBS, ZS 2011/12 https://edux.fit.cvut.cz/courses/bi-dbs/ Michal Valenta (FIT
VíceDalší (neklasické) logiky. Jiří Velebil: AD0B01LGR 2015 Predikátová logika 1/20
Predikátová logika Jiří Velebil: AD0B01LGR 2015 Predikátová logika 1/20 Jazyk predikátové logiky Má dvě sorty: 1 Termy: to jsou objekty, o jejichž vlastnostech chceme hovořit. Mohou být proměnné. 2 Formule:
VíceVýroková a predikátová logika - VI
Výroková a predikátová logika - VI Petr Gregor KTIML MFF UK ZS 2017/2018 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - VI ZS 2017/2018 1 / 24 Predikátová logika Úvod Predikátová logika Zabývá
VíceModely Herbrandovské interpretace
Modely Herbrandovské interpretace Petr Štěpánek S využitím materialu Krysztofa R. Apta 2006 Logické programování 8 1 Uvedli jsme termové interpretace a termové modely pro logické programy a také nejmenší
VíceLogika a logické programování
Logika a logické programování témata ke zkoušce Poslední aktualizace: 16. prosince 2009 Zkouška je písemná, skládá se obvykle ze sedmi otázek (může být více nebo méně, podle náročnosti otázek), z toho
VíceÚvod do databázových systémů
Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Úvod do databázových systémů Cvičení 5 Ing. Petr Lukáš petr.lukas@vsb.cz Ostrava, 2014 Opakování K čemu se používají
VícePro každé formule α, β, γ, δ platí: Pro každé formule α, β, γ platí: Poznámka: Platí právě tehdy, když je tautologie.
Zpracoval: hypspave@fel.cvut.cz 5. Výroková logika, formule výrokové logiky a jejich pravdivostní ohodnocení, splnitelné formule, tautologie, kontradikce, sémantický důsledek, tautologicky ekvivalentní
VíceInformační systémy ve zdravotnictví. 10. cvičení
Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Informační systémy ve zdravotnictví 10. cvičení Ing. Petr Lukáš petr.lukas@nativa.cz Ostrava, 2014 Opakování K čemu
VíceMatematická logika. Rostislav Horčík. horcik
Matematická logika Rostislav Horčík horcik@math.feld.cvut.cz horcik@cs.cas.cz www.cs.cas.cz/ horcik Rostislav Horčík (ČVUT FEL) Y01MLO Letní semestr 2007/2008 1 / 18 Příklad Necht L je jazyk obsahující
VíceVýroková a predikátová logika - VIII
Výroková a predikátová logika - VIII Petr Gregor KTIML MFF UK ZS 2016/2017 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - VIII ZS 2016/2017 1 / 21 Tablo Tablo metoda v PL - rozdíly Formule
Více6. blok část C Množinové operátory
6. blok část C Množinové operátory Studijní cíl Tento blok je věnován problematice množinových operátorů a práce s množinovými operátory v jazyce SQL. Čtenáři se seznámí s operátory, UNION, a INTERSECT.
VícePredikátová logika. Teoretická informatika Tomáš Foltýnek
Predikátová logika Teoretická informatika Tomáš Foltýnek foltynek@pef.mendelu.cz strana 2 Opakování z minulé přednášky Z čeho se skládá jazyk výrokové logiky? Jaká jsou schémata pro axiomy VL? Formulujte
VíceVýroková logika - opakování
- opakování ormální zavedení Výroková formule: Máme neprázdnou nejvýše spočetnou množinu A výrokových proměnných. 1. Každá proměnná je výroková formule 2. Když α, β jsou formule, potom ( α), (α β), (α
VíceDeskripční logika. Petr Křemen FEL ČVUT. Petr Křemen (FEL ČVUT) Deskripční logika 37 / 157
Deskripční logika Petr Křemen FEL ČVUT Petr Křemen (FEL ČVUT) Deskripční logika 37 / 157 Co nás čeká 1 Základy deskripční logiky 2 Jazyk ALC Syntax a sémantika 3 Cyklické a acyklické TBOXy Petr Křemen
VíceDatabázové systémy. Dotazovací jazyk SQL - II
Databázové systémy Dotazovací jazyk SQL - II SELECT I SELECT FROM WHERE GROUP BY HAVING
VíceLogické programy Deklarativní interpretace
Logické programy Deklarativní interpretace Petr Štěpánek S využitím materialu Krysztofa R. Apta 2006 Logické programování 7 1 Algebry. (Interpretace termů) Algebra J pro jazyk termů L obsahuje Neprázdnou
VíceVýroková a predikátová logika - V
Výroková a predikátová logika - V Petr Gregor KTIML MFF UK ZS 2015/2016 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - V ZS 2015/2016 1 / 21 Dokazovací systémy VL Hilbertovský kalkul Hilbertovský
Více4.2 Syntaxe predikátové logiky
36 [070507-1501 ] 4.2 Syntaxe predikátové logiky V tomto oddíle zavedeme syntaxi predikátové logiky, tj. uvedeme pravidla, podle nichž se tvoří syntakticky správné formule predikátové logiky. Význam a
VíceVýroková a predikátová logika - VII
Výroková a predikátová logika - VII Petr Gregor KTIML MFF UK ZS 2013/2014 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - VII ZS 2013/2014 1 / 21 Sémantika PL Teorie Vlastnosti teorií Teorie
VícePredikátová logika [Predicate logic]
Predikátová logika [Predicate logic] Přesněji predikátová logika prvého řádu. Formalizuje výroky o vlastnostech předmětů (entit) a vztazích mezi předměty, které patří do dané předmětné oblasti univerza.
Více1 Pravdivost formulí v interpretaci a daném ohodnocení
1 Pravdivost formulí v interpretaci a daném ohodnocení Než uvedeme konkrétní příklady, zopakujme si definici interpretace, ohodnocení a pravdivosti. Necht L je nějaký jazyk. Interpretaci U, jazyka L tvoří
VíceVýroková a predikátová logika - VII
Výroková a predikátová logika - VII Petr Gregor KTIML MFF UK ZS 2018/2019 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - VII ZS 2018/2019 1 / 15 Platnost (pravdivost) Platnost ve struktuře
VíceÚvod do predikátové logiky. (FLÚ AV ČR) Logika: CZ.1.07/2.2.00/ / 1
Úvod do predikátové logiky (FLÚ AV ČR) Logika: CZ.1.07/2.2.00/28.0216 2013 1 / 1 Relace Neuspořádaná vs. uspořádaná dvojice {m, n} je neuspořádaná dvojice. m, n je uspořádaná dvojice. (FLÚ AV ČR) Logika:
VíceDatabázové systémy I
Databázové systémy I Přednáška č. 8 Ing. Jiří Zechmeister Fakulta elektrotechniky a informatiky jiri.zechmeister@upce.cz Skupinové a souhrnné dotazy opakování Obsah Pohledy syntaxe použití význam Vnořené
Více2.5 Rezoluční metoda v predikátové logice
2.5. Rezoluční metoda v predikátové logice [101104-1520] 19 2.5 Rezoluční metoda v predikátové logice Rezoluční metoda v predikátové logice je obdobná stejnojmenné metodě ve výrokové logice. Ovšem vzhledem
VícePredikátová logika: Axiomatizace, sémantické stromy, identita. (FLÚ AV ČR) Logika: CZ.1.07/2.2.00/ / 13
Predikátová logika: Axiomatizace, sémantické stromy, identita (FLÚ AV ČR) Logika: CZ.1.07/2.2.00/28.0216 2013 1 / 13 Axiomatizace predikátové logiky Axiomatizace predikátové logiky Definice Hilbertovský
VíceInformační systémy 2008/2009. Radim Farana. Obsah. Dotazy přes více tabulek
5 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah Jazyk SQL, Spojení tabulek, agregační dotazy, jednoduché a složené
VíceNegativní informace. Petr Štěpánek. S použitím materiálu M.Gelfonda a V. Lifschitze. Logické programování 15 1
Negativní informace Petr Štěpánek S použitím materiálu M.Gelfonda a V. Lifschitze 2009 Logické programování 15 1 Negace jako neúspěch Motivace: Tvrzení p (atomická formule) neplatí, jestliže nelze odvodit
VíceKurz Databáze. Obsah. Dotazy. Zpracování dat. Doc. Ing. Radim Farana, CSc.
1 Kurz Databáze Zpracování dat Doc. Ing. Radim Farana, CSc. Obsah Druhy dotazů, tvorba dotazu, prostředí QBE (Query by Example). Realizace základních relačních operací selekce, projekce a spojení. Agregace
VíceJ. Zendulka: Databázové systémy 4 Relační model dat 1
4. Relační model dat 4.1. Relační struktura dat... 3 4.2. Integritní pravidla v relačním modelu... 9 4.2.1. Primární klíč... 9 4.2.2. Cizí klíč... 11 4.2.3. Relační schéma databáze... 13 4.3. Relační algebra...
VíceStefan Ratschan. Fakulta informačních technologíı. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti
Logika pro každodenní přežití Stefan Ratschan Katedra číslicového návrhu Fakulta informačních technologíı České vysoké učení technické v Praze Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti
VíceXMW4 / IW4 Pokročilé SELECT dotazy. Štefan Pataky
XMW4 / IW4 Pokročilé SELECT dotazy Štefan Pataky TOP, OFFSET-FETCH Konverze datových typů Logické funkce Práce s řetězci Poddotazy a množinové dotazy SQL Windowing Agenda TOP TOP omezení počtu vrácených
VíceKapitola 3: Relační model. Základní struktura. Relační schéma. Instance relace
- 3.1 - Struktura relačních databází Relační algebra n-ticový relační kalkul Doménový relační kalkul Rozšířené operace relační algebry Modifikace databáze Pohledy Kapitola 3: Relační model Základní struktura
VíceMatematická logika. Miroslav Kolařík
Matematická logika přednáška šestá Miroslav Kolařík Zpracováno dle textu R. Bělohlávka: Matematická logika poznámky k přednáškám, 2004. a dle učebního textu R. Bělohlávka a V. Vychodila: Diskrétní matematika
VíceObsah Předmluva Rekapitulace základních pojmů logiky a výrokové logiky Uvedení do predikátové logiky...17
Obsah Předmluva...3 0. Rekapitulace základních pojmů logiky a výrokové logiky...11 0.1 Logika jako věda o vyplývání... 11 1. Uvedení do predikátové logiky...17 1.1 Základní terminologie... 17 1.2 Základní
VíceInformační systémy ve zdravotnictví. 8. cvičení
Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Informační systémy ve zdravotnictví 8. cvičení Ing. Petr Lukáš petr.lukas@nativa.cz Ostrava, 2014 Opakování Klauzule
VíceÚvod do databází. Modelování v řízení. Ing. Petr Kalčev
Úvod do databází Modelování v řízení Ing. Petr Kalčev Co je databáze? Množina záznamů a souborů, které jsou organizovány za určitým účelem. Jaké má mít přínosy? Rychlost Spolehlivost Přesnost Bezpečnost
VícePredik atov a logika - pˇredn aˇska () Predik atov a logika - pˇredn aˇska / 16
Predikátová logika - přednáška 3 6. 1. 2015 () Predikátová logika - přednáška 3 6. 1. 2015 1 / 16 Věta (o dedukci) Bud L jazyk, T teorie pro L, ϕ L-sentence a ψ L-formule. Pak Věta (o kompaktnosti) T ϕ
VíceHilbertovský axiomatický systém
Hilbertovský axiomatický systém Predikátová logika H 1 Šárka Vavrečková Ústav informatiky, FPF SU Opava Poslední aktualizace: 24. října 2008 Specifikace H 1 Jazyk L H1 přejímáme jazyk predikátové logiky
Vícepostaveny výhradně na syntaktické bázi: jazyk logiky neinterpretujeme, provádíme s ním pouze syntaktické manipulace důkazy
Formální systémy (výrokové) logiky postaveny výhradně na syntaktické bázi: jazyk logiky neinterpretujeme, provádíme s ním pouze syntaktické manipulace důkazy cíl: získat formální teorii jako souhrn dokazatelných
VíceVýroková logika syntaxe a sémantika
syntaxe a sémantika Jiří Velebil: AD0B01LGR 2015 Handout 01: & sémantika VL 1/16 1 Proč formální jazyk? 1 Přirozené jazyky jsou složité a často nejednoznačné. 2 Komunikace s formálními nástroji musí být
VíceSémantika výrokové logiky. Alena Gollová Výroková logika 1/23
Výroková logika Alena Gollová Výroková logika 1/23 Obsah 1 Formule výrokové logiky 2 Alena Gollová Výroková logika 2/23 Formule výrokové logiky Výrok je oznamovací věta, o jejíž pravdivosti lze rozhodnout.
VícePredikátová logika dokončení
Predikátová logika dokončení Jiří Velebil: X01DML 1. října 2010: Predikátová logika dokončení 1/18 Syntaktická analýza Jako ve výrokové logice (syntaktické stromy). Každý list úspěšného stromu je obsazen
VíceKaždé formuli výrokového počtu přiřadíme hodnotu 0, půjde-li o formuli nepravdivou, a hodnotu 1, půjde-li. α neplatí. β je nutná podmínka pro α
1. JAZYK ATEATIKY 1.1 nožiny nožina je souhrn objektů určitých vlastností, které chápeme jako celek. ZNAČENÍ. x A x A θ A = { { a, b a A = B A B 0, 1 2 a, a,..., a n x patří do množiny A x nepatří do množiny
VíceJazyk S Q L základy, příkazy pro práci s daty
Jazyk S Q L základy, příkazy pro práci s daty Základní pojmy jazyk množina řetězců nad abecedou gramatika popisuje syntaxi výrazů jazyka pravidla, jak vytvářet platné řetězce jazyka. dotazovací jazyk je
Víceplatné nejsou Sokrates je smrtelný. (r) 1/??
Predikátová logika plně přejímá výsledky výrokové logiky zabývá se navíc strukturou jednotlivých jednoduchých výroků na základě této analýzy lze odvodit platnost některých výroků, které ve výrokové logice
VíceRezoluční kalkulus pro logiku prvního řádu
AD4M33AU Automatické uvažování Rezoluční kalkulus pro logiku prvního řádu Petr Pudlák Logika prvního řádu (Někdy nepřesně nazývaná predikátová logika.) Výhody Vyšší vyjadřovací schopnost jazyka, V podstatě
VíceJaký je rozdíl v definicicíh VARCHAR2(20 BYTE) a VARCHAR2(20 CHAR):
Mezi příkazy pro manipulaci s daty (DML) patří : 1. SELECT 2. ALTER 3. DELETE 4. REVOKE Jaké vlastnosti má identifikující relace: 1. Je relace, která se využívá pouze v případě modelovaní odvozených entit
VíceVýroková a predikátová logika - II
Výroková a predikátová logika - II Petr Gregor KTIML MFF UK ZS 2017/2018 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - II ZS 2017/2018 1 / 17 Předběžnosti Základní pojmy n-ární relace a funkce
VíceVýroková a predikátová logika - IX
Výroková a predikátová logika - IX Petr Gregor KTIML MFF UK ZS 2018/2019 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - IX ZS 2018/2019 1 / 13 Dokončené tablo Chceme, aby dokončená bezesporná
VíceOperátory ROLLUP a CUBE
Operátory ROLLUP a CUBE Dotazovací jazyky, 2009 Marek Polák Martin Chytil Osnova přednášky o Analýza dat o Agregační funkce o GROUP BY a jeho problémy o Speciální hodnotový typ ALL o Operátor CUBE o Operátor
VíceOQL. (Object Query Language) Michal Bartoš Filip Bureš
OQL (Object Query Language) Michal Bartoš Filip Bureš Obsah (1) ODMG Základní vlastnosti OQL Struktura dotazu Datové typy Práce s objekty Tvorba objektů Objektová databáze Rozdíly oproti relační databázi:
VíceDatabáze 2011/2012 SQL SELECT II. RNDr.David Hoksza, Ph.D.
Databáze 2011/2012 SQL SELECT II. RNDr.David Hksza, Ph.D. http://siret.cz/hksza Osnva Pkrčilé SQL IN, EXIST, ANY, ALL GROUP BY, HAVING CASE, COALESCE Mnžinvé perace Cvičení pkrčilé dtazvání v SQL Klauzule
VíceDatabázové systémy. Přednáška č. 5
Databázové systémy Přednáška č. 5 Relační algebra - příklad STUDENT rodné_č příjmení jméno rok_nást spec 7805160000 Nový Petr 1996 INMA 7756123333 Hrozná Jana 1995 INFY 7861122222 Novotná Ivana 1996 INZT
VíceRELAČNÍ DATABÁZOVÉ SYSTÉMY
RELAČNÍ DATABÁZOVÉ SYSTÉMY VÝPIS KONTROLNÍCH OTÁZEK S ODPOVĚDMI: Základní pojmy databázové technologie: 1. Uveďte základní aspekty pro vymezení jednotlivých přístupů ke zpracování hromadných dat: Pro vymezení
Více6. Logika a logické systémy. Základy logiky. Lucie Koloušková, Václav Matoušek / KIV. Umělá inteligence a rozpoznávání, LS
Základy logiky Umělá inteligence a rozpoznávání, LS 2012 6-1 Logika je naukou, která se zabývá studiem lidského uvažování. Mezi základní úlohy logiky patří nalézání metod správného usuzování, tedy postupů,
VíceDatabázové systémy Tomáš Skopal
Databázové systémy Tomáš Skopal - SQL * úvod * dotazování SELECT Osnova přednášky úvod do SQL dotazování v SQL příkaz SELECT třídění množinové operace 2 SQL 3 structured query language standardní jazyk
Více4. Relační model dat. J. Zendulka: Databázové systémy 4 Relační model dat 1
4. Relační model dat 4.1. Relační struktura dat... 3 4.2. Integritní pravidla v relačním modelu... 9 4.2.1. Primární klíč... 9 4.2.2. Cizí klíč... 11 4.2.3. Relační schéma databáze... 13 4.3. Relační algebra...
VíceFuzzy logika a reálný svět, aneb jsou všechny hromady skutečně malé?
Fuzzy logika a reálný svět, aneb jsou všechny hromady skutečně malé? Jiří Močkoř University of Ostrava Department of Mathematics Institute for Research and Applications of Fuzzy Modeling 30. dubna 22,
VícePřevyprávění Gödelova důkazu nutné existence Boha
Převyprávění Gödelova důkazu nutné existence Boha Technické podrobnosti Důkaz: Konečná posloupnost výrokůkorektně utvořených formulí nějakého logického kalkulu), z nichž každý jelogickým) axiomem, postulátemteorie),
Víceteorie logických spojek chápaných jako pravdivostní funkce
Výroková logika teorie logických spojek chápaných jako pravdivostní funkce zabývá se způsoby tvoření výroků pomocí spojek a vztahy mezi pravdivostí různých výroků používá specifický jazyk složený z výrokových
VíceMatematická logika. Rostislav Horčík. horcik
Matematická logika Rostislav Horčík horcik@math.feld.cvut.cz horcik@cs.cas.cz www.cs.cas.cz/ horcik Rostislav Horčík (ČVUT FEL) Y01MLO Letní semestr 2007/2008 1 / 20 Predikátová logika Motivace Výroková
VíceVýroková a predikátová logika - II
Výroková a predikátová logika - II Petr Gregor KTIML MFF UK ZS 2015/2016 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - II ZS 2015/2016 1 / 18 Základní syntax Jazyk Výroková logika je logikou
Více5. blok Souhrnné a skupinové dotazy
5. blok Souhrnné a skupinové dotazy Studijní cíl Tento blok je věnován základům při vytváření souhrnných a skupinových dotazů s využitím agregačních funkcí SUM(), AVG(), MIN(), MAX() a COUNT() a klauzulí
VíceVýroková a predikátová logika - X
Výroková a predikátová logika - X Petr Gregor KTIML MFF UK ZS 2015/2016 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - X ZS 2015/2016 1 / 22 Herbrandova věta Úvod Redukce nesplnitelnosti na
VíceSkolemizace. x(x + f(x) = 0). Interpretace f unární funkce, která pro daný
Skolemizace převod formulí na formule bez existenčních kvantifikátorů v jazyce, který je rozšířen o tzv. Skolemovy funkce; zachovává splnitelnost idea převodu: formuli x 1... x n yp (x 1,..., x n, y) transformujeme
VíceRelační model dat (Codd 1970)
Relační model dat (Codd 1970) Odkud vychází, co přináší? Formální abstrakce nejjednodušších souborů. Relační kalkul a relační algebra (dotazovací prostředky). Metodika pro posuzování kvality relačního
VíceLogika. 6. Axiomatický systém výrokové logiky
Logika 6. Axiomatický systém výrokové logiky RNDr. Luděk Cienciala, Ph. D. Tato inovace předmětu Úvod do logiky je spolufinancována Evropským sociálním fondem a Státním rozpočtem ČR, projekt č. CZ. 1.07/2.2.00/28.0216,
VíceDatabázové systémy. Cvičení 6: SQL
Databázové systémy Cvičení 6: SQL Co je SQL? SQL = Structured Query Language SQL je standardním (ANSI, ISO) textovým počítačovým jazykem SQL umožňuje jednoduchým způsobem přistupovat k datům v databázi
VíceDATA CUBE. Mgr. Jiří Helmich
DATA CUBE Mgr. Jiří Helmich Analytické kroky formulace dotazu analýza extrakce dat vizualizace Motivace n-sloupcová tabulka v Excelu vs. sloupcový graf Dimensionality reduction n dimenzí data obecně uspořádána
VícePredikátová logika Individua a termy Predikáty
Predikátová logika Predikátová logika je rozšířením logiky výrokové o kvantifikační výrazy jako každý, všichni, někteří či žádný. Nejmenší jazykovou jednotkou, kterou byla výroková logika schopna identifikovat,
VíceVýroková a predikátová logika - II
Výroková a predikátová logika - II Petr Gregor KTIML MFF UK ZS 2013/2014 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - II ZS 2013/2014 1 / 20 Základní syntax Jazyk Výroková logika je logikou
VíceDatabázové systémy. - SQL * definice dat * aktualizace * pohledy. Tomáš Skopal
Databázové systémy - SQL * definice dat * aktualizace * pohledy Tomáš Skopal Osnova přednášky definice dat definice (schémat) tabulek a integritních omezení CREATE TABLE změna definice schématu ALTER TABLE
VíceVýroková a predikátová logika - XIII
Výroková a predikátová logika - XIII Petr Gregor KTIML MFF UK ZS 2013/2014 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - XIII ZS 2013/2014 1 / 13 Úvod Algoritmická (ne)rozhodnutelnost Které
VíceVýroková a predikátová logika - XI
Výroková a predikátová logika - XI Petr Gregor KTIML MFF UK ZS 2014/2015 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - XI ZS 2014/2015 1 / 21 Další dokazovací systémy PL Hilbertovský kalkul
Více