Ví dụ về giá trừu tượng?


112

Khoa học máy tính lý thuyết đã cung cấp một số ví dụ về "giá trừu tượng". Hai nổi bật nhất là để loại bỏ và sắp xếp Gaussian. Cụ thể là:

  • Người ta biết rằng loại bỏ Gaussian là tối ưu cho việc tính toán định thức nếu bạn giới hạn các hoạt động đối với các hàng và cột trong toàn bộ [1]. Rõ ràng thuật toán của Strassen không tuân theo sự hạn chế đó và nó tốt hơn về mặt triệu chứng so với loại bỏ Gaussian.
  • Trong cách sắp xếp, nếu bạn coi các thành phần của danh sách là các hộp đen chỉ có thể so sánh và di chuyển xung quanh, thì chúng ta có giới hạn dưới lý thuyết thông tin . Tuy nhiên, cây hợp nhất đánh bại điều này bị ràng buộc bởi, theo như tôi hiểu, sử dụng phép nhân thông minh.viết sai rồiđăng nhậpviết sai rồi

Có những ví dụ khác về giá trừu tượng?

Để chính thức hơn một chút, tôi đang tìm kiếm các ví dụ trong đó giới hạn dưới được biết vô điều kiện trong một số mô hình tính toán yếu, nhưng được biết là bị vi phạm trong một mô hình mạnh hơn. Hơn nữa, điểm yếu của mô hình yếu nên xuất hiện dưới dạng trừu tượng , phải thừa nhận là một quan niệm chủ quan. Ví dụ, tôi không coi việc hạn chế các mạch đơn điệu là một sự trừu tượng. Hy vọng rằng hai ví dụ trên làm rõ những gì tôi đang tìm kiếm.

[1] KLYUYEV, VV và NI KOKOVKIN-SHcHERBAK: Về việc giảm thiểu số lượng các phép toán số học cho giải pháp của các hệ phương trình đại số tuyến tính. Bản dịch của GI TEE: Báo cáo kỹ thuật CS 24, tháng 6 t4, t965, Khoa Khoa học Máy tính, Đại học Stanford.


3
Tôi thực sự thích câu hỏi này; mong được gặp nhiều câu trả lời hơn
Randomwalker

1
Ngoài ra còn có một chi phí trừu tượng 'ngầm'. Bạn đề cập đến ví dụ về giá của sự trừu tượng trong việc sắp xếp và cách các kết quả trừu tượng hóa này không áp dụng cho các số sắp xếp (trong thực tế có thể được thực hiện trong O (n) với bucketsort trong một số trường hợp). Giới hạn dưới trên biểu đồ Voronoi thường được dẫn xuất bằng cách chỉ ra rằng có sự giảm thời gian tuyến tính từ biểu đồ Voronoi để sắp xếp danh sách các số. Và nhiều thuật toán hình học xuất phát từ giới hạn thấp hơn từ giới hạn dưới này trong việc tính toán voronoi.
Ross Snider

Tại sao đây là một wiki cộng đồng?
nanda

1
@nanda: Bởi vì không có câu trả lời đúng duy nhất, và trên thực tế, câu hỏi được thiết kế để tạo ra nhiều câu trả lời đúng, như tôi nghĩ nó có.
Joshua Grochow

1
có vẻ như bạn thực sự có thể đề cập đến thư giãn thay vì trừu tượng
vzn

Câu trả lời:


38

Một ví dụ đẹp khác về giá trừu tượng: mã hóa mạng . Người ta biết rằng trong các cài đặt phát đa hướng, mối quan hệ cắt tối đa dòng chảy không phải là một trong các đẳng thức (nguyên hàm và kép không khớp). Tuy nhiên, các mô hình truyền thống cho rằng dòng chảy chỉ được truyền qua và không được "xử lý" theo bất kỳ cách nào. Với mã hóa mạng, bạn có thể vượt qua giới hạn này bằng cách kết hợp khéo léo các luồng. Ví dụ này là một động lực tuyệt vời cho nghiên cứu về mã hóa mạng ngay từ đầu.


33

Lập trình chức năng thuần túy là một sự trừu tượng phổ biến cung cấp, ít nhất là theo những người đề xuất của nó, một sự gia tăng lớn trong sức mạnh biểu cảm của mã, trong số những lợi ích khác. Tuy nhiên, vì đây là một mô hình hạn chế của máy - đặc biệt là không cho phép bộ nhớ có thể thay đổi - nó đặt ra câu hỏi về sự chậm chạp không triệu chứng so với mô hình (RAM) thông thường.

Có một chủ đề tuyệt vời về câu hỏi này ở đây . Các vấn đề chính dường như là:

  1. Bạn có thể mô phỏng bộ nhớ có thể thay đổi với cây nhị phân cân bằng, do đó, trường hợp chậm nhất là O (log n).
  2. Với đánh giá háo hức , có những vấn đề mà đây là điều tốt nhất bạn có thể làm.
  3. Với đánh giá lười biếng , không biết có hay không có một khoảng cách. Tuy nhiên, có nhiều vấn đề tự nhiên mà không có thuật toán chức năng thuần túy nào biết được phù hợp với độ phức tạp RAM tối ưu.

Dường như với tôi rằng đây là một câu hỏi cơ bản đáng ngạc nhiên được mở.


cho rằng lập trình chức năng là một mô hình cho các tính toán dữ liệu lớn (xem MapReduce), sự chậm lại này có khả năng khá đáng kể.
Suresh Venkat

5
Ngoài ra, điều quan trọng là phải nhớ rằng hãy cẩn thận được đề cập trong luồng SO. Cụ thể, bị ràng buộc thấp hơn trong một vấn đề nằm trong một mô hình thậm chí còn hạn chế hơn: trực tuyến với các yếu tố nguyên tử. Tôi tin rằng một giới hạn thấp hơn của hình thức đó trong mô hình chuẩn của lập trình chức năng vẫn còn mở. Ω(nlogn)
Joshua Grochow

1
Ít nhất, bài báo được đề cập trong chủ đề đó ([Bird, Jones và De Moor, 1997], xem ở đó để tham khảo đầy đủ) thiết lập một khoảng cách betweeen háo hức và đánh giá lười biếng.
Blaisorblade

Đối với các tính toán dữ liệu rất lớn, chi phí IO sẽ chiếm ưu thế mạnh mẽ đến mức sự chậm lại logarit trong các tính toán không thành vấn đề, phải không?
adrianN

Bạn có ý nghĩa gì bởi thứ tự đánh giá?
libeako

28

Trong khi câu hỏi của bạn tập trung vào lý thuyết phức tạp, những điều tương tự có thể xảy ra trong các lĩnh vực khác như lý thuyết về ngôn ngữ lập trình. Dưới đây là một vài ví dụ trong đó sự trừu tượng làm cho một cái gì đó không thể giải quyết được (tức là giới hạn dưới trong mô hình yếu là không thể, trong khi mô hình mạnh cho phép thuật toán được thể hiện):

  • Trong phép tính lambda, có các hàm mà bạn không thể biểu thị trực tiếp (nghĩa là thuật ngữ lambda làm giảm beta đến kết quả mong muốn). Một ví dụ là song song hoặc (một hàm gồm hai đối số trả về bất kỳ đối số nào kết thúc). Một ví dụ khác là một hàm in đối số của nó theo nghĩa đen (một hàm rõ ràng không thể phân biệt giữa hai đối số tương đương beta). Việc thiếu tính biểu cảm là do thực thi sự trừu tượng rằng các thuật ngữ lambda tương đương beta phải được xử lý giống hệt nhau.

  • Trong một ngôn ngữ gõ tĩnh chỉ có đa hình tham số , chẳng hạn như ML không có phần mở rộng ưa thích, không thể viết một số hàm - bạn có được các định lý miễn phí . Ví dụ, một hàm có loại là (bất kể loại đối số là gì, trả về một đối tượng cùng loại) phải là hàm nhận dạng hoặc không kết thúc. Sự thiếu biểu cảm là do sự trừu tượng mà nếu bạn không biết loại giá trị, nó mờ đục (bạn chỉ có thể vượt qua nó).α,αα


4
Ước gì tôi có thể bỏ phiếu này nhiều lần.
Jacques Carette

26

"Giá trừu tượng" cũng có thể được tìm thấy khi giải quyết vấn đề logarit rời rạc trong mật mã. Shoup (1997) đã chỉ ra rằng bất kỳ phương pháp chung chung (ví dụ, các thuật toán sử dụng chỉ hoạt động nhóm) có sử dụng ít nhất hoạt động nhóm, trong đómlà kích thước của nhóm. Điều này phù hợp với sự phức tạp củacuộc tấn công sinh nhậtchung. Tuy nhiên, các thuật toán nhưtính toán chỉ sốhoặc cácthuật toán Pohlig-Hellmandựa trên số cấu trúc lý thuyết của Z * n để có được các thuật toán nhanh hơn một chút (ít nhất là trong nhóm trật tự mịn).Ω(m)mZviết sai rồi*

Quan sát này là một trong những lý do cho sự phổ biến của mật mã đường cong elliptic (như trái ngược với mật mã trong nhóm như ) Kể từ đó, về cơ bản, chúng ta chỉ biết phương pháp tổng quát để giải quyết các bài toán logarit rời rạc trong nhóm dựa trên đường cong elliptic.Zviết sai rồi*


25

Đây là một ví dụ từ các thuật toán đồ thị. Với một đồ thị có hướng có trọng số không âm trên các cạnh, bài toán đường dẫn cổ chai tất cả các cặp là tính toán, đối với tất cả các cặp đỉnh t , dòng chảy tối đa có thể được đẩy dọc theo một số đường từ s đến t . (Chính thức, chúng tôi chỉ tối đa hóa trọng số tối thiểu của một cạnh trên bất kỳ đường dẫn nào từ s đến t . Chính thức hơn, chúng tôi đang thay thế min+ theo định nghĩa của các đường dẫn ngắn nhất của tất cả các cặp bằng maxmin .)StStSttối thiểu+tối đatối thiểu

Gọi là số đỉnh trong đồ thị đầu vào. Vấn đề này được biết là cần có Ω ( n 3 ) thời gian trong mô hình so sánh đường dẫn của Karger, Koller và Phillips , giống như vấn đề đường đi ngắn nhất của tất cả các cặp. (Mô hình đường dẫn so hỗ trợ các thuật toán truyền thống như Floyd-Warshall.) Tuy nhiên, không giống như tất cả các cặp con đường ngắn nhất, nó chỉ ra rằng tất cả các cặp nút cổ chai đường dẫn có thể được giải quyết trong ít hơn O ( n 2.8 ) thời gian sử dụng phép nhân ma trận nhanh .viết sai rồiΩ(viết sai rồi3)Ôi(viết sai rồi2,8)


22

Theo một cuộc thảo luận trong câu hỏi này , nhiều vấn đề trong hình học tính toán có giới hạn thấp hơn trong cây quyết định đại số hoặc mô hình cây tính toán đại số, xuất phát từ các vấn đề cơ bản như sắp xếp hoặc phân biệt phần tử . Không khó để tìm thấy các tài liệu tuyên bố rằng giới hạn trên của O ( n log n ) về các vấn đề liên quan như việc xây dựng các tam giác Delaunay là tối ưu, bởi vì chúng khớp với các giới hạn dưới này.Ω(nlogn)O(nlogn)

Nhưng khi đầu vào được chỉ định theo tọa độ Cartesian nguyên (như thường thấy trong thực tế, dấu phẩy động không phù hợp với hình học tính toán), các giới hạn dưới này không khớp với mô hình tính toán. Có lẽ không có gì đáng ngạc nhiên khi các vấn đề loại tìm kiếm phạm vi trực giao có thể được giải quyết nhanh hơn bằng cách sử dụng các kỹ thuật được điều chỉnh từ sắp xếp số nguyên, nhưng ngay cả các vấn đề không trực giao thường có thể có thuật toán nhanh hơn (giải quyết chính xác vấn đề, trong các mô hình tính toán cho phép số học với O (1) ) nhân với độ chính xác của các số nguyên đầu vào). Xem ví dụ arXiv: 1010.1948 cho một tập hợp các ví dụ.


Cảm ơn vì đã làm nổi bật "nghịch lý", và bài báo gần đây của Chan và Pǎtraşcu.
András Salamon

17

Có rất nhiều ví dụ như vậy trong mật mã học, đặc biệt là bằng chứng không có kiến ​​thức. Xem ví dụ, luận án:

Boaz Barak, Kỹ thuật không hộp đen trong Mật mã học, 2003.

(Ngẫu nhiên, tiêu đề luận án cung cấp bằng chứng không có kiến ​​thức về tính hợp lệ của nhận xét này :)


Vui lòng sửa năm trích dẫn từ năm 2006 đến 2003.
MS Dousti

@Sadeq Dousti: đã xong. Đó là wiki cộng đồng và bạn có nhiều danh tiếng hơn tôi, vì vậy tôi đoán bạn có thể tự sửa lỗi đó ;-)
Blaisorblade

17

Ω(viết sai rồiđăng nhậpviết sai rồi)Ω(viết sai rồiđăng nhậpviết sai rồi)Ôi(viết sai rồi)thuật toán thời gian dự kiến ​​để giải quyết cặp điểm gần nhất trong mặt phẳng, đó là sự khái quát của tính duy nhất của phần tử. Nó thoát khỏi Cây quyết định đại số bị ràng buộc bằng cách sử dụng băm. Tôi tìm thấy nó trong cuốn sách Thiết kế thuật toán của Klein và Tardos. Có một thuật toán tương tự nhưng phức tạp hơn để giải quyết vấn đề tương tự được mô tả trên blog của RJ Lipton .

Tài liệu tham khảo:


15

k3k3

kΩ(k)

Tuy nhiên, sự trừu tượng này được cho là sai một cách rõ ràng: nếu bạn có thể truyền một cái gì đó trong mạng truyền thông, bạn sẽ có một số cách để mã hóa "thứ gì đó" dưới dạng một chuỗi bit. Và bây giờ mọi thứ bắt đầu tốt hơn nhiều.

1,2,...,kÔi(đăng nhập*k)1,2,...,1010kÔi(đăng nhập*k)

Ôi(đăng nhập*k)Ω(k)


13

Một ví dụ xuất hiện trong đầu tôi là tính toán âm lượng. Một kết quả của Barany và Furedi là bạn cần số lượng truy vấn theo cấp số nhân và có một thuật toán thời gian đa thức ngẫu nhiên của Dyer-Frieze-Kannan . Khoảng trống đại diện cho giải thưởng của sự trừu tượng và cũng là lợi ích của sự ngẫu nhiên nhưng tôi nghĩ lý do chính cho khoảng cách là giá của sự trừu tượng. (Tôi hy vọng tôi hiểu câu hỏi và nó đi đúng hướng.)


10

Đây có lẽ không chính xác những gì bạn đã nghĩ trong đầu. Nhưng theo một nghĩa nào đó, sự độc lập của P vs NP từ các nhà tiên tri là một ví dụ như vậy. Điều thực sự nói là nếu tất cả những gì bạn quan tâm là mô phỏng và liệt kê, (nghĩa là nếu đó là "mô hình" tính toán của bạn), thì bạn không thể tách các lớp này hoặc thu gọn chúng.

Một ví dụ thuật toán cụ thể hơn đến từ tìm kiếm phạm vi gần đúng theo hướng "đảo ngược". Cụ thể, hầu hết các vấn đề tìm kiếm phạm vi được diễn đạt dưới dạng tổng semigroup và giới hạn dưới / trên được thể hiện mà không liên quan đến cấu trúc của semigroup này (ngoại trừ một số điều kiện kỹ thuật nhẹ). Công trình gần đây của Arya, Malamatos và Mount cho thấy rằng nếu bạn nhìn kỹ vào cấu trúc semigroup (thuộc tính của idempotence và integrality), thì bạn có thể chứng minh các giới hạn khác nhau (và chặt chẽ hơn) để tìm kiếm phạm vi gần đúng.


4
XPXVIẾT SAI RỒIPXPVIẾT SAI RỒIPPX= =VIẾT SAI RỒIPXVIẾT SAI RỒIP= =coVIẾT SAI RỒIP. Công việc của họ có phần gây tranh cãi (tôi nghĩ nó gặp phải vấn đề tương đối hóa các lớp giới hạn không gian nhỏ) nhưng tôi nghĩ nó rất thú vị.
Joshua Grochow

10

Định lý lấy mẫu Shannon-Nyquist đề xuất một điều kiện đủ cho các giới hạn lý thuyết thông tin trong giao tiếp. Lý thuyết lấy mẫu được thực hiện xung quanh các ví dụ trong đó tín hiệu đến có biểu diễn nhỏ gọn / ngẫu nhiên. Những tiến bộ gần đây trong việc lấy mẫu cho thấy sự trừu tượng này có lẽ đi kèm với giá cả - rằng các loại điều chúng ta quan tâm để đo lường thường có các biểu diễn thưa thớt để các giới hạn này không chặt chẽ. Ngoài ra, thông tin có thể được mã hóa theo cách dày đặc hơn nhiều so với suy nghĩ ban đầu.

  • Lỗi sửa mã cho thấy rằng một số đánh giá lại giới hạn Shannon trong cảnh quan mạng bị nhiễu.
  • Lĩnh vực hoàn toàn mới của cảm biến nén thúc đẩy tái cấu trúc các loại hình ảnh mà chúng ta thấy cách thú vị vượt quá giới hạn Shannon.

Bạn có thể đưa ra một số tài liệu tham khảo cho việc này :)?
Vivek Bagaria

8

Nhiều vấn đề thú vị mà khoa học tự nhiên nghĩ ra là NP-hard theo nghĩa cổ điển. Mặc dù khái niệm này hoàn toàn hợp lý về mặt lý thuyết, nó không giúp ích gì cho nhà sinh vật học hay nhà vật lý dưới bất kỳ hình thức nào. Chúng tôi thấy rằng một số vấn đề NP-hard là tham số cố định có thể điều trị và thông thường với một tham số được quan sát thấy bị ràng buộc bởi một hằng số nhỏ trong thế giới thực.

Đó là, TCS nói với chúng tôi rằng chúng tôi không mong đợi một giải pháp hiệu quả cho vấn đề trừu tượng nhưng chúng tôi có thể giải quyết các trường hợp thực sự xảy ra nhanh chóng - khá là một khoảng cách.


5

Trong bài viết này, http://www.mimuw.edu.pl/~szymtor/ con / atom-turing.pdf chúng tôi đã nghiên cứu Turing Machines có quyền truy cập hạn chế vào dữ liệu. Điều này được chính thức hóa là bất biến dưới sự tự động hóa của cấu trúc quan hệ; ví dụ, trong O (n log n) giới hạn dưới để sắp xếp, bạn sẽ nói rằng máy có thể xử lý và lưu trữ các số hữu tỷ, nhưng các chuyển đổi của nó phải là bất biến dưới dạng tự động của (Q, <), tức là các mệnh đề đơn điệu. Định nghĩa chính thức phức tạp hơn, để xác định chính xác loại cấu trúc dữ liệu nào mà máy có thể lưu trữ trong bộ nhớ của nó (theo nghĩa nào đó nó phải là "hữu hạn"
, nhưng chúng tôi cho phép lưu trữ các cấu trúc phức tạp hơn chỉ là các giá trị dữ liệu, chẳng hạn như bộ dữ liệu không có thứ tự).

Trong bài báo, chúng tôi đã chứng minh một số giới hạn thấp hơn cho các máy Turing khác có "quyền truy cập dữ liệu bị hạn chế". Đặc biệt, chúng tôi đã chỉ ra rằng:

• Một máy Turing xác định có thể xử lý các vectơ (nói trên trường hai phần tử), nhưng chỉ có thể sử dụng các phép thử cộng và vectơ, không thể xác định trong thời gian đa thức cho dù một danh sách các vectơ nhất định có phụ thuộc tuyến tính hay không (chính thức, các chuyển đổi của máy phải là bất biến dưới sự tự động hóa của không gian vectơ). Điều này trái ngược với các máy không xác định, có thể chỉ cần đoán một tổ hợp các vectơ có giá trị bằng 0. Quan sát rằng việc loại bỏ Gaussian chạy trong thời gian đa thức, nhưng có quyền truy cập vào tọa độ của các vectơ; đặc biệt, sự chuyển tiếp của nó không phải là bất biến dưới sự tự động hóa của không gian vectơ.

• Trong một mô hình được xác định phù hợp, Máy Turing có thể so sánh các số tự nhiên chỉ liên quan đến đẳng thức (thậm chí không <) không thể được xác định. Ở đây, chúng tôi xem xét cấu trúc quan hệ (N, =) và các máy bất biến dưới sự tự động hóa của nó. Có một công trình (tương tự như công trình Cai-Furer-Immerman từ Lý thuyết mô hình hữu hạn) cho thấy trên thực tế, trong mô hình P ≠ NP này. Cho phép các máy so sánh các số bằng cách sử dụng <cung cấp cho chúng đủ năng lượng để xác định.


2

Một mức giá chung của sự trừu tượng có mặt trong các khung hộp đen như độ phức tạp của cây quyết định hoặc độ phức tạp của truy vấn lượng tử. Nếu chúng ta hạn chế phân tích cho các mô hình này, thì chúng ta thường có thể tìm thấy các giới hạn rất tốt về sự phức tạp của các nhiệm vụ. Trong thực tế, đối với truy vấn lượng tử, về cơ bản chúng ta có thể giải quyết sự phức tạp của các vấn đề bởi vì phương pháp đối nghịch phủ định cung cấp giới hạn chặt chẽ hơn (trong một yếu tố của log n / loglog n: 1005.1601 ). Điều này cung cấp cho chúng tôi một công cụ tuyệt vời để phân tích độ phức tạp của truy vấn, nhưng thường rất khó để so sánh độ phức tạp của truy vấn với độ phức tạp không gian / thời gian của máy Turing tiêu chuẩn (ngoại trừ giới hạn dưới thô).


Bạn có một số ví dụ cụ thể về nơi mà điều này đã cho thấy giới hạn dưới có thể bị phá vỡ bằng cách "mở hộp đen" không?
Joshua Grochow

sắp xếp tốt là một ví dụ trong đó mô hình cây quyết định cung cấp cho bạn n log n, nhưng bạn có thể trở nên tốt hơn bằng cách xem cấu trúc của đầu vào.
Suresh Venkat

@Suresh: Ý tôi là những ví dụ chưa được đề cập :).
Joshua Grochow

xin lỗi, lỗi của tôi.
Suresh Venkat

Vâng, đôi khi bạn có thể có một độ phức tạp truy vấn lượng tử tương đối đẹp nhưng không có thuật toán chạy nhanh. Một ví dụ là vấn đề nhóm con ẩn trong đó chúng ta cần số lượng truy vấn đa thức, nhưng vẫn là thời gian theo cấp số nhân (mặc dù rõ ràng giới hạn thấp hơn về thời gian không được chứng minh) cho bất kỳ thuật toán đã biết nào [1]. Đây là một mức giá theo hướng ngược lại, tôi đoán. [1] arxiv.org/abs/quant-ph/0401083
Artem Kaznatcheev

1

Đây là hai ví dụ, cả hai đều liên quan đến các mô hình liên tục và rời rạc:

  1. [0,1]xyx<yx= =yx>yx|x-y|y= =x

    y[0,1]y= =x

  2. Động lực cho vấn đề A xuất phát từ vấn đề phân chia bánh không có đố kị . Stromquist cho thấy , không có giao thức hữu hạn nào (ngay cả khi không bị ràng buộc) có thể đảm bảo sự phân chia bánh không có sự đố kị giữa ba hoặc nhiều người chơi, nếu mỗi người chơi sẽ nhận được một phần được kết nối.

    TôiαTôixvTôi(0,x)= =α

    Ngoài ra, kết quả không liên quan đến các thuật toán với các hoạt động liên tục, chẳng hạn như các thủ tục dao di chuyển.


0

Khi được biểu thị theo logic thứ tự đầu tiên, bất kỳ bằng chứng nào về nguyên tắc pigeonhole cho n cố định đều có chiều dài theo cấp số nhân. Tuy nhiên, với số học, bằng chứng có thể được thể hiện chính xác hơn nhiều.

Thành công của các nhà giải quyết SMT đã đến từ việc rút lui khỏi mô hình trừu tượng về giảm các vấn đề thành SAT, cho phép các lý thuyết phong phú hơn giảm đáng kể số lượng tính toán cần thiết.

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.