অ্যালগরিদমগুলির নির্ভুল সিমুলেশন এবং জটিলতা ক্লাস সম্পর্কিত সম্পর্কিত অপারেশন কতটা শক্ত


17

উত্ত্যক্তকারী

যেহেতু সমস্যাটি দীর্ঘকালীন তাই এটি একটি বিশেষ ক্ষেত্রে এটির প্রয়োজনীয়তাটি ক্যাপচার করে।

সমস্যা: আসুন একটি 3-SAT এর জন্য একটি ডিট্রিমেন্টিক অ্যালগরিদম হতে দিন। সম্পূর্ণভাবে অ্যালগোরিদম এ সিমুলেট করার সমস্যা (সমস্যার প্রতিটি ক্ষেত্রে)। পি স্পেস কঠিন?

(আরও স্পষ্টভাবে, এই কাজটি পি-স্পেস কঠিন বলে বিশ্বাস করার কারণগুলি রয়েছে, মানদণ্ডের সিসি অনুমানগুলি থেকে এই দিকটিতে কিছু করে, এবং এটি প্রমাণ করার মতো আশা আছে যে কিছু জটিল দশম শ্রেণীর জন্য এই কাজটি এক্স-হার্ড যা বলে ধরে নেওয়া হয়েছিল) কঠোরভাবে এনপি এর উপরে হতে পারে।)

সম্পর্কিত প্রশ্নাবলী : হ'ল স্পেস-সম্পূর্ণ-সমস্যা-সহজাতভাবে-কম-ট্র্যাকটেবল-এন--সম্পূর্ণ-সমস্যাগুলি ;

সম্পাদিত আপডেট : "সম্পূর্ণ সিমুলেটিং এ" এর জন্য বিভিন্ন ব্যাখ্যা রয়েছে। এবং ব্যাখ্যা অনুসারে বিভিন্ন আকর্ষণীয় উত্তর থাকতে পারে। (এছাড়াও রায়ান উইলিয়ামস একটি নন ডিস্ট্রিমেন্টিক অ্যালগরিদমকে অনুকরণের জন্য একটি ব্যাখ্যা প্রস্তাব করেছিলেন।) কোনও সিদ্ধান্তের সমস্যাটিকে গণ্য টাস্ক "সম্পূর্ণরূপে এটিকে সিমুলেটেড" এর সাথে যুক্ত করার জন্য নির্দিষ্ট উপায়ের জন্য জো ফিৎসিমনস একটি অ্যালগরিদম এ খুঁজে পেয়েছিলেন যার জন্য এই সম্পর্কিত সিদ্ধান্তের সমস্যা এখনও এনপি-র মধ্যে রয়েছে । যদি "সম্পূর্ণরূপে অনুকরণ" একটি প্রদত্ত পদে পদে কম্পিউটার সমগ্র রেজিস্টার আউটপুট করতে সক্ষম হচ্ছে বোঝায় i তারপর জো এর এলগরিদম জন্য মনে হচ্ছে যে PNP কি প্রয়োজন হয়। এই সংস্করণটির জন্য (আমি মনে করি, তবে নিশ্চিত নই) রায়ের উত্তর একটি পি এন পি স্কেচ করেPNP- যুক্তি যুক্তি। জো মন্তব্য করেছিলেন যে আপনার যদি সম্পূর্ণ রেজিস্টার সরবরাহ করতে হয় (তবে এটি কোনও সিদ্ধান্তের সমস্যা নয়) এটি উত্তম নয় যে আপনার পদক্ষেপ নেওয়া দরকার এবং জটিলতা ক্লাসগুলি এক নয়।

যাই হোক, আমরা যদি আউটপুট নির্ধারিত পদে পদে রেজিস্টার রাজ্যের প্রয়োজন i তারপর Ruan এবং জো এর উত্তর দাড়ায় (কিন্তু আবার, আমি নিশ্চিত এটা সম্পর্কে নই) যে NP+ মূলত PNP । আমরা বিস্তৃত করতে পারি যে এই ব্যাখ্যার মাধ্যমে অপারেশনটি বহুবর্ষীয় হাইয়ারাকিতে এক ধাপ উপরে উঠে যায় এবং সেই PH+=PH

এই ব্যাখ্যা দ্বারা যে কোনও ক্ষেত্রেই আমার টিজার প্রশ্নের উত্তর না

"সম্পূর্ণরূপে একটি অ্যালগোরিদম এ অনুকরণের" মনে রাখার জন্য আমার আরও কঠোর ব্যাখ্যা ছিল। (কিন্তু সম্ভবত জো এর এবং রায়ান এর ব্যাখ্যা বেশি আকর্ষণীয়।) দ্বারা "সম্পূর্ণরূপে অ্যালগরিদম একটি simulating" আমার ব্যাখ্যা করেন যে আপনার বয়স রেজিস্টার রাজ্যের outout প্রত্যেক পদক্ষেপ i । বিশেষত, যদি অ্যালগরিদম বহুপদী না হয় তবে আপনার আউটপুটটিও বহুপদী নয়। এই কঠোর ব্যাখ্যার অধীনে আমি ভাবলাম যে আমাদের যদি বিশ্বাস করা উচিত যে প্রতিটি অ্যালগোরিদম এ, CA হ'ল পি স্পেস শক্ত, এবং আমরা কী প্রমাণ করতে পারি।

প্রেরণা:

এই প্রশ্নটি পল গোল্ডবার্গের একটি বক্তৃতা দ্বারা প্রেরণা পেয়েছিল ( স্লাইড , ভিডিও , কাগজ ) পাপাদিমিট্রিও এবং সাভানির সাথে একটি কাগজ বর্ণনা করে। লেমকে-হাওসন অ্যালগরিদম দ্বারা গণনা করা কোনও ভারসাম্য খুঁজে পাওয়ার জন্য তারা পি-স্পেস সম্পূর্ণ দেখিয়েছে। কিছু ভারসাম্য পয়েন্ট পেতে সমস্যাটি কেবল পিপিএডি-সম্পূর্ণ। এই ফাঁকটি বেশ আশ্চর্যজনক এবং একই রকম ফলাফল ইতিমধ্যে প্যাপাডিমিট্রিউর সুপরিচিত কাগজে বর্ণিত হয়েছে: প্যারিটি আর্গুমেন্টের জটিলতা এবং অস্তিত্বের অন্যান্য অপ্রতুল প্রমাণ (1991) । (এটি জানা যায় যে পিপিএডি-সম্পূর্ণ সমস্যাগুলি এনপি-হার্ডও হতে পারে না (যদি ভয়ঙ্কর কিছু না ঘটে তবে পি-স্পেসের তুলনায় জটিলতার জগতে এটি অনেক নিচে নেমে আসে))।

প্রশ্নটি কী নিয়ে

আমার প্রশ্নটি আরও পুরানো এবং আরও ক্লাসিক্যাল কম্পিউটেশনাল জটিলতার সমস্যার জন্য একই রকম ফাঁকগুলি সম্পর্কে। (সম্ভবত এটি ইতিমধ্যে পরিচিত।)

একটি গণনামূলক সমস্যা দেওয়া আমরা তিনটি বিষয়ের মধ্যে পার্থক্য করতে পারি

ক) সমস্যাটি অ্যালগরিদমিকভাবে সমাধান করুন

খ) নির্দিষ্ট অ্যালগরিদম এ হিসাবে একই সমাধানে পৌঁছান

গ) পুরো অ্যালগরিদম এ অনুকরণ

অবশ্যই গ) কমপক্ষে খ হিসাবে শক্ত) যা কমপক্ষে একটি হিসাবে শক্ত)। উপরে উল্লিখিত ফলাফলগুলি কম্পিউটারের ভারসাম্যগত সমস্যাগুলির ক) এবং খ) গণনার অসুবিধার মধ্যে একটি ফাঁক দেখায়। অন্যান্য গণনাগত সমস্যার জন্য আমরা পরিস্থিতিটি (এবং মূলত ক এবং গ এর মধ্যে ব্যবধান) বুঝতে চাই।

প্রশ্নটি:

একটি উদাহরণ সহ প্রশ্নের মূল ফর্ম

আমরা একটি গণ্য সমস্যা, প্রব্লেম এক্স দিয়ে শুরু করি

একটি উদাহরণ হতে পারে

সমস্যা এক্স: এন ভেরিয়েবলের সাহায্যে স্যাট এর একটি উদাহরণ সমাধান করুন

আমরা উল্লেখ

উত্তর: একটি অ্যালগোরিটম যা এক্স এক্স করে

এবং আমরা একটি নতুন সমস্যা তৈরি করি

সমস্যা Y: হুবহু অ্যালগরিদম এ অনুকরণ

এবং আমরা সমস্যা ওয়াইয়ের গণ্যগত অসুবিধাতে আগ্রহী We মূল সমস্যা এক্সটি সমাধানকারী সমস্ত অ্যালগোরিদম এ'র জন্য আমরা এই জাতীয় সমস্যাগুলির শ্রেণিটি বুঝতে আগ্রহী Especially হতে পারে) যদি আমাদের ইচ্ছামত অ্যালগরিদম এ চয়ন করার অনুমতি দেওয়া হয়।

জটিলতা ক্লাসে প্রস্তাবিত অপারেশন

একটি জটিলতা ক্লাস দিয়ে শুরু করুন যা কয়েকটি গণনামূলক টাস্ক দ্বারা বর্ণনা করা হয়েছে। এই গণনীয় টাস্ক প্রতিটি উদাহরণের সম্পাদন করতে একটি আলগোরিদিম একটি প্রদত্ত একটি নতুন জটিলতা বর্গ বিবেচনা সি একটি যা একদম simulating এর গণনীয় কাজের দ্বারা বর্ণনা করা হয় একজন । তারপরে আমরা জটিলতার ক্লাসগুলির একটি "আদর্শ" সংজ্ঞায়িত করতে পারি (আশা করি)CCAA

সমস্ত অ্যালগোরিদম এ} এর জন্য}C+={CA:

যদি আমরা কে বহুবর্ষীয় সময়ে ডিজিটাল কম্পিউটার যা কিছু করতে পারে তা বর্ণনা করতে দিই (সুতরাং আমি সিদ্ধান্তের সমস্যার দিকে মনোযোগ সীমাবদ্ধ রাখতে চাই না) তবে পি + নিজেই পি-র দ্বারা প্রসারিত আদর্শ ।PP+P

অবশেষে, আমার প্রশ্নগুলি

আমার প্রশ্নগুলি হ'ল:

1) সংজ্ঞাটি বোঝায় কি (শব্দ অর্থে বিস্তৃত অর্থে)? এটি কি সুপরিচিত বা কিছু সুপরিচিত জিনিস (বা এর অনুরূপ)। (আমার সূত্রটি অনানুষ্ঠানিক ছিল এবং বিশেষত যখন আমরা স্যাটের মতো নির্দিষ্ট সমস্যা থেকে এনপির মতো জটিলতা শ্রেণিতে চলে যাই তখন আমি যে বিষয়গুলিকে অবহেলা করি সে সম্পর্কে আমাদের চিন্তিত হতে হবে।)

পরবর্তী দুটি প্রশ্ন অনুমান করে যে সংজ্ঞাটি বোঝাতে বা বর্ধিত করতে পারে।

2) ধরুন আমরা গণনার সম্পূর্ণতা সম্পর্কিত সমস্ত স্ট্যান্ডার্ড অনুমানের সাথে নিজেকে সজ্জিত করি। আমরা কি কিছু পরিচিত জটিলতা ক্লাসের জন্য বলে মনে করি তা বলতে পারি । (যেমন সি সি = এন পি , সি = পি-স্পেস, ..)? সম্পাদনা: বেশিরভাগ লোক পি এস পি সি + = পি এস পি সি সি ই নির্দেশ করেছে । সুতরাং> আমরা এর পরিবর্তে জিজ্ঞাসা করতে পারি কি (C+C=NPCPSPACE+=PSPACE কী? হয় পি এইচ + + = পি এইচ ?(PNP)+PH+=PH

আমরা অনুমান করতে পারেন compexity শ্রেণীর কি যাতে সি + + হয় আদর্শ দ্বারা দৃশ্যও সি ?CC+C

সুতরাং প্রশ্নটি 3-স্যাট (যখন আমরা অ্যালগরিদমকে এটি যতটা সম্ভব সহজ করার জন্য বেছে নিতে পারি) এর জন্য একটি অ্যালগরিদম এ অনুকরণের গণ্য কাজটি কতটা সহজ একটি আকর্ষণীয় বিশেষ ক্ষেত্রে।

3) এই অপারেশন সম্পর্কে আসলে কিছু প্রমাণ করার আশা আছে?

অবশ্যই, যদি আপনি প্রমাণ করেন যে এর সমস্ত জটিলতা ক্লাসগুলি পি-স্পেস হার্ড, এটি পি = এন পি বোঝায় পি = পি এস পি সি , যা (আমি মনে করি) একটি বিশাল এবং অত্যন্ত অপ্রত্যাশিত ফলাফল হবে । তবে আপনি যদি দেখান যে এন পি + এ সমস্ত জটিলতা ক্লাসগুলি বহুবচনের হাইয়ারারচি (উদাহরণস্বরূপ Δ পি 3 ) এর তৃতীয় স্তরে কিছু বলা মুশকিল, এটি কেবল এমন জিনিসগুলিকে বোঝায় যা আমরা ইতিমধ্যে জানি, এমন জিনিসগুলি যা পি = অনুসরণ করে এন পি পিএইচকে ধসের কারণ করে।NP+P=NPP=PSPACENP+Δ3PP=NP


3
মজার প্রশ্ন! তবে: "অবশ্যই ক) কমপক্ষে খ হিসাবে শক্ত) যা কমপক্ষে গ হিসাবে শক্ত)।" অর্ডারটি অন্যভাবে হওয়া উচিত নয়?
বার্ট জানসেন

2
কোনও লিঙ্ক অন্তর্ভুক্ত করা বা 'সম্পূর্ণ অ্যালগরিদম এ অনুকরণের' অর্থ কী তার একটি সংক্ষিপ্ত বিবরণ অন্তর্ভুক্ত করা সম্ভব? যেমন, এই ক্ষেত্রে 'সিমুলেট' এবং 'রান' এর মধ্যে পার্থক্য কী? এটি কি চলমান সময়ের চেয়ে দ্রুত একটি অ্যালগরিদম অনুকরণ করা সম্ভব?
আর্টেম কাজনাটচিভ

1
প্রিয় আর্টেম, একটি নির্দিষ্ট উদাহরণে অ্যালগরিদমকে অনুকরণ করে আমি বলতে চাইছি অ্যালগরিদমের পুরো বিবর্তনকে বর্ণনা করব। (সুতরাং এটির মতো "অ্যালগরিদম" চলমান "লেগেছে)) আপনি চলমান সময়ের চেয়ে অ্যালগরিদমকে আরও দ্রুত অনুকরণ করতে পারবেন না। এটি (আমার জ্ঞানের) মানক ধারণা নয় তাই আমি লিঙ্ক বা রেফারেন্স দিতে পারি না (তবে লিঙ্ক এবং রেফারেন্স পাওয়ার আশা করি।) প্রশ্নে বর্ণিত "অনুপ্রেরণা এবং টাস্ক বি এর সাথে সম্পর্কিত যা" অ্যালগোরিদম এ হিসাবে একই আউটপুট দিন "এর গণ্য টাস্কের চেয়ে অ্যালগোরিদমকে সিমুলেট করা ভিন্ন।
গিল কালাই

2
প্রিয় গিল, আমি দেখতে কেন আমরা একটি আলগোরিদিম সিমুলেট করতে পারবে না ব্যর্থ করছি হিসাবে একই আদেশের সম্পদ সঙ্গে একটি ব্যবহারসমূহ। কিছু সংস্থানগুলি আরও সীমাবদ্ধ না করা না হলে আমরা এ-তে যা কিছু করি তা সুনির্দিষ্ট করতে পারি। যাক আমাকে দেখতে যদি আমি প্রেরণা অংশ সঠিকভাবে বুঝতে: আমরা একটি সমস্যা আছে প্রশ্নঃ ক্লাসে সি সম্ভবত সি সলিউশন Q এর বাইরে একটি অ্যালগরিদম । খোঁজার যদিও একটি সমাধান প্রশ্নঃ মধ্যে সম্পন্ন করা যাবে সি , এক খোঁজার সমাধান যে একজন খুঁজে বের করে জটিলতা বাহিরে থাকতে পারে সিAAAQCACQQCAC। আমি কি পোস্টটির প্রেরণার অংশটি সঠিকভাবে বুঝতে পারি?
কাভেহ

2
হ্যাঁ হ্যাঁ আমরা ধরে নিচ্ছি যে অ্যালগোরিদম এ হ'ল ডিস্ট্রিমেন্টিক! আমার কাছে কেন স্পষ্ট অন্তর্নিহিততা নেই যে আমাদের প্রত্যাশা করা উচিত যে 3-স্যাট-এর জন্য প্রতিটি নির্বিচারক অ্যালগরিদমের অনুকরণ করা স্পেস হার্ড। এটাই হল প্রশ্ন! আমি দেখতে চাই বিশেষজ্ঞদের কি ধারণা।
গিল কালাই

উত্তর:


12

সমস্যা: আসুন একটি 3-SAT এর জন্য একটি ডিস্ট্রিমেন্টিক অ্যালগরিদম হতে দিন। সম্পূর্ণভাবে অ্যালগরিদম এ (সমস্যার প্রতিটি উদাহরণে) পি-স্পেসকে সিমুলেট করার সমস্যা কি শক্ত?

আমি এই সমস্যার বক্তব্য বুঝতে পারি না। তবে আমি মনে করি আপনার আরও সাধারণ প্রশ্নকে আনুষ্ঠানিক করার একটি প্রাকৃতিক উপায় রয়েছে যা এটিতে একটু আলোকপাত করতে পারে। সম্ভবত আমি আপনার পয়েন্টটি পুরোপুরি অনুপস্থিত, তবে আশা করি আপনি এখানে পড়ার জন্য এখনও আকর্ষণীয় কিছু খুঁজে পান।

1) সংজ্ঞাটি বোঝায় কি (শব্দ অর্থে বিস্তৃত অর্থে)? এটি কি সুপরিচিত বা কিছু সুপরিচিত জিনিস (বা এর অনুরূপ)। (আমার সূত্রটি অনানুষ্ঠানিক ছিল এবং বিশেষত যখন আমরা স্যাটের মতো নির্দিষ্ট সমস্যা থেকে এনপির মতো জটিলতা শ্রেণিতে চলে যাই তখন আমি যে বিষয়গুলিকে অবহেলা করি সে সম্পর্কে আমাদের চিন্তিত হতে হবে।)

কার্যটি বোঝার একটি উপায় হুবহু অ্যালগরিদম ওয়াই অনুকরণ করেY নিম্নরূপ। আসুন সরলতার জন্য এক-টেপ টুরিং মেশিন হিসাবে মডেলটি ঠিক করি; আমি যা বলব তা কোনও সাধারণ কম্পিউটারের মডেলকে প্রয়োগ করতে পারে।

প্রতিটি আলগোরিদিম জন্য এবং ইনপুট এক্স , আমরা তার বর্ণনা করতে পারেন গণনার ইতিহাস এইচ ওয়াই ( X , আমি , ) : প্রদত্ত ইন্টিজার আমি এবং যা থেকে পরিসীমা 0 চলমান সময় থেকে ওয়াই , এইচ ওয়াই ( X , আমি , ) সমান বিষয়বস্তুর তম টুরিং মেশিন টেপ কোষ ওয়াই ইনপুট এক্স সময় ধাপে আমি । (আর যদি টেপ হেড পড়ছে জেYx HY(x,i,j)ij0YHY(x,i,j)jYxijম সেল তম ধাপ, তাও আবার অবশ্যই মেশিনের রাষ্ট্র সহ।), কম্পিউটেশন ইতিহাস জটিলতা তত্ত্ব সব সময় আসা পর্যন্ত অন্তর্ভুক্ত।i

এখন, কেউ তর্ক করতে পারে যে যে কোনও অ্যালগরিদম যা ভাষার সিদ্ধান্ত নিতে পারে

CY={(x,i,j,σ) | HY(x,i,j)=σ}

(অথবা ফাংশন ভান সমস্ত ইনপুট দিকে) কাজের সমাধানে হয় ঠিক অনুকরণ অ্যালগরিদম ওয়াই , কারণ এটি আলগোরিদিম প্রতি সম্ভব গুনতি প্রতি সামান্য অংশ প্রিন্ট করার ক্ষমতা থাকবে ওয়াই । অবশ্যই, একটি ওরাকল দেওয়া সি ওয়াই এক একটি ধাপে ধাপে সিমুলেশন করতে পারে ওয়াইHYYYCYY

2) ধরুন আমরা গণনা সংক্রান্ত জটিলতা সংক্রান্ত সমস্ত মানক অনুমানের সাথে নিজেকে সজ্জিত করি। আমরা কি কিছু পরিচিত জটিলতা ক্লাসের জন্য সি + বলে মনে করি তা বলতে পারি। (যেমন সি সি = এনপি, সি = পি-স্পেস, ..)? আমরা কী জটিলতা ক্লাস সি অনুমান করতে পারি যে সি + সি দ্বারা বিভক্ত আদর্শ?

উপরোক্ত প্রস্তাবনায় এটি এখনও একটি আকর্ষণীয় প্রশ্ন। নির্বিচারক সময় শ্রেণীর জন্য, কিছুই পরিবর্তন হয় না। হ'ল পি : আমরা পলটাইমে সি ওয়াই সিদ্ধান্ত নিতে পারি প্রতিটি পলটাইম অ্যালগরিদমের জন্য। একইভাবে E এক্স পি + = এক্স পি । এছাড়াও পি এস পি সি সি + এখনও পি এস পি সি ই ই । ননডেটেরিমেন্টিক সময় জটিলতার ক্লাসগুলির জন্য পরিস্থিতি আরও আকর্ষণীয় হয়ে ওঠে। সেক্ষেত্রে একটি অ্যালগরিদম ওয়াইয়ের একাধিক গণনার ইতিহাস থাকতে পারেP+PCYEXP+=EXPPSPACE+PSPACEY আর ভালভাবে সংজ্ঞায়িত হয় না। তবে আমরা এখনওকিছুগণনার ইতিহাসমুদ্রণ করতে চাই, সুতরাং আমাদের "নির্ভুল সিমুলেশন" কে একটি নির্দিষ্ট ননডেটেরিনিস্টিক গণনার ইতিহাস আলাদা করতে হবে এবং তার মানগুলি মুদ্রণ করতে হবে। একটি এন পি অ্যালগরিদম ওয়াইয়ের জন্য , কেউ বলতে পারেন যে সি ওয়াইপি এন পি : আমরা এন পি ওরাকলকে "প্রথম" গ্রহণযোগ্য গণনার ইতিহাসের জন্য বাইনারি অনুসন্ধান করতে (লেক্স ক্রমে) ব্যবহার করতে পারি, তারপরে একবার এটি পাওয়া গেলে, মুদ্রণ করুন প্রাসঙ্গিক বিট একটি এন এক্স পি এলগরিদম ওয়াইয়ের জন্য , কেউ সি ওয়াই বলতে পারেনHYNPYCYPNPNPNEXPYCYEXPNP , একই কারণে।

আমরা কি আরও ছোট ক্লাসে লাগাতে পারি ? আমি জানি না। লক্ষ্য করুন আমরা কেবল নতুন করে সংজ্ঞা দিতে পারি নাNP+

{ ( এক্স , আই , জে , σ ) | এইচ ওয়াই ( x , i , j ) = σ এর মতোএকটি এইচ ওয়াই বিদ্যমান রয়েছে σCY=(x,i,j,σ) | HYHY(x,i,j)=σ }

করা চেষ্টা মধ্যে এন পি কারণ আমরা ইতিহাস স্ট্রিং প্রয়োজন হবে, একই সঙ্গে জড়িত সব quadruples জন্য এক্স "ঠিক অনুকরণ অ্যালগরিদম, যাতে ওয়াই "।CYNPxY

Anyway, this issue of not being able to "print a witness" to an NEXP computation without going to EXPNP does arise in some situations, such as circuit complexity. If NEXP has polynomial size circuits, then is it also the case that CYP/poly for every nondeterministic 2nk time Y? Impagliazzo, Kabanets, and Wigderson answered this question affirmatively in 2001. Their proof is extremely interesting, invoking tools from derandomization and diagonalization (why would derandomization be necessary for such a result?) and it turns out to be a very useful theorem for proving circuit lower bounds for NEXP functions.

Is there hope to actually prove something about this operation?

Maybe... that depends on whether you are happy with the above formalization of your question. For a deterministic 3-SAT algorithm Y, I think the above exact simulation of Y problem would be PNP(1)-hard, where PNP(1) is polynomial time with one query to NP. (The annoying syntax of StackExchange requires that I write (1) instead of the alternative. Earlier I said CY should be PNP-hard, but I am not sure of the details: you may see how to generalize the below.)

We give a polytime many-one reduction from every LPNP(1) to CY. Given such an L, let M be a machine recognizing L that does a single NP query. WLOG, that query is a SAT formula. Also WLOG, the SAT query can be "postponed" until the very last step of the computation, in the following sense: there is a polynomial time algorithm A(x) which prints a formula F and bit b, such that for all x,

M(x) accepts iff A(x)=(F,b) such that (SAT(F) XOR b) = 1.

(M may reject iff F is satisfiable, or it may accept; the bit b captures this.)

For simplicity, let's say when Y ends its computation, it moves its tape head to cell 1, writes "accept" or "reject" in that cell, and loops forever. Then, asking if (F,T,1,accept)CY for sufficiently large T will tell us if F is accepted. (In general, we just need that it's efficient to compute the instance y of CY which will tell us.) Note this already shows that CY is both NP-hard and coNP-hard; the latter is true because (F,T,1,reject)CY iff F is not satisfiable.

LCYxA(x)(F,b)b=0(F,T,1,accept)b=1(F,T,1,reject).

For every x we are producing (in polynomial time) a y such that M(x) accepts iff yCY.

(Thanks to Joe for demanding that I be clearer about this part.)

But I don't see (for example) how to get Σ2P-hardness. To reduce Σ2-SAT to the problem, it would appear you'd need to write a 3-CNF SAT instance x which simulates your deterministic algorithm Y within it (where Y is solving Tautologies on various subproblems). But as Y has no given time bound, that 3-CNF x could be huge, so you don't necessarily get a polynomial-time reduction. Unless I am missing something.


Ryan, many thanks for your answer. I am interesting how hard it is to simulate a deterministic algorithm Y for 3-SAT. And the question is if no matter what Y is this is P-space hard. (Your understanding of simulating nondeterministic algorithms as well is also interesting and perhaps is the correct question but I only considered simulating a deterministic algorithms.)
Gil Kalai

Yes, I thought the last paragraph of my answer would address this part.
Ryan Williams

I see. Yes indeed it does. I also suspected it might be provably PNP-hard which is interesting (but I am not sure if I understand your proof). Do you expect that PNP is the correct answer? I also suspected that proving something beyond PNP would be difficult. Going back from what we can prove to what we should believe, Ryan, what do you think the answer is?
Gil Kalai

Well, the complexity of CY will differ depending on the algorithm Y. Some CY may be very difficult and others may be much easier. But I think that for every algorithm Y, you probably won't do much better than saying "CY is PNP-hard". (I don't think that for every Y you can get Σ2P-hardness, for the intuitive reason I gave above.)
Ryan Williams

Ryan, you say that "there is a polynomial reduction from a PNP complete language ... to CY", but your reduction seems to use multiple instances of CY. Surely this shows instead that there is a polynomial reduction from a PNP-complete problem to PCY?
Joe Fitzsimons

7

I initially posted an incorrect answer, so hopefully this is an improvement.

I'm going to start out by considering the 3SAT example. In your comment on Ryan's answer you say

I am interesting how hard it is to simulate a deterministic algorithm Y for 3-SAT. And the question is if no matter what Y is this is P-space hard.

The answer to this is that it is not PSPACE-hard for at least some Y, assuming that NPPSPACE, but that there exist other algoriths for which it is PSPACE-hard. Showing the latter is trivial: We simply construct an algorithm which interprets the bit string representing the 3SAT formula instead as a TQBF problem, which it then solves before solving the 3SAT instance. Obviously there is nothing special about TQBF in this case, so the algorithm can be made arbitrarily hard to simulate. So we should only care about lower bounds on simulation of any algorithm for a given problem, rather than a specific algorithm.

With that in mind, we construct the following algorithm to solve 3SAT:

Take a register of n bits (initially all set to 0) to contain a trial solution, together with a register containing the 3SAT instance, a counter register of size log2(c+1) initially set to 1 and and two flag bits (call these the fail flag and the accept flag). Here c is the number of clauses. The algorithm then proceeds as follows:

  • If the value of the clause counter k is less than or equal to c, and the trial solution is not 111......1, check whether clause k is satisfied. If not set the fail bit. Increment the counter.
  • If the value of the clause counter k is less than or equal to c, and the trial solution is 111......1, check whether clause k is satisfied. If it is not, set the fail flag. Increment the counter.
  • If k exceeds c, and the trial solution is not 111......1, check if the fail flag is set. If so then increment the trial solution, reset the counter k to 1, and unset the fail flag. If the fail flag was not set, set the accept flag, set the clause counter k to zero, set the trial solution to zero and halt.
  • If k exceeds c, and the trial solution is 111......1, check if the fail flag is set. If the fail flag was not set, set the accept flag. Set the clause counter k to zero, set the trial solution to zero and halt.

When the algorithm halts, the state of the accept flag tells you whether or not the 3SAT formula can be satisfied.

Now, if I want to compute the state of the algorithm at time i I have an algorithm to compute this in polynomial time with a single call to an NP oracle as follows:

Note that for any i, assuming the accept bit has not yet been set, the state of the registers can be calculated in polynomial time, since the value of k and the trial solution register t are simply functions of i. Determining if the fail flag is set can be done in polynomial time, simply by checking whether the current state of the trial solution register satisfies all clauses less than or equal the current value of k. If and only if this not the case, the fail flag is set. The accept flag is set to zero.

Similarly, if the accept bit has already been set, the state of the registers can be efficiently computed, since everything is zero except the accept bit, which is set.

So the only hardness comes in determining whether the accept bit is set. This is equivalent to determining whether the given 3SAT instance has a solution less than t. If it does, then the accept bit must necessarily be set, and if it does not, then the accept bit must necessarily be zero. Clearly this problem is itself NP-complete.

Thus the state of the system at step i can be determined by in polynomial time with a single query to an NP oracle.

Important update: Initially I had misread Ryan's formulation of exact simulation as a decission problem, and so my claim that the decission version was in NP was incorrect. Given the problem of deciding whether bit j at step i on input x as formulated in Ryans answer, then there are 3 possibilities:

  1. This bit is constant in independent of whether F is satisfiable. As there are only two possible states for the system at this time (both of which can be computed in P) determining if this is the case, and if so, whether the value is equal to σ is in P.
  2. The bit is equal to σ if FSAT, and unequal otherwise. This problem is clearly in NP, as the satisfying assignment of F acts as a witness.
  3. The bit is equal to σ if FUNSAT in which case the problem is then in coNP.

Clearly deciding which one of these three is the case can be done in polynomial time, simply by comparing the value that bit takes if FSAT and if FUNSAT. Thus the exact simulation problem is in NP coNP. Thus, as Ryan's lower bound and my upper bound match, assuming both are correct, I think we have an answer: CY=NPcoNP.

Note that there is nothing special about 3SAT in this case, and the same could be done for any problem in NP. Further, the same trick can be used for any non-deterministic complexity class, not just NP, which seem to be the hard ones to simulate. For deterministic classes you can simply run the best algorithm and halt at step i. So with this in mind, full simulation of at least some deterministic algorithm for a problem is only as hard as solving the problem itself.


1
Can't you use the same technique to show that b) Reaching the same solution as algorithm A is already PSPACE-hard? Have the algorithm choose between one of two possible solutions depending on the solution of a PSPACE-hard problem encoded into the input.
Peter Shor

1
@Peter: Sure, you could make it arbitrarily hard, but I thought the interesting question was the upper bound minimized over A, which turns our to be NP.
Joe Fitzsimons

3

Very interesting thought! Here's an extended comment that was too long to post as such:

Regarding the definition in (1) as such, that is:

Start with a complexity class C which is described by some computational task. Given an algorithm A to perform every instance of this computational task, consider a new complexity class CA which is described by the computational task of completly simulating A. Then we can (hopefully) define an "ideal" of complexity classes: C+={CA: for all algorithms A}.

I believe you're going to quickly run into an issue with undecidability for non-trivial membership in C+. In particular, given the description of two TMs M and M, it's well-known that deciding whether they accept the same language (i.e. L(M)=?L(M) is undecidable in general by reduction from the Halting Problem.

Further, given the description of a Turing Machine , there is always a trivial simulation: Just construct a new Turing Machine M that calls M as a subroutine (using its description), which accepts if M accepts and rejects if M rejects. This only costs a linear overhead. Specifically, if M runs in t(n) computational steps, then M runs in O(t(n)) (whereby "run," I mean "simulates M exactly").

This suggests to me that if there's any serious traction to be gained here, the precise way you go about making the definition of the ideal of a complexity class is going to be fairly important. In particular, if you intend to show that the ideal of, say, NP is PSPACE-hard, you'll have to rule out the notion of a trivial, linear-time simulation of the NP machines in question.

With respect to the homotopy methods described in the talk/paper and GPS's PSPACE-completeness result, I believe the "gap" you're witnessing between PPAD-completeness and PSPACE-hardness is due to the distinction between finding any NE (in the sense of END OF LINE) and finding a unique NE given a specific, initial configuration (in the sense of OTHER END OF LINE).


Dear Daniel, thanks for your answer. I am not sure I see why undecidability of membership in C^+ (Or even in C itself) is relevant to the question. The questions if :a) based on all our conjectures and beliefs regarding seperations of complexity classes is it the case that for every algorithm A for 3-SAT the computational task of simulating A (for every instance of 3-SAT) is Δ3P hard. b) Is it possible to actually proves such (or a similar) statement.(Maybe something very basic is wrong with my questions but I am not sure decidability is the issue.)
Gil Kalai

Gil, see if this speaks to your question at all: Fix some (arbitrary) algorithm A for 3-SAT. Consider a new algorithm B. Then we want to claim: B simulates A, in the sense of your (b) -- i.e. that B reaches the same solutions as A on all well-defined inputs. Since we can view algorithms as Turing machines, we can take the view that A accepts 3-SAT (by the supposition). To prove the claim, it appears to me that we then need to decide the question "Does B (viewed as a TM) accept 3-SAT as well?", which leads into undecidability issues.
Daniel Apon

I should point out that it's specifically the phrase "for all algorithms A" in the definition of C+ coupled with the notion of saying/guessing (or, presumably, computing or deciding) the elements of the set that gives me pause, if nothing else. Once we start considering computation on properties of arbitrary algorithms or languages or classes/sets of languages, the Halting problem often seems to creep in.
Daniel Apon

1
Dear Daniel, you wrote "Then we want to claim: B simulates A, in the sense of your (b) -- i.e. that B reaches the same solutions as A on all well-defined inputs." This is not what I mean by "B simulates A". For me B simulates A means that it describes precisely the entire "running" of algorithm A not just reach the same "solutions" (or output).
Gil Kalai

1
Regarding your second comment. It looks that we can find a reasonable restriction on the algorithms we consider or formulate the question a little differently: E.g. consider the statement "For every algorithm A to solve 3-SAT it is P-space hard to simulate A." I dont see how the halting problem creep in (more than in other questions in computational complexity).
Gil Kalai
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.