Nếu tôi còn sống thì tôi đã chết!

Bạn thử nghĩ xem mệnh đề sau đây đúng hay sai:
"Nếu tôi còn sống thì tôi đã chết"
biết rằng "tôi còn sống" = ¬"tôi đã chết" ("¬" là "phủ định").

Chắc hẳn là nó phải sai, vì nó mâu thuẫn rành rành ra đó, đúng không nào?!
Nhưng bạn thử nghĩ kỹ lại xem, có thay đổi quyết định không? 😉
.
.
.
Này nhé, cứ chia ra 2 trường hợp cụ thể là ta sẽ rõ:

  1. Trường hợp thực sự tôi còn sống, tức giả thiết "tôi còn sống" là đúng và kết luận "tôi đã chết" là sai, nên câu suy luận "nếu... thì..." này rõ ràng sai (không hợp lý) rồi. Nhưng...
  2. Trường hợp thực sự tôi đã chết rồi, tức giả thiết đã sai thì bạn muốn kết luận thế nào cũng được. Lúc đó bạn nói thế nào cũng đều đúng (hợp lý) cả! Có thể bạn hơi khó hiểu điều này, vì câu nói trên quá nghịch lý, nhưng hãy xem những câu sau thì rõ: "Nếu có dư tiền, tôi sẽ cho người nghèo!" hay "Nếu có đủ quyền lực, tôi sẽ cứu cả Thế giới!" Những câu đó đều nghe rất hợp lý, nhưng thực ra nó chỉ hợp lý vì cơ bản những cái "nếu" đó (hầu như) không xảy ra. Hay nói cách khác, "Nếu có dư tiền, nếu có đủ quyền lực, ..." thì tôi muốn làm gì cũng được, cũng hợp lý hết.
Vậy mệnh đề này không (hằng) đúng mà cũng không (hằng) sai, nó chỉ tương đương với mệnh đề con đơn giản hơn là "tôi đã chết" mà thôi. Viết theo ngôn ngữ lô-gíc hình thức thì (Q→¬Q) = ¬Q (xem chứng minh bằng lô-gíc hình thức ở Phụ lục 1). Nếu bạn muốn "chơi khăm" thì có thể làm cho mệnh đề lắt léo hơn bằng cách kéo dài nó ra thành:
"Mệnh đề 'Nếu tôi còn sống thì tôi đã chết' mà sai, thì tôi chết mất!"
biết rằng "tôi còn sống" = ¬"tôi đã chết" = ¬"tôi chết mất".
Viết theo lô-gíc hình thức thì:
     R = ¬(Q→¬Q) → ¬Q
       =      Q    → ¬Q
       = ¬Q
Và theo lý thuyết, bạn có thể kéo dài ra mãi! Hay ngược lại, bạn có thể rút gọn câu nói lại thành "Tôi đang nói dối!" Đây là nghịch lý kẻ nói dối kinh điển. Nghịch lý kẻ nói dối này được ứng dụng để chứng minh những giới hạn quan trọng trong các hệ thống hình thức toán-tin học, như Định lý Bất toàn Gödel trong toán học, Bài toán Dừng trong tin học, cũng như Lập luận Đường chéo của Cantor, v.v. Hoặc có những nghịch lý lắt léo hơn sử dụng toán học như nghịch lý Berry: "E là số tự nhiên nhỏ nhất không được định nghĩa bởi mười lăm chữ" nhưng E lại được định nghĩa bởi đúng 15 chữ (bạn cứ đếm lại đi cho chắc!)

Nhưng trước khi đi vào những định lý chuyên sâu đó, mình xin giới thiệu một ứng dụng thú vị của nghịch lý kẻ nói dối vào đời sống qua một truyện cổ tích mà mình đã được học từ hồi nhỏ (hình như là hồi lớp 5), truyện "Treo cổ - Chặt đầu":

Ngày xửa ngày xưa, ở một vương quốc nọ, có một ông vua độc ác cai trị nhân dân một cách tàn nhẫn và bất công khiến cho nhiều người trong nước đó cứ lũ lượt kéo nhau bỏ sang nước khác hết... Thế là ông vua ấy mới ban hành một điều luật thật quái đản vô nhân đạo rằng: "Ai muốn ra ngoài biên giới thì phải nói một câu. Nếu câu ấy Đúng thì sẽ bị Chặt đầu. Còn nếu câu ấy Sai thì sẽ bị Treo cổ." Từ đó, chẳng còn ai dám bén mảng ra ngoài biên giới nữa. Ông ta tưởng như thế là đã thành công rồi! Nhưng nào ngờ, một ngày kia, có một nhà thông thái vẫn cứ ung dung bước chân ra vùng biên giới.... Lính gác gặp nhà thông thái thì chặn lại bảo: "Ông già ngạo mạn kia, hãy nói một câu xem nào". –Tới đây, hỡi các nhà thông thái của chúng ta hãy thử nghĩ xem nên nói câu gì nào? :-?– ............. Nhà thông thái không chùn bước, vừa đi vừa nói: "Ta sẽ bị treo cổ!"... Thế là lính gác cùng các quan binh đều phải để cho ông đi. Đem câu đó tâu lên vua, cả triều đình cũng phải... bó tay! :-))

Còn trong toán-tin học thì nghịch lý kẻ nói dối được ứng dụng để chỉ ra các giới hạn như:

  • Định lý Bất toàn Gödel: Với bất kỳ hệ thống hình thức (hệ tiên đề) A nào, A không thể tự chứng minh được được rằng "A không mâu thuẫn", và luôn có thể chỉ ra một mệnh đề P mà tuy P đúng (theo số học) nhưng không thể chứng minh được bởi A. Gödel đã chứng minh (hai) định lý này bằng kỹ thuật đánh số / mã hóa Gödel kết hợp với nghịch lý Berry.
  • Bài toán Dừng: Có một thuật toán nào có thể xác định một chương trình máy tính là sẽ dừng (hay chạy mãi mãi) hay không? Câu trả lời là "không có", không thể tồn tại một thuật toán như vậy, mặc dù chúng ta có cảm tưởng rằng khi đọc mã của một chương trình máy tính thì ta hoàn toàn có thể xác định được là nó có dừng hay không. Sự không tồn tại đó được chứng minh bằng cách loại trừ dựa vào lập luận đường chéo (xem mục dưới).
  • Lập luận đường chéo của Cantor: Bằng cách lập ma trận liệt kê các phần tử của một tập hợp S, ta chỉ cần lấy phủ định của đường chéo của ma trận đó là có thể chỉ ra được phần tử của S không thể được liệt kê. Từ đó cho thấy lực lượng của tập lũy thừa P(S) lớn hơn lực lượng của S. Và khi S = N (tập hợp số tự nhiên, tập hợp "vô hạn đếm được") thì ta có những tập hợp "vô hạn không đếm được" có lực lượng lớn hơn N.

Vậy tại sao ta lại hầu như không thể dứt ra khỏi cảm giác rằng câu nói "nếu tôi còn sống thì tôi đã chết" sai sai?! Đó là vì:

  1. Từ khoảng 6 tháng tuổi, con người đã bắt đầu hình thành khái niệm "hằng định đối tượng" (object permanence). Nó khiến cho chúng ta có cảm giác rằng bất kỳ một khái niệm hay một tuyên bố nào cũng phải có một giá trị xác định không đổi, nhất là khi ta không thấy rõ, không theo dõi nó một cách sát xao. Thế nên câu nói trên chỉ có thể là "đúng" hoặc "sai", theo cảm giác chủ quan của mình, và vì nó tự mâu thuẫn nên nó có vẻ "sai sai".
  2. Lập luận "nếu... thì..." là một lập luận rất lắt léo và dễ mắc sai lầm nhất. Ta hay nghĩ "nếu A thì B" có nghĩa là "nếu không A thì không B", nhưng thực ra mệnh đề tương đương là phải đảo chiều lại: "nếu không B thì không A". Hơn nữa một khi giả thiết sai (A = sai) rồi thì không những không dẫn tới kết luận sai mà còn dẫn tới cả mệnh đề đúng (P = "nếu A thì B" = đúng) bất chấp kết luận (với mọi B). Đây là một chỗ hết sức lắt léo khó hiểu, và thường được áp dụng để tạo ra các ngụy biện (biện luận nghe rất có lý nhưng thực ra là vô nghĩa vì ngay giả thiết đã bị sai rồi).

Liên tưởng tới Vật lý Lượng tử, ta có thể thấy nó có liên quan đến còn mèo "dở sống dở chết" của Schrödinger (Schrödinger's cat).

_______________

Phụ lục 1

Tính giá trị chân lý của câu "Nếu tôi còn sống thì tôi đã chết" bằng lô-gíc hình thức:
Đặt
    P := "Nếu tôi còn sống thì tôi đã chết"
    Q := "Tôi còn sống"
Vì
    "tôi còn sống" = ¬"tôi đã chết"
Nên
    P = (Q → ¬Q)
Dùng công thức
    (A → B) = (¬A ∨ B)
Ta có
    P = (Q → ¬Q)
      = (¬Q ∨ ¬Q)
      = ¬Q
Kết luận
    P = ¬Q
      = "tôi đã chết"
Phần chứng minh logic hình thức này chính là lời giải của một bài toán nhỏ mà mình đã làm trong bài thi môn logic ở đại học Osaka. Còn phần đặt 2 mệnh đề bằng lời là mình nghĩ ra sau khi thấy sự thú vị của công thức kết quả (Q → ¬Q) = ¬Q.

Nhận xét

Bài đăng phổ biến từ blog này

Flan, một cái bánh, ôi quá nhiều cái tên!

Những mẩu chuyện Phá chấp

Chỉ một chữ "Thương"

Giác ngộ toán học

Nhân Duyên Nghiệp Quả

Tính tương đối & trí tuệ về tính Bình đẳng

12:00 am / 12:00 pm ??!

Spirorus, the structure of spacetime ;)

Các tầng Ý nghĩa của các con Số

Một giấc mơ thú vị & những ý nghĩa sâu sắc