Vấn đề về chức năng và


7

Tôi thấy khó tìm các định nghĩa chính thức của các lớp phức tạp chức năng. Đây là hai từ Wikipedia.

Một mối quan hệ nhị phân P(x,y)là trong FP khi và chỉ khi có một thuật toán thời gian đa thức xác định mà, được đưa rax, có thể tìm thấy một số y như vậy mà P(x,y) giữ

Định nghĩa trên dường như ngụ ý rằng đối với tất cả các mối quan hệ trong FP, nó giữ điều đó cho mọix tồn tại ít nhất một y mà chiều dài của nó là đa thức theo chiều dài của x. Tuy nhiên, dường như không hạn chế rằng có tồn tại nhiều hơny cho rằng x vậy nên P(x,y) giữ trong khi y dài hơn theo cấp số nhân x.

Một mối quan hệ nhị phân P(x,y), Ở đâu y dài nhất là đa thức hơn x, nằm trong FNP khi và chỉ khi có thuật toán thời gian đa thức xác định có thể xác định xemP(x,y) giữ cho cả hai xy.

Định nghĩa này ngụ ý rằng đối với mối quan hệ trong FNP , không cần phải đúng là có tồn tại ít nhất mộty Cho mọi x vậy nên P(x,y)giữ Nó ngụ ý tuy nhiên nếuP(x,y) giữ, y phải dài nhất là đa thức hơn x.

Trong văn học, người ta có thể đọc rằng FP FNP . Theo như tôi hiểu (hoặc không) hiểu thì điều này không thể đúng. Có thể là đối với một số mối quan hệR(x,y) FP tồn tại một(x,y) vậy nên R(x,y) giữ và y dài hơn theo cấp số nhân x. Do đó, mối quan hệ này không thuộc về FNP và do đó, FP FNP .

Các định nghĩa trên Wikipedia không đầy đủ? Tui bỏ lỡ điều gì vậy?

Dù bằng cách nào, một số nguồn tốt để đọc về các vấn đề chức năng (tôi thấy mình hiểu biết về các vấn đề quyết định) là gì?


Bạn đã xem bất kỳ cuốn sách / nguồn nào khác ngoài Wikipedia chưa? Nếu bạn muốn định nghĩa chính thức, tôi không khuyên bạn nên dựa vào Wikipedia làm nguồn chính của bạn. Thay vào đó, một cuốn sách giáo khoa về lý thuyết phức tạp có lẽ là một lựa chọn tốt hơn, hoặc ghi chú bài giảng từ một khóa học (có thể là khóa học sau đại học) về lý thuyết phức tạp bao gồm các chủ đề này.
DW

Tôi đang đọc 'Độ phức tạp tính toán: Cách tiếp cận hiện đại' của Arora et. al. nhưng cuốn sách đó không đề cập đến các vấn đề chức năng. Tôi đang đọc các bài báo xác định PLS và PPA (D) [Papadimitrou]. Những bài viết đó chỉ "định nghĩa" chúng là "tương đương chức năng của (N) P". Tôi có thể hiểu PLS và PPA (D), nhưng khi tôi suy luận sâu về chúng, tôi luôn gặp phải vấn đề tôi không biết bất kỳ định nghĩa tốt nào về FPFNP .
Auberon

Câu trả lời:


4

Tôi đã tìm thấy những điều sau đây trong cuốn sách Tính phức tạp tính toán của Papadimitriou mà tôi thấy thỏa mãn.

Đặt là quan hệ nhị phân trên các chuỗi.RΣ×Σ

R được gọi là đa thức quyết định nếu có Máy Turing xác định quyết định ngôn ngữ trong thời gian đa thức.{x;y:(x,y)R}

Chúng ta nói rằng là đa thức cân nếu ngụ ý đối với một số .R(x,y)R|y||x|kk1

Sau đó Papadimitriou lưu ý những điều sau, về cơ bản là một định nghĩa khác cho NP :

Đặt là ngôn ngữ. NP khi và chỉ khi có mối quan hệ cân bằng đa thức và cân bằng đa thức , sao cho đối với một số .LΣL RL={x:(x,y)Ry}

Vài chục trang sau ...

Các vấn đề chức năng kết hợp với [ NP ], ký hiệu là [ở đây là viết tắt của ngôn ngữ nói, không logspace], là vấn đề tính toán như sau:L FLL

Cho , tìm một chuỗi sao cho nếu một chuỗi đó tồn tại; nếu không có chuỗi như vậy tồn tại, trả về "không".xyRL(x,y)

Sau đó

Lớp của tất cả các vấn đề chức năng liên quan như trên với các ngôn ngữ trong NP được gọi là FNP . FP là lớp con kết quả nếu chúng ta chỉ xem xét các vấn đề chức năng trong FNP có thể được giải quyết trong thời gian đa thức.


Bây giờ để tìm hiểu lý do tại sao FP TFNP ...
Auberon

Lưu ý rằng có định nghĩa khác, không tương thích cũng thường được sử dụng. FP
Yuval Filmus 17/03/2017

@YuvalFilmus Trong tài liệu, người ta chấp nhận rằng FP TFNP FNP . Tôi muốn nói rằng bất kỳ định nghĩa nào về FP tồn tại ngoài đó thỏa mãn điều này là một định nghĩa đúng. Papadimitriou cũng nêu các vùi đã nói trong cuốn sách của mình. Tuy nhiên tôi không thấy cách định nghĩa của ông FP ngụ ý nó ....
Auberon

Điều này phụ thuộc vào phần nào của tài liệu bạn nhìn vào. Đối với tôi, FP luôn là lớp chức năng có thể tính toán được trong polytime, trong khi FNP và TFNP là các thuật ngữ thích hợp được sử dụng bởi những người làm việc trong các vấn đề tìm kiếm.
Yuval Filmus 17/03/2017

3

Hãy quên các định nghĩa Wikipedia và đưa ra ý kiến ​​của chúng ta.

Hàm nằm trong nếu có máy Turing đa thời gian trên đầu vào đầu ra .fFPxf(x)

Hàm nằm trong if:fFNP

  1. Hàm bị giới hạn đa thức: tồn tại một đa thức sao cho .fp|f(x)|p(|x|)

  2. Có một máy Turing đa thời gian cho xác định xem .x,yf(x)=y

Nếu nằm trong thì nó chắc chắn bị giới hạn đa thức. Vì chúng ta có thể tính trong thời gian đa thức, cho chúng ta có thể tính và so sánh nó với , tất cả đều theo thời gian đa thức.fFPf(x)x,yf(x)y

Tham khảo sở thú phức tạp , có vẻ như thực sự có một định nghĩa khác và có hai định nghĩa khác nhau và không tương thích, một trong số đó là định nghĩa đã nêu ở trên.FNPFP


Tôi cho rằng FPFNP không phải là tập hợp các hàm, mà là các chuỗi. Ngoài ra, functionngụ ý có chính xác một cho mỗi , điều này không phải là trường hợp. Họ là quan hệ. yx
Auberon

Bạn có vẻ đúng về , nhưng có một số định nghĩa (không tương thích) khác nhau. Xem ví dụ các sở thú phức tạp . FNPFP
Yuval Filmus 17/03/2017

2

Tôi muốn thêm một bộ định nghĩa khác từ Automata, Tính toán và Độ phức tạp của Elaine Rich.

The Class FP : Một mối quan hệ nhị phân là trong iff có một đa thức thuật toán thời gian xác định rằng, cho một đầu vào tùy ý , có thể tìm thấy một số như vậy .QFPxy(x,y)Q

The Class FNP : Một mối quan hệ nhị phân là trong iff có một thời gian đa thức xác định xác minh, đưa ra một cặp đầu vào tùy ý , sẽ xác định xem . Tương tự, nằm trong iff có một thuật toán thời gian đa thức không xác định, với một đầu vào tùy ý , có thể tìm thấy một số sao choQFNP(x,y)(x,y)QQFNPxy(x,y)Q

Điều này chỉ khác một chút so với các định nghĩa được tìm thấy trên Wikipedia nhưng dù sao chúng cũng ngụ ý những điều khác nhau. Quan trọng nhất, Elaine Giàu định nghĩa của cô không có nghĩa là nếu , là đa thức trong . Có vẻ như các định nghĩa wiki là bản sao cẩu thả của chúng.FNP(x,y)Qy x

Từ các định nghĩa này, rõ ràng hơn là .FPTFNPFNP

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.