Tải bản đầy đủ (.docx) (46 trang)

Tiểu luận môn TOÁN CHO KHOA HỌC MÁY TÍNH LÝ THUYẾT LOGIC VỊ TỪ VÀ MỘT SỐ ỨNG DỤNG CỦA LOGIC VỊ TỪ

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 (517.87 KB, 46 trang )

ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
oOo


GVHD: PGS.TS Nguyễn Phi Khứ
HV: Trương Hoài Phong
Mã số: CH1301048
Lớp: Cao học khóa 8

LÝ THUYẾT LOGIC VỊ TỪ VÀ MỘT SỐ ỨNG DỤNG CỦA
LOGIC VỊ TỪ


TP. HỒ CHÍ MINH, NĂM 2013
MỤC LỤC

  
3
CHƯƠNG 1: MỞ ĐẦU - LỊCH SỬ LOGIC
1.1 Logic là gì?
Logic hay luận lý học, từ tiếng Hy Lạp cổ điển λόγος (logos), nghĩa nguyên thủy là
từ ngữ, hoặc điều đã được nói, (nhưng trong nhiều ngôn ngữ châu Âu đã trở thành có ý
nghĩa là suy nghĩ hoặc lập luận hay lý trí). Logic thường được nhắc đến như là một ngành
nghiên cứu về tiêu chí đánh giá các luận cứ, mặc dù định nghĩa chính xác của logic vẫn là
vấn đề còn đang được bàn cãi giữa các triết gia. Tuy nhiên khi môn học được xác định,
nhiệm vụ của nhà logic học vẫn như cũ: làm đẩy mạnh tiến bộ của việc phân tích các suy
luận có hiệu lực và suy luận ngụy biện để người ta có thể phân biệt được luận cứ nào là
hợp lý và luận cứ nào có chỗ không hợp lý.
Theo truyền thống, logic được nghiên cứu như là một nhánh của triết học. Kể từ
giữa thế kỉ 19 logic đã thường được nghiên cứu trong toán học và luật. Gần đây nhất logic


được áp dụng vào khoa học máy tính và trí tuệ nhân tạo. Là một ngành khoa học hình
thức, logic nghiên cứu và phân loại cấu trúc của các khẳng định và các lý lẽ, cả hai đều
thông qua việc nghiên cứu các hệ thống hình thức của việc suy luận và qua sự nghiên cứu
lý lẽ trong ngôn ngữ tự nhiên. Tầm bao quát của logic do vậy là rất rộng, đi từ các đề tài
cốt lõi như là nghiên cứu các lý lẽ ngụy biện và nghịch lý, đến những phân tích chuyên
gia về lập luận, chẳng hạn lập luận có xác suất đúng và các lý lẽ có liên quan đến quan hệ
nhân quả. Ngày nay, logic còn được sử dụng phổ biến trong lý thuyết lý luận.
Qua suốt quá trình lịch sử, đã có nhiều sự quan tâm trong việc phân biệt lập luận tốt
và lập luận không tốt, và do đó logic đã được nghiên cứu trong một số dạng ít nhiều là
quen thuộc đối với chúng ta. Logic Aristotle chủ yếu quan tâm đến việc dạy lý luận thế
nào cho tốt, và ngày nay vẫn được dạy với mục đích đó, trong khi trong logic toán học và
triết học phân tích (analytical philosophy) người ta nhấn mạnh vào logic như là một đối
tượng nghiên cứu riêng, và do vậy logic được nghiên cứu ở một mức độ trừu tượng hơn.
Các quan tâm về các loại logic khác nhau giải thích rằng logic không phải là được
nghiên cứu trong chân không. Trong khi logic thường có vẻ tự cung cấp sự thúc đẩy chính
4
nó, môn học này phát triển tốt nhất khi lý do mà chúng ta quan tâm đến logic được đặt ra
một cách rõ ràng
Một trong những tác phẩm logic sớm nhất còn tồn tại đến ngày nay là của Aristotle.
Logic của Aristotle được chấp nhận rộng rãi trong khoa học và toán học và vẫn còn được
sử dụng rộng rãi ở phương Tây đến đầu thế kỷ 19. Hệ thống logic của Aristotle phù hợp
cho việc giới thiệu suy diễn giả định, và logic quy nạp. Ở Châu Âu, trong cuối thời kỳ
trung đại, có nhiều nỗ lực nhằm chứng tỏ những tư tưởng của Aristotle tương thích với
niềm tin Cơ Đốc. Trong suốt thời kỳ Trung kỳ Trung cổ, logic trở thành đề tài chính của
các nhà triết học, những người muốn tham gia vào những cuộc tranh luận triết học về
phân tích logic học.
Logic trong triết học Hồi giáo, đặc biệt là logic của Avicennia, chịu ảnh hưởng lớn
từ logic của Aristotle.
Tại Ấn Độ, những đổi mới trong trường phái triết học, gọi là Nyaya, tiếp diễn từ
thời cổ đại đến đầu thế kỷ 18 với trường phái Navya-Nyaya. Đến trước thế kỷ 16, nó đã

phát triển những lý thuyết giống với logic hiện đại.
1.2 Logic vị từ:
Môn Logic như được nghiên cứu ngày nay rất khác với môn học đã được nghiên
cứu trước đây, và sự khác biệt chính là sự phát minh của logic vị từ. Trong khi logic tam
đoạn luận của Aristote định ra những dạng thức cho những phần có liên quan với nhau
trong mỗi phán đoán, logic vị từ cho phép các câu được phân tích thành chủ đề và các
luận cứ theo nhiều cách khác nhau, do vậy cho phép logic vị từ giải quyết được vấn đề
tổng quát hóa nhiều lần - vấn đề đã làm bối rối các nhà logic học thời trung cổ. Với logic
vị từ, lần đầu tiên, các nhà logic học đã có khả năng đưa ra các phép lượng hóa
(quantifiers) đủ tổng quát để diễn tả mọi luận cứ có mặt trong ngôn ngữ tự nhiên.
Sự khám phá ra logic vị từ thường được coi là công của Gottlob Frege, người cũng
được xem là một trong những sáng lập viên của ngành triết học phân tích, nhưng dạng
phát biểu có hệ thống thông dụng nhất ngày nay của logic vị từ là logic bậc nhất (first-
order logic) được trình bày trong cuốn sách Các nguyên lý về logic lý thuyết (Grundzüge
5
der theoretischen Logik) của David Hilbert và Wilhelm Ackermann vào năm 1928. Tính
tổng quát có tính phân tích của logic vị từ cho phép hình thức hóa toán học và đẩy mạnh
nghiên cứu về lý thuyết tập hợp, cho phép sự phát triển của cách tiếp cận của Alfred
Tarski đối với lý thuyết mô hình; và không quá lời khi nói rằng nó là nền tảng của logic
toán học hiện đại.
Hệ thống nguyên thủy của Frege về logic vị từ không phải là bậc nhất mà là bậc hai.
Logic bậc hai được bảo vệ mạnh mẽ nhất bởi George Boolos và Stewart Shapiro (trước
các phê phán của Willard Van Orman Quine và những người khác).
CHƯƠNG 2: LÝ THUYẾT LOGIC VỊ TỪ
Trong toán học hay trong chương trình của máy tính, chúng ta thường gặp những
câu có chứa các biến như sau: "x>3", "x=y+3", "x+y=z" Các câu này không đúng cũng
không sai vì các biến chưa được gán cho những giá trị xác định. Câu "x > 3" có hai bộ
phận: bộ phận thứ nhât là biến x đóng vai trò chủ ngữ trong câu; bộ phận thứ hai "lớn
hơn 3" đóng vai trò vị ngữ của câu, nó cho biêt tính chât mà chủ ngữ có thể có. Có thể ký
hiệu câu "x lớn hơn 3" là P(x) với P là ký hieu vị ngữ "lớn hơn 3" và x là biên. Người ta

cũng gọi P(x) là giá trị của hàm mệnh đề P tại x. Xét trong tập hợp các số thực, một khi
biến x được gán giá trị cụ thể thì câu P(x) sẽ có giá trị chân lý. Chẳng hạn P(4) là đúng
còn P(2,5) là sai. Hàm mệnh đề cũng có thể xét trong tập các số nguyên, số thực hay số
phức, vv…Do đó, chúng ta sẽ xem xét cách tạo ra những mênh đề từ những câu như vậy.
2.1 Khái niệm về vị từ:
Một vị từ là một khẳng định P(x, y, …) trong đó có chứa một số biến x, y,…Lấy giá
trị trong những 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,…bằng những giá trị cụ thể thuộc tập hợp A,B,… cho trước ta sẽ được một
mệnh đề P(x,y,…), nghĩa là khi đó chân trị của P(x,y,…) được gọi là các biến tự do của vị
từ.
Ví dụ 1: Các câu có liên quan tới các biến như: “x > 3”, “ x + y = 4 ” rất hay gặp
trong toán học và trong các chương trình của máy tính. Các câu này không đúng cũng
không sai vì các biến chưa được cho những giá trị xác định.
6
Nói cách khác, vị từ có thể được xem là một hàm mệnh đề có nhiều biến hoặc không
có biến nào, nó có thể đúng hoặc sai tùy thuộc vào giá trị của biến và lập luận của vị từ.
Vi dụ 2: Câu {n là chẵn} là một vị từ. Nhưng khi cho n là một số cụ thể là chẳn hay
là lẻ ta được một mệnh đề:
n = 2 :{2 là chẵn}: mệnh đề đúng.
n = 5 :{5 là chẵn}: mệnh đề sai.
Vị từ { n là chẵn} có 2 phần. Phần thứ nhất là biến x là chủ ngữ của câu.
Phần thứ hai "là chẵn" cũng được gọi là vị từ, nó cho biết tính chất mà chủ ngữ có thể có.
• Ký hiệu: P(n) = {n là chẵn}
• Tổng quát, người ta nói P(n) là giá trị của hàm mệnh đề P tại n. Một khi biến n
được gán trị thì P(n) là một mệnh đề
Ví dụ 3: Cho vị từ P(x) = {x>3}. Xác định chân trị của P(4) và P(2).
P(4) = {4>3} : mệnh đề đúng.
P(2) = {2>3} : mệnh đề sai.
2.2 Không gian của vị từ:

Người ta có thể xem vị từ như là một ánh xạ P, với mỗi phần tử thuộc tập hợp E ta
được một ảnh P(x)∈{ϕ, 1}. Tập hợp E này được gọi là không gian của vị từ. Không
gian này sẽ chỉ rõ các giá trị khả dĩ của biến x làm cho P(x) trở thành mệnh đề đúng hoặc
sai.
2.3Trọng lượng của vị từ:
Chúng ta cũng thường gặp những câu có nhiều biến hơn. Vị từ xuất hiện cũng như
một hàm nhiều biến, khi đó số biến được gọi là trọng lượng của vị từ.
Ví dụ 4: Vị từ P(a,b) = {a + b = 5} là một vị từ 2 biến trên không gian N. Ta nói P
có trong lượng 2.
Trong một vị từ P(x1, x2, , xn) có trọng lượng là n. Nếu gán giá trị xác định cho
một biến trong nhiều biến thì ta được một vị từ mới Q(x1, x2, xn) có trọng lượng là (n-
1). Qui luật này được áp dụng cho đến khi n=1 thì ta có một mệnh đề. Vậy,thực chất
mệnh đề là một vị từ có trọng lượng là ϕ.
7
Ví dụ 5: Cho vị từ P(x, y, z ) = {x + y = z}.
Cho x = ϕ : Q(y,z) = P(ϕ, y, z) = { ϕ + y = z}
y = ϕ : R(z) = Q(ϕ, z) = P(ϕ,ϕ, z) = { ϕ + ϕ = z}
z = ϕ : T = P(ϕ, ϕ, 1) = { ϕ + ϕ = 1}
mệnh đề sai.
Câu có dạng P(x1, x2, , xn) được gọi là giá trị của hàm mệnh đề P tại (x1, x2, ,
xn) và P cũng được gọi là vị từ.
2.4 Phép toán vị từ
Phép toán vị từ sử dụng các phép toán logic mệnh đề và là sự mở rộng của phép toán
mệnh đề để thể hiện rõ hơn các tri thức.
Ví dụ 6: Cần viết câu "nếu hai người thích một người thì họ không thích nhau“ dưới
dạng logic vịtừ.
- Trước khi viết câu trên ta hãy tìm hiểu các câu đơn giản được viết như sau:
+ "Nam thích Mai" được viết theo phép toán vị từ là: thích (Nam, Mai).
+ "Đông thích Mai" được viết theo phép toán vị từ là: thích (Đông, Mai).
• Tổng quát khẳng định trên được viết như sau:

Thích (X, Z) AND thích (Y, Z) → NOT thích (X, Y)
⇔ (Thích (X, Z) ∧ thích (Y, Z) → ¬thích (X, Y)
2.4.1 Hằng:
Là một giá trị xác định trong không gian của vị từ. các hằng được ký hiệu bởi các chữ
thường dùng để đặt tên các đối tượng đặc biệt hay thuộc tính.
2.4.2 Biến:
Dùng để thể hiện các lớp tổng quát của các đối tượng hay các thuộc tính. Biến được
viết bằng các ký hiệu bắt đầu là chữ in hoa. Vậy có thể dùng vị từ có biến để thể hiện các
vị từ tương tự.
Ví dụ 7: Vị từ "Quả bóng màu xanh" có thể viết lại: "X màu Y". Quả bóng xanh là
các hằng được xác định trong không gian của vị từ. X, Y là biến.
8
2.4.3 Các vị từ:
Một sự kiện hay mệnh đề trong phép toán vị từ được chia thành phần. Vị từ và tham
số. Tham số thể hiện một hay nhiều đối tượng của mệnh đề, còn vị từ dùng để khẳng định
về đối tượng.
Ví dụ 8: Câu "X thích Y" có dạng thích (X, Y). Thích là vị từ cho biết quan hệ giữa
các đối tượng trong ngoặc. Đối số là các ký hiệu thay cho các đối tượng của bài toán.
2.4.4 Hàm:
Được thể hiện bằng ký hiệu, cho biết quan hệ hàm số.
Ví dụ 9: Hoa là mẹ của Mai, Đông là cha của Cúc. Hoa và Đông là bạn của nhau.
• Ta có hàm số được viết để thể hiện quan hệ này.
Mẹ (Mai) = Hoa
Cha (Cúc) = Đông
Bạn (Hoa, Đông)
• Các hàm được dùng trong vị tự là: Bạn (Mẹ (Mai), Cha (Cúc)
2.5 Các lượng từ:
Trong một vị từ có thể xảy ra các điều sau: vị từ đã cho đúng với mọi phần tử trong
không gian xác định của nó; cũng có thể chỉ đúng với một số phần tử nào đó trong không
gian xác định của nó, người ta gọi đó là sự lượng hóa hay lượng từ các hàm mệnh đề.

9
2.5.1Lượng từ tồn tại (∃):
Câu xác định "Tập hợp những biến x làm cho P(x) là đúng không là tập hợp rỗng" là
một mệnh đề. Hay "Tồn tại ít nhất một phần tử x trong không gian sao cho P(x) là đúng"
là một mệnh đề được gọi là lượng từ tồn tại của P(x).
• Ký hiệu: ∃x P(x).
2.5.2 Lượng từ với mọi ( ∀):
Câu xác định "Tập hơp những x làm cho P(x) đúng là tất cả tập hợp E" là một mệnh
đề. Hay "P(x) đúng với mọi giá trị x trong không gian" cũng là một mệnh đề được gọi là
lượng từ với mọi của P(x).
• Ký hiệu: ∀xP(x)
2.5.3Ý nghĩa của lượng từ “ với mọi ” và lượng từ “ tồn tại ” được rút ra trong bảng
sau:
Mệnh đề Khi nào đúng Khi nào sai
∀xP(x)
P(x) là đúng với mọi phần tử x Có ít nhất 1 phần tử x để P(x)
∃xP(x)
Có ít nhất 1 phần tử x để P(x) là
đúng
P(x) là sai với mọi phần tử x
Ví dụ10: Xét trong không gian các số thực, ta có:
Cho P(x) := “ x + 1 > x”, khi đó có thể viết: ∀ xP(x)
Cho P(x) := “ 2x = x + 1 ”, khi đó có thể viết: ∃xP(x)
Ví dụ 11: Cho vị từ P(x) = {số nguyên tự nhiên x là số chẵn}. Xét chân trị của hai
mệnh đề∀x P(x) và ∃x P(x).
∀x P(x) = {tất cả số nguyên tự nhiên x là số chẵn} là mệnh đề sai khi x = 5.
∃x P(x) = {hiện hữu một số nguyên tự nhiên x là số chẵn} là mệnh đề đúng khi
x=10.
Chú ý: Cho P là một vị từ có không gian E. Nếu E = {e1, e2, en}, mệnh đề ∀x
P(x) là đúng khi tất cả các mệnh đề P(e1), P(e2), P(en) là đúng. Nghĩa là ∀x P(x) ⇔

P(e1) ∧ P(e2) ∧ ∧ P(en) là đúng.
10
Tương tự ∃x P(x) là đúng nếu có ít nhất một trong những mệnh đề P(e1), P(e2),
P(en) là đúng. Nghĩa là ∃x P(x) ⇔ P(e1) ∨ P(e2) ∨ ∨ P(en) là đúng.
Ví dụ 12: Cho P(a,b) = {cặp số nguyên tương ứng thỏa a + b = 5}
11
Hãy xác định chân trị của các mệnh đề sau:
2.5.4 Cá
c
định lý:
2.5.4.1 Định lý 1:
Cho vị từ P(a, b) có trọng lượng là 2. Khi đó:
a) ∀a∀b P(a,b) và∀b∀a P(a, b) là có cùng chân trị.
Nghĩa là: ∀a∀b P(a,b) ↔ ∀b∀a P(a, b)
Ký hiệu: ∀(a,b) P(a,b)
b) ∃a∃b P(a,b) và ∃b∃a P(a, b) là có cùng chân trị.
Nghĩa là: ∃a∃b P(a,b) ↔∃b∃a P(a, b)
Ký hiệu: ∃(a,b) P(a,b)
c) Nếu ∃a∀b P(a,b) là đúng thì∀b∃a P(a,b) cũng đúng nhưng điều ngược lại chưa
đúng. Nghĩa là: ∃a∀b P(a,b) →∀b∃a P(a,b)
d) Nếu ∃b∀a P(a,b) là đúng thì∀a∃b P(a,b) cũng đúng nhưng điều ngược lại chưa
đúng. Nghĩa là: ∃b∀a P(a,b) →∀a∃b P(a,b)
12
∀(a,b) P(a,b) {Tất cả cặp số nguyên tượng ứng} F
∃(a,b) P(a,b)
{Hiện hữu một cặp số nguyên tương ứng (a,b) sao cho a + b
= 5}
T
∃b∀a P(a,b)
{Hiện hữu một cặp số nguyên tương ứng b sao cho cho mọi

số nguyên tương ứng a ta có a + b = 5}
F
∀a∃b P(a, b)
{Mọi số nguyên tương ứng a, hiện hữu một số nguyên tưng
ứng b sao cho a + b = 5}
T
∃a∀b P(a,b)
{Hiện hữu một cặp số nguyên tương ứng a sao cho cho mọi
số nguyên tương ứng b ta có a + b = 5}
T
∀b∃a P(a, b)
{Mọi số nguyên tương ứng b, hiện hữu một số nguyên tương
ứng a sao cho a + b = 5}
T
2.5.4.2 Định lý 2:
¬(∀x P(x)) và∃x (¬P(x) là có cùng chân trị.
¬(∃x P(x)) và∀x (¬P(x) là có cùng chân trị.
13
Giải thích:
Phủ định với ∀x P(x) nói rằng tập hợp những x làm cho P(x) đúng không là tất cả
tập hợp E. Vậy nói rằng hiện hữu ít nhất một phần tử x ∈ E mà ở chúng P(x) là sai hay
nói rằng hiện hữu ít nhất một phần tử x ∈ E mà ở chúng P(x) là đúng
¬∃x P(x) nói rằng tập hợp những x mà ở chúng P(x) là đúng là tập hợp rỗng. Nghĩa
là, tập hợp những phần tử x mà ở chúng P(x) là sai là tập E hay không có phần tử nào làm
P(x) đúng. Ta có∀x (¬P(x)).
Ví dụ 13: Phủ định của "Mọi số nguyên n là chia chẵn cho 3“ là "Tồn tại ít nhất một
số nguyên n không chia chẵn cho 3"
Ví dụ 14: Hãy xét phủ định của câu sau đây:
"Tất cả sinh viên trong lớp đều đã học môn Toán rời rạc 2"
• Câu này chính là câu sử dụng lượng từ với mọi như sau: ∀xP(x)

• Trong đó P(x) = {x đã học môn Toán rời rạc 2}.
• Phủ định của câu này là: "Không phải tất cả các sinh viên trong lớp đều đã học
môn Toán rời rạc 2". Điều này có nghĩa là:" Có ít nhất một sinh viên ở lớp này
chưahọc Toán rời rạc 2" . Đây chính là lượng từ tồn tại của phủ định hàm mệnh đề
ban đầu được viết như sau:
∃x¬P(x). Ta có :
¬ ∀xP(x) ⇔ ∃x¬P(x)
¬ ∃xP(x) ⇔ ∀x¬P(x)
• Phương pháp ứng dụng: Để đạt được phủ định của một mệnh đề xây dựng bằng liên kết
của những biến của vi từ với phương tiện định lượng, người ta thay thế những định lượng
∀ bởi ∃, và ∃ bởi ∀ và sau cùng thay thế vị từ bằng phủ định của vị từ đó.
2.5.4.3 Định lý 3:
Cho P và Q là hai vị từ có cùng không gian.
a) Mệnh đề∀x (P(x) ∧Q(x)) và (∀x (P(x) ∧∀x (Q(x)) là có cùng chân trị.
b) Nếu mệnh đề∃x (P(x) ∧Q(x)) là đúng thì ta có mệnh đề: (∃x P(x)) ∧ (∃xQ(x)) cũng
đúng.
c) Mệnh đề ∃x (P(x) ∨Q(x)) và (∃xP(x) ∨∃xQ(x)) là có cùng chân trị.
14
d) Nếu mệnh đề∀x (P(x) ∨Q(x)) là đúng thì ta có mệnh đề∀xP(x) ∨ ∀x Q(x) là đúng, nhưng
điều ngược lại không luôn luôn đúng.
2.6 Công thức tương đương:
A tương đương B nếu và chỉ nếu (A →B) ∧ (B →A)
• Ký hiệu: A ≡ B |= (A →B) ∧ (B →A)
2.6.1 Các phép tương đương:
• ~∀x W(x) ≡ ∃x ~W(x)
• ~ ∃x W(x) ≡ ∀x ~W(x)
• ∃x (A(x) ∨B(x)) ≡ ∃x A(x) ∨∃x B(x)
• ∀x (A(x) ∧B(x)) ≡ ∀x A(x) ∧∀x B(x)
• ∃x (A(x) →B(x)) ≡ ∀x A(x) →∃x B(x)
• ∀x∀y W(x,y) ≡ ∀y∀x W(x,y)

• ∃x ∃y W(x,y) ≡ ∃y∃x W(x,y)
2.6.2 Các phép tương đương có giới hạn:
Các phép tương đương sau đúng khi x không xuất hiện trong biểu thức C:
a) Disjunction
• ∀x(C ∨A(x)) ≡ C ∨∀x A(x)
• ∃x(C ∨A(x)) ≡ C ∨∃x A(x)
b) Conjunction
• ∀x(C ∧A(x)) ≡ C ∧∀x A(x)
• ∃x(C ∧A(x)) ≡ C ∧∃x A(x)
c) Implication
• ∀x (C →A(x)) ≡ C →∀x A(x)
• ∃x (C →A(x)) ≡ C →∃x A(x)
• ∀x (A(x) →C) ≡ ∃x A(x) → C
• ∃x (A(x) →C) ≡ ∀x A(x) →C
2.6.3 Một vài điều kiện không tương đương
• ∀x W(x) →∃x W(x)
• ∀x A(x) ∨ ∀x B(x) →∀x (A(x) ∨ B(x))
• ∃x (A(x) ∧ B(x)) →∃x A(x) ∧∃x B(x)
15
• ∀x (A(x) → B(x)) →(∀x A(x) →∀x B(x))
• ∃y ∀x W(x,y) →∀x ∃y W(x,y)
16
2.7 Công thức chỉnh dạng (well – formed formulas):
Một tên vị từ theo sau bởi một danh sách các biến như: P (x, y), trong đó P là tên vị
từ, và x và y là các biến, được gọi là một công thức nguyên tử.
2.7.1 Công thức chỉnh dạng ( Wff) được xây dựng như sau:
a) True, false và là Wff.
b) Mệnh đề hoặc biến mệnh đề là Wff.
c) Nếu A và B là Wff thì ¬A, A ∧ B, A ∨ B, A → B, A ↔ B là Wff.
d) Nếu A là Wff và x là một biến thì ∃xA và ∀xA là Wff.

e) Công thức nguyên tử là Wff.
Ví dụ15:
• ∀xA(x) là Wff
• “Thủ đô của Việt Nam là Hà Nội” là Wff
• ∀xB(x) ∧ ∃xR(x) là Wff
• ∀xB(x) R(x), B(∃x) không là Wff
2.7.2 Từ Wff sang mệnh đề:
Ví dụ 16: P (x) là Wff : x không âm.
• Wff này là T, nếu miền giá trị là (1, 3, 5), (2, 4, 6) hoặc các số nguyên dương.
Nhưng nó không còn là T nếu miền giá trị là ( 1, 3, 5), hay các số nguyên âm
• Nếu giả thiết Q(x, y) là “x > y” thì ∀xQ(x, y) có thể nhận giá trị T hay F tùy
thuộc theo biến y.
• Từ ví dụ trên ta rút ra kết luận sau:
o Wff được gọi là thỏa mãn nếu tồn tại một giải thích làm cho nó T
Ví dụ 17: ∀x P(x) là thỏa mãn.
o Wff là hợp lệ nếu nó là đúng với mọi giải thích.
Ví dụ 18: ∀x P(x) ∨ ∃x¬P(x) hợp lệ với mọi P và giải thich.
o Wff là không hợp lệ hoặc không thỏa mãn nếu không tồn tại một giải thích làm Wff T.
Ví dụ 19: ∀x (P(x) ∧ ¬P(x))
2.7.3 Sự tương đương:
17
Hai Wff W1, W2 là tương đương nếu và chỉ nếu W1 ↔ W2 với mọi giải thích.
Ví dụ 20:
•∀x P(x) ↔ ∃x¬P (x) với mọi P
•∀x(P(x) ∧ Q(x)) , ∀xP(x) ∧ ∀xQ(x) với mọi P,Q
2.8 Quy tắc và mô hình suy diễn trong logic vị từ cấp 1
2.8.1. Quy tắc suy diễn 1 ( rút gọn)
Công thức cơ sở: (A˄B)→A≡1
Mô hình suy diễn :
2.8.2. Quy tắc suy diễn 2( cộng)

Công thức cơ sở: A → (AB) ≡ 1
Mô hình suy diễn:
2.8.3. Quy tắc suy diễn 3(khẳng định )
Công thức cơ sở: (A ˄ (A → B) → B ≡ 1
Mô hình suy diễn:
2.8.4. Quy tắc suy diễn 4( phủ định)
Công thức cơ sở: ((A→B)˄) → ≡ 1
Mô hình suy diễn:
2.8.5. Quy tắc suy diễn 5( bắc cầu)
Công thức cơ sở: ((A→B)˄(B→C))→(A→C)≡1
Mô hình suy diễn:
2.8.6. Quy tắc suy diễn 6( tam đoạn luận tuyển)
Công thức cơ sở: ( ˄(A˅B))→B≡1
Mô hình suy diễn:
2.8.7. Quy tắc suy diễn 7( mâu thuẫn)
Công thức cơ sở: (
Mô hình suy diễn: ≡
18
2.8.8. Quy tắc suy diễn 8( theo từng trường hợp)
o Công thức cơ sở: ((A→C)˄(B→C))→((A˅B)→C) ≡ 1
o Mô hình suy diễn:
2.8.9. Quy tắc suy diễn 9( đặc biệt hóa phổ dụng)
Nếu mệnh đề ∀xP(x) đúng trên trường M thì khi thay x bởi phần tử a bất kỳ trong M
ta được mệnh đề a cũng đúng.
Công thức cơ sở: ∀xP(x)→P(a)≡1
Mô hình suy diễn: với a là phần tử cố định bất kỳ trong M
2.8.10. Quy tắc suy diễn 10(tổng quát hóa phổ dụng)
Cho mệnh đề ∀xP(x) trên trường M. Khi đó, nếu P(a) đúng với mọi phần tử a trên
trường M thì mệnh đề ∀xP(x) cũng đúng trên trường M.
Công thức cơ sở: P(a)→ ∀xP(x)≡1

Mô hình suy diễn: với a là phần tử bất kỳ trong M.
2.8.11. Quy tắc suy diễn 11
Công thức cơ sở: ((∀x)(P(x)→Q(x)˄P(a))→Q(a)≡1, aM mà P(a) đúng
Mô hình suy diễn:
2.8.12. Quy tắc suy diễn 12
Công thức cơ sở: (∀x)(P(x)→Q(x))
Mô hình suy diễn:
2.8.13. Quy tắc suy diễn 13
Công thức cơ sở: ((∀x)(P(x) → Q(x)) ˄ ( ∀x)(Q(x) → R(x)) → (∀x)(P(x) → R(x)) ≡ 1
Mô hình suy diễn:
Ở đây: M = , với = ϕ (I ≠ j)
2.9 Dạng chuẩn tắc của công thức logic vị từ - dạng chuẩn Prenex
19
2.9.1. Chuyển về dạng chuẩn Prenex:
F = (∀x) (p(x) → (∃x) (∀y)(q(y) ∨ r(x)))
F = (∀x) (¬p(x) ∨ (∃x)(∀y)(q(y) ∨ r(x)))
• Đổi tên biến cục bộ:
F = (∀x) (¬p(x) ∨ (∃z)(∀y)(q(y) ∨ r(z)))
F = (∀x) (∃z)(∀y)(¬p(x) ∨ (q(y) ∨ r(z))).
2.9.2. Qui tắc chuyển một công thức về dạng Prenex:
1. Xóa toán tử “→”
2. Chuyển lượng từ ra phía trước.
• Chuyển về dạng chuẩn Prenex tuyển:
F = (Q1 x1) (Qn xn) (D1∨…∨Dk)
Dk là hội của một hoặc nhiều mệnh đề.
Ví dụ 21: F = (∀x)(∃z)(∀y)((¬p(x) ∧ q(y)) ∨ (q(y) ∧ r(z))).
• Chuyển về dạng Prenex hội :
F = (Q1 x1) (Qn xn) (D1∧…∧ Dk)
Dk là tuyển của một hoặc nhiều mệnh đề.
Ví dụ 22: F = (∀x)(∃z)(∀y)((¬p(x) ∨ q(y)) ∧ (q(y) ∨ r(z))).

• Giải thuật chuyển một công thức về dạng chuẩn Prenex Hội/ Tuyển
- Đổi tên biến.
- Xóa toán tử “→” dùng A → D = ~A ∨ B.
- Di chuyển ¬ (~) về bên trái của mỗi mệnh đề.
- Chuyển các lượng từ ra bên trái của công thức.
- Dùng luật phân bố và kết hợp để chuyển về dạng tương ứng ( Hội/ Tuyển).
Ví dụ 23: Cho W= ∀xA(x) ∨ ∃xB(x) →C(x) ∧∃xC(x).
W ≡ ∀y A(y) ∨ ∃z B(z) →C(x) ∧ ∃t C(t) (Đổi tên biến)
≡ ~ (∀y A(y) ∨ ∃z B(z)) ∨ (C(x) ∧∃t C(t))(Xóa”→”)
≡ (~∀y A(y) ∧~∃z B(z)) ∨(C(x) ∧∃tC(t))(Di chuyển ~)
20
≡ (∃y~A(y) ∧∀z~B(z)) ∨ (C(x) ∧∃t C(t))
≡ ∃y∀z∃t((~A(y) ∧~B(z)) ∨(C(x) ∧C(t))) (Di chuyển ∃,∀)
Đây là dạng chuẩn Prenex tuyển
21
2.10 Luật suy diễn
Tên Luật suy diễn
Universal Instantiation
∀xP(x) → P(c) c là 1 giá trị trong universe
Universal Generalization
P(c) → ∀xP(x) P(c) là T với mọi c trong một universe
đang xem xét
Existential Instantiation
∃xP(x) → P(c) c trong universe vá P(c) là T
Existential
Generalization
P(c) → ∃xP(x) c trong universe
Negation
¬∃x P(x) ↔ ∀x¬P(x)
Ví dụ 24 : Một hóa đơn là trống nếu nó chưa được thanh toán (bằng tiền mặt) cho

30 ngày. Hóa đơn A vẫn chưa được thanh toán cho 30 ngày. Vì vậy việc kiểm tra này là
trống. Bạn không thể thanh toán cho một hóa đơn trống. Do đó bạn không thể thanh toán
cho hóa đơn A. Bây giờ chúng ta đã có một hóa đơn mà không thể thanh toán.
Ta đặt:
C(x): x là một hóa đơn
T(x): x đã được thanh toán trong 30 ngày
V(x): x là trống
S(x): x có thể thanh toán
A: một hóa đơn
Vậy ta có:
(∀x((C(x) ˄ ¬T(x)) → V(x))) ˄ ¬T(A) →V(A)
∀x((C(x) ˄ V(x) → ¬S(x)) ˄ V(A) → ¬S(A)
C(A) ˄ ¬S(A) → ∃x(C(x) ˄ ¬S(x))
22
CHƯƠNG 3: MỘT SỐ ỨNG DỤNG CỦA LOGIC VỊ TỪ
Ngày nay, cùng với khoa học kỹ thuật, Lôgíc học đang có những bước phát triển
mạnh, ngày càng có sự phân ngành và liên ngành rộng rãi. Nhiều chuyên ngành mới của
Lôgíc học ra đời : Lôgíc kiến thiết, Lôgíc đa trị, Lôgíc mờ, Lôgíc tình thái v.v… Sự phát
triển đó đang làm cho Lôgíc học ngày càng thêm phong phú, mở ra những khả năng mới
trong việc ứng dụng Lôgíc học vào các ngành khoa học và đời sống.
Đặc biệt là trong khoa học máy tính, Logic là nội dung trung tâm của khoa học máy
tính từ khi ngành này được hình thành: công trình của Alan Turing về Entscheidungs
problem theo sau từ công trình của Kurt Gödel về các định lý về sự không toàn vẹn, và
khái niệm của các máy tính dành cho mục đích tổng quát bắt nguồn từ công trình này đã
có tầm quan trọng mang tính nền tảng đối với các nhà thiết kế máy tính trong những năm
1940.
Trong những năm 1950 và 1960, các nhà nghiên cứu dự đoán rằng khi tri thức của
con người có thể được biểu diễn bằng logic và các ký hiệu toán học, sẽ có khả năng tạo ra
một máy tính có khả năng lập luận, hay nói cách khác là trí tuệ nhân tạo. Điều này hóa ra
là khó khăn hơn đã dự đoán do sự phức tạp trong lập luận của con người. Trong lập trình

logic, một chương trình bao gồm một tập hợp các tiên đề và các luật. Các hệ thống lập
trình logic như Prolog tính toán các hệ quả của các tiên đề và luật để trả lời một truy vấn.
Đã có rất nhiều công trình nghiên cứu, các luận văn, báo cáo về ứng dụng prolog
trong giải quyết các vấn đề của cuộc sống như: Sử dụng Prolog trong chuẩn đoán bệnh, sử
dụng prolog trong kinh dịch, sử dụng prolog trong giao thông, sử dụng prolog chuẩn đoán
hư hỏng của máy móc, sử dụng prolog trong tư vấn học tập….
3.1.Giới thiệu Prolog
Prolog là ngôn ngữ được sử dụng phổ biến nhất trong dòng các ngôn ngữ lập trình
logic (Prolog có nghĩa là Programming in Logic). Ngôn ngữ Prolog do giáo sư người
Pháp Alain Colmerauer và nhóm nghiên cứu của ông đề xuất lần đầu tiên tại trường Đại
học Marseille đầu những năm 1970.
Prolog còn gọi là ngôn ngữ lập trình ký hiệu (symbolic programming) tương tự ngôn ngữ
lập trình hàm. Prolog rất thích hợp để giải quyết các bài toán liên quan đến các đối tượng
(object) và mối quan hệ (relation) giữa chúng.
23
Prolog được dùng phổ biến trong lĩnh vực trí tuệ nhân tạo. Nguyên lý lập trình dựa trên
các mệnh đề Horn.
Mỗi chương trình Prolog là một cơ sở dữ liệu gồm:
• Đối tượng (Object): biến và hằng.
• Vị từ (Predicate): thể hiện mối quan hệ giữa các đối tượng.
• Sự kiện (Fact): mệnh đề vị từ.
• Luật (Rule): mệnh đề kéo theo.
24
3.2.Ứng dụng của Prolog trong giao thông
3.2.1. Giới thiệu:
Một cơ sở dữ liệu đã được xây dựng bao gồm các luật để nhận biết hình dáng, đặc
điểm, tên của các biển báo. Từ đó xây dựng chương trình giao tiếp có khả năng tiếp nhận
các sự kiện (facts) mà người dùng cung cấp. Sau khi xử lý các sự kiện bằng cách sử
những thông tin được lưu trong cơ sở dữ liệu. Chương trình sẽ thông báo kết quả lên màn
hình, về tên biển báo giao thông, và hướng dẫn cho người sử dụng biết trong quá trình

tham gia giao thông cần phải xử lý như thế nào khi gặp biển báo này.
3.2.2. Mô hình hoạt động
Mô hình hoạt động
3.2.3. Thiết kế chương trình
Chương trình được thết kế và thực thi trên môi trường ngôn ngữ lập trình Prolog.
Giao diện được trình bày trong chương trình sử dụng giao diện dòng lệnh của Prolog.
Phần cơ sở dữ liệu về nhận biết biển báo giao thông được xây dựng dựa trên các đặc
điểm, hình dáng, đặc trưng của biển báo đó. Chẳng hạn, ta thấy rằng hầu hết các biển báo
thường có các hình dáng như: hình tròn, hình tam giác, hình chữ nhật. Trong số đó có
biển báo có đường viền bao quanh, một số khác thì không có. Phần nền và màu là phần
phía trong biển, trên phần nền thường có một hình đặc trưng nào đó. Thông thường thì ý
nghĩa của biển báo liên quan phần lớn ở hình đặc trưng này. Do đó, chỉ cần xác định được
hình đặc trưng, chúng ta có thể dễ nhận biết sự khác biệt của biển báo đó so với biển
khác.
Hai biển báo cấm người đi bộ và cấm xe mô tô sau là ví dụ:

25

×