www.facebook.com/hocthemtoan
Trang 1CẤU TRÚC RỜI RẠC
n Giảng viên:
§ Cao Thanh Tình (Email: tinhct@uit.edu.vn)
§ Bộ môn Toán Lý – ĐHCNTT – ĐHQGTPHCM
Trang 3Mệnh đề
Định nghĩa: Mệnh đề là một khẳng định có giá trị chân lý xác định, đúng hoặc sai.
Câu hỏi, câu cảm thán, mệnh lệnh… không là mệnh đề.
Ví dụ:
- Đại học CNTT trực thuộc ĐHQG TP.HCM.
- 1+7 =8.
- Hôm nay em đẹp quá! (không là mệnh đề)
- Hôm nay ngày thứ mấy? (không là mệnh đề)
Chương 1 Cơ sở lôgic Chương 1 Cơ sở lôgic
3
Trang 4Mệnh đề
n Ký hiệu: người ta dùng các ký hiệu P, Q, R…
để chỉ mệnh đề.
n Chân trị của mệnh đề: Một mệnh đề chỉ có thể đúng hoặc sai, không thể đồng thời vừa đúng vừa sai Khi mệnh đề P đúng ta nói P
có chân trị đúng, ngược lại ta nói P có chân trị sai.
n Chân trị đúng và chân trị sai sẽ được ký hiệu lần lượt là 1(hay Đ,T) và 0(hay S,F)
Chương 1 Cơ sở lôgic
Trang 5Mệnh đề
Phân loại: gồm 2 loại
Ø Mệnh đề phức hợp: là mệnh đề được xây dựng từ các mệnh đề khác nhờ liên kết bằng các liên từ (và, hay, khi và chỉ khi,…) hoặc trạng từ “không”
Ø Mệnh đề sơ cấp (nguyên thủy): Là mệnh đề không thể xây dựng từ các mệnh đề khác thông qua liên từ hoặc trạng từ “không”
Chương 1 Cơ sở lôgic
Trang 6Mệnh đề
Ví dụ:
- 2 không là số nguyên tố
- 2 là số nguyên tố
- Nếu 3>4 thì trời mưa
- An đang xem phim hay An đang học bài
- Vấn đề này cần được xem xét cẩn thận
- x + 1 = 2
- x + y = z
Chương 1 Cơ sở lôgic
Trang 7Các phép toán : có 5 phép toán
1 Phép phủ định: phủ định của mệnh đề P được ký hiệu là ¬ P hay (đọc là “không” P hay “phủ định của” P).
1 0
Mệnh đề
Chương 1 Cơ sở lôgic
P P
Trang 82 Phép hội (nối liền, giao): của hai mệnh đề P,
Q được kí hiệu bởi P ∧ Q (đọc là “P và Q”), là mệnh đề xác định bởi : P ∧ Q đúng khi và chỉ khi P và Q đồng thời đúng.
Bảng chân trị
Ví dụ:
P: “Hôm nay là chủ nhật”
Q: “Hôm nay trời mưa”
P ∧ Q: “ Hôm nay là chủ nhật và trời mưa”
P Q P ∧Q
0 0 1 1
0 1 0 1
0 0 0 1
Mệnh đề
Chương 1 Cơ sở lôgic
Trang 93 Phép tuyển (nối rời, hợp): của hai mệnh đề
P, Q được kí hiệu bởi P ∨ Q (đọc là “P hay Q”),
là mệnh đề xác định bởi: P ∨ Q sai khi và chỉ khi P và Q đồng thời sai.
0 1 0 1
0 1 1 1
Mệnh đề
Chương 1 Cơ sở lôgic
Trang 104 Phép kéo theo: Mệnh đề P kéo theo Q của hai mệnh đề P và Q, kí hiệu bởi P → Q (đọc là
“P kéo theo Q” hay “Nếu P thì Q” hay “P là điều kiện đủ của Q” hay “Q là điều kiện cần của P”)
là mệnh đề xác định bởi: P → Q sai khi và chỉ khi P đúng mà Q sai.
0 1 0 1
1 1 0 1
Mệnh đề
Chương 1 Cơ sở lôgic
Trang 115 Phép kéo theo hai chiều: Mệnh đề P kéo theo
Q và ngược lại của hai mệnh đề P và Q, ký hiệu bởi P ↔ Q (đọc là “P nếu và chỉ nếu Q” hay “P khi và chỉ khi Q” hay “P là điều kiện cần
và đủ của Q”), là mệnh đề xác định bởi: P ↔ Q đúng khi và chỉ khi P và Q có cùng chân trị
Bảng chân trị
Ví dụ: 6 chia hết cho 3 khi
và chi khi 6 chia hết cho 2
P Q P ↔Q
0 0 1 1
0 1 0 1
1 0 0 1
Mệnh đề
Chương 1 Cơ sở lôgic
Trang 12Định nghĩa: là một biểu thức được cấu tạo từ:
- Các mệnh đề (các hằng mệnh đề)
- Các biến mệnh đề p, q, r, …, tức là các biến lấy giá trị là các mệnh đề nào đó
- Các phép toán ¬ , ∧ , ∨ , → , ↔ và dấu đóng
mở ngoặc ().
Ví dụ:
E(p,q) = ¬ ( ¬ p ∨ q) F(p,q,r) = (p ∧ q) → ¬ (q ∨ r)
Dạng mệnh đề
Chương 1 Cơ sở lôgic
Trang 13Độ ưu tiên của các toán tử logic:
dòng, chưa kể dòng tiêu đề.
Dạng mệnh đề
Chương 1 Cơ sở lôgic
2n
Trang 14Độ ưu tiên của các toán tử logic:
dòng, chưa kể dòng tiêu đề.
Dạng mệnh đề
Chương 1 Cơ sở lôgic
2n
Trang 15Ví dụ: E(p,q,r) =(p ∨ q) → r Ta có bảng chân trị sau
Dạng mệnh đề
Chương 1 Cơ sở lôgic
Trang 16Tương đương logic: Hai dạng mệnh đề E và F được gọi là tương đương logic nếu chúng có cùng bảng chân trị.
Ký hiệu E ⇔ F
Ví dụ: ¬ (p ∨ q) ⇔ ¬ p ∧ ¬ q Dạng mệnh đề được gọi là hằng đúng nếu nó luôn lấy giá trị 1
Dạng mệnh đề gọi là hằng sai (hay mâu thuẩn) nếu nó luôn lấy giá trị 0.
Dạng mệnh đề
Chương 1 Cơ sở lôgic
Trang 17Định lý: Hai dạng mệnh đề E và F tương đương với nhau khi và chỉ khi E ↔ F là hằng đúng.
Hệ quả logic: F được gọi là hệ quả logic của E nếu E → F là hằng đúng.
Ký hiệu E ⇒ F
Ví dụ: ¬ (p ∨ q) ⇒ ¬ p
Dạng mệnh đề
Chương 1 Cơ sở lôgic
Trang 19Chương 1 Cơ sở lôgic
Trang 20Dạng mệnh đề
Chương 1 Cơ sở lôgic
Trang 211 Qui tắc khẳng định (Modus Ponens):
[(p → q) ∧ p] → q [(p ∨ q) ∧ ¬ p] → q
Qui tắc suy diễn
Chương 1 Cơ sở lôgic
p → q p
∴ q
p ∨ q
¬ p
∴ q
Trang 222 Qui tắc tam đoạn luận:
[(p → q) ∧ (p → r)] → (p → r)
Ví dụ:
• Nếu trời mưa thì đường ướt
• Nếu đường ướt thì đường trơn Suy ra nếu trời mưa thì đường trơn.
Qui tắc suy diễn
Chương 1 Cơ sở lôgic
p → q
q → r
∴ p → r
Trang 233 Qui tắc phủ định:
[(p → q) ∧ ¬ q ] → ¬ p
Ví dụ:
• Nếu Sơn đi học đầy đủ thì Sơn đậu toán rời rạc.
• Sơn không đậu toán rời rạc.
Suy ra: Sơn không đi học đầy đủ.
Qui tắc suy diễn
Chương 1 Cơ sở lôgic
p → q
¬ q
∴¬ p
Trang 244 Qui tắc phản chứng:
Ví dụ:
Qui tắc suy diễn
Chương 1 Cơ sở lôgic
Trang 255 Qui tắc chứng minh theo trường hợp :
[(p → r) ∧ (q → r)] → [(p ∨ q) → r]
6 Phản ví dụ:
Để chứng minh một phép suy luận là sai hay không là một hằng đúng Ta chỉ cần chỉ ra một phản ví dụ.
Qui tắc suy diễn
Chương 1 Cơ sở lôgic
Trang 26Ví dụ: Ông Minh nói rằngnếu không được tăng lươngthì ông ta sẽ nghỉ việc Mặtkhác, nếu ông ấy nghỉ việc
và vợ ông ấy bị mất việc thìphải bán xe.Biết rằng nếu
vợ ông Minh hay đi làm trễthì trước sau gì cũng sẽ bịmất việc và cuối cùng ôngMinh đã được tăng lương
Suy ra nếu ông Minhkhông bán xe thì vợ ông ta
đã không đi làm trễ
Qui tắc suy diễn
Chương 1 Cơ sở lôgic
p : ông Minh được tăng lương.
q : ông Minh nghỉ việc.
r : vợ ông Minh mất việc.
s : gia đình phải bán xe.
t : vợ ông hay đi làm trể.
¬p → q
q ∧ r → s
t → r p
∴¬ s →¬ t
Trang 27Ví dụ: Giải thích các suy luận sau:
Qui tắc suy diễn
Chương 1 Cơ sở lôgic
Trang 28Định nghĩa:
Vị từ là một khẳng định p(x,y, ), trong đó x,y là các biến thuộc tập hợp A, B, cho trước sao cho:
- Bản thân p(x,y, ) không phải là mệnh đề
- Nếu thay x,y, thành giá trị cụ thể thì p(x,y, ) là mệnh đề.
Trang 29Các phép toán trên vị từ
Cho trước các vị từ p(x), q(x) theo một biến x ∈ A Khi ấy, ta cũng có các phép toán tương ứng như trên mệnh đề:
v Phủ định: ¬ p(x)
v Phép nối liền (hội, giao): p(x) ∧ q(x)
v Phép nối rời (tuyển, hợp): p(x) ∨ q(x)
v Phép kéo theo: p(x) → q(x)
v Phép kéo theo hai chiều: p(x) ↔ q(x)
Vị từ - Lượng từ
Chương 1 Cơ sở lôgic
Trang 30Cho p(x) là một vị từ theo một biến xác định trên
A Các mệnh đề lượng từ hóa của p(x) được định nghĩa như sau:
- Mệnh đề “Với mọi x thuộc A, p(x) ” , kí hiệu: “ ∀ x
∈ A, p(x)” là mđ đúng khi và chỉ khi p(a) luôn đúng với mọi giá trị a ∈ A ∀ đgl lượng từ phổ dụng
- Mệnh đề “Tồn tại (có ít nhất một) x thuộc A, p(x)” kí hiệu “ ∃ x ∈ A, p(x)” là mệnh đề đúng khi và chỉ khi có ít nhất một giá trị x= a’ ∈ A nào đó sao cho mệnh đề p(a’) đúng ∃ đgl lượng từ tồn tại
Vị từ - Lượng từ
Chương 1 Cơ sở lôgic
Trang 31Cho p(x, y) là một vị từ theo hai biến x, y xác định trên A × B Ta định nghĩa các mệnh đề lượng từ hóa của p(x, y) như sau:
Chương 1 Cơ sở lôgic
Trang 32Ví dụ: Các mệnh đề sau đúng hay sai?
Trang 33Chương 1 Cơ sở lôgic
Trang 34Với vị từ theo 1 biến ta có :
Với vị từ theo 2 biến
Trang 35Ví dụ phủ định các mệnh đề sau
- “ ∀ x ∈ A, 2x + 1 ≤ 0”
- “ ∀ε > 0, ∃δ > 0, ∀ x ∈ R, | x – a | < δ ⇒ | f(x) – f(a) | < ε ”
Vị từ - Lượng từ
Trang 37TOÁN RỜI RẠC ỨNG DỤNG TRONG TIN HỌC
Giảng viên:
Cao Thanh Tình (Email: tinhct@uit.edu.vn)
Bộ môn Toán Lý – ĐHCNTT – ĐHQGTPHCM
Trang 38Nội dung môn học
Phần 1: Lý thuyết đồ thị
Đồ thị phẳng và bài toán tô màu đồ thị
Trang 39Các khái niệm cơ bản
Trang 40Các khái niệm cơ bản
Cạnh bội (song song)
Hai cạnh phân biệt
cùng tương ứng với một cặp đỉnh
Trang 41Các khái niệm cơ bản
Trang 42Biểu diễn đồ thị
Biểu diễn hình học
đỉnh liên thuộc với nó
Biểu diễn bằng ma trận
Ma trận kề
Trang 44Biểu diễn đồ thị
Ma trận kề
Ví dụ 1
Trang 46 m ij = 1: Nếu cạnh ej liên thuộc với v i của G
m ij = 0: Nếu cạnh ej không liên thuộc với v i của G
Tính chất
trân liên thuộc Các vòng ứng với một cột có đúng một phần tử bằng 1 ứng
Trang 47Biểu diễn đồ thị
Ma liên thuộc
Ví dụ
Trang 49Các khái niệm cơ bản
g
Trang 50Các khái niệm cơ bản
Trang 51Các khái niệm cơ bản
Trong mọi đồ thị G = (V, E), nếu số đỉnh nhiều hơn 2
và có đúng hai đỉnh cùng bậc thì hai đỉnh này không đồng thời bằng 0 hoặc n-1
Trang 52Các khái niệm cơ bản
Chứng minh và giải toán bằng phương
pháp đồ thị
1. Xây dựng đồ thị mô tả đầy đủ thông tin của bài
toán
Mỗi đỉnh v V các đối tượng trong bài toán
Mỗi cạnh e E mối quan hệ giữa hai đối tượng
Vẽ đồ thị mô tả bài toán
2. Sử dụng các định nghĩa, tính chất, định lý, …
suy ra điều cần phải chứng minh
Trang 53Các khái niệm cơ bản
Một số bài toán ví dụ
Chứng minh rằng trong một cuộc họp tùy ý có ít
nhất 2 đại biểu tham gia trở lên, luôn có ít nhất hai đại biểu mà họ có số người quen bằng nhau trong các đại biểu đến dự họp
Trang 54Các khái niệm cơ bản
Một số bài toán ví dụ
Chứng minh rằng số người mà mỗi người đã có một
số lẻ lần bắt tay nhau trên trái đất là một con số chẵn.
Trang 61Một số đồ thị đặc biệt
Một đồ thị G được gọi là đồ thị lưỡng phân nếu tập các
đỉnh của G có thể phân thành 2 tập hợp không rỗng, rời nhau sao cho mỗi cạnh của G nối một đỉnh thuộc tập này đến một đỉnh thuộc tập kia
Ký hiệu: Km,n
Trang 62Sự đẳng cấu giữa các đồ thị
Định nghĩa
G(V, E) đẳng cầu với G’(V’, E’), (GG’) nếu
Tồn tại song ánh f: V V’
Bảo toàn quan hệ liền kề:
uv E f(u)f(v) E’
|V| = |V’|
|E| = |E’|
deg(v) = deg(f(v)) v V
Trang 64Sự đẳng cấu giữa các đồ thị
Chứng minh 2 đồ thị đẳng cấu
Ví dụ 2
Trang 68( deg
|
| 1
|
| 1
E v
v
v i
v v
v v
( deg
Trang 69 Hỏi sau khi có kết quả thi đấu của tất cả các đội có thể
có trường hợp bất kỳ đội nào trong 09 đội này cũng
đều thắng 05 đội khác trong nhóm được không?
Trang 70Đường đi và chu trình
Trang 71Đường đi và chu trình
Đường đi
Đường đi đơn (giản)
Đường đi sơ cấp
Đường sơ cấp Đường đi đi đơn
Trang 72Đường đi và chu trình
Chu trình đơn giản
Chu trình sơ cấp
Trang 73Đường đi và chu trình
Định lý 1.6
G = (V, E) là một đồ thị vô hướng
Số đỉnh lớn hơn hoặc bằng 3
Bậc của mọi đỉnh đều lớn hơn hoặc bằng 2
thì trong G luôn tồn tại một chu trình sơ cấp
Định lý 1.7
G = (V, E) là một đồ thị vô hướng
Số đỉnh lớn hơn hoặc bằng 4
Bậc của mọi đỉnh đều lớn hơn hoặc bằng 3
thì trong G luôn tồn tại một chu trình sơ cấp có độ dài chẵn
Trang 74Tính liên thông
Tính liên thông trong đồ thị
vô hướng
Một đồ thị liên thông nếu
giữa hai đỉnh phân biệt bất kỳ đều có đường đi
Trang 77 Đồ thị có hướng G được gọi là liên thông yếu nếu đồ thị vô hướng tương ứng với nó là vô hướng liên thông
Trang 81TOÁN RỜI RẠC ỨNG DỤNG TRONG TIN HỌC
CÁC BÀI TOÁN VỀ ĐƯỜNG ĐI
Trang 82Chu trình và đường đi Euler
Có thể xuất phát tại một
điểm nào đó trong thành
phố, đi qua tất cả 7 cây
cầu, mỗi cây một lần, rồi
Trang 83Leonhard Euler
1707 - 1783
Leonhard Euler (15/04/1707 – 18/9/1783) là một nhà toán học và nhà vật lý học Thụy Sĩ Ông (cùng với Archimedes và Newton) được xem là một trong những nhà toán học lừng lẫy nhất Ông là người đầu tiên sử dụng từ
"hàm số" (được Gottfried Leibniz định nghĩa trong năm 1694) để miêu tả một biểu thức có chứa các đối số, như y = F(x) Ông cũng được xem là người đầu tiên dùng vi tích phân trong môn vật lý.
Trang 84Leonhard Euler
1707 - 1783
đồng toán học từ nhỏ Ông làm giáo sư toán học tại Sankt-Peterburg, sau đó tại Berlin, rồi trở lại Sankt-
cả các tài liệu ông viết chứa đầy 75 tập Ông là nhà
cuộc đời, nhưng khoảng thời gian đó là lúc ông cho
ra hơn nửa số bài ông viết.
trên Mặt Trăng và cho tiểu hành tinh 2002.
Trang 85Chu trình và đường đi Euler
Trang 86Chu trình và đường đi Euler
Đường đi Euler
Đường đi đơn chứa tất cả
Trang 87Chu trình và đường đi Euler
Ví dụ: Chỉ ra đường đi và chu trình (nếu có) trong các đồ
thị sau đây?
Trang 88Chu trình và đường đi Euler
Trong đồ thị vô hướng
Định lý về chu trình Euler
Một đa đồ thị liên thông G=(V, E) có chu trình Euler khi và chỉ khi mỗi đỉnh của nó đều có bậc chẵn
Chứng minh
Trang 89Chu trình và đường đi Euler
Trong đồ thị vô hướng
Qui tắc 1:
Xóa đỉnh cô lập (nếu có)
Qui tắc 2
Tại mỗi đỉnh, ta chỉ đi theo một cạnh là cầu nếu không có
sự lựa chọn nào khác
Trang 90Chu trình và đường đi Euler
Trong đồ thị vô hướng
Ví dụ
Trang 91Chu trình và đường đi Euler
Trong đồ thị vô hướng
Đa đồ thị liên thông G có đường đi Euler, không có chu trình Euler khi và chỉ khi G có đúng 2 đỉnh bậc lẻ
Chứng minh
Trang 92Chu trình và đường đi Euler
Trong đồ thị vô hướng
Ví dụ: Đồ thị nào có đường đi Euler?
Trang 93Chu trình và đường đi Euler
Trang 94Chu trình và đường đi Euler
Trong đồ thị có hướng
Định lý về chu trình Euler
Ví dụ: Đồ thị nào có chu trình Euler?
Trang 95Chu trình và đường đi Euler
Trang 96Chu trình và đường đi Euler
Trong đồ thị có hướng
Ví dụ
Trang 97Chu trình và đường đi Euler
Trong đồ thị có hướng
Ví dụ
Trang 98Chu trình và đường đi Euler
Trang 99Chu trình và đường đi Euler
Bài tập
Tổng thư ký Đại hội đồng Liên hợp quốc triệu tập
một cuộc họp có N nhà ngoại giao của N tổ chứctham gia Các đại diện ngoại giao được bố trí ngồiquanh một bàn tròn Giữa một số tổ chức có quan hệcăng thẳng, vì vậy không thể xếp họ ngồi cạnh nhauđược Hãy lập trình giúp Tổng thư ký Liên hợp quốc
bố trí chỗ ngồi quanh bàn họp
Trang 100Chu trình & đường đi Hamilton
Đồ thị Hamilton
Đồ thị có chứa chu trình Hamilton
Trang 101Chu trình & đường đi Hamilton
Khi đó G có chu trình Hamilton
Chứng minh
Trang 102Chu trình & đường đi Hamilton
Trang 103Chu trình & đường đi Hamilton
Trang 104Chu trình & đường đi Hamilton
Chu trình Hamilton
Ví dụ
Trang 105Chu trình & đường đi Hamilton
Chu trình Hamilton
Qui tắc 1: Nếu tồn tại một đỉnh v của G có d(v)<=1 thì đồ thị G không có chu trình Hamilton.
Qui tắc 2: Nếu đỉnh v có bậc là 2 thì cả 2 cạnh tới v đều phải thuộc chu trình Hamilton.
Qui tắc 3: Chu trình Hamilton không chứa bất kỳ chu trình con thực sự nào.
Qui tắc 4: Trong quá trình xây dựng chu trình Hamilton,
Hamilton rồi thì không thể lấy thêm cạnh nào tới v nữa, do
đó có thể xóa mọi cạnh còn lại tới v.
Trang 106Chu trình & đường đi Hamilton
Trang 107Chu trình & đường đi Hamilton
Chu trình Hamilton
Ví dụ 2: Đồ thị sau có chu trình Hamilton không?
c
Trang 108Chu trình & đường đi Hamilton
Chu trình Hamilton
Ví dụ 3: Đồ thị sau có chu trình Hamilton không?
I
Trang 109Chu trình & đường đi Hamilton
Đường đi Hamilton
Đường đi sơ cấp đi qua tất cả các đỉnh của đồ thị G,
mỗi đỉnh đúng một lần
Ví dụ
Trang 110Chu trình & đường đi Hamilton
Đường đi Hamilton
Mọi đồ thị có hướng đầy đủ (đồ thị vô hướng tương
ứng là đầy đủ) đều có đường đi Hamilton
Trang 111Chu trình & đường đi Hamilton
Mã đi tuần
Tìm hành trình của quân mã từ ô xuất phát, đi qua tất cả
các ô, mỗi ô đúng một lần.
Trang 112Bài toán đường đi ngắn nhất
Mở đầu
không đường đi giữa 2 đỉnh
Lựa chọn đường đi với chi phí ít nhất
Trang 113Bài toán đường đi ngắn nhất
Mô hình hóa bài toán về đồ thị có trọng số
Đồ thị có hướng G = (V,E) với hàm trọng số W: E R
(gán các giá trị thực cho các cạnh)
Trọng số của đường đi p = v1 v2 … vk là
Đường đi ngắn nhất là đường đi có trọng số nhỏ nhất
1
1 1
k
i i i
Trang 114Bài toán đường đi ngắn nhất
Mở đầu
Trang 115Bài toán đường đi ngắn nhất
Thuật toán Dijkstra
Ở mỗi bước, chọn đỉnh u ”gần” nhất, thêm vào tập S
và cập nhật độ dài đường đi qua các cạnh đi ra từ u
Trang 116Bài toán đường đi ngắn nhất
Thuật toán Dijkstra
Trang 117Bài toán đường đi ngắn nhất
Thuật toán Dijkstra
Chọn u sao cho L(u) = min{ L(v) | v S}
Đưa u vào tập S: S = S {u}
Bước 4: Sửa nhãn
Với mỗi đỉnh v kề với u
L(v) = min { L(v); L(u) + w(uv) }
Bước 5: Quay lại Bước 2
Trang 119Bài toán đường đi ngắn nhất
Thuật toán tìm đường đi ngắn nhất
Thuật toán Dijkstra
Định lý
đỉnh trong đơn đồ thị liên thông, có trọng số.
Nhận xét
từ đỉnh xuất phát đến nó.
Trang 120Bài toán đường đi ngắn nhất
Thuật toán tìm đường đi ngắn nhất
Thuật toán Dijkstra
Bài toán vận dụng
con mã với số bước di chuyển là ít nhất từ vị trí đang đứng đến một vị trí xác định trên bàn cờ.