310 likes | 470 Views
N DBI006 - Dotazovací jazyky II. Jaroslav Pokorný a Peter Vojtáš LS 200 8 /0 9. N DB I 0 0 6 – Dotazovací jazyky II. Herbrandovské modely, (potenciálně) nekonečné, s funkčními symboly. Peter Vojtáš. Herbrandovské struktury - motivace. Reprezentace dat,
E N D
NDBI006 - Dotazovací jazyky II Jaroslav Pokorný a Peter Vojtáš LS 2008/09
NDBI006 – Dotazovací jazyky II Herbrandovské modely, (potenciálně) nekonečné,s funkčními symboly Peter Vojtáš Herbrandovské modely
Herbrandovské struktury - motivace Reprezentace dat, Herbrandovo universum 4, s(s(s(s(0)))), čtyři, (100)2 … ? 4+4= +(4, 4) = 8 = 2+6 (=meta rovnost, = symbol jazyka) Každý prvek má (?)jedinečné jméno, aktuální doména Abram Abrahám, Rodham Clinton, … Herbrandova báze 4+4 = 8, 8 > s(s(s(s(0)))), Rozvrh(Kód lístku, Název předmětu, Učitelé, Čas, Učebna, Délka, Studenti) Rozvrh(07bNDBI006p1, DJ II, JP PV, St 9:00, S4, 90, N.I.4.I2.DS) 07bNDBI006p1 je strukturovaný údaj, (DBI006, NDBI006, 08bNDBI006p1) N.I.4.I2.DS je vizuální podoba pro Druh:N, Program:I, Ročník:4, Obor:Kombinace:I2, Specializace:DS Herbrandovské modely
Herbrandovské struktury - motivace Strukturovaná data – konečná – (potenciálně) nekonečná – dynamicky se zvětšují Rekurze– v predikátech (předek, šéf, „next stop“ , … ) – ve funkčních symbolech (funkcionální jazyky) Data – senzory, analogová, metrická, multidimenzionální – jazyk analýzy, geometrie (funkční symboly) - symbolická, lidmi vytvořená (funkce dává šéfa, předka,.. vícenásobné kódování, pointery, stavy výpočtu při verifikaci, transformace např. XSLT, linky na webu, …) rekurze + funkce – nový pohled na Herbrandovské struktury věta o pevném bodu – důkaz používal konečnost adom … Herbrandovské modely
Herbrandovské struktury - motivace Dotaz-odpovědi: vypočítané správné neúplné nekorektní Správné – anotované lidmi – korpus předem / následně - jeden/vícero anotátorů - pravdivé v modelu (logika,╞) Vypočítané- datalog. výpočet ~ důkaz, ├ s OWA, CWA - stačí jen aktuální doména – Herbrandovy modely - funkční symboly – strukturovaná data (např. XML) Herbrandovské modely
Matematika versus Informatika (NMAI070) Reálný svět metajazyk Příklad Problém jazyk definice věta důkaz T├ struktury splňování axiomy M ╞T , metoda, implementace data, experimenty Reálný svět Přínos řešení Herbrandovské modely
Matematika versus Informatika (NMAI070) Reálný svět metajazyk Příklad Problém jazyk definice věta důkaz T├ struktury splňování axiomy M ╞T , metoda, implementace data, experimenty Reálný svět Přínos řešení Herbrandovské modely
Matematika versus Informatika (NMAI070) Reálný svět metajazyk Příklad Problém jazyk definice věta důkaz T├ struktury splňování axiomy M ╞T , metoda, implementace data, experimenty Reálný svět Přínos řešení Herbrandovské modely
Matematika versus Informatika (NMAI070) Reálný svět metajazyk Příklad Problém jazyk definice věta důkaz T├ struktury splňování axiomy M ╞T , metoda, implementace data, experimenty Reálný svět Přínos řešení Herbrandovské modely
Predikátový počet prvního řádu – jazyk L L - LF funkční, LP predikátové symboly, LC konstanty, … Netypovaný, arita: LPULF N+, syntaktické objekty - termy f(c1, …,cn, x1, …,xm), formule p(f1(cx),…),, &, v, , , … M struktura(interpretace) jazyka L (možný svět) sestává z: M – nosná množina, fM : Mar(f) M (interpretace funkčního symbolu f ve struktuře M), cM M(interpretace konstantního symbolu c ve struktuře M), pMMar(p)(interpretace predikátového symbolu p ve struktuře M), M ╞ pravdivost, splňování, (sémantický důsledek), … jazyk termy, formule struktury splňování axiomy … Herbrandovské modely
Herbrandovská struktura jazyka L L- LF funkční, LP predikátové symboly, LC konstanty, … HHerbrandovská struktura jazyka, sestává z H. univerza KTL = { množina konstantních termů jazyka L, např. f(t1,…,tar(f))} fL:(KTL)ar(f) KTLdefinováno fixně, fL(t1,…,tar(f)) = f(t1,…,tar(f)) cL = c KTLdefinováno fixně (c je konstantní term), Herbrandovské universum UL´= {KTL, fL…, cL …} a pH(KTL)ar(p) v interpretaci predikátů se můžou H. struktury lišit H = {UL, pH …}, H ╞ definováno jako v klasické logice Obecné struktury jazyka mají více stupňů volnosti, H jen jeden Herbrandovské modely
Alternativní reprezentace Herbrand. struktur H= KTL , fL…, cL…, pH…, H ╞ definováno klasicky, H ╞ p(t1,…,tar(p)) iff (t1,…,tar(p)) pH(KTL)ar(p) , alternativa BL = p(t1,…,tar(p)): p LP , ti KTL Herbrandova báze pak UL´= {KTL, fL…, cL …} je fixní, místo interpretací každého z predikátů jednotlivě vyberu IHBL ¨ a alternativní Herbrandovská struktura jazyka IH = KTL, fL…, cL …, IH IH╞ p(t1,…,tar(p)) iff p(t1,…,tar(p)) IH, přechod H IH Hje jednoznačný a zachovává ╞ Herbrandovské modely
Alternativní reprezentace Herbrand. struktur Typovaný jazyk, A atributy, LCA konstanty typu A A Arita ar: LPULFA<,přiřadí konečný typ z atributů BLtypovaný BL netypovaný KNIHA(‘Úvod do DBS’, ‘Pokorný’) ?KNIHA(‘Úvod do DBS’, ‘Úvod do DBS’) LETADLA(PRG, CDG, 0715, 0905)?LETADLA(PRG, CDG, LHR, 0905) SPOJE(PRG, NARITA, 0715, 0605+)?SPOJE(PRG, 0905, 0715, 0605) Arita ~ schemaA = Letiště, Čas, Název, Osoba LcLetiště = PRG, CDG, LHR, … jiné než LcMěsto = Praha, Prague, Paříž, Paris, London, Londýn, … Herbrandova struktura „neví“, že Praha = Prague = PRG, 4+4=8, … Podobně další příklady z přednášek DJII - F(Oldřich, Pavel), M(Oldřich), S(Pavel,Veronika), B(Pavel,Jaroslav), C(Eva, Jana), PRACUJE_PRO(C,D), POD_NAD(C,E), NUDNÝ(C), ZAJÍMAVÝ(D) Herbrandovské modely
Definitní Datalogovské programy Definitní Datalogovské programy P sestávají z pravidel typu (x1,…,xn)H(t1, …,tar(H)) B1(t11, …,t1ar(B1)), …, Bn(tn1, …,tnar(B1)) pro která platí podmínky ze slidů JP (nebo bez nich – logické programy). Pro většinu následujících tvrzení, stačí jenom předpokládat, že všechny atomy v pravidlech jsou pozitivní (ostatní podmínky nepotřebujeme). Pokud LF = , adom(L) = KTL Pokud LF, budeme používat označení z Herbrandovských bází Herbrandovské modely
Herbrandovské modely definitních programů Někdy místoH , BL , …jestližeLje jazykem (Datalogovského) programu P píšeme H, BP- Herbrandovská báze programu P , Struktura BPkdyž I = BP(vsechny tabulky jsou „plné“) Pozorování. Pro definitní datalogovský program P platí 1. BP ╞ P 2. Nechť Mi BP jsou (Herbrandovské) modely programu P ,pak Mi╞ P 3. Průnik všech Herbrandovských modelů definitního Datalogovského programu P je nejmenší Herbrandovský model programu P, (označme MP BP ) Herbrandovské modely
Herbrandovské modely definitních programů Důkaz (1. ostatní analogicky). Definitní programy nemají v těle negaci, pravidla (x1,…,xn)H(t1, …,tar(H)) B1(t11, …,t1ar(B1)), …, Bn(tn1, …,tnar(B1)) jsou univezálně kvantifikována, pro každé zobrazení e: Var MP je t[e] MP , a tedy konstantní term, Důležité, pro herbrandovské struktury je ohodnocení proměnných prvky H totéž jako substituce konstatních termů Pak, splnitelnost I╞ p(t1[e],…,tar(p[e]) iff p(t1[e],…,tar(p[e]) I BP Pro Datalogovské pravidlo (s KT) to znamená že v I platí, pokud z B1(t11, …,t1ar(B1)), …, Bn(tn1, …,tnar(B1)) I plyne H(t1, …,tar(H)) I, což je pro I=BP triviální . Qed. Herbrandovské modely
Herbrandovské modely definitních programů Věta. Nechť P je definitní Datalogovský program, N (obecně ne-Herbrandovská) struktura jazyka programu P taková, že N ╞ P , pak existuje Herbrandovská struktura IN BP taková, že IN╞ P . Důkaz. Definujme p(t1,…,tar(p) IN když (tN1,…,tNar(p) pN , definice je korektní.Mějme pravidlo programu Ps konst. termy, H(t1, …,tar(H)) B1(t11, …,t1ar(B1)), …, Bn(tn1, …,tnar(B1)) a nechť B1(t11, …,t1ar(B1)), …, Bn(tn1, …,tnar(B1)) IN , z definice ((ti1)N, …,(tiar(Bi))N) (Bi)N a jelikož N je modelem programu P platí ((t1)N, …,(tar(H))N) (H)N , opět z definice H(t1, …,tar(H)) INQed. Herbrandovské modely
Herbrandovské modely definitních programů Věta. Nechť P je definitní Datalogovský program. Pak MP = {A BP: A je logický důsledek programuP}. Důkaz. () Nechť A BP(konstantní atom) a platí P╞ A, tedy pro každé N╞P platí N╞ A, speciélně pro každé I BP jež je modelem P platí I╞ A, tedy A I, A MP () Sporem. Nechť A je konstatní atom a platí ve všech Herbrand. Strukturách, a nechť N je model P ve kterém neplatí A, máme tedy N╞A Z předešlého víme že existuje IN BP , model P, takový, že p(t1,…,tar(p) IN (tN1,…,tNar(p) pN Tedy A IN , spor, Qed. Herbrandovské modely
Produkční operátor Herbrandovské modely
Produkční operátor- poznámky • Na předešlém slidu. • A (implikace s prázdnym tělem) se chápe • v splňování jako A true (tedy je pravdivá jen když A je • pravdivé) • 2. v definici produkčního operátoru jako • A {} (zde {} je prázdnámnožina) a podmínka • {} I je tedysplňena vždy • 3. v procedurálním chápaní • implikace A A1, …, An lzechápat tak, že procedura • A ke svému splňení volá procedury A1, …, An (pořadí se může • měnit) a odevzdají A vazby při nichž musí být úspěšná, když • tedy A „nic nevolá“ musí být uspěšná tak jak je napsaná Herbrandovské modely
Tarského věta o fixpointu Herbrandovské modely
Tarského věta o fixpointu – foto1 tabule - důkaz Herbrandovské modely
Tarského věta o fixpointu – foto2 tabule - nu Herbrandovské modely
Vypočítatelnost minimálního fixpointu Herbrandovské modely
Vypočítatelnost minimálního fixpointu Herbrandovské modely
Příklady Herbrandovské modely
Příklady - poznámka V přešlém (a dalších příkladech) a, b, … - písmena ze začátku abecedy označují konstanty x, y, … - písmena z konce abecedy označují proměnné p, q, r, … - označují predikáty, arita daná značením f, g, h … - označují funkční symboly Herbrandovské modely
Příklady Herbrandovské modely
Příklady Herbrandovské modely
Osobní závěr Jacques Herbrand, 1908–31, nehoda, asi zde. Herbrandův/Herbrandovský důkaz Goedelovy věty, Každá konzistentní … teorie má model Model „postaven“ z prvků jazyka Život, kariéra, hory, … Herbrandovské modely