Các bài toán khó tìm được thực hiện dễ dàng bởi các định lý


28

Tôi đang tìm kiếm các ví dụ hay, trong đó hiện tượng sau xảy ra: (1) Một vấn đề thuật toán có vẻ khó, nếu bạn muốn giải quyết nó hoạt động từ các định nghĩa và chỉ sử dụng kết quả tiêu chuẩn. (2) Mặt khác, nó trở nên dễ dàng, nếu bạn biết một số định lý (không chuẩn).

Mục tiêu của việc này là để minh họa cho sinh viên rằng học nhiều định lý có thể hữu ích, ngay cả đối với những người ngoài lĩnh vực lý thuyết (như kỹ sư phần mềm, kỹ sư máy tính, v.v.). Đây là một ví dụ:

Câu hỏi: Cho các số nguyên n,k,l,d , có tồn tại biểu đồ -vertex (và nếu vậy, hãy tìm một), sao cho kết nối đỉnh của nó là , kết nối cạnh của nó là , và mức độ tối thiểu của nó là ?k l dnktôid

Lưu ý rằng chúng tôi yêu cầu các tham số chính xác bằng các số đã cho, chúng không chỉ là giới hạn. Nếu bạn muốn giải quyết vấn đề này từ đầu, nó có thể xuất hiện khá khó khăn. Mặt khác, nếu bạn quen thuộc với định lý sau (xem Lý thuyết đồ thị cực trị của B. Bollobas), tình huống trở nên khá khác biệt.

Định lý: Gọi là các số nguyên. Tồn tại một đồ thị -vertex với kết nối đỉnh , kết nối cạnh và mức tối thiểu , nếu và chỉ khi một trong các điều kiện sau được thỏa mãn:n k l dn,k,tôi,dnktôid

  • 0ktôid<n/2 ,
  • 12d+2-nktôi= =d<n-1
  • k= =tôi= =d= =n-1.

Những điều kiện này rất dễ kiểm tra, là sự bất bình đẳng đơn giản giữa các tham số đầu vào, vì vậy câu hỏi tồn tại có thể được trả lời dễ dàng. Hơn nữa, bằng chứng của định lý là xây dựng, giải quyết vấn đề xây dựng, là tốt. Mặt khác, kết quả này không xuất hiện đủ tiêu chuẩn, do đó bạn có thể mong đợi mọi người biết về nó.

Bạn có thể cung cấp thêm ví dụ trong tinh thần này, trong đó việc biết một định lý (không chuẩn) rất đơn giản hóa một nhiệm vụ?


1
Tôi không chắc chắn tôi hoàn toàn hiểu câu hỏi của bạn. Ví dụ bạn đưa ra là một vấn đề không hề nhỏ mà Bollobas đã đưa ra một thuật toán (ngụ ý một đặc tính). Vì vậy, ấn tượng của tôi với ví dụ của bạn là bất kỳ thuật toán không tầm thường nào cũng sẽ là câu trả lời ...
Bruno

3
Tính nguyên thủy và định lý AKS.
Lamine

@Bruno: Ý tôi là nhiệm vụ thuật toán trở nên dễ dàng hơn nhiều nếu bạn biết một định lý không được biết đến nhiều, vì vậy người ta có thể chưa bao giờ nghe về nó. Ví dụ được trình bày không hoàn hảo theo nghĩa là ở đây định lý không chỉ giúp, nó thực sự giải quyết được vấn đề. Điều tôi thực sự tìm kiếm là khi một định lý giúp, cung cấp một số phím tắt hữu ích, nhưng bản thân nó không giải quyết được hoàn toàn vấn đề.
Andras Farago

3
Wiki cộng đồng?
Joshua Grochow

1
Định lý RobertsonTHER Seymour, cũng phỏng đoán làm cho việc tìm các số nguyên tố dễ dàng.
Kaveh

Câu trả lời:


31

Quyết định đẳng cấu của các nhóm đơn giản , được đưa ra bởi các bảng nhân của chúng. Thực tế là điều này có thể được thực hiện trong thời gian đa thức xuất phát trực tiếp từ thực tế là tất cả các nhóm đơn giản hữu hạn có thể được tạo ra bởi tối đa 2 yếu tố và hiện là bằng chứng duy nhất được biết về thực tế đó sử dụng Phân loại các nhóm đơn giản hữu hạn (có lẽ là định lý lớn nhất - về mặt tác giả, bài báo và trang - từng được chứng minh).


3
Đây là một ví dụ tuyệt vời! BTW các ý kiến ​​cho câu trả lời này cho rằng trong một số ý nghĩa, định lý này cũng khó như phân loại: mathoverflow.net/a/59216/35733
Sasho Nikolov

32

Nếu tôi hiểu chính xác câu hỏi của bạn, một ví dụ chính tắc sẽ quyết định xem đồ thị có mạch Euler hay không: tương đương với việc kiểm tra G có được kết nối hay không và mọi đỉnh đều có độ chẵn.GG


20

Chiều nay tôi đang đọc Stringology - lý thuyết dây "Thực" .

Bài toán: Nếu y là hai chuỗi trên một số bảng chữ cái khi có một số nguyên dương m , n sao cho x m = y n .xym,nxm= =yn

Định lý: Có các số nguyên dương sao cho x m = y n khi và chỉ khi x y = y x .m,nxm= =ynxy= =yx


9

Tìm số lượng gốc (riêng biệt) của một đa thức thực, trong tất cả hoặc trong một khoảng nhất định. Định lý của Sturm cho bạn biết rằng một chuỗi các đa thức đáp ứng một số lượng nhỏ các yêu cầu có thể được sử dụng để đếm số lượng gốc thực của một đa thức với các hệ số thực.

Sau đó, tất cả những gì bạn phải làm là xây dựng một chuỗi như vậy (điều này không khó lắm, nhưng đòi hỏi một số trường hợp cạnh và xử lý trường hợp đa thức không thể tách rời) và Bob là chú của bạn.

Đáng ngạc nhiên, ít người biết về kết quả này, mặc dù nó khá cũ (1829). Nó được sử dụng trong nhiều Hệ thống Đại số Máy tính, nhưng tất cả các giáo sư toán học tại trường đại học mà tôi hỏi đều không biết Định lý Sturm hoặc họ chỉ biết nó theo tên và nó có liên quan đến gốc rễ của đa thức.

Hầu hết mọi người khá ngạc nhiên khi bạn nói với họ rằng một cái gì đó như đếm chính xác rễ thật dễ dàng và không cần bất kỳ sự gần đúng nào, vì việc tìm kiếm rễ khó khăn hơn nhiều. (Hãy nhớ rằng đối với đa thức bậc 5, thậm chí không tồn tại một công thức phù hợp trực tuyến cho các gốc)


9

Định lý: Mọi đồ thị phẳng đều có một đỉnh có độ lớn nhất là 5.

Vấn đề: Thiết kế biểu diễn của đồ thị phẳng trong đó chúng ta có thể kiểm tra xem ( u , v ) có phải là cạnh trong thời gian O ( 1 ) không .O(n)(u,v)O(1)

Chúng ta có thể loại bỏ đỉnh có độ lớn nhất là 5 và thêm nó vào danh sách dưới dạng khóa và các lân cận của nó làm giá trị. Đồ thị còn lại cũng là mặt phẳng và có một đỉnh có độ lớn nhất là 5. Vì vậy, không gian tiêu thụ nhiều nhất là . Chúng ta có thể kiểm tra xem u có nằm trong danh sách kề không của v ; nếu không chúng ta có thể kiểm tra xem v có nằm trong danh sách kề không của u . Điều này mất tối đa 10 bước.5nbạnvvbạn10


5
Nếu cẩn thận hơn một chút, bạn có thể giảm kích thước của danh sách được lưu trữ ở mỗi đỉnh xuống còn 3 và số bước để kiểm tra tính phụ thuộc đến 6. Xem: Định hướng phẳng với ma trận độ lệch thấp và độ nén của ma trận kề. M. Chrobak và D. Eppstein. Lý thuyết. Comp. Khoa học 86 (2): 243 Từ266, 1991. ics.uci.edu/~eppstein/pub/ChrEpp-TCS-91.pdf
David Eppstein

7

Tôi nghĩ rằng posterchild cho thể loại này, ít nhất là về vấn đề đánh giá khó khăn, là vấn đề sau:

Cho một đồ thị phẳng , G 4-colouanna?GG

Các định lý màu Bốn đơn giản hoá các thuật toán để return true.


6

Liệu một đa thức thực (đa biến) có thể được biểu diễn dưới dạng tổng bình phương của đa thức thực hay không có thể được giải quyết bằng cách rút gọn thành lập trình bán xác định. Cần biết SDP và SDP có thể được giải quyết hiệu quả.p


5

Một ví dụ khác: được đưa ra một đồ thị vô hướng, nó có một vết cắt tối thiểu trong đó tất cả các cạnh đều rời nhau không? Nếu vậy, tìm một.

Thoạt nhìn điều này có vẻ khó khăn. Tuy nhiên, điều này trở nên dễ dàng nếu bạn biết kết quả rằng đồ thị -vertex không bị chặn có thể có tối đa n ( n - 1 ) / 2 lần cắt tối thiểu và tất cả chúng có thể được liệt kê trong thời gian đa thức.nn(n-1)/2

Nó có thể được mở rộng đến các vết cắt gần như tối thiểu, lớn hơn vết cắt tối thiểu, nhưng nhiều nhất là bởi một yếu tố không đổi. Số lượng của chúng vẫn bị giới hạn bởi một đa thức.

(Tôi không tìm kiếm tài liệu tham khảo, hồi ức của tôi là những kết quả này là do D. Karger.)


4

Vấn đề: Độ tin cậy của một công thức MSO (logic thứ hai đơn âm) so với các từ hữu hạn.

Định lý: MSO tương đương với automata hữu hạn hơn các từ hữu hạn.

Những điều trên có thể được nâng lên thành vô hạn, cây hữu hạn, cây vô hạn.


4

Một ví dụ phức tạp hơn một chút: hệ số ma trận không âm , khi thứ hạng không âm là không đổi.

Nói rằng tôi cung cấp cho bạn một ma trận cùng với lời hứa rằng có tồn tại không âm U M m × k , V M k × n như vậy Một = U V . Vấn đề là phải tìm một thừa số ví dụ cho A .AMm×nBạnMm×kVMk×nMột= =BạnVMột

Với một vài dòng đại số tuyến tính sơ cấp, bạn có thể giảm bài toán để giải hệ bất phương trình đa thức trong các biến , trong đó r là thứ hạng không âm của ma trận bạn muốn tính.Ôi(r2)r

Sử dụng thuật toán của Renegar như một cái búa, sau đó bạn có thể giải quyết vấn đề này kịp thời và do đó phục hồiUV. Điều này không xa sự tối ưu, vì ETH khó giải quyết kịp thời NMF(mn ) o ( r ) .(mn)Ôi(r2)BạnV(mn)o(r)


4

Quyết định Diffie Hellman

Nó ghi: đã cho (g,gmột,gb,gc)gGgc= =gmộtb

Theo các giả định tiêu chuẩn về độ cứng của bài toán log rời rạc, vấn đề này cũng có vẻ khó.

Tuy nhiên, với các bản đồ song tuyến, vấn đề này rất dễ dàng và có thể được xác minh là

e(g,gc)= =?e(gmột,gb)

e:G×GGT

Thông tin thêm về điều này có thể được đọc về Vấn đề diffie-hellman quyết định , Boneh'98 hoặc tra cứu google trên Pairings


3

(Một cách tầm thường) sự tồn tại của Cân bằng Nash trong một trò chơi hữu hạn, một số Đường chẵn Hamilton trong đồ thị hình khối, nhiều loại điểm cố định khác nhau, so sánh cân bằng theo thứ tự từng phần và nhiều vấn đề PPAD khác.


Sự tồn tại của Cân bằng Nash - và nhiều bằng chứng khác về sự tồn tại đặc trưng của PPAD - dường như không làm cho bất kỳ vấn đề nào trở nên dễ dàng hơn để giải quyết bằng thuật toán ...
Joshua Grochow

1
Tôi đã đề cập đến phiên bản quyết định của những vấn đề này.
Yonatan N

2

((V,E),S,t)E'ESt(V,E')E'

St(V,E)St


1
Người ta có thể nói rằng dòng chảy là dễ dàng nếu bạn biết rằng LP là dễ dàng. Do đó, hai định lý lớn (LP trong poly time và maxflow-mincut) cho phép chúng ta tính toán các min-cut.
Chandra Chekuri

@ChandraChekuri, cảm nhận cá nhân của tôi là điều đó không hoàn toàn phù hợp với câu hỏi: định lý LP có thể giải được trong polytime không giúp chúng tôi thực sự xây dựng một thuật toán cho các phép cắt. Chúng ta cần thuật toán LP thực tế.
Tối đa

Không hẳn vậy. Nếu bạn có thể tìm thấy giá trị cắt tối thiểu trong một biểu đồ nhất định một cách hiệu quả thì bạn có thể sử dụng thuật toán như vậy để tìm chính vết cắt thực tế.
Chandra Chekuri

2

Đây là một ví dụ khác: đưa ra một biểu đồ đơn giản không xác định, quyết định xem nó có hai mạch tách rời đỉnh hay không.

23

3K5K3,n-3

Vì thật dễ dàng để kiểm tra xem đồ thị có phải là một trong những đồ thị được cho phép bởi Định lý hay không, điều này cung cấp cho chúng tôi thuật toán đa thức thời gian cho bài toán quyết định.

Lưu ý: (1) Việc chứng minh định lý hoàn toàn không dễ dàng. (2) Một khi chúng tôi quyết định rằng có tồn tại hai mạch rời rạc, có vẻ như không rõ ràng làm thế nào để giải quyết vấn đề tìm kiếm liên quan , đó là làm thế nào để thực sự tìm thấy các mạch như vậy. Định lý không đưa ra lời khuyên trực tiếp cho điều đó.


1

các ví dụ ít phức tạp hơn: có một số tính chất giống như định lý cho thấy các thuật toán tham lam cho một số vấn đề là tối ưu. Nó không quá rõ ràng đối với một cây bao trùm tối thiểu có thể được tìm thấy bằng một thuật toán tham lam. Về mặt khái niệm có phần giống nhau là thuật toán của Dijkstra để tìm ra con đường ngắn nhất trong biểu đồ. thực tế trong cả hai trường hợp, các "định lý" liên quan gần giống như các thuật toán.


Tôi nghĩ rằng đây sẽ là một câu trả lời tốt hơn nếu ví dụ bạn bao gồm một tuyên bố về thuộc tính cắt của MST và đề cập đến cách nó hàm ý tính đúng đắn của cả một loại thuật toán MST tham lam.
Sasho Nikolov

Cắt tài sản MST được liệt kê trên pg wikipedia. có lẽ bạn có thể giới thiệu các khái quát khác không được đề cập ở đó. btw nhớ lại người hỏi đã hỏi ví dụ phục vụ "những người ngoài lĩnh vực lý thuyết" (những ví dụ hay khác được đưa ra có thể quá tiên tiến đối với người ngoài)
vzn

TeT-eMộtBeE(Một,B)

1

Tìm chuỗi các số Fibonacci là sản phẩm của các số Fibonacci khác. Ví dụ: số Fibonacci 8 nằm trong chuỗi vì 8 = 2 * 2 * 2 và 2 là số Fibonacci không bằng 8. Số Fibonacci 144 nằm trong chuỗi vì 144 = 3 * 3 * 2 * 2 * 2 * 2 và cả 2 và 3 là các số Fibonacci không bằng 144.

Định lý của Carmichael ngụ ý rằng 8 và 144 là các thuật ngữ duy nhất của chuỗi này.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.