Dotaz v NRK
• odpověď na dotaz je maximální relace taková, že její každý prvek je dán jako seznam komponent TRUE ohodnocení volných proměnných formule dotazu
• přičemž TRUE ohodnocení dotazu je takové přiřazení hodnot proměnným (z konkrétních relací), že bude možné formuli vyhodnotit jako pravdivou
Příklad dotazu
• chceme seznam kin, ve kterých nedávají film s Brando
p.NÁZEV.K WHERE PROGRAM(p) AND forall fFILM(f.HEREC=‘Brando’ implies NOT exists qPROGRAM(
q.NÁZEV.K = p.NÁZEV.K AND
q.NÁZEV.F = f.JMÉNO.F))
Doménový relační kalkul
• těsněji souvisí s klasickou predikátovou logikou než NRK
• nepoužívá n-ticové proměnné, ale jednoduché proměnné (x,y,z), které budeme zapisovat včetně atributů (A,B,C) a jména relace (R)
R(A:x,B:y,C:z, ...)
• termy budou proměnné a konstanty
Atomické formule
• atomické formule jsou tvaru
– R(A1:t1, A2:t2, ..., An:tn), kde Ai jsou atributy a ti jsou termy
– t1 t2, kde je predikátový symbol a ti jsou termy
• formule se tvoří stejně jako v DRK
• princip využití formulí DRK v dotazech je stejný jako v DRK, pouze ohodnocujeme jednoduché proměnné
Žádné komentáře:
Okomentovat