5.3. Logika a relációkhoz

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "5.3. Logika a relációkhoz"

Átírás

1 Algebrai és logikai lekérdező nyelvek! feladat. Az egyik dolog, amit az eredeti alfejezetben definiált vetítési művelettel szemben elérhetünk a kiterjesztett vetítési művelet segítségével, hogy megduplázhassunk oszlopokat. Például, ha R(A, B) egy reláció, akkor π A,A (R) létrehoz egy (a,a) sort minden R-beli (a,b) sorra. Elvégezhető-e ez a művelet a klasszikus relációs algebra 2.4. alfejezetben leírt műveleteinek segítségével? Indokolja válaszát Logika a relációkhoz Az algebrán alapuló absztrakt lekérdező nyelvek alternatívájaként logikai forma is használható a lekérdezések leírására. A logikai lekérdezések nyelve a Datalog ( database logic ), amely if-then szabályokat tartalmaz. Minden szabály azt az elvet fejezi ki, hogy az egyes relációkban a sorok bizonyos kombinációjából következtethetünk arra, hogy valamilyen másik sornak szerepelnie kell valamilyen másik relációban vagy egy lekérdezés eredményében Predikátumok és atomok Datalogban a relációkat predikátumokkal reprezentáljuk. Minden predikátum rögzített számú argumentummal rendelkezik és egy predikátumot, amelyet az argumentumai követnek, atomnak nevezünk. Az atomok szintaxisa ugyanolyan, mint egy függvényhívásé a hagyományos programozási nyelvekben; például P(x 1,x 2,...,x n ) egy atom, amely tartalmazza a P predikátumot az x 1,x 2,...,x n argumentumokkal. Egy predikátum tulajdonképpen egy függvénynek a neve, ami logikai értékkel tér vissza. Ha R egy reláció valamilyen rögzített sorrendben lévő n argumentummal, akkor R-et használhatjuk, mint erre a relációra hivatkozó predikátumnevet. Az R(a 1,a 2,...,a n ) atom értéke IGAZ (TRUE), ha (a 1,a 2,...,a n ) az R egy sora. Egyébként az értéke HAMIS (FALSE). Notice that a relation defined by a predicate can be assumed to be a set. In Section 5.3.6, we shall discuss how it is possible to extend Datalog to bags. However, outside that section, you should assume in connection with Datalog that relations are sets példa. Legyen R egy reláció A B Ekkor R(1,2) és R(3,4) is igaz. Viszont x és y bármilyen más értékére R(x,y) hamis. Egy predikátumnak lehetnek változói, valamint konstansai argumentumként. Ha egy atomnak egy vagy több argumentuma változó, akkor az egy logikai

2 5.3. Logika a relációkhoz 237 visszatérési értékű függvény, amely ezen változókra vett értékekre IGAZ vagy HAMIS értékkel tér vissza példa. Ha R a példában használt predikátum, akkor R(x, y) egy függvény, amely azt fejezi ki bármely x-re és y-ra, hogy (x,y) az R reláció egy sora-e vagy sem. Az R jelen előfordulására a példában R(x,y) IGAZ értékkel tér vissza, ha 1. x = 1 és y = 2, illetve 2. x = 3 és y = 4; és HAMIS-sal egyébként. Egy másik példa az R(1, z) atom, amely IGAZ-zal tér vissza, ha z = 2, és HAMIS-sal egyébként Aritmetikai atomok A Datalogban létezik egy másik fajta fontos atom, az aritmetikai atom. Ez a fajta atom tulajdonképpen két aritmetikai kifejezés összehasonlítása, mint például x < y vagy x + 1 y + 4 z. A kiemelés kedvéért az alfejezetben bevezetett atomokat relációs atomok nak nevezzük (mindkettőt atomok -nak nevezzük). Figyeljük meg, hogy mind az aritmetikai és mind a relációs atomok argumentumaikban kaphatnak értéket, ezek az atomban előforduló változók értékei, és az atomok logikai visszatérési értékkel rendelkeznek. Valójában az aritmetikai összehasonlítások, mint a < vagy tulajdonképpen olyan relációk, amelyek tartalmazzák az összes igaz párt. Azaz a < relációt úgy képzelhetjük el, mint amely tartalmaz minden olyan sort mint például az (1,2) vagy a ( 1,5, 65,4), amelynek az első komponense kisebb a másodiknál. Ne feledjük, hogy az adatbázis-relációk mindig végesek és általában időről időre változnak. Ezzel ellentétben az olyan aritmetikai összehasonlításból származó relációk, mint például a <, végtelenek és tartalmuk is változatlan Datalog-szabályok és lekérdezések A Datalogban az 5.2. alfejezetben bemutatott klasszikus relációs algebrához hasonló műveletek leírása szabályok kal történik, amelyek a következőkből épülnek fel: 1. Egy fejnek nevezett relációs atom. 2. Ezt követi a szimbólum, amelyet gyakran if -nek ( ha ) olvasunk ki. 3. Ez után következik a törzs, amely egy vagy több részcélnak nevezett atomból áll. A részcélok lehetnek relációs vagy aritmetikai atomok. A részcélokat AND ( és ) szócskával kapcsoljuk össze, és a részcélok elé, ha szükséges, kitehetjük a tagadást jelentő NOT logikai műveletet is.

3 Algebrai és logikai lekérdező nyelvek példa. A következő Datalog-szabály: HosszúFilm(c,é) Filmek(c,é,h,sz???,s,p) AND h 100 a hosszú filmek halmazát határozza meg (a legalább 100 percnél hosszabbakat). A fenti szabályban a standard Film relációnkra hivatkozunk, amelynek sémája a következő: Filmek(cím, év, hossz, színes (nem műfaj???), stúdiónév, producerazon) A szabály feje a HosszúFilm(c, é) atom. A szabály törzse két részcélból áll: 1. Az első részcél a Filmek nevű predikátumból, mégpedig a Filmek reláció hat attribútumának megfelelő hat argumentumból áll. Az argumentumok különböző nevű változók: c a cím komponens, é az év komponens, h a hossz komponens stb. Ezt a részcélt tekinthetjük úgy is, mint a Filmek reláció aktuális előfordulásának (c, é, h, sz, s, p) sorát. Pontosabban fogalmazva, a Filmek(c, é, h, sz, s, p) akkor igaz, ha a hat darab változó értéke megegyezik a Filmek reláció egy sorának hat komponensével. 2. A második részcél, l 100, akkor IGAZ, ha a Filmek reláció megfelelő sorában a hossz komponens értéke legalább 100. Az egész szabályt pedig a következőképpen tekinthetjük: a HosszúFilm(c, é) akkor IGAZ, ha létezik a Filmek relációnak egy olyan sora, amelyre teljesülnek a következők: a) A cím és év attribútumoknak megfelelő két első komponensértéke c és é. b) A hossz attribútumnak megfelelő harmadik komponens a h, értéke legalább 100. c) A negyedik, ötödik és hatodik komponensek értéke tetszőleges. Figyeljük meg, hogy ez a szabály ekvivalens a következő relációs algebrai megfeleltetésnek: HosszúFilm := π cím,év ( σhossz 100 (Filmek) ) a fenti megfeleltetés jobb oldala egy relációs algebrai kifejezés. Datalogban egy lekérdezés egy vagy több szabály együttese. Ha a szabály fej részében csak egy reláció van, akkor ezen reláció kiértékelése lesz a lekérdezés eredménye. Ekképpen az példában megfogalmazott lekérdezés eredménye a HosszúFilm reláció. Ha egynél több relációt tartalmaznak a szabályfejek, akkor ezen relációk egyike lesz a lekérdezés eredménye, míg a maradék az eredmény megfogalmazásában segít. Meg kell jelölnünk, hogy melyik reláció adja meg a lekérdezésre a választ. Ezt megtehetjük például úgy, hogy ennek a relációnak speciális nevet adunk, például azt, hogy Válasz.

4 5.3. Logika a relációkhoz 239 Név nélküli (anonymus) változók A Datalog-szabályokban gyakran találhatók olyan változók, amelyek csak egyszer szerepelnek az adott szabályban. Éppen ezért teljesen mindegy, hogy ezeknek a változóknak mi a nevük. A változó neve akkor fontos, ha a változó többször is megjelenik a szabályban, hiszen ekkor a változó második, illetve további előfordulásakor is tudnunk kell, hogy ugyanarról a változóról van-e szó. Ezért megegyezés szerint azokat a változókat, amelyek csak egyszer jelennek meg, jelölhetjük egy aláhúzás jellel. Tehát egy atomban használhatunk _ jelet argumentumként. Az _ többszöri előfordulása különböző változókra utal, soha nem utalhat ugyanarra a változóra. Például, az példában használt szabály felírható a következő módon: HosszúFilm(c,é) Filmek(c,é,h,_,_,_) AND h 100 Az sz, s, p változók csak egyszer szerepelnek a szabályban, ezért ezek helyettesíthetők az aláhúzás jellel. A többi változót nem helyettesíthetjük, hiszen mindegyik kétszer szerepel a szabályban A Datalog-szabályok jelentése Az példa útmutatásul szolgált a Datalog-szabályok jelentésére vonatkozóan. Ha pontosabb képet akarunk kapni, képzeljük el, hogy a szabályban szereplő változók felveszik az összes lehetséges értéket. Amikor a változók értékei igazzá teszik az összes részcélt, akkor megkapjuk, hogy mi a fej értéke az aktuális változókra, és hozzáadjuk a kapott sort a fejben szereplő predikátumnak megfelelő relációhoz. Képzeljük el például, hogy az példának mind a hat változója felveszi az összes lehetséges értéket. Az összes részcél csak akkor lehet igaz, ha a (c,é,h,sz,s,p) értékek a megadott sorrendben a Filmek reláció egy sorát képezik. Sőt, mivel a h 100 részcélnak is teljesülni kell, ezért a keresett sorban a hossz komponensnek megfelelő h változó értéke legalább 100 kell legyen. Ha ilyen értékkombinációt találunk, akkor a (c, é) sort betesszük a fejnek megfelelő HosszúFilm relációba. Ha biztosítani szeretnénk, hogy egy szabály kiértékelésekor kapott reláció véges legyen, illetve ha értelmezni szeretnénk az aritmetikai és a negált részcélok at is, akkor bizonyos megszorításokat kell tennünk a változókra nézve. (Negált részcélnak nevezzük azt a részcélt, amely előtt NOT szerepel.) Az ilyen megszorítást biztonságossági feltétel nek nevezzük, és a következőképpen fogalmazhatjuk meg: A szabályban szereplő valamennyi változónak szerepelnie kell valamely nem negált, relációs részcélban is.

5 Algebrai és logikai lekérdező nyelvek Ez azt jelenti, hogy a fejben, a negált relációs részcélokban és az aritmetikai részcélokban szereplő valamennyi változónak szerepelnie kell valamely nem negált relációs részcélban is példa. Tekintsük az példában megfogalmazott szabályt: HosszúFilm(c,é) Filmek(c,é,h,_,_,_) AND h 100 Az első részcél egy nem negált relációs részcél, és ráadásul tartalmazza a szabályban szereplő összes változót. A fejben szereplő két változó (c, é) szerepel az első részcél törzsében is. Ehhez hasonlóan, az aritmetikai részcélban szereplő h változó pedig megjelenik az első részcélban is példa. Az alábbi szabály három dologban is megsérti a biztonságossági feltételt: P(x,y) Q(x,z) AND NOT R(w,x,z) AND x<y 1. Az y változó szerepel a fejben, de nem jelenik meg egyetlen nem negált relációs részcélban sem. Figyeljük meg, hogy az y ugyan megjelenik az x < y aritmetikai részcélban, de ettől a lehetséges y értékek halmaza nem lesz véges. Ha találunk a w, x és z változókhoz olyan a, b és c értékeket, amelyekre az első két részcél teljesül, a fejhez rendelt P relációhoz még mindig végtelen sok olyan (b,d) sor lesz hozzáadható, amelyre igaz, hogy d > b. 2. A w változó megjelenik egy negált relációs részcélban, viszont nem jelenik meg egyetlen nem negált relációs részcélban sem. 3. Az y változó megjelenik egy aritmetikai részcélban, viszont nem jelenik meg egyetlen nem negált relációs részcélban sem. Látható tehát, hogy ez a szabály nem biztonságos, éppen ezért Datalogban nem használható. A szabályok jelentését más módon is meghatározhatjuk. Ahelyett, hogy vennénk a változók összes lehetséges értékét, a nem negált relációs részcélok relációinak soraiból álló halmazt vegyük csak. A sorok olyan megfeleltetését, amely valamennyi nem negált részcélra nézve ugyanazt az értéket felelteti meg az ugyanolyan nevű változóknak, konzisztens megfeleltetésnek nevezzük. Figyeljük meg, hogy a biztonságosság miatt konzisztens megfeleltetéskor minden egyes változóhoz egy érték tartozik. Minden egyes konzisztens megfeleltetéskor kiértékeljük a negált relációs részcélokat és az aritmetikai részcélokat, hogy megbizonyosodhassunk arról, hogy a változókhoz hozzárendelt értékek kielégítik-e ezeket a részcélokat. Ne feledjük, hogy egy negált részcél akkor igaz, ha a részcél atomja hamis. Ha mindegyik részcél igaz, akkor vesszük a fejben szereplő változók értékeiből álló sort, és ezt a sort hozzáadjuk a fej predikátumához rendelt relációhoz.

6 5.3. Logika a relációkhoz példa. Tekintsük a következő Datalog-szabályt: P(x,y) Q(x,z) AND R(z,y) AND NOT Q(x,y) Legyen a Q relációnak két sora, az (1,2) és az (1,3). Az R reláció sorai legyenek (2,3) és (3,1). Két nem negált relációs részcélunk van, a Q(x,z) és az R(z,y). Ezekhez a részcélokhoz vennünk kell a Q és R relációk sorainak összes lehetséges megfeleltetési kombinációját. Az 5.8. ábrán látható táblázat tartalmazza mind a négy lehetséges kombinációt. A Q(x,z) Az R(z,y) Konzisztens a Igaz a NOT Q(x,y) A fej sorai sorai megfeleltetés? részcél? eredménye 1) (1, 2) (2, 3) Igen Nem 2) (1, 2) (3, 1) Nem; z = 2, 3 Irreleváns 3) (1, 3) (2, 3) Nem; z = 3, 2 Irreleváns 4) (1, 3) (3, 1) Igen Igen P(1, 1) 5.8. ábra. A sorok összes lehetséges megfeleltetése a Q(x, z) és R(z, y) részcélokhoz Az 5.8. ábrán látható második és harmadik megfeleltetés nem konzisztens, mert mindegyik két különböző értéket feleltet meg a z változónak. Ezért ezzel a két megfeleltetéssel nem kell tovább foglalkoznunk. Az első megfeleltetésben a Q(x, z) részcélhoz az (1, 2) sort feleltettük meg, az R(z, y) részcélhoz pedig a (2, 3) sort. Ez a megfeleltetés konzisztens, hiszen akármelyik változót tekintjük, a megfeleltetés során egyetlen értéket kapott. Az x változó az 1, az y változó a 3 és a z változó a 2 értéket kapta. Ekképpen hozzákezdhetünk a nem negált, relációs részcéloktól különböző részcélok vizsgálatához. Csak egyetlen ilyen részcélunk van, a NOT Q(x,y). A változók értékét behelyettesítve a NOT Q(1,3) kifejezést kapjuk, ami hamis, hiszen az (1,3) sor benne van a Q relációban. Tehát ez a részcél hamis és így nem keletkezett olyan sor, amelyre a fej igaz lenne (1). Az utolsó megfeleltetés (4) szintén konzisztens, az x, y, z változók az 1, 1, 3 értékeket kapták. A NOT Q(x,y) részcél ezúttal NOT Q(1,1) kifejezéssé alakul. Mivel az (1,1) nem sora a Q relációnak, tehát ez a részcél ezúttal igaz. Ezután a fejben szereplő változókba behelyettesítjük a megfelelő értékeket, és a P(1, 1) kifejezést kapjuk. Az (1, 1) sort hozzáadjuk a P predikátumhoz rendelt relációhoz. Ily módon a sorok összes lehetséges megfeleltetését megvizsgáltuk és a P relációba csak ez az egy sor került be Extenzionális és intenzionális predikátumok Ajánlatos különbséget tennünk az alábbi kétfajta predikátum között: extenzionális predikátumok, amelyekhez rendelt relációk megtalálhatók az adatbázisban, és

7 Algebrai és logikai lekérdező nyelvek intenzionális predikátumok, amelyekhez rendelt relációkat egy vagy több Datalog-szabály kiértékelése alapján kapjuk meg. Ez a különbség ugyanolyan, mint a relációs algebrai kifejezések operandusai és a relációs algebrai kifejezéssel számított relációk közötti eltérés. A relációs algebrai kifejezések operandusai extenzionálisak, mivel a hozzájuk tartozó relációk aktuális előfordulásaival (extenzióival) vannak definiálva. A relációs algebrai kifejezéssel számított relációk pedig legyenek akár néhány részkifejezéshez tartozó végleges vagy köztes eredmények intenzionálisak, hiszen tulajdonképpen a program írója hozta létre őket. Datalog-szabályok esetén az extenzionális, illetve intenzionális predikátumokhoz rendelt relációkat extenzionális, illetve intenzionális relációknak nevezzük. Az intenzionális predikátumokra, illetve relációkra történő hivatkozás esetén használatos az IDB rövidítés. (Ez a rövidítés az intensional database angol kifejezésből ered.) Az EDB rövidítést az extenzionális predikátumok, illetve relációk esetén használjuk. (Az EDB az extensional database angol kifejezésből ered.) Így az példában a Filmek reláció egy EDB-reláció és a Filmek predikátum szintén EDB-predikátum. A HosszúFilm reláció és a HosszúFilm predikátum pedig egyaránt intenzionális. Egy EDB-predikátum soha nem jelenhet meg egy szabály fejében sem, csak a törzsében. Az IDB-predikátumok szerepelhetnek a szabály fejében, a törzsében vagy mindkettőben egyaránt. Az is megszokott, hogy több szabály fejében is szerepeljen ugyanaz a predikátum. Az példában két reláció egyesítését számoljuk ki ily módon. Több intenzionális predikátum használatával az EDB-relációkból egyre bonyolultabb kifejezéseket építhetünk fel. Ez a folyamat hasonló a relációs algebrai kifejezések operátorokkal történő felépítéséhez Multihalmazokra vonatkozó Datalog-szabályok A Datalog magában foglal egy halmazlogikát. Viszont amíg nincs negált relációs részcél, addig a Datalog-szabályok kiértékelésének elve elfogadható multihalmazokra nézve is, ha a relációk halmazok. Fogalmi szinten könnyebben használható a Datalog-szabályok kiértékelésének második megközelítése (amelyet az résznél mutattunk be), amikor a relációk multihalmazok. Emlékeztetőként, ezen technika magában foglalta az összes nem negált relációs részcél vizsgálatát, illetve a reláció összes sorának a megfelelő részcél predikátumába történő behelyettesítését. Ha a részcélokból kiválasztott sorok minden változóra konzisztens értéket adnak és az aritmetikai részcélok is teljesülnek 1, akkor megnézhetjük, hogy ezen helyettesítési értékekre a fej mit ad. Az eredménysorokat hozzáadjuk a fejhez tartozó relációhoz. 1 Megjegyezve, hogy a szabályban nem szerepelhet negált, relációs részcél. Ugyanis a multihalmazos modellben nincs világosan definiálva a negált, relációs részcélt tartalmazó Datalogszabályok jelentése.

8 5.3. Logika a relációkhoz 243 Mivel most multihalmazokkal foglalkozunk, most nem kell a fejben szereplő duplikátumokat megszüntetnünk. Sőt, mivel az összes részcélra a sorok minden lehetséges kombinációját figyelembe vesszük, ezért egy sor n-szeres előfordulását egy részcélhoz tartozó relációban n-szer tekintettük a részcél sorának a sorok összes kombinációjával együtt a többi részcélra nézve példa. Tekintsük az alábbi szabályt: ahol R(A,B) reláció sorai: és S(B,C) sorai: H(x,z) R(x,y) AND S(y,z) A B B C Az egyetlen eset, amikor konzisztens sor helyettesítését kapjuk a részcélokra (egy helyettesítés, amelyben y értéke minden részcélra ugyanaz), amikor az első részcél helyettesítése az R-ből származó (1, 2) sor, a második részcél helyettesítése pedig az S-ből származó (2,3) sor. Mivel (1,2) kétszer fordul elő R-ben és (2, 3) pedig egyszer S-ben, így a soroknak két helyettesítését kapjuk, melyek az x = 1, y = 2, z = 3 változó helyettesítést szolgáltatják. A fejhez tartozó (x,y) sor minden behelyettesítésre (1,3). Az (1,3) sor tehát kétszer fordul elő a fejhez tartozó H relációban, és más sora nem is lesz. Azaz az alábbi reláció lesz a szabályból kapott fejhez tartozó reláció: Általánosan úgy lehet megfogalmazni, hogy ha az (1, 2) sor n-szer fordul elő R-ben és a (2,3) sor pedig m-szer fordul elő S-ben, akkor az (1,3) sor nm-szer fordul elő a H-ban. Ha egy relációt több szabály ír le, akkor az eredmény a szabályok által előállított összes sorból képzett multihalmazok uniója példa. Tekintsük a H relációt, amelyet két szabállyal definiálunk: H(x,y) S(x,y) AND x>1 H(x,y) S(x,y) AND y<5

9 Algebrai és logikai lekérdező nyelvek ahol S(B, C) reláció olyan, mint az példában; azaz S = {(2,3), (4,5), (4,5)}. Az első szabály S mindhárom sorát H-ba teszi, mivel mindegyik sor első komponense nagyobb 1-nél. A második szabály alapján csak a (2,3) sor kerül be H-ba, mivel (4,5)-re nem teljesül, hogy y < 5. Azaz a H eredményreláció két darab (2,3), illetve két darab (4,5) sort tartalmaz Feladatok feladat. Írjuk fel Datalogban a feladat valamennyi lekérdezését. Kizárólag biztonságos szabályokat használjunk. A bonyolultabb relációs algebrai részkifejezések megfogalmazásához használjunk IDB-predikátumokat feladat. Írjuk fel Datalogban a feladat valamennyi lekérdezését. Itt is használhatunk IDB-predikátumokat, és most is kizárólag biztonságos szabályokkal dolgozzunk.!! feladat. Ahhoz, hogy a fejhez rendelt reláció véges legyen abban az esetben, ha mindegyik részcél predikátumához rendelt reláció véges, a biztonságos Datalog-szabályokra adott feltétel elégséges, viszont túl erős. Adjunk példát olyan Datalog-szabályra, amely nem biztonságos és mégis teljesíti, hogy a relációs predikátumokhoz véges relációkat hozzárendelve a fejhez rendelt reláció is véges A relációs algebra és a Datalog A 2.4. alfejezetben szereplő relációs algebrai operátorok mindegyike kifejezhető egy vagy több Datalog-szabály segítségével. Ebben az alfejezetben valamennyi operátort egyenként megvizsgáljuk. Meg kell vizsgálnunk, hogyan kombinálhatjuk a Datalog-szabályokat összetettebb algebrai kifejezések leírására. Az is igaz lesz, hogy bármely biztonságos Datalog-szabály kifejezhető lesz relációs algebrában is, habár mellőzni fogjuk ennek a bizonyítását. Ezek ellenére a Dataloglekérdezések nagyobb kifejezőerővel bírnak, mint a relációs algebra, ha megengedjük néhány szabály kölcsönhatását is. Ebben az esetben kifejezhetjük a rekurziót is, amelyre a relációs algebrában nem volt lehetőségünk. (Lásd az példánál.) Boole-műveletek A relációs algebra Boole-műveletei (az unió, a metszet és a halmazkülönbség) könnyen kifejezhetők Datalogban. Használjuk a következő három módszert a leíráshoz. Az R és az S relációkat ugyanannyi attribútummal rendelkezőnek tekintjük, számuk legyen n. A szükséges szabályok leírását minden esetben a Válasz nevű fejpredikátum használatával oldjuk meg. Tegyük ezt annak ellenére, hogy bármilyen nevet használhatnánk az eredmény leírására, és, hogy különböző műveletek eredményéhez különböző predikátumokat kellene választanunk.

Relációs algebra 1.rész alapok

Relációs algebra 1.rész alapok Relációs algebra 1.rész alapok Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 Lekérdezések a relációs modellben 2.4. Egy algebrai lekérdező nyelv, relációs

Részletesebben

ABR ( Adatbázisrendszerek) 1. Előadás : Műveletek a relációs medellben

ABR ( Adatbázisrendszerek) 1. Előadás : Műveletek a relációs medellben Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) ABR ( Adatbázisrendszerek) 1. Előadás : Műveletek a relációs medellben 1.0 Bevezetés. A relációs adatmodell. 1.1 Relációs algebra 1.2 Műveletek a relációs

Részletesebben

ABR ( Adatbázisrendszerek) 2. Előadás : Műveletek a relációs modellben

ABR ( Adatbázisrendszerek) 2. Előadás : Műveletek a relációs modellben ABR ( Adatbázisrendszerek) 2. Előadás : Műveletek a relációs modellben 2.2 Műveletek a relációs modellben 2.2.1 Relációra vonatkozó megszorítások 2.2.2 Multihalmazon értelmezett műveletek 2.2.3 A relációs

Részletesebben

Databases 1. Relációs algebra és nemrekurzív Datalog

Databases 1. Relációs algebra és nemrekurzív Datalog Databases 1 Relációs algebra és nemrekurzív Datalog Emlékeztetı: Biztonságos szabályok A rule is safe if: 1. Each distinguished variable, 2. Each variable in an arithmetic subgoal, and 3. Each variable

Részletesebben

ADATBÁZISOK ELMÉLETE 5. ELŐADÁS 3/22. Az F formula: ahol A, B attribútumok, c érték (konstans), θ {<, >, =,,, } Példa:

ADATBÁZISOK ELMÉLETE 5. ELŐADÁS 3/22. Az F formula: ahol A, B attribútumok, c érték (konstans), θ {<, >, =,,, } Példa: Adatbázisok elmélete 5. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu http://www.cs.bme.hu/ kiskat 2005 ADATBÁZISOK ELMÉLETE

Részletesebben

. Vegyük az R U 8 uniót, használjunk a leíráshoz két szabályt és n különbözo

. Vegyük az R U 8 uniót, használjunk a leíráshoz két szabályt és n különbözo 244 5. Algebrai és logikai lekérdez6 nyelvek f- 245 ahol az 8(B, C) reláció olyan, mint az 5.22. példában: 8 = {(2,3), (4,5), (4,5)}. Az elso szabály 8 mindhárom sorát H-ba teszi, mivel mindegyik sor elso

Részletesebben

ADATBÁZIS-KEZELÉS. Relációalgebra, 5NF

ADATBÁZIS-KEZELÉS. Relációalgebra, 5NF ADATBÁZIS-KEZELÉS Relációalgebra, 5NF ABSZTRAKT LEKÉRDEZŐ NYELVEK relációalgebra relációkalkulus rekord alapú tartomány alapú Relációalgebra a matematikai halmazelméleten alapuló lekérdező nyelv a lekérdezés

Részletesebben

Relációs algebra áttekintés és egy táblára vonatkozó lekérdezések

Relációs algebra áttekintés és egy táblára vonatkozó lekérdezések Relációs algebra áttekintés és egy táblára vonatkozó lekérdezések Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 2.4. Relációs algebra (áttekintés) 5.1.

Részletesebben

Lekérdezések az SQL-ben 1.rész

Lekérdezések az SQL-ben 1.rész Lekérdezések az SQL-ben 1.rész Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 6.1. Egyszerű (egy-relációs) lekérdezések az SQL-ben - Select-From-Where utasítás

Részletesebben

Lekérdezések az SQL-ben 1.rész

Lekérdezések az SQL-ben 1.rész Lekérdezések az SQL-ben 1.rész Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 6.1. Egyszerű (egy-relációs) lekérdezések az SQL-ben - Select-From-Where utasítás

Részletesebben

2.4. Egy algebrai lekérdező nyelv

2.4. Egy algebrai lekérdező nyelv 2.4. Egy algebrai lekérdező nyelv 39 2.4. Egy algebrai lekérdező nyelv Ebben a részben bevezetjük a relációs modell adatmmanipulációs részeit. Emlékezzünk, hogy az adatmodell nem csupán egy struktúra,

Részletesebben

Mveletek a relációs modellben. A felhasználónak szinte állandó jelleggel szüksége van az adatbázisban eltárolt adatok egy részére.

Mveletek a relációs modellben. A felhasználónak szinte állandó jelleggel szüksége van az adatbázisban eltárolt adatok egy részére. Mveletek a relációs modellben A felhasználónak szinte állandó jelleggel szüksége van az adatbázisban eltárolt adatok egy részére. Megfogalmaz egy kérést, amelyben leírja, milyen adatokra van szüksége,

Részletesebben

Adatbázis rendszerek 2. előadás. Relációs algebra

Adatbázis rendszerek 2. előadás. Relációs algebra Adatbázis rendszerek. előadás Relációs algebra Molnár Bence Szerkesztette: Koppányi Zoltán Bevezetés Relációs algebra általában A relációs algebra néhány tulajdonsága: Matematikailag jól definiált Halmazelméletből

Részletesebben

Adatbázis rendszerek 7. Matematikai rendszer amely foglal magában:

Adatbázis rendszerek 7. Matematikai rendszer amely foglal magában: Adatbázis Rendszerek Budapesti Műszaki és Gazdaságtudományi Egyetem Fotogrammetria és Térinformatika Tanszék 2011 Dr. Alhusain Othman oalhusain@gmail.com 7.1. Bevezetés 7.2. Klasszikus- és relációs- algebra

Részletesebben

Adatbázisok 1. Kósa Balázs gyakorlata alapján Készítette: Nagy Krisztián. 1. gyakorlat

Adatbázisok 1. Kósa Balázs gyakorlata alapján Készítette: Nagy Krisztián. 1. gyakorlat Adatbázisok 1. Kósa Balázs gyakorlata alapján Készítette: Nagy Krisztián 1. gyakorlat Relációs adatbázis Alap fogalmak (Forrás: http://digitus.itk.ppke.hu/~fodroczi/dbs/gyak2_1/ ) A relációs algebra egy

Részletesebben

Datalog: logikai alapú lekérdezı nyelv

Datalog: logikai alapú lekérdezı nyelv Datalog: logikai alapú lekérdezı nyelv Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 5.3. Logika a relációkhoz --atomi formulák: relációs formulák és aritmetikai

Részletesebben

Relációs adatmodell. Adatbázisok használata

Relációs adatmodell. Adatbázisok használata Relációs adatmodell Adatbázisok használata Mi is az adatmodell? Az adatmodell információ vagy adatok leírására szolgáló jelölés. A leírás részei: az adatok struktúrája. Az adatokon végezhető műveletek.

Részletesebben

Adatbázis rendszerek 2. előadás. Relációs algebra

Adatbázis rendszerek 2. előadás. Relációs algebra Adatbázis rendszerek 2. előadás Relációs algebra Molnár Bence Szerkesztette: Koppányi Zoltán Bevezetés Relációs algebra általában A relációs algebra néhány tulajdonsága: Matematikailag jól definiált Halmazelméletből

Részletesebben

Ellenőrző kérdések. 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t

Ellenőrző kérdések. 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t Ellenőrző kérdések 2. Kis dolgozat kérdései 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t 37. Ha t szintű indexet használunk,

Részletesebben

KOVÁCS BÉLA, MATEMATIKA I.

KOVÁCS BÉLA, MATEMATIKA I. KOVÁCS BÉLA, MATEmATIkA I. 4 IV. FÜGGVÉNYEk 1. LEkÉPEZÉSEk, függvények Definíció Legyen és két halmaz. Egy függvény -ből -ba egy olyan szabály, amely minden elemhez pontosan egy elemet rendel hozzá. Az

Részletesebben

Relációs algebra 1.rész

Relációs algebra 1.rész Relációs algebra 1.rész Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 Lekérdezések a relációs modellben 2.4. Egy algebrai lekérdező nyelv -- 01B_RelAlg1alap:

Részletesebben

SQL bevezetés. Select-From-Where záradékok Több relációt tartalmazó lekérdezések Alkérdések

SQL bevezetés. Select-From-Where záradékok Több relációt tartalmazó lekérdezések Alkérdések SQL bevezetés Select-From-Where záradékok Több relációt tartalmazó lekérdezések Alkérdések 1 Miért az SQL? Az SQL magas szintű programozási nyelv. A hogyan helyett azt mondjuk meg, hogy mit szeretnénk.

Részletesebben

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé.

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. HA 1 Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) HA 2 Halmazok HA 3 Megjegyzések A halmaz, az elem és az eleme fogalmakat nem definiáljuk, hanem alapfogalmaknak

Részletesebben

Adatbázis Rendszerek

Adatbázis Rendszerek Adatbázis Rendszerek Budapesti Műszaki és Gazdaságtudományi Egyetem Fotogrammetria és Térinformatika Tanszék 2010 Dr. Alhusain Othman oalhusain@gmail.com 1 7.1. Bevezetés 7.2. Klasszikus- és relációs-

Részletesebben

Datalog: logikai alapú lekérdezı nyelv

Datalog: logikai alapú lekérdezı nyelv Datalog: logikai alapú lekérdezı nyelv Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 5.4. Relációs algebra és nem-rekurzív biztonságos Datalog kifejező

Részletesebben

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 1

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 1 Halmazok 1 Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 2 A fejezet legfontosabb elemei Halmaz megadási módjai Halmazok közti műveletek (metszet,

Részletesebben

Diszkrét matematika II., 8. előadás. Vektorterek

Diszkrét matematika II., 8. előadás. Vektorterek 1 Diszkrét matematika II., 8. előadás Vektorterek Dr. Takách Géza NyME FMK Informatikai Intézet takach@inf.nyme.hu http://inf.nyme.hu/ takach/ 2007.??? Vektorterek Legyen T egy test (pl. R, Q, F p ). Definíció.

Részletesebben

Sor és oszlopkalkulus

Sor és oszlopkalkulus Adatbáziskezelés Sor és oszlopkalkulus Csima Judit BME, VIK, Számítástudományi és Információelméleti Tanszék 2017. szeptember 29. Csima Judit Adatbáziskezelés Sor és oszlopkalkulus 1 / 1 Sorkalkulus Formális

Részletesebben

Formális szemantika. Kifejezések szemantikája. Horpácsi Dániel ELTE Informatikai Kar

Formális szemantika. Kifejezések szemantikája. Horpácsi Dániel ELTE Informatikai Kar Formális szemantika Kifejezések szemantikája Horpácsi Dániel ELTE Informatikai Kar 2016-2017-2 Az előadás témája Egyszerű kifejezések formális szemantikája Az első lépés a programozási nyelvek szemantikájának

Részletesebben

Algebrai és logikai lekérdezo nyelvek

Algebrai és logikai lekérdezo nyelvek rr, I r 5. fejezet Algebrai és logikai lekérdezo nyelvek A jelen fejezet során a relációs adatbázisok modellezése helyett a programozásra fektetjük a hangsúlyt. A tárgyalást két absztrakt programozási

Részletesebben

3.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK)

3.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK) 3.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK) http://sila.hajas.elte.hu/ SQL SELECT - FROM WHERE Alkérdések - Összekapcsolások Tankönyv: 6.3. Alkérdések WHERE záradékban Alkérdések FROM záradékban

Részletesebben

Magas szintű adatmodellek Egyed/kapcsolat modell I.

Magas szintű adatmodellek Egyed/kapcsolat modell I. Magas szintű adatmodellek Egyed/kapcsolat modell I. Ullman-Widom: Adatbázisrendszerek. Alapvetés. 4.fejezet Magas szintű adatmodellek (4.1-4.3.fej.) (köv.héten folyt.köv. 4.4-4.6.fej.) Az adatbázis modellezés

Részletesebben

KOVÁCS BÉLA, MATEMATIKA I.

KOVÁCS BÉLA, MATEMATIKA I. KOVÁCS BÉLA MATEmATIkA I 6 VI KOmPLEX SZÁmOk 1 A komplex SZÁmOk HALmAZA A komplex számok olyan halmazt alkotnak amelyekben elvégezhető az összeadás és a szorzás azaz két komplex szám összege és szorzata

Részletesebben

Komputeralgebra rendszerek

Komputeralgebra rendszerek Komputeralgebra rendszerek III. Változók Czirbusz Sándor czirbusz@gmail.com Komputeralgebra Tanszék ELTE Informatika Kar 2009-2010 ősz Index I 1 Szimbolikus konstansok kezelés A konstansok Nevek levédése

Részletesebben

Adatbázisok elmélete 9. előadás

Adatbázisok elmélete 9. előadás Adatbázisok elmélete 9. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu http://www.cs.bme.hu/ kiskat 2004 ADATBÁZISOK ELMÉLETE

Részletesebben

Elsőrendű logika szintaktikája és szemantikája. Logika (3. gyakorlat) 0-adrendű szemantika 2009/10 II. félév 1 / 1

Elsőrendű logika szintaktikája és szemantikája. Logika (3. gyakorlat) 0-adrendű szemantika 2009/10 II. félév 1 / 1 Elsőrendű logika szintaktikája és szemantikája Logika és számításelmélet, 3. gyakorlat 2009/10 II. félév Logika (3. gyakorlat) 0-adrendű szemantika 2009/10 II. félév 1 / 1 Az elsőrendű logika Elemek egy

Részletesebben

A relációs algebra egy speciális algebra, amely néhány egyszerű, de hathatós. operandusok. Egy reláció megadható a nevével vagy közvetlenül, sorainak

A relációs algebra egy speciális algebra, amely néhány egyszerű, de hathatós. operandusok. Egy reláció megadható a nevével vagy közvetlenül, sorainak Informatika szigorlat 11-es tétel: Lekérdező nyelvek 1. Relációs algebra A relációs algebra egy speciális algebra, amely néhány egyszerű, de hathatós módszert ad arra nézve, hogy miként építhetünk új relációkat

Részletesebben

2019/02/11 10:01 1/10 Logika

2019/02/11 10:01 1/10 Logika 2019/02/11 10:01 1/10 Logika < Számítástechnika Logika Szerző: Sallai András Copyright Sallai András, 2011, 2012, 2015 Licenc: GNU Free Documentation License 1.3 Web: http://szit.hu Boole-algebra A Boole-algebrát

Részletesebben

Komputeralgebra rendszerek

Komputeralgebra rendszerek Komputeralgebra rendszerek III. Változók Czirbusz Sándor czirbusz@gmail.com Komputeralgebra Tanszék ELTE Informatika Kar 2009-2010 ősz Index I 1 Szimbolikus konstansok kezelés A konstansok Nevek levédése

Részletesebben

2.4. Egy algebrai lekérdezo nyelv

2.4. Egy algebrai lekérdezo nyelv 2.4. Egy algebrai lekérdezo nyelv 39 2.4. Egy algebrai lekérdezo nyelv Ebben a részben bevezet jük a relációs modell adatmmanipulációs részeit. Emlékezzünk, hogy az adatmodell nem csupán egy struktúra,

Részletesebben

1. Logikailag ekvivalens

1. Logikailag ekvivalens Informatikai logikai alapjai Mérnök informatikus 4. gyakorlat 1. Logikailag ekvivalens 1. Az alábbi formulák közül melyek logikailag ekvivalensek a ( p p) formulával? A. ((q p) q) B. (q q) C. ( p q) D.

Részletesebben

Matematika szigorlat június 17. Neptun kód:

Matematika szigorlat június 17. Neptun kód: Név Matematika szigorlat 014. június 17. Neptun kód: 1.. 3. 4. 5. Elm. Fel. Össz. Oszt. Az eredményes szigorlat feltétele elméletből legalább 0 pont, feladatokból pedig legalább 30 pont elérése. A szigorlat

Részletesebben

Elsőrendű logika. Mesterséges intelligencia március 28.

Elsőrendű logika. Mesterséges intelligencia március 28. Elsőrendű logika Mesterséges intelligencia 2014. március 28. Bevezetés Ítéletkalkulus: deklaratív nyelv (mondatok és lehetséges világok közti igazságrelációk) Részinformációkat is kezel (diszjunkció, negáció)

Részletesebben

Adatbázisok-1 előadás Előadó: dr. Hajas Csilla

Adatbázisok-1 előadás Előadó: dr. Hajas Csilla Adatbázisok-1 előadás Előadó: dr. Hajas Csilla Áttekintés az I.zh-ig Áttekintés az 1ZH-ig // Adatbázisok-1 elıadás // Ullman (Stanford) tananyaga alapján // Hajas Csilla (ELTE IK) 1 Hol tartunk? Mit tanultunk

Részletesebben

Adatbázisok 1 2013-14 tavaszi félév Vizsgatételsor

Adatbázisok 1 2013-14 tavaszi félév Vizsgatételsor Adatbázisok 1 2013-14 tavaszi félév Vizsgatételsor 1. Relációs adatmodell alapjai Adatmodell: Az adatmodell egy jelölésmód egy adatbázis adatszerkezetének a leírására, beleértve az adatra vonatkozó megszorításokat

Részletesebben

SQL ALAPOK. Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai

SQL ALAPOK. Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai SQL ALAPOK Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai BEVEZETÉS SQL: Structured Query Language Strukturált Lekérdező Nyelv Szabvány határozza meg, azonban számos nyelvjárása létezik

Részletesebben

2.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK)

2.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK) 2.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK) http://sila.hajas.elte.hu/ Relációs algebra alapműveletei és SQL SELECT - FROM - WHERE Tankönyv: 2.4. Lekérdezések: Relációs algebra 6.1. Egy táblára

Részletesebben

Logika es sz am ıt aselm elet I. r esz Logika Negyedik el oad as 1/26

Logika es sz am ıt aselm elet I. r esz Logika Negyedik el oad as 1/26 1/26 Logika és számításelmélet I. rész Logika Negyedik előadás Tartalom 2/26 Az elsőrendű logika szemantikája Formulák és formulahalmazok szemantikus tulajdonságai Elsőrendű logikai nyelv interpretációja

Részletesebben

Adatbázisok elmélete 4. előadás

Adatbázisok elmélete 4. előadás Adatbázisok elmélete 4. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu http://www.cs.bme.hu/ kiskat 2005 ADATBÁZISOK ELMÉLETE

Részletesebben

Diszkrét matematika 2. estis képzés

Diszkrét matematika 2. estis képzés Diszkrét matematika 2. estis képzés 2018. tavasz 1. Diszkrét matematika 2. estis képzés 4-6. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Komputeralgebra Tanszék

Részletesebben

Csima Judit október 24.

Csima Judit október 24. Adatbáziskezelés Funkcionális függőségek Csima Judit BME, VIK, Számítástudományi és Információelméleti Tanszék 2018. október 24. Csima Judit Adatbáziskezelés Funkcionális függőségek 1 / 1 Relációs sémák

Részletesebben

Az informatika logikai alapjai

Az informatika logikai alapjai Az informatika logikai alapjai Várterész Magda DE, Informatikai Kar PTI BSc és informatikatanár hallgatók számára 2017. Példák Az alábbi világokban állításokat akarunk megfogalmazni: A táblára színes karikákat

Részletesebben

Alapok. tisztán funkcionális nyelv, minden függvény (a konstansok is) nincsenek hagyományos változók, az első értékadás után nem módosíthatók

Alapok. tisztán funkcionális nyelv, minden függvény (a konstansok is) nincsenek hagyományos változók, az első értékadás után nem módosíthatók Haskell 1. Alapok tisztán funkcionális nyelv, minden függvény (a konstansok is) nincsenek hagyományos változók, az első értékadás után nem módosíthatók elég jól elkerülhetők így a mellékhatások könnyebben

Részletesebben

3. Lineáris differenciálegyenletek

3. Lineáris differenciálegyenletek 3. Lineáris differenciálegyenletek A közönséges differenciálegyenletek két nagy csoportba oszthatók lineáris és nemlineáris egyenletek csoportjába. Ez a felbontás kicsit önkényesnek tűnhet, a megoldásra

Részletesebben

7. Előadás tartalma A relációs adatmodell

7. Előadás tartalma A relációs adatmodell 7. Előadás tartalma A relációs adatmodell 7.1 A relációs adatmodell 7.2 Relációs adatbázisséma meghatározása 7.3 E/K diagram átírása relációs modellé 7.4 Osztályhierarchia reprezentálása 1 7.1 A relációs

Részletesebben

Adatbázisrendszerek 7. előadás: Az ER modell március 20.

Adatbázisrendszerek 7. előadás: Az ER modell március 20. Adatbázisrendszerek Jelölések, az 2018. március 20. Egyedtípusok 2 Definíció Azokat az egyedtípusokat, amelyek nem rendelkeznek saját kulcsattribútumokkal, gyenge egyedtípusoknak nevezzük. Ezzel ellentétben

Részletesebben

Matematikai logika és halmazelmélet

Matematikai logika és halmazelmélet Matematikai logika és halmazelmélet Wettl Ferenc előadása alapján 2015-09-07 Wettl Ferenc előadása alapján Matematikai logika és halmazelmélet 2015-09-07 1 / 21 Tartalom 1 Matematikai kijelentések szerkezete

Részletesebben

7. Gyakorlat A relációs adatmodell műveleti része

7. Gyakorlat A relációs adatmodell műveleti része 7. Gyakorlat A relációs adatmodell műveleti része Relációs algebra: az operandusok és az eredmények relációk; azaz a relációs algebra műveletei zártak a relációk halmazára Műveletei: Egy operandusú Két

Részletesebben

Algoritmusok helyességének bizonyítása. A Floyd-módszer

Algoritmusok helyességének bizonyítása. A Floyd-módszer Algoritmusok helyességének bizonyítása A Floyd-módszer Algoritmusok végrehajtása Egy A algoritmus esetében a változókat három változótípusról beszélhetünk, melyeket az X, Y és Z vektorokba csoportosítjuk

Részletesebben

Lekérdezések az SQL-ben 2.rész

Lekérdezések az SQL-ben 2.rész Lekérdezések az SQL-ben 2.rész Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 6.2. Több relációra vonatkozó lekérdezések az SQL-ben - Szorzat és összekapcsolás

Részletesebben

ALAPFOGALMAK 1. A reláció az program programfüggvénye, ha. Azt mondjuk, hogy az feladat szigorúbb, mint az feladat, ha

ALAPFOGALMAK 1. A reláció az program programfüggvénye, ha. Azt mondjuk, hogy az feladat szigorúbb, mint az feladat, ha ALAPFOGALMAK 1 Á l l a p o t t é r Legyen I egy véges halmaz és legyenek A i, i I tetszőleges véges vagy megszámlálható, nem üres halmazok Ekkor az A= A i halmazt állapottérnek, az A i halmazokat pedig

Részletesebben

Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós február 18. Széchenyi István Egyetem, Gy r

Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós február 18. Széchenyi István Egyetem, Gy r Programozás (GKxB_INTM021) Széchenyi István Egyetem, Gy r 2018. február 18. Minimum és maximumkeresés u s i n g n a m e s p a c e s t d ; i n t main ( ) { c o u t

Részletesebben

Karakterkészlet. A kis- és nagybetűk nem különböznek, a sztringliterálok belsejét leszámítva!

Karakterkészlet. A kis- és nagybetűk nem különböznek, a sztringliterálok belsejét leszámítva! A PL/SQL alapelemei Karakterkészlet Az angol ABC kis- és nagybetűi: a-z, A-Z Számjegyek: 0-9 Egyéb karakterek: ( ) + - * / < > =! ~ ^ ; :. ' @ %, " # $ & _ { }? [ ] Szóköz, tabulátor, kocsivissza A kis-

Részletesebben

Alap fatranszformátorok II

Alap fatranszformátorok II Alap fatranszformátorok II Vágvölgyi Sándor Fülöp Zoltán és Vágvölgyi Sándor [2, 3] közös eredményeit ismertetjük. Fogalmak, jelölések A Σ feletti alaptermek TA = (T Σ, Σ) Σ algebráját tekintjük. Minden

Részletesebben

modell, amiben csak bináris sok-egy kapcsolatok (link, memberowner,

modell, amiben csak bináris sok-egy kapcsolatok (link, memberowner, Informatika szigorlat 10-es tétel: Adatmodellezés Adatmodellezésnek azt az absztrakciós folyamatot nevezzük, amelyben a valós (mikró)világ tényeit, valamint a tények közötti kapcsolatokat tükröző adatokat,

Részletesebben

Programok értelmezése

Programok értelmezése Programok értelmezése Kód visszafejtés. Izsó Tamás 2016. szeptember 22. Izsó Tamás Programok értelmezése/ 1 Section 1 Programok értelmezése Izsó Tamás Programok értelmezése/ 2 programok szemantika értelmezése

Részletesebben

5.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK)

5.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK) 5.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK) http://sila.hajas.elte.hu/ SQL gyakorlatban: SELECT záradékai és a kiterjesztett relációs algebra Tankönyv: 5.1.- 5.2. Kiterjesztett relációs algebra

Részletesebben

Adatbázisok elmélete 9. előadás

Adatbázisok elmélete 9. előadás Adatbázisok elmélete 9. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu http://www.cs.bme.hu/ kiskat 2005 ADATBÁZISOK ELMÉLETE

Részletesebben

KOVÁCS BÉLA, MATEMATIKA I.

KOVÁCS BÉLA, MATEMATIKA I. KOVÁCS BÉLA, MATEmATIkA I. 1 I. HALmAZOk 1. JELÖLÉSEk A halmaz fogalmát tulajdonságait gyakran használjuk a matematikában. A halmazt nem definiáljuk, ezt alapfogalomnak tekintjük. Ez nem szokatlan, hiszen

Részletesebben

Válogatott fejezetek a logikai programozásból ASP. Answer Set Programming Kelemen Attila

Válogatott fejezetek a logikai programozásból ASP. Answer Set Programming Kelemen Attila ASP 1 Kedvcsináló N királynő 3+1 sorban index(1..n). % minden sorban pontosan 1 királynő van 1{q(X,Y):index(X)}1 :- index(y). % az rossz, ha ugyanabban az oszlopban 2 királynő van :- index(x; Y1; Y2),

Részletesebben

BOOLE ALGEBRA Logika: A konjunkció és diszjunkció tulajdonságai

BOOLE ALGEBRA Logika: A konjunkció és diszjunkció tulajdonságai BOOLE ALGEBRA Logika: A konjunkció és diszjunkció tulajdonságai 1.a. A B B A 2.a. (A B) C A (B C) 3.a. A (A B) A 4.a. I A I 5.a. A (B C) (A B) (A C) 6.a. A A I 1.b. A B B A 2.b. (A B) C A (B C) 3.b. A

Részletesebben

Országos Középiskolai Tanulmányi Verseny 2009/2010 Matematika I. kategória (SZAKKÖZÉPISKOLA) 2. forduló feladatainak megoldása

Országos Középiskolai Tanulmányi Verseny 2009/2010 Matematika I. kategória (SZAKKÖZÉPISKOLA) 2. forduló feladatainak megoldása Oktatási Hivatal Országos Középiskolai Tanulmányi Verseny / Matematika I. kategória (SZAKKÖZÉPISKOLA) 2. forduló feladatainak megoldása. Oldja meg a valós számok legbővebb részhalmazán a egyenlőtlenséget!

Részletesebben

Tankönyv példák kidolgozása

Tankönyv példák kidolgozása Tankönyv példák kidolgozása Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 Áttekintés: Rel.algebra és SQL Példák: Tk.2.4.14.Feladatok Tk.54-57.o. 2.4.1.feladat

Részletesebben

Predikátumkalkulus. 1. Bevezet. 2. Predikátumkalkulus, formalizálás. Predikátumkalkulus alapfogalmai, formalizálás, tagadás, logikailag igaz formulák.

Predikátumkalkulus. 1. Bevezet. 2. Predikátumkalkulus, formalizálás. Predikátumkalkulus alapfogalmai, formalizálás, tagadás, logikailag igaz formulák. Predikátumkalkulus Predikátumkalkulus alapfogalmai, formalizálás, tagadás, logikailag igaz formulák. 1. Bevezet Nézzük meg a következ két kijelentést: Minden almához tartozik egy fa, amir l leesett. Bármely

Részletesebben

Excel 2010 függvények

Excel 2010 függvények Molnár Mátyás Excel 2010 függvények Csak a lényeg érthetően! Tartalomjegyzék FÜGGVÉNYHASZNÁLAT ALAPJAI 1 FÜGGVÉNYEK BEVITELE 1 HIBAÉRTÉKEK KEZELÉSE 4 A VARÁZSLATOS AUTOSZUM GOMB 6 SZÁMÍTÁSOK A REJTETT

Részletesebben

A matematika nyelvér l bevezetés

A matematika nyelvér l bevezetés A matematika nyelvér l bevezetés Wettl Ferenc 2012-09-06 Wettl Ferenc () A matematika nyelvér l bevezetés 2012-09-06 1 / 19 Tartalom 1 Matematika Matematikai kijelentések 2 Logikai m veletek Állítások

Részletesebben

WHERE záradék (további lehetıségek) SQL specialitások, nem írhatók át relációs algebrába: LIKE. NULL értékek. Az ismeretlen (unknown) igazságérték

WHERE záradék (további lehetıségek) SQL specialitások, nem írhatók át relációs algebrába: LIKE. NULL értékek. Az ismeretlen (unknown) igazságérték WHERE záradék (további lehetıségek) SQL specialitások, amelyek könnyen átírhatóak relációs algebrai kifejezésre (összetett kiválasztási feltételre) BETWEEN.. AND.. intervallumba tartozás IN (értékhalmaz)

Részletesebben

2. Logika gyakorlat Függvények és a teljes indukció

2. Logika gyakorlat Függvények és a teljes indukció 2. Logika gyakorlat Függvények és a teljes indukció Folláth János Debreceni Egyetem - Informatika Kar 2012/13. I. félév Áttekintés 1 Függvények Relációk Halmazok 2 Természetes számok Formulák Definíció

Részletesebben

Adatbázisok elmélete

Adatbázisok elmélete Adatbázisok elmélete Relációs algebra Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem Katona Gyula Y. (BME SZIT) Adatbázisok elmélete 1 /

Részletesebben

Adatbázisok-I. előadás dr. Hajas Csilla (ELTE IK)

Adatbázisok-I. előadás dr. Hajas Csilla (ELTE IK) Adatbázisok-I. előadás dr. Hajas Csilla (ELTE IK) http://sila.hajas.elte.hu/ 2.ea: Relációs algebra alapműveletei és SQL SELECT (1.rész) Az előadások Ullman-Widom: Adatbázisrendszerek Alapvetés alapján

Részletesebben

Adatbázismodellek. 1. ábra Hierarchikus modell

Adatbázismodellek. 1. ábra Hierarchikus modell Eddig az adatbázisokkal általános szempontból foglalkoztunk: mire valók, milyen elemekből épülnek fel. Ennek során tisztáztuk, hogy létezik az adatbázis fogalmi modellje (adatbázisterv), amely az egyedek,

Részletesebben

Predikátumkalkulus. Predikátumkalkulus alapfogalmai, formalizálás, tagadás, logikailag igaz formulák. Vizsgáljuk meg a következ két kijelentést.

Predikátumkalkulus. Predikátumkalkulus alapfogalmai, formalizálás, tagadás, logikailag igaz formulák. Vizsgáljuk meg a következ két kijelentést. Predikátumkalkulus Predikátumkalkulus alapfogalmai, formalizálás, tagadás, logikailag igaz formulák. 1. Bevezet Vizsgáljuk meg a következ két kijelentést. Minden almához tartozik egy fa, amir l leesett.

Részletesebben

Adatbázisok elmélete 9. előadás

Adatbázisok elmélete 9. előadás Adatbázisok elmélete 9. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu http://www.cs.bme.hu/ kiskat 2005 ADATBÁZISOK ELMÉLETE

Részletesebben

Kvadratikus alakok és euklideszi terek (előadásvázlat, október 5.) Maróti Miklós, Kátai-Urbán Kamilla

Kvadratikus alakok és euklideszi terek (előadásvázlat, október 5.) Maróti Miklós, Kátai-Urbán Kamilla Kvadratikus alakok és euklideszi terek (előadásvázlat, 0. október 5.) Maróti Miklós, Kátai-Urbán Kamilla Az előadáshoz ajánlott jegyzet: Szabó László: Bevezetés a lineáris algebrába, Polygon Kiadó, Szeged,

Részletesebben

Komputeralgebra Rendszerek

Komputeralgebra Rendszerek Komputeralgebra Rendszerek Konstansok, változók, típusok Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék 2015. február 24. TARTALOMJEGYZÉK 1 of 110 TARTALOMJEGYZÉK I 1 TARTALOMJEGYZÉK 2 Nevek kezelése

Részletesebben

Automaták és formális nyelvek

Automaták és formális nyelvek Automaták és formális nyelvek Bevezetés a számítástudomány alapjaiba 1. Formális nyelvek 2006.11.13. 1 Automaták és formális nyelvek - bevezetés Automaták elmélete: információs gépek általános absztrakt

Részletesebben

Matematika alapjai; Feladatok

Matematika alapjai; Feladatok Matematika alapjai; Feladatok 1. Hét 1. Tekintsük a,, \ műveleteket. Melyek lesznek a.) kommutativok b.) asszociativak c.) disztributívak-e a, műveletek? Melyik melyikre? 2. Fejezzük ki a műveletet a \

Részletesebben

5. előadás. Programozás-elmélet. Programozás-elmélet 5. előadás

5. előadás. Programozás-elmélet. Programozás-elmélet 5. előadás Elemi programok Definíció Az S A A program elemi, ha a A : S(a) { a, a, a, a,..., a, b b a}. A definíció alapján könnyen látható, hogy egy elemi program tényleg program. Speciális elemi programok a kövekezők:

Részletesebben

Adatbázisok elmélete 12. előadás

Adatbázisok elmélete 12. előadás Adatbázisok elmélete 12. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu http://www.cs.bme.hu/ kiskat 2005 ADATBÁZISOK ELMÉLETE

Részletesebben

Relációs algebra 2.rész példák

Relációs algebra 2.rész példák Relációs algebra 2.rész példák Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 Lekérdezések a relációs modellben 2.4. Egy algebrai lekérdező nyelv Lekérdezések

Részletesebben

1. tétel Halmazok és halmazok számossága. Halmazműveletek és logikai műveletek kapcsolata.

1. tétel Halmazok és halmazok számossága. Halmazműveletek és logikai műveletek kapcsolata. 1. tétel Halmazok és halmazok számossága. Halmazműveletek és logikai műveletek kapcsolata. HLMZOK halmaz axiomatikus fogalom, nincs definíciója. benne van valami a halmazban szintén axiomatikus fogalom,

Részletesebben

Struktúra nélküli adatszerkezetek

Struktúra nélküli adatszerkezetek Struktúra nélküli adatszerkezetek Homogén adatszerkezetek (minden adatelem azonos típusú) osztályozása Struktúra nélküli (Nincs kapcsolat az adatelemek között.) Halmaz Multihalmaz Asszociatív 20:24 1 A

Részletesebben

Egyenletek, egyenlőtlenségek VII.

Egyenletek, egyenlőtlenségek VII. Egyenletek, egyenlőtlenségek VII. Magasabbfokú egyenletek: A 3, vagy annál nagyobb fokú egyenleteket magasabb fokú egyenleteknek nevezzük. Megjegyzés: Egy n - ed fokú egyenletnek legfeljebb n darab valós

Részletesebben

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Számelmélet I.

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Számelmélet I. Számelmélet I. DEFINÍCIÓ: (Osztó, többszörös) Ha egy a szám felírható egy b szám és egy másik egész szám szorzataként, akkor a b számot az a osztójának, az a számot a b többszörösének nevezzük. Megjegyzés:

Részletesebben

Diszkrét matematika I.

Diszkrét matematika I. Diszkrét matematika I. középszint 2013 ősz 1. Diszkrét matematika I. középszint 8. előadás Mérai László merai@compalg.inf.elte.hu compalg.inf.elte.hu/ merai Komputeralgebra Tanszék 2013 ősz Kombinatorika

Részletesebben

17. előadás: Vektorok a térben

17. előadás: Vektorok a térben 17. előadás: Vektorok a térben Szabó Szilárd A vektor fogalma A mai előadásban n 1 tetszőleges egész szám lehet, de az egyszerűség kedvéért a képletek az n = 2 esetben szerepelnek. Vektorok: rendezett

Részletesebben

Nagy Gábor compalg.inf.elte.hu/ nagy

Nagy Gábor  compalg.inf.elte.hu/ nagy Diszkrét matematika 3. estis képzés 2016. ősz 1. Diszkrét matematika 3. estis képzés 3. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Komputeralgebra Tanszék

Részletesebben

Ítéletkalkulus. 1. Bevezet. 2. Ítéletkalkulus

Ítéletkalkulus. 1. Bevezet. 2. Ítéletkalkulus Ítéletkalkulus Logikai alapfogalmak, m veletek, formalizálás, logikai ekvivalencia, teljes diszjunktív normálforma, tautológia. 1. Bevezet A matematikai logikában az állításoknak nem a tényleges jelentésével,

Részletesebben

Mohó algoritmusok. Példa:

Mohó algoritmusok. Példa: Mohó algoritmusok Optimalizálási probléma megoldására szolgáló algoritmus sokszor olyan lépések sorozatából áll, ahol minden lépésben adott halmazból választhatunk. Ezt gyakran dinamikus programozás alapján

Részletesebben

Programkonstrukciók A programkonstrukciók programfüggvényei Levezetési szabályok. 6. előadás. Programozás-elmélet. Programozás-elmélet 6.

Programkonstrukciók A programkonstrukciók programfüggvényei Levezetési szabályok. 6. előadás. Programozás-elmélet. Programozás-elmélet 6. Programkonstrukciók Definíció Legyen π feltétel és S program A-n. A DO A A relációt az S-ből a π feltétellel képezett ciklusnak nevezzük, és (π, S)-sel jelöljük, ha 1. a / [π] : DO (a) = { a }, 2. a [π]

Részletesebben