TU 2.3. PHỤ THUỘC HÀM THỜI GIAN: UT

Một phần của tài liệu Cơ sở dữ liệu thời gian (Trang 59 - 70)

“tĩnh” hoặc chỉ là thông tin “hiện hành”. Cho R = AB1B,...,ABnB là một lƣợc đồ quan hệ,

XY là những tập con của {AB1B,...,ABnB}. Trong lý thuyết phụ thuộc truyền thống, X

xác định hàm Y, đƣợc ký hiệu bởi X Y, nếu với mỗi quan hệ r thuộc R và mỗi cặp các bộ tB1B, tB2 B trong r, tB1B[X] = tB2B[X] kéo theo tB1B[Y] = tB2B[Y]. Ví dụ xem xét một lƣợc đồ quan hệ đƣợc gọi là CAN_BO_KHOA mà nó ghi lại với mỗi thành viên của khoa: số thẻ bảo hiểm xã hội (#BAO_HIEM_XH), họ và tên (HO_TEN), chức danh (CHUC_DANH), và phòng ban (PHONG_BAN). Phụ thuộc hàm #BAO_HIEM_XH → CHUC_DANH chứng tỏ rằng chức danh của mỗi thành viên trong khoa là duy nhất, thậm chí cho dù ngƣời đó có thể làm việc nhiều hơn một khoa.

Trong một CSDL thời gian, thông tin trở nên động. Một phụ thuộc hàm có thể là đúng trong quan hệ “hiện tại” có thể lại không đúng trong quan hệ thời gian tƣơng ứng nếu sử dụng định nghĩa về phụ thuộc hàm truyền thống mà không có sự thay đổi. Đó có thể là trƣờng hợp nếu CAN_BO_KHOA là một quan hệ thời gian bởi vì CAN_BO_KHOA có thể bao gồm hai bộ, trạng thái của một ngƣời ở một khoa nào đó là một Giang_vien_chinh tại một thời điểm, nhƣng lại là Tro_giang tại thời điểm khác. Ta mở rộng khái niệm phụ thuộc hàm truyền thống mà nó sẽ không chỉ cho phép những khả năng đó, mà nó còn cho phép ta mô hình đƣợc các ràng buộc thêm vào nhƣ “chức danh một thành viên của khoa không thay đổi trong suốt một năm học”.

Định nghĩa 2.4(Phụ thuộc hàm thời gian) [6]:

Cho X và Y là các tập (hữu hạn) các thuộc tính và một kiểu thời gianµµ(i) ≠ Ø

với một i nào đó. Khi đó X →BµBY đƣợc gọi là một phụ thuộc hàm thời gian (TFD).

Bằng trực giác, một TFD X →BµBY nói rằng bất kỳ hai bộ nào, đúng trên những thời khắc đƣợc phủ bởi cùng một thời khắc trong µ, mà giống nhau trên X thì cũng giống nhau trên Y. Do đó TFD (#BAO_HIEM_XH →B nam_hocB CHUC_DANH, trong đó

nam_hoc là một kiểu thời gian của các năm học, biểu diễn thực tế là một chức danh trong khoa không thể thay đổi trong một năm học. Bây giờ chúng ta định nghĩa hình thức khái niệm trƣớc đó về sự thoả (hay thoả mãn- satisfaction). Để cho đơn giản về khái niệm xuyên suốt chƣơng này, ta sử dụng µ(iB

1B, ... , iB

kB) để ký hiệu cho jk ij

1 ( ).

Định nghĩa 2.5(Sự thoả mãn của TFD ) [6]:

Một TFD X →BυB Y là đƣợc thoả bởi một module thời gian M = (R, µ, ) nếu mọi bộ tB1 B, tB2 Bvà các số nguyên dƣơng iB1 B, iB2B, các điều kiên sau kéo theo tB1B[Y] = tB2B[Y] :

(a) t1[X] = t2[X],

(b) t1 là thuộc µ(i1) và t2 là thuộc µ(i2), và (c) tồn tại j µ(i1, i2) υ(j).

Ví dụ: module thời gian trong Ví dụ 1 thoả mãn TFD #KHOA_HOC tuan

GIANG_VIEN và cũng thoả #KHOA_HOC ngayB B#SO_HOC_VIEN. Tuy nhiên nó không thoả #KHOA_HOCthang #SO_HOC_VIEN.

Từ định nghĩa trên suy ra TFD Xυ Y là luôn đƣợc thoả bởi module thời gian (R, µ, ) nếu µ không có hai thời khắc khác biệt mà chúng đƣợc phủ bởi một thời khắc đơn của υ [vì điều khiện (c) trong định nghĩa sẽ không đƣợc thoả mãn].

Cho (R, µ) là một lƣợc đồ module thời gian với một tập F các TFDs chỉ bao bồm các thuộc tính trong R. Chúng ta chỉ xem xét các module thời gian trên (R, µ) mà thoả mỗi TFD trong F. Do đó tập F xác định tập hợp các module đƣợc cho phép.

Ví dụ 2: module thời gian đƣợc trình bày trong ví dụ 1 thoả mãn TFD:

#KHOA_HOC ngay #CHUNG_CHI,GIANG_VIEN,LUONG_GV, #SO_HOC_VIEN.

cùng một kiểu thời gian (ngay). Tuy nhiên, vẫn cùng module đó thoả TFD #KHOA_HOC ngay GIANG_VIEN đƣợc định nghĩa theo một kiểu thời gian khác. Khái niệm về TFDs đƣợc giới thiệu trong Jensen et al. [1994] chỉ cho phép TFDs theo cùng kiểu thời gian với module.

Khái niệm trên về TFDs cũng có thể đƣợc dùng để biểu diễn FDs mà các FDs đó luôn đúng, không phụ thuộc vào thời gian. Ví dụ, ta có thể biểu diễn FD “mỗi ngƣời chỉ có một ngƣời cha đẻ (không quan tâm đến yếu tố thời gian)” bằng cách sử dụng TFD Ho_ten Top

B B

Cha_de. TFD này phát biểu rằng bất cứ khi nào hai sự kiện t1 và t2 với t1 [X] = t2 [X] là đúng trong một module thời gian, khi đó

t1 [Y] = t2[Y], không phụ thuộc vào kiểu thời gian.

2.3.1 – Các tiên đề suy diễn cho TFDs:

Tƣơng tự nhƣ trong trƣờng hợp FDs truyền thống, những tiên đề suy diễn ra mọi TFDs đƣợc suy dẫn logic từ một tập các TFDs là rất quan trọng. Những tiên đề suy diễn dƣới đây gồm không chỉ các tiên đề thời gian tƣơng tự nhƣ của Armstrong [Ullman 1988], mà còn cả các tiên để phản ánh những quan hệ giữa các kiểu thời gian. Trong Ví dụ 2, vì một KHOA_HOC không đƣợc phép có nhiều hơn một giảng viên trong một tuần, nên nó sẽ không thể có nhiều hơn một giảng viên trong một ngày. Thực tế, một KHOA_HOC không thể có nhiều hơn một giảng viên trong bất kỳ một thời khắc của một kiểu thời gian nào mịn hơn một tuần. Điều đó là do ràng buộc bởi quy tắc suy diễn: Nếu X →BµB Yυµ thì X →BυB Y.

Một phỏng đoán trực giác có thể là cả những tiên đề nói trên cùng với các tiên đề thời gian tƣơng tự nhƣ các tiên đề của Armstrong sẽ tạo thành một sự tiên đề hóa đầy đủ. Điều này không đúng. Ví dụ xem xét hai TFDs X →By1B YX →By2B Y, trong đó yB1B là kiểu thời gian tƣơng ứng với những năm trƣớc 1990, và yB2B là kiểu thời gian tƣơng ứng với năm 1990 và các năm sau đó. Hai TFDs cùng chỉ ra rằng (adsbygoogle = window.adsbygoogle || []).push({});

X →BnamB Y. Tuy nhiên nam không phải kiểu mịn hơn yB1B hoặc yB2B.

gian là mịn tập hơn một tập các kiểu thời gian. Kiểu thời gian nam sẽ là một tập mịn hơn tập của các kiểu {yB1B, yB2B} bởi vì mỗi thời khắc của kiểu nam là đƣợc phủ bởi (hay bao gồm trong) một thời khắc của yB1B hoặc yB2B. Điều đó đƣợc phát biểu hình thức nhƣ sau:

Định nghĩa: Ta nói rằng một kiểu thời gian υmịn tập (collectively finer)

hơn một tập các kiểu thời gian {µB1B,...,µBnB}, ký hiệu bởi υ≼BCB {µB1B,...,µBnB}, nếu với mỗi số nguyên dƣơng i tồn tại 1 ≤ kn và một số nguyên dƣơng j sao cho υ(i) µBkB (j).

Chú ý rằng µµB1B kéo theo µ≼BCB {µB1B, µB2B} với bất kỳ µB2B nào.

Bốn tiên đề suy diễn cho các TFDs[6]:

(1)Phản xạ (Reflexivity)

Nếu YX, thì X →BµBY với mỗi kiểu thời gian µ nào.

(2)Gia tăng (Augmentation)

Nếu X →BµBY thì XZ →BµBYZ.

(3)Bắc cầu (Transitivity)

Nếu X →Bµ BYY →BµBZ thì, X →BµBZ.

(4)Kế thừa (Descendability):

Nếu XµB1BY,..., XµBnBY với n ≥ 1 thì X →BµBY với mỗi µ≼ {µB1B,...,µBnB}. Ba tiên đề đầu tiên là những tƣơng tự thời gian của các tiên đề Armstrong. Tiên đề về tính kế thừa phát biểu rằng nếu một hoặc nhiều TFDs (với cùng vế trái và phải: XY) theo các kiểu khác nhau thỏa mãn bởi một module thời gian M, khi đó một TFD (với cùng XY) theo bất kỳ kiểu thời gian nào mà là mịn tập hơn tập của các kiểu thời gian đó thì cũng thỏa mãn bởi M. Cụ thể là, nếu ta biết rằng Xυ Y là thỏa mãn bởi M, tiên đề (4) (Kế thừa) đảm bảo rằng với mỗi µµ mịn hơn υ,

Xµ Y đƣợc thỏa mãn bởi M. Điều đó dẫn đến ý nghĩa trực giác: nếu một chức danh của một thành viên không thể thay đổi trong một niên học, thì nó không thể thay đổi trong một tháng, hoặc một ngày của một niên học.

Cho F là tập hữu hạn các TFDs. Khái niệm về sự suy diễn các TFDs là tƣơng tự nhƣ trong lý thuyết về phụ thuộc hàm truyền thống và đƣợc định nghĩa hình thức nhƣ sau:

Định nghĩa: Phụ thuộc hàm X →Bµ Y, đƣợc suy diễn từ F, ký hiệu bởi

F XµY, nếu tồn tại một dãy chứng minh (proof sequence)f1, ... , fkB sao cho: (i) fk XµY

(ii) mỗi fi là một TFD hoặc thuộc F hoặc có đƣợc bằng cách sử dụng một trong bốn tiên đề trên các TFDs f1, ... , fi-1.

Định nghĩa: Phụ thuộc hàm X →BµB Y đƣợc suy dẫn logic bởi F, ký hiệu

F X →BµBY, nếu mọi module thời gian M mà thỏa mãn mỗi TFD trong F, thì cũng thỏa mãn X →BµBY.

Trong phần tiếp theo, chúng ta sẽ chứng minh rằng 4 tiên đề là xác đáng (nghĩa là chúng có thể sử dụng để suy dẫn logic ra chỉ các TFDs) và đủ (nghĩa là chúng có thể sử dụng để suy dẫn logic ra mọi TFDs). Trƣớc hết chúng ta có đƣợc kết quả về tính xác đáng.

Bổ đề 1: Bốntiên đề suy diễn là xác đáng.

Bằng cách sử dụng bốn tiên đề đã đƣợc nêu trên, ta có thể suy ra các quy tắc khác. Ví dụ, cho XµB1B Y YµB2BZ ta có thể suy ra Xglb(µB1B, µB2B) Z. (Ta gọi đó là tiên đề bắc cầu mở rộng). Thực vậy, vì glb(µB1B, µB2B) ≼µB1 Bvà glb(µB1B, µB2B) ≼ µB2B, theo tính kế thừa (4): Xglb(µB1B, µB2B) YYglb(µB1B, µB2B)Z do đó theo tiên đề (3) về tính bắc cầu

Xglb(µB1B, µB2B) Z. Một quy tắc khác có thể đƣợc rút ra nhƣ sau: cho XµB1B Y

YµB2BZ thì ta có Xglb(µB1B, µB2B) YZ. (Ta gọi đó là tiên đề hợp). Để thấy rõ điều đó, ta sử dụng phép gia tăng (2) để có XµB1B XYXYµB2B YZ tƣơng ứng từ

XµB1B Y YµB2B Z . Sau đó bằng cách áp dụng tiên đề bắc cầu mở rộng ta có

Các tiên đề suy diễn mở rộng cho TFDs:

(1)Bắc cầu mở rộng (Extended Transitivity):

 Nếu XµB1BY YµB2BZ thì Xglb(µB1B, µB2B)Z. (2)Hợp (Union): (adsbygoogle = window.adsbygoogle || []).push({});

 Nếu XµB1BY XµB2BZ thì Xglb(µB1B, µB2B) YZ.

Không giống nhƣ trƣờng hợp của các FDs truyến thống, áp dụng những tiên đề về TFD trên một tập hữu hạn F các TFDs có thể dẫn đến vô số các phụ thuộc hàm thời gian. Điều đó là do tiên đề phản xạ và tính kế thừa. Lý do tại sao tiên đề về tính kế thừa cho ra vô số các TFDs là: cho trƣớc một kiểu (hoặc một tập các kiểu), có thể có một số vô hạn các kiểu là các mịn tập (collectively finer) hơn kiểu (hoặc tập các kiểu) đã cho. Ví dụ, xem xét TFD: #KHOA_HOC Btuan BGIANG_VIEN. Cho tuanBiB là kiểu thời gian chỉ phủ tuần thứ i, nghĩa là tuanBiB (1) ánh xạ tới thời gian tuyệt đối của tuần thứ i, và tuanBiB (j) = Ø với mọi j >1. Khi đó rõ ràng là tuanBiB ≼tuan, và do đó tuaniBB ≼BCBtuan với mọi i ≥ 1. Bởi vậy, theo tiên đề về tính kế thừa ta có: #KHOA_HOC Btuani BGIANG_VIEN với mọi

i ≥ 1. Vậy nên có một số vô hạn các TFDs.

Để giải quyết đƣợc vấn đề một số vô hạn các TFDs đƣợc suy dẫn logic, ta đặt ra một số câu hỏi sau: Có chăng tồn tại một tập hữu hạn F‟ của các TFDs mà có tính chất là mọi TFD đƣợc suy dẫn logic bởi F có thể đƣợc suy ra từ F‟ chỉ bằng một lần áp dụng tiên đề tính kế thừa? Có thể tìm đƣợc tập F‟ đó không? Chúng ta sẽ trả lời chắc chắn cả hai câu hỏi đó qua việc phát triển ba tiên đề suy diễn hữu hạn đƣợc phát biểu nhƣ sau:

Ba tiên đề suy diễn hữu hạn cho các TFDs[6]:

(1) Phản xạ giới hạn: (Restricted Reflexivity)

 Nếu YX, thì X →Top Y. (3)Gia tăng: (Augmentation)

 Nếu XµY thì XZµYZ. (4)Bắc cầu mở rộng: (Extended Transitivity)

 Nếu XµB1BY YµB2BZ thì Xglb(µB1B, µB2B) Z

Nếu một TFD XµY đƣợc suy ra bằng cách sử dụng ba tiên đề hữu hạn từ tập F các TFDs, ta nói rằng F suy dẫn hữu hạn XµY , ký hiệu là F ⊢BfBXµY . Dễ dàng nhận thấy rằng nếu F⊢BfBXµY thì µglb của một số kiểu thời gian xuất hiện trong F. Vì F là hữu hạn, ta biết rằng chỉ có một số hữu hạn các TFDs mà chúng đƣợc suy dẫn từ F bằng cách sử dụng ba tiên đề suy diễn hữu hạn. Ta gọi tập của các TFDs đƣợc suy dẫn từ F bởi những tiên đề suy diễn hữu hạn này là một “bao đóng hữu hạn” của F đƣợc định nghĩa một cách hình thức nhƣ sau:

Định nghĩa (Bao đóng hữu hạn) [6]: Cho F là một tập các TFDs. Bao đóng hữu hạn của F, đƣợc ký hiệu bởi FP

+

P, là một tập của tất cả các TFDs có thể suy dẫn đƣợc từ F bằng ba tiên đề suy diễn hữu hạn. Hay FP

+

PBB= { XµY | F⊢BfBXµY }. Ví dụ:

 Cho TFD F = {A →BµBB, A →BυBB}.

Theo tiên đề gia tăng ta có: A →BµBAB, AB →BυBB, áp dụng tiên đề bắc cầu mở rộng ta có A →Bglb(µ, υ)BB. Do vậy A →Bglb(µ ,υ)BB thuộc FP

+

P.

Ba tiên đề hữu hạn là xác đáng vì mỗi tiên đề đó là đƣợc suy dẫn từ bốn tiên suy diễn và theo bổ đề 1, Bốn tiên đề suy diễn là xác đáng. Ta chỉ ra rằng Ba tiên đề suy diễn hữu hạn là đủ sai khác tính kế thừa; nghĩa là: nếu F Xµ Y , thì tồn tại

XµB1BY ,..., XµBmBY thuộc FP

+

PBBmà µ≼BCB {µB1B,....,µBmB}.

Vì vậy mặc dù có thể một số vô hạn các TFDs đƣợc suy dẫn logic bởi một tập hữu hạn F các TFDs, nguồn gốc duy nhất của sự vô hạn là có thể có vô số các kiểu thời gian mịn tập hơn một số kiểu thời gian xuất hiện trong bao đóng hữu hạn của F.

Trƣớc khi chứng minh về tính đầy đủ, chúng ta nêu một phép toán bổ trợ sẽ đƣợc dùng trong suốt chƣơng này. Với mỗi tập F các TFDs và một tập S các số

thực, tức là thời gian tuyệt đối, gọi  (F) là tập các phụ thuộc hàm phi thời gian mà có “tác động – effects” đến thời gian trong S. Một cách hình thức:

BSB(F) = { XY |  Xυ YFvà j(Sυ(j) ) }

Rõ ràng là,  BØB(F) dẫn đến “phiên bản phi thời gian” của tất cả TFDs thuộc

F. (adsbygoogle = window.adsbygoogle || []).push({});

Để chứng tỏ sự đầy đủ sai khác tính kế thừa, ta cần tới hai bổ đề sau. Bổ đề thứ nhất hình thức hóa mối quan hệ quan trọng giữa các TFDs và các phụ thuộc hàm không mang yếu tố thời gian tƣơng ứng.

Bổ đề 2: Cho F là tập các TFDs và XµY là một TFD mà FXµY . Khi đó với mọi i µ(i) ≠ Ø, ta có 

Bµ(i)B(F) ⊨X → Y. [6] Ta gọi tập G các TFDs là một hỗ trợ (support) cho X → Y nếu 

BØB (G) ⊨X

Y. Ta nói rằng Gtối tiểu nếu không có một tập con thực sự nào của G là một

hỗ trợ cho X → Y. Bổ đề thứ hai phát biểu hai tính chất liên hệ các kiểu thời gian của một TFD với các hỗ trợ tối tiểu của nó. Ta sử dụng ký pháp sau: Với mỗi tập G

các TFDs, định nghĩa glb(G) là một kiểu thời gian glb({υ|Vυ WG}). Chú ý rằng glb(G) = µBTopB nếu G = Ø.

(a)Nếu FB1BF là một hỗ trợ tối tiểu cho phụ thuộc hàm X → Y, khi đó

F⊢BfBXglb(FB1B) Y.

(b)Nếu FB1B,...,FBnB với FBiB F với i = 1,...,n đều là hỗ trợ tối tiểu cho X → Y

F X →BµBY thì µ≼BC B{µB1B,...,µBnB} trong đó µBi B= glb(FBiB) với i = 1,...,n. [6] Sự đầy đủ sai khác tính kế thừa của Ba tiên đề hữu hạn (trong định lý 1) đƣợc chứng minh nhƣ sau:

CHỨNG MINH:

Giả sử F Xµ Y . Theo định nghĩa của TFD, có tồn tại iµ(i) ≠ Ø. Theo Bổ đề 2, ta có  Bµ(i)B (F) ⊨ X → Y. Vì  Bµ(i)B (F)   BØB (F) nên ta có  B ØB (F) ⊨ X → Y. Vì 

Một phần của tài liệu Cơ sở dữ liệu thời gian (Trang 59 - 70)