Bản dịch tự động sơ bộ, chất lượng thấp: có thể còn lỗi và câu chữ chưa tự nhiên. Bản này sẽ được thay bằng bản dịch tốt hơn. Bản gốc →
2
Thuật toán trong từ
Vào cuối thế kỷ 19 và đầu thế kỷ 20, một đối tượng nghiên cứu mới xuất hiện trong toán học: các chuỗi ký hiệu được lấy từ một tập hợp cố định. Trong tài liệu toán học của chúng ta, cel còn được gọi là các từ gà gô.
Nhà toán học nổi tiếng người Đức David Hilbert vào đầu thế kỷ này đã đề xuất một kế hoạch chứng minh tính nhất quán của toán học bằng cách xây dựng một phép tính (tức là quy tắc biến đổi) cho các từ. Vào đầu những năm ba mươi, người ta phát hiện ra rằng “tất cả toán học” (và thậm chí “tất cả số học”) không thể được tóm tắt trong một phép tính (đây là định lý nổi tiếng của Gödel). Mặc dù hy vọng của Hilbert chưa được thực hiện đầy đủ, nhưng một số nhánh toán học nhất định đã được “định dạng hóa” theo cách này, và mọi nghiên cứu hiện đại về nền tảng của toán học đều bắt đầu bằng một hình thức hóa tương tự. Trong nhiều ngành toán học (ví dụ, ngôn ngữ học toán học và đại số tổng quát) và các ứng dụng của nó (ví dụ: ngôn ngữ lập trình), từ đã trở thành một trong những đối tượng nghiên cứu quan trọng nhất.
Lý thuyết về thuật toán chỉ ra đời vào những năm ba mươi của thế kỷ chúng ta. Kể từ đó, khái niệm thuật toán cũng trở thành một trong những khái niệm quan trọng nhất trong toán học.
Mặc dù từ “thuật toán” chỉ xuất hiện ở phần cuối của bài viết này nhưng tất cả đều nói về từ ngữ và thuật toán làm việc với từ ngữ.
Ví dụ giới thiệu
Chúng ta cố định tam giác đều ABC trên mặt phẳng (Hình 1). Chúng ta biểu thị bằng R phép quay của mặt phẳng 120° ngược chiều kim đồng hồ quanh tâm O của tam giác (Hình 2); Gọi S là sự đối xứng trục của mặt phẳng với trục OB (Hình 3). Mỗi phép biến đổi R, S ánh xạ tam giác ABC lên chính nó. Vì vậy, chúng còn được gọi là sự tự thẳng hàng của tam giác ban đầu. Chúng ta sẽ gọi sự tự kết hợp là R và S sơ cấp.
Chúng ta hãy xem xét tất cả các thành phần có thể có của sự tự sắp xếp cơ bản (“Hình học 7”, đoạn 77). Mỗi thành phần như vậy một lần nữa, rất thuận tiện, sẽ là một loại tự kết hợp.
Giống như các phép tính cộng và nhân các số thông thường, phép tính thành phần của các phép tự kết hợp có tính chất tổ hợp hoặc kết hợp: nếu f, g, h là các phép tự kết hợp thì
(Điều này đúng không chỉ với việc tự sắp xếp của một tam giác mà còn đúng với việc ánh xạ tùy ý bất kỳ tập M nào vào chính nó!) Do đó, trong “dài-
Hình 1.
Trong các tác phẩm tự kết hợp cơ bản mới, các dấu ngoặc có thể được đặt theo bất kỳ thứ tự nào, điều đó có nghĩa là chúng hoàn toàn không thể được đặt. Ví dụ,
Khác với phép cộng và phép nhân các số, phép tính thành phần tự tổ hợp không có bất kỳ
3
Hình 2.
vorya, tính chất giao hoán, hay giao hoán. Vì vậy, trong trường hợp này (xem Hình 4 và 5).
Hãy viết ngẫu nhiên một số thành phần “dài” của các tổ hợp tự cơ bản:
(1)
Có thể nói gì về việc tự điều chỉnh ?
Dễ dàng chứng minh rằng có sáu sự thẳng hàng của tam giác ban đầu: ánh xạ đồng nhất thức , giữ nguyên từng điểm của mặt phẳng; xoay ngược chiều kim đồng hồ; xoay theo chiều kim đồng hồ; đối xứng trục với trục . Từ Hình 4 và 5, rõ ràng là đối xứng trục với trục trùng với bố cục và đối xứng trục với trục là bố cục .
Bài toán. Hãy tưởng tượng một phép quay theo chiều kim đồng hồ như một thành phần của các thao tác tự sắp xếp cơ bản.
Hình 3.
Vì vậy, thành phần được viết ngẫu nhiên của chúng tôi (1) là một trong sáu thành phần tự kết hợp được liệt kê. Chính xác thì cái nào?
Tất nhiên, câu hỏi này rất dễ giải quyết thuần túy về mặt hình học: tiếp tục với tam giác ban đầu lần lượt tất cả các cách tự sắp xếp đã chỉ định (đừng quên rằng ký hiệu có nghĩa là: đầu tiên khớp, sau đó là ) và nhìn vào vị trí cuối cùng của tam giác.
Đối với mục đích của chúng tôi, điều quan trọng là câu hỏi tương tự này có thể được giải quyết bằng cách sử dụng một số phép tính đại số.
Thật dễ dàng để kiểm tra điều đó
Hơn nữa, trong bất kỳ thành phần tự kết hợp nào, bản đồ nhận dạng có thể bị bỏ qua.
Vì chúng ta phải so sánh toàn bộ phép tính, vâng-
Hình 4.
Hình 5.
4
Hãy coi dấu thành phần như dấu chấm khi nhân: chúng ta sẽ không viết dấu này. Khi đó các đẳng thức (1), (2) sẽ có dạng
Thành phần có thể được chuyển đổi như thế này:
phép tính kết hợp
Trong phép tính vừa thực hiện, chúng tôi thực sự đã xử lý các từ (xem đoạn đầu tiên của thống kê).
Ở phần trước, các chữ cái và có ý nghĩa: chúng biểu thị các đối tượng không cụ thể trong trường — sự tự kết hợp không phải totor. Bây giờ chúng ta sẽ bắt đầu nghiên cứu các chữ cái và từ x trừu tượng - những chữ cái và từ được xây dựng từ chúng không có nghĩa gì cả. (Tuy nhiên, bên dưới chúng ta sẽ quay lại ví dụ ở phần trước.)
Tập hợp các chữ cái ban đầu mà các từ được tạo thành được gọi là bảng chữ cái. Số lượng chữ cái trong một từ được gọi là độ dài của nó.
Giả sử bảng chữ cái ban đầu của chúng ta chỉ bao gồm hai chữ cái: . Sau đó có 4 từ có độ dài 2: ; 8 từ có độ dài 3, v.v. Cũng được phép nói về các từ “một chữ cái”, các từ có độ dài 1; chỉ có hai trong số chúng: và . Thật thuận tiện khi xem xét rằng cũng có những từ không chứa các chữ cái - một từ trống. Hãy để các từ tương tự như một tập hợp trống. Nó được ký hiệu bằng tiếng Hy Lạp bằng chữ cái . Tất nhiên, độ dài của nó được coi là bằng 0.
“Quy tắc trò chơi” của chúng ta sẽ như thế này:
(5)
Hình 6.
Hình 7.
trong đó và là một số từ. Quy tắc (5) có nghĩa là trong bất kỳ từ nào bạn có thể thay thế từ cùng với và từ bằng . Các quy tắc có dạng (5) được gọi là quy tắc thay thế.
Hãy xem sự thay thế là một ví dụ:
(6)
Trong các từ các từ xuất hiện ở ba vị trí (Hình 6) hoặc, như người ta nói trong toán học, có ba lần xuất hiện. Từ có hai lần xuất hiện trong các từ (Hình 6). Bằng cách sử dụng thay thế (6) một lần, bạn có thể nhận được 5 từ từ từ (Hình 7). Đối với từ , sự thay thế (6) không được áp dụng: nó không bao gồm bên trái hoặc bên phải của sự thay thế này.
Khi chúng tôi đánh giá , về cơ bản chúng tôi đang áp dụng các thay thế , v.v.
Thay thế kiểu
(7)
trước hết có nghĩa là trong bất kỳ từ nào cùng nhau bạn có thể “thay thế một từ trống”, tức là chỉ cần loại bỏ các từ đến . Ví dụ, nếu sự thay thế
(8)
áp dụng theo cách này cho chữ thứ hai trong từ , bạn sẽ có được từ . Thứ hai, việc thay thế dạng (7) có nghĩa là trong bất kỳ từ nào giữa hai chữ cái bất kỳ, người ta có thể “chèn” các từ : việc cho rằng một từ trống xuất hiện giữa bất kỳ chữ cái nào là điều tự nhiên. Ngoài ra, ta áp dụng thay thế (7) “từ phải sang trái”, ta có thể
5
tất nhiên, các từ “thuộc tính” cả ở phía trước và phía sau bất kỳ từ nào. Bằng cách sử dụng thay thế (8), bạn có thể nhận được 6 từ từ cùng một từ (tại sao?).
Để xác định một “trò chơi”, cần phải sửa một số tập hợp thay thế hữu hạn. Một tập hợp như vậy (cùng với bảng chữ cái) trong logic toán học được gọi là phép tính kết hợp.
Hai từ được gọi là liền kề trong một phép tính kết hợp nhất định nếu một trong số chúng có thể được lấy từ từ kia bằng cách áp dụng bất kỳ sự thay thế nào của phép tính này. Hai từ, và , được gọi là tương đương trong phép tính này nếu chúng có thể được “kết nối” bởi một chuỗi các từ liên quan, nghĩa là nếu có các từ , , …, nằm trong chuỗi , , …, , mỗi từ có thể có các từ lân cận. Chúng ta sẽ biểu thị sự tương đương của các từ , như sau: .
Tất nhiên, các từ liên quan là tương đương.
Ví dụ 1
Xem xét trong bảng chữ cái phép tính kết hợp với sự thay thế
Những từ nào tương đương trong phép tính này?
Ví dụ: , vì trong chuỗi , , , , mỗi từ được hoán đổi với các từ lân cận.
Có thể chỉ ra cách để tìm ra hai từ bất kỳ trong bảng chữ cái của chúng ta xem chúng có tương đương hay không?
So sánh đẳng thức (4) với sự thay thế (9) gợi ý phương pháp này. Xét tam giác đều và sự tự thẳng hàng của nó (tr. 2).
Đối với bất kỳ từ nào , chúng tôi biểu thị bằng thành phần của các phần tử tự kết hợp và , là kết quả của việc thay thế các chữ cái bằng và các chữ cái bằng trong các từ . Ví dụ: , .
Vì trong thành phần của các phép tự kết hợp, ánh xạ hiệu quả cũng không cần phải được viết nên chúng ta đặt theo định nghĩa.
Mỗi thành phần của các phần tử tự kết hợp rõ ràng có thể được viết dưới dạng , trong đó là một từ nào đó.
Như vậy, chúng ta đã thu được một số sự tương ứng giữa tập hợp tất cả các từ trong bảng chữ cái và tập hợp các từ tự kết hợp. Sự tương ứng này không nghịch đảo: các từ khác nhau có thể tương ứng với cùng một sự tự kết hợp. Ví dụ: (xem Hình 5 và 8).
Phương pháp mà chúng tôi muốn đề xuất để thiết lập sự tương đương của các từ tùy ý dựa trên ba “phê bình”:
(A) Vế trái và phải của mỗi phép thay thế phép tính tương ứng với sự tự kết hợp của riêng tôi:
Hình 8.
6
(B) Bất kỳ từ nào trong phép tính của chúng ta đều tương đương với một trong các từ sau: Λ, a, b, aa, ab, aab.
(B) Bất kỳ hai từ nào trong số các từ Λ, a, b, aa, ab, aab đều tương ứng với các cách tự sắp xếp khác nhau.
Trước hết, chúng ta hãy chứng minh tính đúng đắn của các phát biểu (A) - (B).
Tuyên bố (A) theo sau đẳng thức (4). Câu (B) được xác minh về mặt hình học: chúng ta hãy hành động trên tam giác ban đầu với sự tự thẳng hàng và xem rằng thu được các kết quả khác nhau (xem Hình 1-3, 9, 4 và 8).
(B) chứng minh điều sau. Đặt là một từ tùy ý. Sau khi áp dụng phép thay thế đầu tiên (9) cho nó với số lần cần thiết, chúng ta sẽ “lái” tất cả về đầu. Như vậy từ tương đương với một từ có dạng
. Nếu chẵn, thì bằng cách áp dụng lần thay thế thứ ba (9) cho số lần cần thiết, chúng ta có thể “xóa” tất cả khỏi . Trong trường hợp này, và do đó , tương đương với một từ có dạng
Tùy theo số dư khi chia số cho 3 (bằng 0, 1 hoặc 2)
từ sử dụng từ thay thế thứ hai (9) được chuyển thành một trong các từ . Nếu lẻ thì và tương đương với một từ có dạng
Tùy theo phần còn lại của từ được dịch thành một trong các từ .
Từ (A), rõ ràng các từ liền kề tương ứng với cùng một sự tự kết hợp. Điều này có nghĩa là điều này cũng đúng với các từ tương đương:
(10)
Từ (B), (B) và (10) ta có điều ngược lại:
(11)
Hãy để . Theo (B), mỗi từ tương đương với một trong các từ . Hãy đặt , ở đâu . Từ (10) và . Tính đến chúng ta nhận được . Sau đó từ (B) . Vì vậy, .
Từ (10) và (11) suy ra
(12)
Hãy nhìn lại chứng minh của mệnh đề (12) và bạn sẽ thấy rằng chứng minh này chỉ dựa trên (A) - (B). Khi (A) - (B) đã được thiết lập, không cần tham khảo thêm phép tính thay thế.
7
Bây giờ, sau khi thiết lập (12), cuối cùng chúng tôi cũng có thể đưa ra phương pháp đã hứa: đường dẫn phải được kiểm tra tính tương đương của các từ và ; hành động trên tam giác với sự tự căn chỉnh và ; nếu bạn nhận được kết quả tương tự thì và do đó, theo (12) và là tương đương; ngược lại, một lần nữa do (12), chúng không tương đương.
Ví dụ 2
Bây giờ chúng ta hãy xem xét phép tính kết hợp với các phép thay thế trong cùng một bảng chữ cái :
Đối với phép tính này, thật dễ dàng để chỉ ra hai cách khai báo sự tương đương.
Cách đầu tiên
Phương pháp này tương tự như phương pháp trong ví dụ 1. Chúng tôi sửa một số hình chữ nhật trên mặt phẳng (Hình 10). Ta biểu thị bằng sự đối xứng trục của mặt phẳng có trục đi qua tâm đối xứng của hình chữ nhật song song với cạnh (Hình 11); thông qua chúng ta biểu thị sự đối xứng trục với trục (Hình 12). Cả hai sự đối xứng này đều là sự tự sắp xếp của hình chữ nhật ban đầu. Chúng ta sẽ gọi sự tự kết hợp và là cơ bản.
Như trong Ví dụ 1, chúng ta sẽ xem xét tất cả các thành phần có thể có của các tự tổ hợp cơ bản.
Lần này chúng ta sẽ có được khả năng tự căn chỉnh từ từ bằng cách thay thế chữ cái bằng , chữ cái bằng .
Một lần nữa, ba “trụ cột” được hoàn thành:
(A) Vế trái và phải của mỗi phép thay thế phép tính tương ứng với việc áp dụng (13) phép thay thế (13), tìm các từ eton tương đương với các từ và (cách thực hiện điều này được mô tả trong chứng minh (B) từ Ví dụ 1); nếu và hóa ra tương đương với cùng một từ eton, thì ; nếu không thì và không tương đương.
Trong ngôn ngữ của bài viết “Bất biến” của A. Tolygo («Kvant», 1976, số 12), phương pháp thứ hai có thể được phát biểu như sau: đối với bất kỳ từ nào
(B) Bất kỳ từ nào trong phép tính của chúng tôi đều tương đương với một trong bốn từ: , , , .
(B) Chúng tôi yêu thích hai trong số các từ , , , tương ứng với các cách tự sắp xếp khác nhau.
Từ (A) – (B), như trên ta suy ra
Điều này có nghĩa là sự tương đương của các từ tùy ý , được thiết lập như trong Ví dụ 1: tác động lên hình chữ nhật bằng các phép biến đổi và ; nếu chúng tôi nhận được kết quả tương tự thì ; nếu không thì và không tương đương.
Cách thứ hai
Xem xét kỹ hơn các từ thay thế (13), bạn có thể nhận thấy rằng chúng lưu lại một trong các từ tráng men , , , .
Vì đối với hai từ tráng men bất kỳ, tính chẵn lẻ của chữ cái số hoặc tính chẵn lẻ của chữ cái số đều khác nhau (xem Hình 13), nên các từ tráng men không tương đương theo cặp.
Do đó, sự tương đương của các từ tùy ý , rất đơn giản: áp dụng thay thế (13), tìm các từ eton tương đương với các từ và (cách thực hiện được mô tả trong chứng minh (B) từ Ví dụ 1); nếu và hóa ra tương đương với cùng một từ eton, thì ; nếu không thì và không tương đương.
Trong ngôn ngữ của bài viết “Bất biến” của A. Tolygo («Kvant», 1976, số 12), phương pháp thứ hai có thể được phát biểu như sau: đối với bất kỳ từ nào
8
α chúng ta hãy đặt
Các hàm tạo thành một hệ thống bất biến hoàn chỉnh. Vì vậy, sự tương đương của các từ tùy ý α, β được nhận biết như sau: đếm giá trị của các hàm và trên α và β; nếu bằng
sẽ được ứng nghiệm, α~β; mặt khác α và β không tương đương.
Hãy thử giải bài toán từ Ví dụ 1 theo cách thứ hai, tức là sử dụng bất biến. Điều này khó hơn nhiều so với ví dụ 2.
Thuật toán không phải lúc nào cũng tồn tại
Bài toán tìm cách thiết lập sự tương đương của các từ trong phép tính kết hợp được nhà toán học người Na Uy Thue đặt ra vào năm 1914. Bản thân Thue cũng đã chỉ ra các phương pháp tính toán kết hợp thuộc một loại hình đặc biệt nào đó.
Vào năm 1946 và 1947, nhà toán học Liên Xô Andrei Andreevich Markov và nhà toán học người Mỹ Emil Post đã độc lập xây dựng phép tính kết hợp mà cũng không có phương pháp nào.
Cho đến nay, ở nước ta chúng ta vẫn tránh dùng từ “thuật toán”. Trong toán học, một thuật toán được gọi là biểu diễn chính xác cho lời giải của một số lớp bài toán. Cụm từ này trong mọi trường hợp không thể được coi là một khái niệm cụ thể của thuật toán - xét cho cùng, các từ “biểu diễn chính xác” không phải là một loại thuật ngữ toán học nào đó và không có ý nghĩa rõ ràng.
Cho đến khi các nhà toán học bắt đầu xây dựng các thuật toán cụ thể, họ vẫn thực hiện mô tả lỏng lẻo về khái niệm này ở trên. Nhưng trong những thập kỷ đầu tiên của thế kỷ 20, nhiều lớp bài toán đã tích lũy mà không tìm được thuật toán nào. Các nhà toán học bắt đầu nghi ngờ rằng đó không phải là sự thiếu khéo léo. Họ nảy ra một ý nghĩ: điều gì sẽ xảy ra nếu đối với lớp này hay lớp kia bài toán thuật toán không hoạt động? Điều gì sẽ xảy ra nếu nó đơn giản là không tồn tại?
Để chứng minh rằng một thuật toán không tồn tại, một khái niệm mơ hồ không còn đủ nữa; khái niệm này cần phải được làm rõ. Việc làm rõ này được thực hiện vào giữa thế kỷ 30 của chúng ta *).
Chỉ sau khi làm rõ điều này, về nguyên tắc mới có thể chứng minh được sự không tồn tại của thuật toán. Bằng chứng đầu tiên thuộc loại này được đưa ra bởi nhà logic học người Mỹ Alonzo Church.
Phép tính do A. A. Markov và E. Post xây dựng rất cồng kềnh: chúng chứa hàng trăm phép thay thế. Các nhà toán học bắt đầu tìm kiếm những ví dụ đơn giản hơn về phép tính kết hợp với một bài toán tương đương không thể giải được. Grigory Samuilovich Tseytin đưa rekord theo hướng này: ông đã xây dựng một phép tính như vậy chỉ với 7 lần thay thế **).
Tseitin đã chứng minh rằng đối với phép tính trong bảng chữ cái {a, b, c, d, e} bằng cách thay thế
Không có thuật toán để nhận biết sự tương đương của từ.
Điều thú vị là phép tính có một bài toán tương đương có thể giải được và phép tính có bài toán tương đương không giải được “nằm cạnh nhau”. Trong tài liệu quảng cáo của B. A. Trakhtenbrot “Thuật toán và máy lời giải bài toán” (Moscow, Fizmatgiz, 1960) và phép tính Tseytin đã được đưa ra *)
*) Bạn có thể đọc về điều này trong §§ 7, 13 trong tập tài liệu “Thuật toán và máy tính tự động” của B. A. Trakhtenbrot (Moscow, “Đài phát thanh Liên Xô”, 1974) và trên trang. 9-13 của cuốn sách “Máy Tybioring và các hàm đệ quy” (Moscow, “Mir”, 1972).
**) Công thức của ông đã được sử dụng và trình bày bởi Yury Vladimirovich Matiyasevich, người đã xây dựng một phép tính như vậy bằng cách sử dụng ba phép thay thế. Thật không may, chúng quá dài để đưa vào đây.