Chung qui chỉ tại Cantor (hết)

Có ba khả năng trả lời câu hỏi P chọi NP: (a) P = NP, (b) P chọi NP không quyết định được, nghĩa là độc lập với hệ thống, (c) P = NP hoặc P khác NP tùy theo ta chọn hệ tiên đề nào (tương tự như continuum hypothesis), và (d) P khác NP. (Bài báo của Micheal Sipser [30] là tham khảo tốt cho tình trạng hiện tại của câu hỏi này.)

Nếu (a) đúng thì cả chục nghìn vấn đề NP-đầy đủ có giải thuật đa thức để giải, mật mã khóa công cộng (public key cryptography) là vô vọng, vân vân. Các giao thức (protocol) bảo mật trên Internet hiện nay đều ít nhiều dựa vào mật mã khóa công cộng, nếu P = NP thì các giao dịch tiền tệ trên Internet đều cực kỳ bất ổn. Nếu P = NP thì hàng nghìn hàng vạn các nhà khoa học, toán học, kỹ sư máy tính trong hơn năm chục năm qua đã bỏ qua một ý tưởng căn bản nào đó có thể giải một trong số cả chục nghìn bài toán NP-đầy đủ. Chuyện này quá hy hữu. Vì thế, khả năng (a) rất khó xảy ra.

Các khả năng (b) và (c) liên quan đến trạng thái logic của vấn đề (thay vì tính thuật toán của nó). Scott Aaronson [1] có một bài báo tổng quan rất hay, thảo luận các khả năng này. Kết luận chung là các khả năng này rất khó xảy ra. Một tham khảo thú vị là nghiên cứu của Razborov và Rudich [27] năm 1993, trong đó các tác giả đưa bằng chứng cho thấy: “có lẽ lý do mà chứng minh P != NP rất khó là tại vì … P != NP !!!” Ta sẽ thảo luận kỹ hơn về kết quả “oái oăm” này vào dịp khác.

Như vậy, khả năng cuối cùng là P != NP, và đa số khoa học gia đều tin vào khả năng này. Thế ta phải làm gì nếu P thật sự khác NP? Ta thử liệt kê vài hướng đi hiện nay:

  • Có lẽ mô hình máy Turing không phải là mô hình tính toán mạnh nhất. Điều này có nghĩa là ta phải thiết kế các máy tính theo kiểu khác, dựa trên một nguyên tắc hoàn toàn khác với nguyên tắc thiết kế hiện tại (với bộ vi xử lý, bộ nhớ, bus, thiết bị ngoại vi, vân vân). Đã có vài đề cử, trong đó quan trọng nhất là tính toán lượng tử (quantum computing, [25]), và tính toán sinh học (biological computing) [2]. Công trình đột phá của Peter Shor [28,29] cho thấy ta có thể phân tích một số nguyên ra thừa số (factorization) trong thời gian đa thức với một máy tính lượng tử. Bài toán này là một trong số rất ít các bài toán trong NP mà ta không biết là nó ở trong P hay là NP-đầy đủ. Ngoài bài báo của Peter Shor, thật sự vẫn chưa có bằng chứng nào ủng hộ khả năng là ta có thể giải các bài toán NP-đầy đủ trong thời gian đa thức với máy tính lượng tử. Tình hình với máy tính sinh học còn tệ hơn.
  • Trong hướng đi thứ hai, ta chấp nhận rằng các bài toán NP-đầy đủ không thể giải được nhanh bằng các máy tính vật lý (bất kể mô hình vật lý nào). Đến đây thì có vài nhánh nghiên cứu khác:
    • Tìm cách hiệu quả nhất (dù là trong thời gian không đa thức) để giải các bài toán này. Các nghiên cứu về quy hoạch nguyên (integer programming) là một ví dụ tốt.
    • Trong thời gian đa thức, tìm lời giải càng gần tối ưu càng tốt. Đây là hướng đi của các giải thuất xấp xỉ (approximation algorithms), một hướng rất quan trọng trong khoa học máy tính hiện đại.
    • Một hướng khác cũng quan trọng không kém là dùng các giải thuật ngẫu nhiên hóa (randomized algorithms). Ta có thể tìm lời giải tối ưu trong thời gian kỳ vọng là đa thức (expected polynomial time), hoặc tìm lời giải với giá kỳ vọng (expected cost) gần tối ưu trong thời gian đa thức.

Tất cả các khả năng và hướng đi trên đưa chúng ta đến các phương trời mới của khoa học máy tính, toán học và vật lý, là các bước tiến quan trọng cho quá trình tìm hiểu vũ trụ và các quy luật hoạt động của tự nhiên (trong đó tính toán là một quá trình căn bản).

Người mở một trong những cánh cửa quan trọng nhất chính là Cantor!

[1] S. Aaronson, Is P versus NP formally independent?, Bulletin of the European Association for Theoretical Computer Science, 81 (2003).

[2] L. M. Adleman, Computing with DNA, Scientific American, 279 (1998), pp. 54–61.

[25] M. A. Nielsen and I. L. Chuang, Quantum computation and quantum information, Cambridge University Press, Cambridge, 2000.

[27] A. A. Razborov and S. Rudich, Natural proofs, J. Comput. System Sci., 55 (1997), pp. 24–35. 26th Annual ACM Symposium on the Theory of Computing (STOC ’94) (Montreal, PQ, 1994).

[28] P. W. Shor, Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer, SIAM J. Comput., 26 (1997), pp. 1484–1509.

[29] _________, Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer, SIAM Rev., 41 (1999), pp. 303–332 (electronic).

[30] M. Sipser, The history and status of the p versus np question, in STOC ’92: Proceedings of the twenty-fourth annual ACM symposium on Theory of computing, ACM Press, 1992, pp. 603–618.

Chủ đề : Lý thuyết tính toán. Bookmark the permalink. Trackbacks are closed, but you can post a comment.

8 Comments

  1. Posted 02/10/2007 at 12:50 pm | Permalink

    Em mới xem được 1 film phóng sự về 4 nhà toán học Georg Cantor, Ludwig Boltzmann, Kurt Gödel, & Alan Turing của BBC.

    http://video.google.com/videoplay?docid=-3503877302082311448&hl=en

  2. npson
    Posted 02/10/2007 at 9:25 pm | Permalink

    Day la bai bao chung minh testing primes is in P
    http://www.math.princeton.edu/~annals/issues/2004/Sept2004/Agrawal.pdf
    Bai nay duoc giai Godel

  3. Posted 23/08/2009 at 1:10 pm | Permalink

    Loạt bài này của anh Hưng cũng thú vị, một phần là nó gợi mở nhiều điều để bàn luận. Chẳng hạn khả năng (a) P=NP có lẽ có thể bàn luận thêm. RC thử đưa ra một tình huống như sau:

    Giả sử, với bài toán SAT, ta xây dựng được một họ các thuật toán trong thời gian đa thức và chứng minh được một trong bọn chúng giải đưọc SAT nhưng không thể chỉ ra tên nào (thậm chí có khả năng ta chứng minh được việc chỉ ra cụ thể tên nào không thể giải được trong thời gian đa thức). Khi đó P=NP nhưng không biết thế giới có bị thay đổi gì nhiều không? Chẳng hạn đối với mật mã khoá công khai, giả thiết tồn tại hàm một chiều (one-way function) sẽ không còn giá trị và dường như mọi thứ có thể sụp đổ. Tuy vậy, theo RC, có lẽ khi đó ta có thể thay giả thiết tồn tại hàm một chiều f theo nghĩa tuyệt đối (không có thằng thuật toán trong thời gian đa thức nào tính được f^{-1} ) bằng một giả thiết mang tính chất tính toán (không thể chỉ ra trong thời gian đa thức một thằng thuật toán trong thời gian đa thức để tính f^{-1}) thì có lẽ các kết quả đã có không bị thay đổi bao nhiêu.

  4. Posted 23/08/2009 at 6:07 pm | Permalink

    Cho dù có một thuật toán thời gian đa thức cụ thể giải SAT, thì lúc đó cryptography có thể chuyển sang dùng các giả thiết mạnh hơn xây dựng từ các lớp phức tạp to hơn (PSPACE chẳng hạn, vì ít ra ta biết là NL != PSPACE). Ví dụ như thay vì bảo người ta gõ password thì bắt người dùng đánh một ván cờ với Deep Blue, đánh thắng thì cho login vào máy. :-) (À, mà hình như cớ quốc tế là EXPSPACE-complete thì phải).

  5. Posted 23/08/2009 at 11:13 pm | Permalink

    Mã hoá khóa công khai bắt buộc phải dựa trên giả thiêt về các hàm một chiều, nếu không sẽ không mã hoá được. Nhưng một khi có hàm một chiều thì việc tính ngược thuộc lớp NP. Do đó RC e rằng lớp PSPACE… không giúp ích được gì nhiều.

  6. Algorithmic Lowerboundsman
    Posted 25/08/2009 at 5:31 pm | Permalink

    Dear all,

    Mọi người đang thảo luận ở bên kia nên em chuyển sang bên này.

    @RC: Awesome. Deduceability của đệ vẫn còn kém wá. Hix…

    @anh Hưng: Em nghĩ song song với chuỗi bài PCP, ta mở rộng topics thêm 3 hướngkhác:
    - Derandomization, computational learning theory (hai cái này thì anh Hưng đều đã có online courses cả rồi)
    - Proof complexity.

    - Các hướng khác nữa thực ra đều “weakly equivalent” với cả bọn, và đều đang bế tắc. Ba cái trên còn mới mới một chút, học chắc sẽ vui hơn.

    TN

  7. Posted 25/08/2009 at 5:42 pm | Permalink

    Hi TN, thật ra một topic mà tôi đã “bừng bừng” muốn mở mấy hôm nay là approximation algorithms (based on LP/SDP), vì đang làm seminar về đề tài này, và cũng đã dạy lớp này vài lần. Tuy nhiên mấy năm gần đây có thêm một số bài báo hay tuyệt (như bài của Prasad được best paper award năm ngoái), nên luôn có cái mới để đọc.

    Về COLT thì tôi đã có một chuỗi khác cũng đang viết dở: “Học máy” từ góc nhìn của lý thuyết tính toán (đã viết được 4 bài, đang định viết đến lowerbounding và AdaBoost thì … chuyển sang cái khác :-) ). TN xem “Tuyển Tập” có liên kết đến 4 bài nọ. Ngoài ra còn một bài về chứng minh bổ để Sauer rất thú vị.

  8. ThinhNguyen
    Posted 26/08/2009 at 1:10 am | Permalink

    Hi anh Hưng,

    Tất nhiên là ta sẽ phải có sự concentration vì toolkit của mỗi cá nhân, mỗi nhóm là finite.

    -Về SDP/LP solver: Đây là topic mang tính thực tế cao, được nhiều người ưa thích.

    -Về derandomization: vừa có cả algorithm vừa có cả circuit (chỉ cần ta tìm ra efficient construction cho advices trong counting method dùng để chứng minh BPP có poly-size circuit family là ngon rồi).

    TN

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>