Điều gì xảy ra nếu chúng ta định nghĩa P P A D
Gần đây đưa ra các thuật toán nhanh hơn cho Circuit satisfiability cho mạch nhỏ hóa ra là quan trọng, vì vậy tôi tự hỏi điều gì sẽ xảy ra với các phiên bản rectricted của P P A D
Điều gì xảy ra nếu chúng ta định nghĩa P P A D
Gần đây đưa ra các thuật toán nhanh hơn cho Circuit satisfiability cho mạch nhỏ hóa ra là quan trọng, vì vậy tôi tự hỏi điều gì sẽ xảy ra với các phiên bản rectricted của P P A D
Câu trả lời:
Ý tưởng cơ bản khá đơn giản: A C 0
Có nhiều định nghĩa tương đương về PPAD trong tài liệu khác nhau về các chi tiết khác nhau, do đó hãy để tôi sửa một lỗi ở đây cho chắc chắn. Một vấn đề tìm kiếm NP S
Nút 0 p ( n ) ∈ V x là một nguồn (ví dụ, nó có ở độ 0 và ngoài độ 1 ). Nếu u ∈ V x là bất kỳ nguồn hoặc chìm nào (ở mức 1 , ngoài 0 ) khác 0 p ( n ) , thì h ( x , u ) là một giải pháp cho S ( x ) .
Chúng ta có thể định nghĩa A C 0 P A D tương tự, ngoại trừ chúng ta yêu cầu f , g , h phải ở trong F A C 0 .
Tôi sẽ bỏ qua h trong xây dựng cho đơn giản. (Không khó để chỉ ra rằng người ta có thể coi nó là một phép chiếu, do đó A C 0 có thể tính toán được.)
Vì vậy, hãy xem xét một vấn đề PPAD S được xác định bởi f và g và sửa lỗi máy Turing tính toán f và g trong thời gian q ( n ) . Đối với bất kỳ x , chúng tôi xác định một đồ thị có hướng G ′ x = ( V ′ x , E ′ x ) có các đỉnh là các chuỗi có dạng sau:
( 0 , u , c 1 , Mạnh , c k ) , trong đó u ∈ V x , 0 ≤ k ≤ q ( n ) và c 1 , Lỗi , c k là cáccấu hình k đầu tiêntrong tính toán của f ( x , u ) .
( 0 , u , c 1 , ... , c q ( n ) , v , d 1 , ... , d k ) , nơi u , v ∈ V x , 0 ≤ k ≤ q ( n ) , f ( x , u ) = v , c 1 , ... , c q (
(1,v,d1,…,dk), where 0p(n)≠v∈Vx, 0≤k≤q(n), and d1,…,dk are the first k configurations in the computation of g(x,v).
(1,v,d1,…,dq(n),u,c1,…,ck), where u,v∈Vx, v≠0p(n), 0≤k≤q(n), g(x,v)=u, d1,…,dq(n) is the computation of g(x,v), and c1,…,ck are the first k steps in the computation of f(x,u).
E′x consists of the edges in V′x×V′x of the following kinds:
(0,u,c1,…,ck)→(0,u,c1,…,ck+1)
(0,u,c1,…,cq(n))→(0,u,c1,…,cq(n),v)
(0,u,c1,…,cq(n),v,d1,…,dk)→(0,u,c1,…,cq(n),v,d1,…,dk+1)
(0,u,c1,…,cq(n),v,d1,…,dq(n))→(1,v,d1,…,dq(n),u,c1,…,cq(n)) if f(u)=v and g(v)=u (i.e., either (u,v)∈Ex, or u=v is an isolated vertex)
(1,v,d1,…,dq(n),u,c1,…,ck+1)→(1,v,d1,…,dq(n),u,c1,…,ck)
(1,v,d1,…,dq(n),u)→(1,v,d1,…,dq(n))
(1,v,d1,…,dk+1)→(1,v,d1,…,dk)
(1,u)→(0,u)
Formally, let r(n) be a polynomial bounding the lengths of binary representations of all the sequences above (such that we can extend or shorten sequences, and extract their elements with AC0-functions); we actually put V′x={0,1}r(n), and we let all vertices except the above-mentioned sequences to be isolated.
It is easy to see that the functions f′, g′ representing G′x are AC0-computable: in particular, we can test in AC0 whether c1,…,ck is a valid partial computation of f(x,u), we can compute ck+1 from ck, and we can extract the value of f(x,u) from cq(n).
The sinks in G′x are nodes of the form (0,u,c1,…,cq(n),u,d1,…,dq(n)) where u is a sink in Gx. Likewise, sources are (1,v,d1,…,dq(n),v,c1,…,cq(n)) where v is a source in Gx, except that in the special case v=0p(n), we have pruned the line early and the corresponding source in G′x is just (0,0p(n)). We can assume the encoding of sequences is done in such a way that (0,0p(n))=0r(n).
Thus, f′ and g′ define an AC0PAD problem S′, and we can extract a solution to S(x) from a solution to S′(x) by an AC0-function h′ which outputs the second component of a sequence.