Bài 6: Ngôn ng tân t

Khoa HTTT - Đ i h c CNTT

1

ạ ọ

N i dung

i c a m t công th c ứ ng giá công th c ứ

i thi u 1. Gi ệ ớ 2. Cú pháp 3. Các đ nh nghĩa ị 4. Di n gi ễ ả ủ 5. Quy t c l ắ ượ 6. Ngôn ng tân t ữ 7. Ngôn ng tân t ữ

ừ ừ

có bi n là n b ộ ế có bi n là mi n giá tr ề ế

2 Khoa HTTT - Đ i h c CNTT ạ ọ

1. Gi

i thi u ệ

 Ngôn ng tân t ị

ượ ộ ố

ữ ư

ư ế

là ngôn ng truy v n hình th c do Codd ấ c Lacroit, Proix và Ullman phát đ ngh (1972-1973) đ ề tri n, cài đ t trong m t s ngôn ng nh QBE, ALPHA.. ặ ể  Đ c đi m: ặ  Ngôn ng phi th t c ủ ụ ữ  Rút trích cái gì ch không ph i rút trích nh th nào ứ ng v i đ i s quan h ng đ  Kh năng di n đ t t ệ ạ ươ

 Có hai lo iạ :

 Có bi n là n b ộ ế  Có bi n là mi n giá tr ị ề ế

ớ ạ ố ả ươ ễ ả

3 Khoa HTTT - Đ i h c CNTT ạ ọ

2. Cú pháp

: x,y,z,t,s… : a,b,c,…

 ( ) : bi u th c trong ngo c ặ ứ ể  Bi nế : dùng ch th cu i b ký t ở ố ộ  H ngằ : dùng ch th đ u b ký t ộ  Hàm: là m t ánh x t ề ự ự ị

ng dùng ch th ậ ng ng ữ ườ ng ữ ườ ở ầ m t mi n giá tr vào t p h p g m 2 ạ ừ ộ ữ ườ ườ ợ ồ gi a b ở ữ ộ ặ

ộ giá tr : đúng ho c sai. Th ký t

ứ ượ ể

ữ ứ ự ở ữ ộ

c xây d ng d a trên bi u ể ự P,Q,R… gi a b ký t ự (cid:216) ), kéo theo ((cid:222) ), và ((cid:217) ), ị : h,g,f,… ự  Tân từ: là m t bi u th c đ ộ th c logic. Dùng ch in hoa  Các phép toán logic: ph đ nh ( ủ ị

 Các l ng t i ( ho c (ặ (cid:218) ). ượ ọ " ừ: v i m i (

), t n t ớ Khoa HTTT - Đ i h c CNTT 4 ồ ạ $ ) ạ ọ

3. Các đ nh nghĩa (1)

1 ngôi

ị  Tân t

ừ c đ nh nghĩa trên t p X và bi n x có giá tr ị ế ậ

1 ngôi đ ch y trên các ph n t c a X.

 Đ nh nghĩa 1: Tân t ừ ượ ị ầ ử ủ

P(x) là m t m nh đ logic, t c là ừ ỗ ứ ệ ề ộ ạ ớ

 V i m i giá tr c a x, tân t ặ ị

 Ví dụ

ế

N (x) đ

ệ ượ

i nườ ữ”. Khi đó ả

ừ Ữ ề Ữ

x là ng ế

 P(x), x là bi n ch y trên X, là m t tân t ạ  P(gt), gt˛ X là m t m nh đ , X = {Nguyen Van A, Tran Thi B} ề ộ c xác đ nh: “  V i tân t ị ớ  M nh đ N (Nguyen Van A): cho k t qu Sai ệ  N (Tran Thi B): cho k t qu Đúng ế Ữ

ị ủ nó có giá tr đúng (Đ) ho c sai (S)

5 Khoa HTTT - Đ i h c CNTT ạ ọ

3. Các đ nh nghĩa (2)

n ngôi

ị  Tân t

n ngôi đ ừ

ậ ậ ị

 Đ nh nghĩa 2: Tân t ừ 1, X2, …, Xn và c đ nh nghĩa trên các t p X ượ ị ng ng. i t n bi n xế 1, x2, …, xn l y giá tr trên các t p X ươ ứ ấ n ngôi là m t m nh đ . ề ộ

 V i m i giá tr a ỗ i

 Ký hi u: P(x ệ

1, x2, …, xn)  Ví d : ụ CHA(x1,x2): “x1 là CHA c a xủ 2”  Chú ý:

t ph i là r i nhau

ế

n-1 ngôi

 Các Xi không nh t thi  V i xớ i=ai, P(x1, x2, …, ai, …, xn) là tân t

ệ ớ ị ˛ Xi, xi=ai.Tân t ừ

6 Khoa HTTT - Đ i h c CNTT ạ ọ

3. Các đ nh nghĩa (3)

 Đ nh nghĩa 3: T

(cid:216) F1

 N u Fế  N u Fế

" ứ ộ ứ ể F1=>F2, :F1, $ x:F1 cũng là các công th cứ

ị  T là m t h ng hay là m t bi n ừ ế ộ ằ ộ  N u f(t 1, t2, …, tn) là hàm n ngôi thì f là m t tộ ừ ế  Đ nh nghĩa 4: Công th c ị ứ  Công th c nguyên t : P(t 1, t2, …, tn), ti là các từ ứ 1, F2 là các công th c thì các bi u th c sau cũng là các  N u Fế ứ (cid:217) F2, (cid:218) F2, công th c: F F1 ứ 1 1 là m t công th c thì 1 là công th c thì (F ứ

1) cũng là m t công th c ứ ộ

7 Khoa HTTT - Đ i h c CNTT ạ ọ

3. Các đ nh nghĩa (4)

 Đ nh nghĩa 4:

ị  Công th c ứ đóng là công th c n u m i bi n đ u có kèm

ế ề ọ

ng t v i l ớ ượ ừ ẳ

i 1 bi n không kèm ứ ế . (kh ng đ nh Đ, S) ị  Công th c ứ mở là công th c t n t ứ ồ ạ ế

ng t . (tìm ki m thông tin) ừ ế

l ượ  Ví d : ụ  C1:" x$

đóng vì các bi n x,y,z,t đ u có kèm l ng t ,$ ề ừ "

t" y(P(x,y,a)(cid:222) ế t (P(x,y,a)(cid:222) ứ

 C2:" x $ ế

vì bi n y không có l ng t ,$ $ z(Q(y,z,t)(cid:217) R(x,t)) là công th c ứ ượ $ z(Q(y,z,t)(cid:217) R(x,t)) là công th c m ở ượ ừ "

8 Khoa HTTT - Đ i h c CNTT ạ ọ

4. Di n gi ễ

i c a m t công ộ ả ủ th cứ

G m 4 ph n:  Mi n giá tr c a các bi n c a công th c (ký

ế ủ

ị ủ hi u là t p M)

(ý nghĩa tân

t

 S d ng các h ng, các tân t c quan h n ngôi) ệ

ằ ượ

n

ề ệ ử ụ , xác đ nh đ ị ừ  Ý nghĩa c a công th c ứ ủ  Xác đ nh 1 quan h n ngôi trên t p M ệ

9 Khoa HTTT - Đ i h c CNTT ạ ọ

5. Quy t c l

ắ ượ

ng giá công th c ứ

 L

b c n: P(x

ừ ậ

1,x2,…xn) và liên

: xét tân t k t v i quan h R, n ngôi.

ng giá tân t ừ ệ

ượ ế ớ

dùng b ng chân tr ả

ượ

ứ $ x F(x) là đúng

(a1,a2,…,an) ˛ R (a1,a2,…,an) ˇ R ,(cid:222)

 L

ượ

ai

˛ M/F(ai):Đ

: x là bi n, ế " x F(x): Đ v i ớ " ˛ M Khoa HTTT - Đ i h c CNTT 10

˛ M (cid:218) F(ai), ai

ạ ọ P(a1,a2,…,an): Đ (cid:219) P(a1,a2,…,an): S (cid:219)  Các phép toán (cid:217) ,(cid:218) ,(cid:216) ừ $  L : g i x là bi n. Công th c ng t ế ọ ˛ M/F(ai):Đ khi có ít nh t m t a ộ i ấ M={a1,a2,…,an} ” ừ " ng t M={a1,a2,…,an} ” (cid:217) F(ai), ai

6. Ngôn ng tân t

có bi n là n b ế

6.1 Qui t cắ 6.2 Đ nh nghĩa ị 6.3 Công th c an toàn 6.4 Bi u di n các phép toán

ứ ễ

11 Khoa HTTT - Đ i h c CNTT ạ ọ

6.1 Quy t c (1)

ộ ủ ế

1. Bi n là 1 b c a quan h ệ 2. T : h ng, bi n ho c bi u th c có d ng s[C], s: ể

c

ệ ượ

ứ ủ

ậ chi u. ế

ế ừ ằ bi n, C: t p các thu c tính c a quan h đ ộ ế g i là t ọ 3. Công th c: ứ

 Rs (R là quan h , s là bi n) đ

ệ ừ . Mi n giá ề

ế ế

q q ừ

q t2 ở là toán t chi u, còn a là m t ộ c g i là công th c đây t ử c g i là t ượ ọ ủ ế ượ ọ ứ

tr s đ nh nghĩa mi n bi n thiên c a s. ề ị ẽ ị 1,t2 là các t a , t1 t1 h ng, ằ so sánh d nguyên tố

12 Khoa HTTT - Đ i h c CNTT ạ ọ

6.1 Quy t c (2)

1

ố là m t công th c ứ ộ (cid:222) F2, (cid:217) F2, F1 (cid:218) F2, F1

4. M t ộ công th c nguyên t 5. F1 và F2 là công th c: Fứ (cid:216) F1 là công th cứ

6. F là công th c , s là bi n

ế $ sF, " sF là công

th cứ

7. F là công th c, (F) là công th c ứ

13 Khoa HTTT - Đ i h c CNTT ạ ọ

6.2 Đ nh nghĩa

có bi n

ỏ ộ ượ

ế ữ c bi u di n nh sau: {s | F} . ư ứ

 M t câu h i trong ngôn ng tân t là n b đ ễ ể Trong đó s là bi n n b , F là m t công th c ộ ế ch có m t bi n t do là s. ế ự ộ

 Ví dụ: BIENGIOI(nuoc,tinhtp). Phép toán

có bi n

c chuy n ừ

ế

quan h BIENGIOI[nuoc] đ ượ thành câu h i trong ngôn ng tân t ữ là b : {s[nuoc] BIENGIOI s}

14 Khoa HTTT - Đ i h c CNTT ạ ọ

6.3 Công th c an toàn

ề ả

n u nó tho mãn 3 đi u ki n sau: ệ ế ầ ủ ọ

ầ ử ủ

DOM

F

s

(

)

)

(

˛ fi

F là công th c an toàn: ứ i) N u s là b n th a: F(s) là đúng thì m i thành ph n c a s ỏ ộ ế c a DOM(F): là ph n t sF Đúng :

ii) F’ là công th c con c a F:

˛ fi $ ủ Đúng ứ sF s DOM F )'(

sF

s

DOM

F )'(

sFs ,' :'

ˇ fi " iii) sFs ,' :' Đúng

15 Khoa HTTT - Đ i h c CNTT ạ ọ

6.4 Bi u di n các phép toán (1)

 1. Phép h iộ

1, Q2

ệ ứ ứ

 Q1,Q2 là các quan h n chi u ề  F1, F2 là các công th c ng v i Q ớ  Công th c c a Q= Q 1 (cid:218) F2s  Fs=F1s  2. Phép trừ

1, Q2

ứ ủ ¨ Q2

ệ ứ ứ 1-Q2

 Q1,Q2 là các quan h n chi u ề  F1, F2 là các công th c ng v i Q ớ  Công th c c a Q= Q ứ ủ F2s  Fs=F1

(cid:217) (cid:216) 16 Khoa HTTT - Đ i h c CNTT ạ ọ

6.4 Bi u di n các phép toán (2)

 3. Phép tích

1, Q2

 Q1(x1,…,xm), Q2(y1,…,yn)  F1, F2 là các công th c ng v i Q ứ ứ  Công th c c a Q= Q

ứ ủ

1 x Q2

p) (F1v

Fs: s(x1,…,xm, y1,…,yn) (cid:217) (cid:217) F2p Fs=($ v) ($ s1=v1 (cid:217) …sm=vm (cid:217) sm+1=p1 (cid:217) … sm+n=pn)

17 Khoa HTTT - Đ i h c CNTT ạ ọ

6.4 Bi u di n các phép toán (3)

 4. Phép chi uế

1

 Q1(x1,…,xn), F1 là các công th c ng v i Q  Công th c c a Q= Q

1 [xi1, xi2,…,xik]

ứ ứ ớ

(cid:217) s1=vi1 (cid:217) s2=vi2 (cid:217) … sk=vik)

1

 Q1 là quan h n chi u, F  Công th c Q=Q

ứ ủ Fs=($ v) (F1v  5. Phép ch nọ ệ ề ớ

1:đi u ki n ĐK (ĐK:x

i

q a) ề

1 là công th c ng v i Q ứ ứ ệ (cid:217) si

a (1£

sj ho c Fặ

1s

q q q xj ho c xặ i n, i„ j) i, j £ Fs=F1s ứ (cid:217) si

18 Khoa HTTT - Đ i h c CNTT ạ ọ

7. Ngôn ng tân t

ế

có bi n là mi n giá ừ trị

7.1 Quy t cắ 7.2 Bi u di n câu h i ỏ ễ ể 7.3 Công th c an toàn ứ 7.4 Bi u di n các phép toán ễ

19 Khoa HTTT - Đ i h c CNTT ạ ọ

7.1 Quy t cắ

1. T : là h ng ho c bi n ế ằ 2. Công th c nguyên t ố ứ  Q(t1,t2,…,tn): ti là các t ừ

q q q tj ,ti ti

3. M t ộ công th c nguyên t 4. F1 và F2 là công th c: Fứ

a v i tớ i là t ứ

1

(cid:222) F2, (cid:216) F1 là công

th cứ

5. F là công th c , t:bi n t

do,

$ sF," sF cũng công

ế ự

th cứ

, Q là quan h ệ ừ , a là m t h ng, là phép toán ộ ằ ố là m t công th c ứ ộ (cid:217) F2, F1 (cid:218) F2, F1

6. F là công th c, (F) là công th c ứ ứ ạ ọ

20 Khoa HTTT - Đ i h c CNTT

7.2 Bi u di n câu h i ỏ ễ

{(x1,x2,…,xn) | F(x1,x2,…,xn)}  xi là các bi n t do c a F ế ự ủ  Q= {(x1,x2,…,xn) | F(x1,x2,…,xn)} nên (x1,x2, F(x1,x2,…,xn):Đúng

…,xn)˛ Q (cid:222)

21 Khoa HTTT - Đ i h c CNTT ạ ọ

7.3 Công th c an toàn

ả ề

n u nó tho mãn 3 đi u ki n sau: ệ ế ầ ủ ọ

= ,...,1,)

DOM

iF

n

(

x i

˛ fi

ii) F’ là công th c con c a F: F là công th c an toàn: ứ i) N u s là b n th a: F(s) là đúng thì m i thành ph n c a s ỏ ộ ế c a DOM(F): là ph n t ầ ử ủ ( ( xF ,..., :) ) nx Đúng 1 ứ ủ

˛ fi $ xF :' Đúng x DOM F )'(

xF

:'

(

x

)'

F

DOM

ˇ $ fi " iii)

DOM

Đúng

)

(

= ,...,1,)( iF

n

( xF ,..., 1

Đúng :) nx x i Khoa HTTT - Đ i h c CNTT 22

ˇ $ fi

ạ ọ

7.4 Bi u di n các phép toán (1)

 1. Phép h iộ

1, Q2

ệ ứ ứ

ứ ủ ¨ Q2

 Q1,Q2 là các quan h n chi u ề  F1, F2 là các công th c ng v i Q ớ  Công th c c a Q= Q 1  F=F1  2. Phép trừ

1, Q2

(cid:218) F2

ệ ứ ứ 1-Q2

 Q1,Q2 là các quan h n chi u ề  F1, F2 là các công th c ng v i Q ớ  Công th c c a Q= Q ứ ủ F2  F=F1

(cid:217) (cid:216) 23 Khoa HTTT - Đ i h c CNTT ạ ọ

7.4 Bi u di n các phép toán (2)

 3. Phép tích

1, Q2

 Q1(x1,…,xm), Q2(y1,…,yn)  F1, F2 là các công th c ng v i Q ứ ứ  Công th c c a Q= Q

ứ ủ

1 x Q2 F(x1,…,xm, y1,…,yn) =F1(x1,…,xm)(cid:217) F2(y1,…,yn)

24 Khoa HTTT - Đ i h c CNTT ạ ọ

7.4 Bi u di n các phép toán (3)

 4. Phép chi uế

1

 Q1(x1,…,xn), F1(x1,…,xn) là các công th c ng v i Q  Công th c c a Q= Q

ứ ứ ớ

1 [xi1, xi2,…,xik] Fs(xi1, xi2,…,xik)= ($ xji)($ xjz)…($ xjn-k)(F1(x1,…,xn)) trong đó (xi1, xi2,…,xik)¨ (xj1, xj2,…,xjn-k)=(x1, x2,…,xn)

 5. Phép ch nọ

1

ứ ủ

 Q1(x1,…,xn), F1(x1,…,xn) là các công th c ng v i Q ớ q xj ho c xặ i  Công th c Q=Q ệ

i

q a) ứ ề

q

q = F1(x1,…,xn) 25 Khoa HTTT - Đ i h c CNTT ứ ứ 1:đi u ki n ĐK (ĐK:x F1(x1,…,xn) = F1(x1,…,xn) (cid:217) xi xj ho c ặ (cid:217) xi a ạ ọ