Donald Knuth: ý tưởng toán học, các thuật toán, phải không là bằng sáng chế

Thứ bảy - 13/06/2009 07:33
DonaldKnuth: Mathematical Ideas, or Algorithms, Should Not Be Patented

Wednesday, June 03 2009 @11:57 PM EDT

Theo:http://www.groklaw.net/article.php?story=20090603224807259

Bài được đưa lênInternet ngày: 03/06/2009

Lờingười dịch: Hầu như tất cả dân làm phần mềm trênthế giới đều biết tên tuổi của Donald Knuth. Và bàiviết này sẽ cho chúng ta thấy quan điểm của ông vềbằng sáng chế phần mềm sở hữu độc quyền. Theo ông,thì điều này là vô lý.

Donald Knuth, nhà khoahọc máy tính lỗi lạc, người nhận giải thưởng TuringAward, người tạo ra hệ thống đánh máy tính TeX, và làtác giả của cuốn Nghệ thuật của Lập trình Máy tính(The Art of Computer Programming), mà một số người gọi làKinh thánh của lập trình máy tính, đã đệ trình mộtbức thư [dạng PDF] cho Văn phòng Bằng sáng chế châu Âu(EPO) để gửi cho Ban Thượng thẩm Mở rộng của EPO liênquan tới câu hỏi về các bằng sáng chể phần mềm vàliệu chúng có được phép tại châu Âu hay không. Đây làquan điểm của ông:

Về cơ bản tôi giữnguyên việc tin chắc rằng chính sách về bằng sáng chếcông bằng nhất và phù hợp nhất cho thế giới sẽ xemcác ý tưởng toán học (như các thuật toán) sẽ khôngtuân theo các quyền về bằng sáng chế sở hữu độcquyền.

Ông đã gửi kèm mộtlá thư ông đã từng viết vào năm 1994 cho Văn phòng Bằngsáng chế và Thương hiệu Mỹ, giải thích vì sao các bằngsáng chế phần mềm đã – và có thể sẽ – rất cóhại. Những lời lẽ của ông mới đúng làm sao. Đây làmột trích đoạn:

Tôi đã nói rằng cáctoà án đang cố làm ra một sự phân biệt giữa cá thuậttoán và các thuật không toán. Đối với một nhà khoa họcmáy tính, điều này không có ý nghĩa gì, vì mỗi thuậttoán là toán học như mọi thứ phải có.

Ah!Nhưng liệu EPO có nghe ra?

Vì sao EPO phải nghera, từ giới thiệu bài viết về Knuth trên Wikipedia:

Knuth đã được gọilà “người cha” của phân tích các thuật toán, đónggóp cho sự phát triển, và hệ thống hoá các kỹ thuậttoán học chính qui cho sự phân tích chặt chẽ khắt khevề tính phức tạp tính toán của các thuật toán, vàtrong quá trình phổ cập hoá những chú giải tiệm cận.

Bổ sung cho nhữngđóng góp cơ bản trong vài lĩnh vực về khoá học máytính lý thuyết, Knuth là người sáng tạo ra hệ thốngđánh máy TeX, có liên quan tới hệ thống biểu diễn vàngôn ngữ xác định phông chữ METAFONT, và họ các kiểuchữ hiện đại cho máy tính.

DonaldKnuth, distinguishedcomputer scientist, recipientof the Turing Award, creator of the TeXcomputer typesetting system, and author of TheArt of Computer Programming, which somecall the Bible of computer programming, has submitted aletter [PDF] to the European PatentOffice for submission to the EPO's Enlarged Board of Appealconsideringthe question of software patents and whether they should beallowed in Europe. Here's his view:

BasicallyI remain convinced that the patent policy most fair and most suitablefor the world will regard mathematical ideas (such as algorithms) tobe not subject to proprietary patent rights.

Heattaches aletter he wrote in 1994 to the US Patent and Trademark Office,explaining why software patents were -- and would be -- so damaging.How true his words proved to be. Here's a snippet:

Iam told that the courts are trying to make a distinction betweenmathematical algorithms and nonmathematical algorithms. To a computerscientist, this makes no sense, because every algorithm is asmathematical as anything could be.

Ah!But will the EPO listen?

Here'swhy it should, f-rom the introduction to Wikipedia's articleabout Knuth:

Knuthhas been called the "father" of the analysis of algorithms,contributing to the development of, and systematizing formalmathematical techniques for, the rigorous analysis of thecomputational complexity of algorithms, and in the processpopularizing asymptotic notation.

Inaddition to fundamental contributions in several branches oftheoretical computer science, Knuth is the creator of the TeXcomputer typesetting system, the related METAFONT font definitionlanguage and rendering system, and the Computer Modern family oftypefaces.

Là một người viếtnhiều và hiểu biết rộng, Knuth đã tạo ra các hệ thốnglập trình máy tính WEB/CWEB được thiết kế để khuyếnkhích và tạo điều kiện thuận lợi cho việc lập trình,và đã thiết kế ra kiến trúc tập hợp các lệnh MMIX.

Nếu ông nói cácthuật toán là toán học, thì tôi muốn nói là ông phảibiết [điều đó]. Bây giờ hãy ngoại suy. Nếu chúng làtoán học, liệu chúng có thể là bằng sáng chế đượckhông? Chúng có phải thế không? Ông nói không, nếu bạntiếp tục với bưc thư này.

Không thể phân biệtgiữa các thuật toán “số” và “không phải số”,dường như các số có gì đó khác với các dạng thôngtin chính xác. Tất cả các dữ liệu là các số, và tấtcả các số là dữ liệu. Các nhà toán học làm việcnhiều hơn nhiều với các đối tượng tượng trưng hơnlà với các con số.

Vì thế ý tưởng vềviệc thông qua nhưng luật nói rằng một vài dạng thuậttoán là thuộc về toán học và một số là không phảiđối với tôi thật vô lý như những mưu toan của thếkỷ thứ 19 của các cơ quan lập pháp của người da đỏmuốn thông qua một luật rằng tỷ cố của một chu vihình tròn tới đường kính của nó chính xác là 3, chứkhông phải là khoảng 3.1416. Nó giống như nhà thờ thờitrung cổ phán quyết rằng mặt trời xoay xung quanh tráiđất. Những luật do con người làm ra có thể hữu dụngđáng kể nhưng sẽ không [hữu dụng] khi chúng mâu thuẫnvới những điều đúng đắn cơ bản.

Quốc hội đã quyếtđịnh một cách khôn ngoan từ lâu rằng những thứ củatoán học không thể được làm thành bằng sáng chế.Chắc chắn không ai có thể áp dụng toán học nếu nó đãcần phải trả tiền cho một chi phí giấy phép bất kểkhi nào định lý của Pitago được sử dụng. Những ýtưởng về thuật toán cơ bản mà mọi người bây giờđang hối hả làm bằng sáng chế là quá cơ bản, và kếtquả là những mối đe doạ có thể xảy ra nếu chúng tacho phép các tác giả có các bằng sáng chế về nhữngcâu từ và khái niệm riêng rẽ cá nhân. Các tiểu thuyếtgia hoặc các nhà báo có thể không có khả năng để viếtlên các câu chuyện trừ phi các nhà xuất bản của họcó quyền từ những người chủ sở hữu của những ngôntừ đó. Các thuật toán là chính xác cơ bản cho các phầnmềm như những từ ngữ đối với các nhà văn, vì chúnglà các khối xây dựng cơ bản cần thiết để tạo ranhững sản phẩm thú vị.

Aprolific writer and scholar, Knuth cre-ated the WEB/CWEB computerprogramming systems designed to encourage and facilitate literateprogramming, and designed the MMIX instruction set architecture.

Ifhe says algorithms are math, I'd say he should know. Now extrapolate.If they are math, are they patentable? Should they be? He says no, ifyou continue with the letter:

Noris it possible to distinguish between "numerical" and"nonnumerical" algorithms, as if numbers were somehowdifferent f-rom other kinds of precise information. All data arenumbers, and all numbers are data. Mathematicians work much more withsymbolic entities than with numbers.

Thereforethe idea of passing laws that say some kinds of algorithms belong tomathematics and some do not strikes me as absurd as the 19th centuryattempts of the Indiana legislature to pass a law that the ratio of acircle's circumference to its diameter is exactly 3, notapproximately 3.1416. It's like the medieval church ruling that thesun revolves about the earth. Man-made laws can be significantlyhelpful but not when they contradict fundamental truths.

Congresswisely decided long ago that mathematical things cannot be patented.Surely nobody could apply mathematics if it were necessary to pay alicense fee whenever the theorem of Pythagoras is employed. The basicalgorithmic ideas that people are now rushing to patent are sofundamental, the result threatens to be like what would happen if weallowed authors to have patents on individual words and concepts.Novelists or journalists would be unable to write stories unlesstheir publishers had permission f-rom the owners of the words.Algorithms are exactly as basic to software as words are to writers,because they are the fundamental building blocks needed to makeinteresting products.

Nếu họ đã chỉnghe ông nhỉ! Và hệ thống bằng sáng chế của Mỹ đãtrở nên lộn xộn làm sao, vì họ đã không nghe. Hy vọng,châu Âu sẽ không mắc phải cái sai lầm y như vậy. Bạncó thể thấy những tóm tắt và các bức thưc đã đượcgửi tới EPO theo đường liên kết bên dưới, và tôi sẽxuất bản vài thứ trong số chúng ở đây trên Groklawđúng lúc, để chỉ ra nhiều lý do hơn vì sao các bằngsáng chế phần mềm được xem như rất có hại cho nhữnglập trình viên, những người hầu như trực tiếp bịảnh hưởng bởi bất kỳ quyết định nào của BanThượng thẩm Mở rộng của EPO đưa ra.

Hãy ghi nhớ khi màthẩm phán về bằng sáng chế Gene Quinn đã viết rằngphần mềm không phải là toán học chứ?

Tôi tuyệt đối thấykhông có lý lẽ bào chữa cho tất cả các phần mềm sẽđược xem xét như là vấn đề tuân thủ không phải làbằng sáng chế vì nó đơn giản là không đúng để nóirằng mã nguồn phần mềm là tương đương với mộtphương trình toán học hoặc một thuật toán. Việc sửdụng cùng cấu trúc logic chắc chắn là sự khôn ngoan, vàtuân thủ với các tiêu chuẩn thực tế tốt nhất choviệc lập trình, mà từ trong lõi các phần mềm máy tínhhướng tới.

Mã nguồn là mộtloạt ác lệnh được viết sử dụng logic toán học nhưlà nền tảng của nó. Trong lĩnh vực về bằng sáng chếđiều này không và không thể có nghĩa rằng việc biếnphần mềm thành bằng sáng chế là tương đương biếntoán học thành bằng sáng chế. Nó chỉ đơn thuần cónghĩa rằng các lệnh được viết theo một ngôn ngữ vàđịnh dạng mà chúng chịu ảnh hưởng lớn bởi toánhọc.

Vâng, Knuth có thểbiết tốt hơn so với chúng ta những gì là một thuậttoán, tôi nghĩ vậy, nhưng ngay cả nếu chúng ta chấp nhậnnhững gì Quinn đã viết, thì nó thực sự không giúp cholý lẽ của ông ta. Nếu mã nguồn phần mềm là “mộtloạt các lệnh” thì nó giống như một sách chỉ dẫntrong trường hợp đó nó đáng là bản quyền, giống nhưbất kỳ cuốn sách nào. Bạn có thể biến một sách chỉdẫn thành một bằng sáng chế được không? Liệu điềunày có là một phát minh sáng chế hay không?

Tôi sẽ trình ra cảcác bức thư của Knuth toàn bộ bây giờ, và chúng ta sẽbổ sung vào phần gắn kèm khác, một bài phỏng vấn vớiông về đúng chủ đề này, sớm nhất mà chúng ta có thểđể chấm dứt việc sao chép lại điều này.

Cả 2 bức thư có thểxem tại địa chỉ:http://www.groklaw.net/article.php?story=20090603224807259

Ifonly they had listened to him then! And what a mess the US patentsystem has become, because they did not listen. Hopefully, Europewill not make the same mistake. You can find the other amicus briefsand letters submitted to the EPO here,and I'll be publishing several of them here on Groklaw in time, toshow more reasons why software patents are viewed as so harmful byprogrammers, those most directly impacted by whatever decision theEPO's Enlarged Board of Appeal reaches.

Rememberwhen patent attorney Gene Quinn wrotethat software isn't math?

Isee absolutely no justification for all software to be consideredunpatentable subject matter because it is simply not correct to saythat software code is the equivalent of a mathematical equation or amathematical algorithm. Employing the same logical structure iscertainly wise, and complies with best practice standards forprogramming, but at the core computer software directs. The code is aseries of instructions written using mathematical logic as itsfoundation. In the patent arena this does not and cannot mean thatthe patenting of software is the equivalent of patenting mathematics.It merely means that the instructions are written in a language andformat that are heavily influenced by mathematics.

Well,Knuth would know better than we would what an algorithm is, I think,but even if we accept what Quinn wrote, it doesn't actually help hisargument. If software code is "a series of instructions"then it's like a manual, in which case it's deserving of copyright,like any book. Can you patent a manual? Is it an invention?

Iwill present both Knuth letters now in full, and we'll add anotherattachment, an interview with him on this same subject, as soon as weare able to finish transcribing it.

Hereare both letters:

Dịch tài liệu: Lê Trung Nghĩa

letrungnghia.foss@gmail.com


Tổng số điểm của bài viết là: 5 trong 1 đánh giá

Xếp hạng: 5 - 1 phiếu bầu
Click để đánh giá bài viết

  Ý kiến bạn đọc

Về Blog này

Blog này được chuyển đổi từ http://blog.yahoo.com/letrungnghia trên Yahoo Blog sang sử dụng NukeViet sau khi Yahoo Blog đóng cửa tại Việt Nam ngày 17/01/2013.Kể từ ngày 07/02/2013, thông tin trên Blog được cập nhật tiếp tục trở lại với sự hỗ trợ kỹ thuật và đặt chỗ hosting của nhóm phát triển...

Bài đọc nhiều nhất trong năm
Thăm dò ý kiến

Bạn quan tâm gì nhất ở mã nguồn mở?

Thống kê truy cập
  • Đang truy cập57
  • Máy chủ tìm kiếm1
  • Khách viếng thăm56
  • Hôm nay693
  • Tháng hiện tại598,180
  • Tổng lượt truy cập37,399,754
Bạn đã không sử dụng Site, Bấm vào đây để duy trì trạng thái đăng nhập. Thời gian chờ: 60 giây