Tải bản đầy đủ (.pdf) (43 trang)

Bài giảng Đặc tả hình thức: Chương 2 - Nguyễn Thị Minh Tuyền

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.74 MB, 43 trang )

LOGO

Đặc tả hình thức
Tập hợp và quan hệ

Nguyễn Thị Minh Tuyền

Nguyễn Thị Minh Tuyền

1


Tập hợp (Set)
v Tập các đối tượng rời rạc (khơng có thứ
tự).
v Một tập hợp được tạo ra từ một miền
(domain) các đối tượng mà trong đó tất cả
các đối tượng có cùng kiểu (type)
§  Tập hợp có tính đồng nhất.

v Ví dụ:
§ 
§ 
§ 
§ 

Miền đối
tượng

{2,4,5,6,…} tập hợp các số nguyên.
{red, yellow, blue} tập hợp các màu.


{true, false}
tập hợp các giá trị boolean.
{red, true, 2} khơng phải tập hợp.

Nguyễn Thị Minh Tuyền

2

Đặc tả hình thức


Giá trị của một tập hợp
v Là tập hợp các phần tử của tập hợp.
v Hai tập A và B là bằng nhau nếu
§ 
§ 
§ 
§ 

Mọi phần tử của A đều là phần tử của B.
Mọi phần tử của B đều là phần tử của A.
Ký hiệu: A = B
Ví dụ:
•  {a, b, c} = {c, b, a}

v x

S nghĩa là “x là một phần t ca S.

Đ Vớ d:

ã x {x, y, z}
ã 50 N
Nguyễn Thị Minh Tuyền

3

Đặc tả hình thức


Giá trị của một tập hợp
v x ∉ S nghĩa là “x khơng phải là một phần
tử của S”.
§  Ví dụ: 10∉{1,7,20}

v Tập rỗng, ký hiệu {}

Nguyễn Thị Minh Tuyền

4

Đặc tả hình thức


Định nghĩa tập hợp[1]
v Định nghĩa tập hợp bằng cách liệt kê
§  PrimaryColors == {red, yellow, blue}
§  Boolean == {true, false}
§  Evens == {…, -4, -2, 0, 2, 4, …}

Nguyễn Thị Minh Tuyền


5

Đặc tả hình thức


Định nghĩa tập hợp[2]
v Định nghĩa tập hợp bằng cách mô tả thuộc
tính mà các phần tử của nó phải có.
v Ký hiệu:
§  { x : S | P(x) }
§  Hình thành một tập các phần tử từ một tập hợp/miền
S trong đó các phần tử phải thỏa mãn vị từ
(predicate) P.

v Ví dụ:
§  {x : N | x < 10}
Các số nguyên nhỏ hơn 10
§  {x : Z | ( y : Z | x = 2y)} Tập các số nguyên chẵn
§  {x : N | false}
Tập rỗng các số tự nhiên
Nguyễn Thị Minh Tuyền

6

Đặc tả hình thức


Cardinality
v Cardinality (#) của một tập hữu hạn là số

phần tử của tập đó.
v Ví dụ:
§  # {red, yellow, blue} = 3
§  # {1, 23} = 2
§  # Z = ?

v Cardinality cũng có thể được dùng để định
nghĩa các tập vơ hạn nhưng ở đây chúng
ta chỉ xem xét cardinality cho các tập hữu
hạn.

Nguyễn Thị Minh Tuyền

7

Đặc tả hình thức


Các phép toán trên tập hợp
v Hợp (Union):

X ! Y ! {e | e " X

or e " Y }

{red} ! {blue} = {red, blue}

v Giao (Intersection)
X !Y " {e | e # X


and e # Y }

{red, blue}!{blue, yellow} = {blue}

v Hiệu(Difference)
X \ Y ! {e | e " X

and e # Y }

{red, yellow, blue} \ {blue, yellow} = {red}

Nguyễn Thị Minh Tuyền

8

Đặc tả hình thức


Bài tập
v Chứng minh rằng
§  #(A∩B) + #(A

Nguyễn Thị Minh Tuyền

B) = #(A) + #(B)

9

Đặc tả hình thức



Tập con (subset)
v Tập con là tập hợp chứa các phần tử của
một tập hợp khác
§  X

Y iff {e | e

X

e

Y}

v Ví dụ:
{1, 7, 9,12, 25} ! Z
{1, 3, 7} ! {1, 2, 3, 5, 7}

v Một tập con nghiêm ngặt S của một tập
hợp A được định nghĩa bằng
§  S

A

v So sánh hai tập hợp
§  A = B iff {A
Nguyễn Thị Minh Tuyền

B⋀B


A}
10

Đặc tả hình thức


Tập lũy thừa (Power Set)
v Tập lỹ thừa của một tập hợp S (viết là
Pow(S)) là tập hợp các tập con của S.
Pow(S) ! {e | e " S}
v Ví dụ:
Pow({a, b, c}) =
{!,{a},{b},{c},
{a, b},{a, c},{b, c}
{abc}}
v Chú ý: với mọi tập S, ∅
§  vì vậy, ∅ Pow(S)

Nguyễn Thị Minh Tuyền

11

S

Đặc tả hình thức


Bài tập
v Biểu diễn các tập con sau bằng cách
mô tả thuộc tính của nó

§  Tập các số lẻ
§  Tập các số lẻ > 0
§  Tập bình phương của các số nguyên.Ví dụ {1,4,9,…}

v Biểu diễn các thuộc tính trên tập hợp
mà khơng sử dụng tốn tử #
§ 
§ 
§ 
§ 
§ 

Tập có ít nhất 1 phần tử
Tập rỗng
Tập có chính xác 1 phần tử
Tập có ít nhất 2 phần tử
Tập có chính xác hai phần tử

Nguyễn Thị Minh Tuyền

12

Đặc tả hình thức


Phân hoạch tập hợp (Set Partitioning)
v Các tập hợp không giao nhau nếu chúng khơng
có chung phần tử nào.

v Khi mơ hình hóa, chúng ta sẽ lấy một tập S nào

đó và chia những phần tử của nó thành những
tập con khơng giao nhau thì gọi là phân hoạch
tập hợp.
v Mỗi phần tử của S thuộc về duy nhất một tập
hợp.

Nguyễn Thị Minh Tuyền

Soup

Chips & Salsa

Steak Pizza

Sweet & Sour Pork

Cake

Ice Cream

Apple pie
13

Đặc tả hình thức


Ví dụ
v Tập hợp ban đầu: Person, Residence
§  Phân chia Person thành Child, Student, Adult
Child

Adult
Person
Student

§  Phân chia Residence thành Home, DormRoom,
Apartment
Residence

Home

DormRoom
Appart
Nguyễn Thị Minh Tuyền

14

Đặc tả hình thức


Bài tập
v Biểu diễn các thuộc tính sau của cặp
các tập hợp
§  Hai tập hợp khơng giao nhau
§  Hai tập hợp được hình thành bằng cách phân hoạch
một tập thứ ba.

Nguyễn Thị Minh Tuyền

15


Đặc tả hình thức


Biểu diễn quan hệ (relationship)
v Hữu ích khi chỉ đến các giá trị có cấu trúc
§  Một nhóm các giá trị được hạn chế/giới hạn cùng
nhau
§  Ví dụ: struct, record, object fields

v Alloy là một ngơn ngữ tính tính tốn dựa
vào các quan hệ.
v Tất cả các mơ hình của Alloy sẽ được xây
dựng dựa vào quan hệ.

Nguyễn Thị Minh Tuyền

16

Đặc tả hình thức


Product
v Cho sẵn hai tập A và B, product của A và
B, thường ký hiệu là A x B, là tập tất cả
các cặp có thể (a,b) sao cho
v Ví dụ:

A ! B " {(a, b) | a # A and b # B }

§  PrimaryColor: {red, green, blue}

§  Boolean: {true, false}
§  PrimaryColor x Boolean:

!
%
## (red, true), (red, false), ##
" (blue, true), (blue, false), &
# (green, true), (green, false) #
#$
#'
Nguyễn Thị Minh Tuyền

17

Đặc tả hình thức


Quan hệ - Ví dụ
v Khái niệm về quan hệ khá thơng dụng
trong đời sống hằng ngày.
v Ví dụ:
§  X là tập các phụ nữ, Y là tập các nam giới
§  Quan hệ vợ-chồng R có thể được xem như là một
quan hệ của X và Y.
§  Đối với một quý bà: x ! X
§  Đối với một q ơng: y ! Y
§  x liên quan tới y bởi R nếu x là vợ của y.
§  Để định nghĩa quan hệ R: liệt kê tập hợp tất cả các
cặp có thứ tự(x,y) sao cho x liên quan tới y bởi R. Tập
hợp các cặp có thứ tự như vậy là một tập con của

X x Y.
Nguyễn Thị Minh Tuyền

18

Đặc tả hình thức


Quan hệ nhị phân (Binary relations)
v Cho hai tập không rỗng A và B. Một quan
hệ nhị phân R từ A đến B là một tập con
R ! A"B
v Hay nói cách khác, R là một phần tử của
Pow(A x B),

Nguyễn Thị Minh Tuyền

19

Đặc tả hình thức


Quan hệ bậc n
v Một quan hệ bậc ba (ternary relation) R
giữa A, B và C là một phần tử của Pow(A
x B x C).
v Ví dụ:
§  FavoriteBeer : Person x Beer x Price
§  FavoriteBeer == {(John, Miller, $2), (Ted,Heineken,
$4), (Steve, Miller, $2)}


v Quan hệ bậc N (N-ary relations) với n>3
được định nghĩa tương tự (n là bậc của
quan hệ).

Nguyễn Thị Minh Tuyền

20

Đặc tả hình thức


Quan hệ nhị phân - Ví dụ 1
§  Một gia đình A có 5 người con: Amy, Bob, Charlie,
Debbie, and Eric.
§  A = (a, b, c, d, e).
§  Quan hệ brother - sister Rbs:
Rbs={(b, a), (b, d), (c, a), (c, d), (e, a), (e, d)}
§  Quan hệ sister-brother Rsb:
Rsb = {(a, b), (a, c), (a, e), (d, b), (d, c), (d, e)}
§  Quan hệ brother Rb:
Rb={(b, b), (b, c), (b, e), (c, b), (c, c), (c, e), (e, b), (e, c),
(e, e)}
§  Quan hệ sister Rs:
Rs={ (a, a), (a, d), (d, a), (d, d)}
Nguyễn Thị Minh Tuyền

21

Đặc tả hình thức



Quan hệ nhị phân - Ví dụ 2
v Đồ thị của phương trình
2
2
x
y
+
=1
9 4
Là một quan hệ nhị phân trên R. Đồ thị
là một hình ellipse.
v Quan hệ nhỏ hơn (aLà một quan hệ nhị phân trên R.
Vì nó là một tập con của R2=RxR, quan
hệ là tập
{(a,b) ! R 2 | a is less than b}.
Nguyễn Thị Minh Tuyền

22

Đặc tả hình thức


Quan hệ nhị phân - Ví dụ 3
v Một hàm f : X -> Y
v Được xem là một quan hệ nhị phân từ
X đến Y. Quan hệ nhị phân là đồ thị
của nó.

G( f ) := {(x, f (x)) | x ! X} " X #Y

Nguyễn Thị Minh Tuyền

23

Đặc tả hình thức


Quan hệ nhị phân
v Miền định nghĩa (definition domain) của
quan hệ
§  Tập những phần tử đầu tiên

v Ví dụ:
§  Rbs={(b, a), (b, d), (c, a), (c, d), (e, a), (e, d)}
§  domain(Rbs) = {b, c, e}

v Ảnh (image) của quan hệ
§  Tập những phần tử cuối cùng.

v Ví dụ:
§  image (Rbs) = {a, d}
§  Với {(1,blue), (2,blue), (1,red)}: miền? ảnh?
Nguyễn Thị Minh Tuyền

24

Đặc tả hình thức



Cấu trúc những quan hệ thường gặp
One-to-Many

Many-to-One
Many

One

Many
One

One-to-One

Many-to-Many
Many
Many

One

Nguyễn Thị Minh Tuyền

One

25

Đặc tả hình thức



×