Giới hạn dưới của việc tính toán một hàm của một tập hợp


9

Có tập hợp gồm phần tử, giả sử tôi muốn tính hàm nhạy cảm với tất cả các phần của đầu vào, tức là phụ thuộc vào chính thành viên của (nghĩa là có thể thay đổi bất kỳ thành viên nào của thành thứ gì đó khác để có được một đầu vào mới st giá trị của trên và là khác nhau).n f ( A ) Một Một Một ' f Một Một 'Anf(A)AAAfAA

Ví dụ, có thể là tổng hoặc trung bình.f

Có kết quả nào chứng minh rằng, trong một số điều kiện, thời gian cần thiết cho máy Turing xác định để tính sẽ là ?Ω ( n )fΩ(n)


Lưu ý rằng nếu là một chuỗi có quyền truy cập ngẫu nhiên và giả định độ nhạy bị suy yếu, thì điều này không phải lúc nào cũng giữ. Ví dụ: có thể được tính bằng hai truy vấn, mặc dù đó không phải là một hàm. ( i , x 1 , Hoài , x n ) x iA(i,x1,,xn)xi
sdcvvc

@sdcvvc ví dụ của bạn làm tôi nhớ đến sự hướng dẫn ngôn ngữ C V[i]. Định nghĩa của junta là gì?
Виталий Олегович

2
Một -junta là một hàm boolean chỉ phụ thuộc vào đối số, tức là có một tập hợp có kích thước sao cho mọi , , nếu và chỉ khác nhau ở các vị trí ngoài , sau đó . Tôi đã lạm dụng thuật ngữ này có nghĩa là một hàm không phụ thuộc vào tất cả các đối số. k Một { 1 , 2 , ... , n } k x y x y A f ( x ) = f ( y )kkA{1,2,,n}kxyxyAf(x)=f(y)
sdcvvc

Nếu bạn đang cố gắng tìm hỗ trợ cho câu trả lời của mình cho bài toán khoảng cách trung bình trên math.se, thật không may, điều này sẽ không xảy ra.
Aryabhata

@Aryabhata ý định đầu tiên là tìm sự hỗ trợ cho câu trả lời của tôi cho câu hỏi này: math.stackexchange.com/questions/129969/ , nhưng điều duy nhất mà kết quả này sẽ nói là nếu có đỉnh trong biểu đồ, thuật toán tính toán khoảng cách trung bình chúng sẽ là , khá khó hiểu. Tôi đã xóa câu trả lời của mình ở đó, vì như bạn đã viết, tôi không chứng minh được gì cả. Ω ( n )nΩ(n)
Виталий Олегович

Câu trả lời:


7

Bạn phải xác định mô hình tính toán và tính chất của . Trong phần tranh luận sau đây tôi sẽ nêu các giả định mà tôi cần. Nó có thể được khái quát hơn một chút nhưng tôi nghĩ nó nên đủ để cung cấp cho bạn ý tưởng.f

Giả sử rằng máy không bao giờ đọc giá trị của một trong các thành viên của (một bộ cố định và được đưa ra dưới dạng danh sách). Giả sử thêm rằng là một đầu vào sao cho việc thay đổi giá trị của thành viên thứ không thay đổi câu trả lời củaGiả sử thêm rằng nhạy cảm với tất cả các phần của đầu vào, tức là phụ thuộc vào chính thành viên của (nghĩa là có thể thay đổi bất kỳ thành viên nào của thành một thứ khác để có được giá trị đầu vào của trên và là khác nhau).A A A i M fMAAAiMfMột Một ' f Một Một 'AAAfAA

Chúng ta có thể sử dụng một đối số kẻ thù để chứng minh rằng máy không thể tính toán câu trả lời đúng bằng cách thay đổi các giá trị đó thành viên của để có được st khác giá trị của là khác nhau. Giá trị của trên hai tập hợp này là như nhau, vì vậy một trong số chúng phải sai và do đó không thể tính chính xác.A f M M fAAfMMf

Do đó, bất kỳ máy nào tính toán sẽ cần phải đọc tất cả các đầu vào cần các bước .f Ω ( n )MfΩ(n)

(Mặt khác, giả sử rằng chúng ta có một máy truy cập ngẫu nhiên không xác định và chúng ta muốn tính toán OR của các bit trong đầu vào. Chúng ta có thể đoán một cách không nhất định một bit và kiểm tra xem đó có phải là 1 không, nếu là 1, chúng ta sẽ xuất 1 . Máy này chỉ đọc một bit đầu vào trong các bước và trả lời đúng vấn đề. Vì vậy, không có giả định về và kết quả không giữ được.)M fO(lgn)Mf


Xin lỗi tôi đã quên viết rằng mô hình tính toán của tôi là máy Turing xác định.
Hồi giáo

+1 cho đối số bất lợi, đó là một cách tuyệt vời để bắt đầu hiểu các giới hạn thấp hơn.
Joe
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.