You are on page 1of 4

CẤU TRÚC RỜI RẠC – BUỔI 1 (08/08)

Rời rạc: đối tượng có thể liệt kê được / đếm được (VD: SV của lớp, các số nguyên, các
tỉnh trong một nước, ...), đối lập với liên tục. Ta sẽ nghiên cứu các đối tượng:
 Tập hợp: các phần tử phân biệt (theo nghĩa rộng, ta còn xét multiset, cho phép các
phần tử lặp lại).
 Đối tượng tổ hợp: hoán vị, chỉnh hợp, tổ hợp.
 Đồ thị (graph).
 Máy trạng thái hữu hạn.

1) Logic.
Mệnh đề: là một câu khẳng định, có tính đúng / sai.
VD: các SV của lớp Cấu trúc rời rạc này thì đều đang học ở IUH.
VD: các SV của lớp này đều được xếp loại xuất sắc ở học kỳ trước.
Các câu có tính cảm thán, các câu hỏi, mệnh lệnh  không là mệnh đề.
 Giá trị chân trị / chân lý của mệnh đề: đúng là 1 / True (T), còn sai là 0 / False (F).
 Phân loại:
- Mệnh đề sơ cấp: cơ bản / ngắn gọn.
- Mệnh đề phức hợp: ghép của nhiều mệnh đề lại với nhau (và / hay / khi & chỉ khi).
Các phép toán trên mệnh đề: (phép toán 1 ngôi, phép toán 2 ngôi)
1) Phủ định: mệnh đề có ý nghĩa ngược lại với mệnh đề đang xét.
Mệnh đề p  phủ định: p hoặc p (còn viết là p’).
VD: p = “Hôm nay là thứ 2”, q = “Hôm nay là thứ 3”  không là phủ định của nhau.
p = “Tôi đã thi đậu môn NMLT”, q = “Tôi đã thi rớt môn NMLT”  phủ định.
2) Phép hội: cho hai mệnh đề p & q  hội của chúng là “p và q”  ký hiệu là p  q .
VD: p = “Hôm nay trời mưa lớn”, q = “Hôm nay là ngày đầu tiên tôi là SV năm 2”  hội
của p, q = “Hôm nay trời mưa lớn và Hôm nay là ngày đầu tiên tôi là SV năm 2”.
p hội q  chỉ đúng khi cả 2 mệnh đề thành phần p, q đều đúng; ngược lại thì sai.
3) Phép tuyển: cho hai mệnh đề p & q  tuyển của chúng là “p hoặc q”  ký hiệu là
pq.
Tương tự trên, ta thay VÀ bởi HOẶC.
p tuyển q  đúng khi một trong hai mệnh đề thành phần đúng; ngược lại thì sai.
4) Phép tuyển loại: cho hai mệnh đề p & q  tuyển loại của chúng là “một trong p và q”
 ký hiệu p  q (tương ứng với phép XOR).
5) Phép kéo theo: cho hai mệnh đề p & q  phép kéo theo là “nếu p thì q”, “p kéo theo
q”, ký hiệu là p => q.
VD: p = “con thi đậu ĐH”, q = “mẹ sẽ thưởng cho chiếc xe”.
Nếu p thì q = “nếu con thi đậu ĐH thì mẹ sẽ thưởng cho chiếc xe”.
Mệnh đề kéo theo chỉ sai khi p đúng, q sai (giả thiết p đúng nhưng kết luận q sai; một khi
giả thiết p đã sai thì q thế nào cũng được).
6) Phép tương đương: cho hai mệnh đề p & q  phép tương đương là “p tương đương
q”, “p khi và chỉ khi q”, “p nếu và chỉ nếu”, ký hiệu là p <=> q.
Mệnh đề này đúng nếu như p, q cùng đúng, hoặc cùng sai.
p q p pq pq pq Kéo theo Tương đương
(AND) (OR) (XOR)
1 1 0 1 1 0 1 1
1 0 0 0 1 1 0 0
0 1 1 0 1 1 1 0
0 0 1 0 0 0 1 1
Trong logic, đôi khi mệnh đề p, q có thể không liên quan về mặt ngữ nghĩa nhưng vẫn
thực hiện được các phép toán với nhau.
VD: p = “1 + 1 = 3” và q = “hôm nay tôi sẽ đi đến trường”; khi đó mệnh đề “p => q” sẽ
phát biểu là: “Nếu 1+1 = 3 thì hôm nay tôi sẽ đi đến trường”  đúng quy tắc về mặt logic,
nhưng trong thực tế thì không hợp lý.
Chẳng hạn trong ngôn ngữ lập trình: if ... then ... else  điều kiện if và lệnh trong phần
then phải có liên quan ý nghĩa nhất định.
Chú ý: mệnh đề chỉ có 2 chân trị là 0, 1 (true/false), nhưng có một số ngành logic học,
người ta còn xét một số dạng mệnh đề mà chân trị là một số thực thuộc [0;1]  logic mờ
(fuzzy logic). Ta không chắc chắn 100% mà chỉ dám chắc ở một mức độ nào đó thôi.
Chẳng hạn như trong Khoa học dữ liệu có BT phân loại, nhận diện chó mèo  “đây là
ảnh mèo với mức độ tin cậy là 90%”.

Biểu thức logic (tương tự biểu thức đại số có các biến và phép tính: +, - , x, : ), thì ở đây,
ta sẽ xét các mệnh đề cùng với các phép toán trên mệnh đề: tìm cách rút gọn các biểu thức
phức tạp  có thể có nhiều biến (3, 4, 5, ... biến). VD:
E(p,q) = (p  q), F(p,q,r) = (p  q)  (q  r).

Muốn biết hai mệnh đề có tương đương với nhau không (phép biến đổi tương đương) thì
có 2 cách:
(1) Vẽ bảng chân trị rồi so sánh.
(2) Dùng các quy tắc biến đổi.
Chú ý thêm, mệnh đề kéo theo “p => q” có liên quan đến các loại mệnh đề sau đây:
1) Mệnh đề đảo: “q => p”.
2) Mệnh đề phản đảo: “  q =>  p”.
3) Mệnh đề nghịch đảo: “  p =>  q”.
Câu hỏi đặt ra: dùng cách vẽ bảng chân trị, kiểm tra xem mệnh đề kéo theo là tương đương
với mệnh đề nào trong 1), 2), 3)?

Tính chất quan trọng: Mệnh đề kéo theo là tương đương với mệnh đề phản đảo.
Mệnh đề đảo tương đương với nghịch đảo.
VD: “nếu hôm nay trời mưa thì tôi sẽ không đi chơi game”.
 Đảo: “nếu tôi không đi chơi game thì hôm nay trời mưa”.
 Phản đảo: “nếu tôi đi chơi game thì hôm nay trời không mưa”.
 Nghịch đảo: “nếu hôm nay trời không mưa thì tôi sẽ đi chơi game”.
Ta thấy rằng: cả 3 mệnh đề bên dưới đều “có vẻ” tương đương với mệnh đề gốc; nhưng
qua c/m ở trên, thì chỉ có mệnh đề phản đảo mới thực sự tương đương.

Khi thực hiện biến đổi biểu thức logic, ta cần chú ý thứ tự ưu tiên của phép tính:
dấu ngoặc > phủ định > hội / tuyển > kéo theo / tương đương.
Chú ý: để rõ ràng, ta nên tận dụng các dấu ngoặc.

Bảng chân trị của biểu thức logic  liệt kê tất cả khả năng có thể có giữa các biến.
VD: nếu chỉ có 2 biến p, q  các khả năng là 11, 10, 01 và 00. Còn nếu có 3 biến p, q, r
 có 8 khả năng; nếu tổng quát n biến  có 2^n khả năng.

Ở trên, ta đã có “p  q” thì tương đương với “q’  p’ ”, ngoài ra, ta còn c/m được nó
cũng tương đương với mệnh đề sau: p  q .
Quy ước: phép phủ định của p thì ký hiệu là –p.
VD. Dựa vào các quy tắc trên, hãy rút gọn các biểu thức logic sau đây:
a) -(p v (-p ^ q)) (viết bài bản: ( p  ( p  q )) ).
 -p ^ -(-p ^ q) quy tắc De Morgan.
 -p ^ (--p v –q) quy tắc De Morgan.
 -p ^ (p v –q) quy tắc phủ định 2 lần.
 (-p ^ p) v (-p ^ -q) luật phân phối.
 0 v (-p ^ -q) phần tử bù.
 -p ^ -q luật trung hòa.
b) (p ^ q)  (p v q). (viết bài bản: ( p  q)  ( p  q) ).
Gợi ý: khi gặp các bài có dùng dấu => , ta nên dùng luật 11) để khử dấu đó, quy về:
hội/tuyển/phủ định.
 -(p ^ q) v (p v q) luật kéo theo
 (-p v –q) v (p v q) quy tắc De Morgan
 (-p v p) v (-q v q) luật kết hợp
1v1 phần tử bù
1 luật thống trị

Các kênh làm việc:


 Google drive  tài liệu môn học cố định.
 Zalo / lms  thông tin cập nhật.

You might also like