مقدمه ای بر ماشین تورینگ و نظریه محاسبه پذیری

Slides:



Advertisements
Similar presentations
Request Dispatching for Cheap Energy Prices in Cloud Data Centers
Advertisements

SpringerLink Training Kit
Luminosity measurements at Hadron Colliders
From Word Embeddings To Document Distances
Choosing a Dental Plan Student Name
Virtual Environments and Computer Graphics
Chương 1: CÁC PHƯƠNG THỨC GIAO DỊCH TRÊN THỊ TRƯỜNG THẾ GIỚI
THỰC TIỄN KINH DOANH TRONG CỘNG ĐỒNG KINH TẾ ASEAN –
D. Phát triển thương hiệu
NHỮNG VẤN ĐỀ NỔI BẬT CỦA NỀN KINH TẾ VIỆT NAM GIAI ĐOẠN
Điều trị chống huyết khối trong tai biến mạch máu não
BÖnh Parkinson PGS.TS.BS NGUYỄN TRỌNG HƯNG BỆNH VIỆN LÃO KHOA TRUNG ƯƠNG TRƯỜNG ĐẠI HỌC Y HÀ NỘI Bác Ninh 2013.
Nasal Cannula X particulate mask
Evolving Architecture for Beyond the Standard Model
HF NOISE FILTERS PERFORMANCE
Electronics for Pedestrians – Passive Components –
Parameterization of Tabulated BRDFs Ian Mallett (me), Cem Yuksel
L-Systems and Affine Transformations
CMSC423: Bioinformatic Algorithms, Databases and Tools
Some aspect concerning the LMDZ dynamical core and its use
Bayesian Confidence Limits and Intervals
实习总结 (Internship Summary)
Current State of Japanese Economy under Negative Interest Rate and Proposed Remedies Naoyuki Yoshino Dean Asian Development Bank Institute Professor Emeritus,
Front End Electronics for SOI Monolithic Pixel Sensor
Face Recognition Monday, February 1, 2016.
Solving Rubik's Cube By: Etai Nativ.
CS284 Paper Presentation Arpad Kovacs
انتقال حرارت 2 خانم خسرویار.
Summer Student Program First results
Theoretical Results on Neutrinos
HERMESでのHard Exclusive生成過程による 核子内クォーク全角運動量についての研究
Wavelet Coherence & Cross-Wavelet Transform
yaSpMV: Yet Another SpMV Framework on GPUs
Creating Synthetic Microdata for Higher Educational Use in Japan: Reproduction of Distribution Type based on the Descriptive Statistics Kiyomi Shirakawa.
MOCLA02 Design of a Compact L-­band Transverse Deflecting Cavity with Arbitrary Polarizations for the SACLA Injector Sep. 14th, 2015 H. Maesaka, T. Asaka,
Hui Wang†*, Canturk Isci‡, Lavanya Subramanian*,
Fuel cell development program for electric vehicle
Overview of TST-2 Experiment
Optomechanics with atoms
داده کاوی سئوالات نمونه
Inter-system biases estimation in multi-GNSS relative positioning with GPS and Galileo Cecile Deprez and Rene Warnant University of Liege, Belgium  
ლექცია 4 - ფული და ინფლაცია
10. predavanje Novac i financijski sustav
Wissenschaftliche Aussprache zur Dissertation
FLUORECENCE MICROSCOPY SUPERRESOLUTION BLINK MICROSCOPY ON THE BASIS OF ENGINEERED DARK STATES* *Christian Steinhauer, Carsten Forthmann, Jan Vogelsang,
Particle acceleration during the gamma-ray flares of the Crab Nebular
Interpretations of the Derivative Gottfried Wilhelm Leibniz
Advisor: Chiuyuan Chen Student: Shao-Chun Lin
Widow Rockfish Assessment
SiW-ECAL Beam Test 2015 Kick-Off meeting
On Robust Neighbor Discovery in Mobile Wireless Networks
Chapter 6 并发:死锁和饥饿 Operating Systems: Internals and Design Principles
You NEED your book!!! Frequency Distribution
Y V =0 a V =V0 x b b V =0 z
Fairness-oriented Scheduling Support for Multicore Systems
Climate-Energy-Policy Interaction
Hui Wang†*, Canturk Isci‡, Lavanya Subramanian*,
Ch48 Statistics by Chtan FYHSKulai
The ABCD matrix for parabolic reflectors and its application to astigmatism free four-mirror cavities.
Measure Twice and Cut Once: Robust Dynamic Voltage Scaling for FPGAs
Online Learning: An Introduction
Factor Based Index of Systemic Stress (FISS)
What is Chemistry? Chemistry is: the study of matter & the changes it undergoes Composition Structure Properties Energy changes.
THE BERRY PHASE OF A BOGOLIUBOV QUASIPARTICLE IN AN ABRIKOSOV VORTEX*
Quantum-classical transition in optical twin beams and experimental applications to quantum metrology Ivano Ruo-Berchera Frascati.
The Toroidal Sporadic Source: Understanding Temporal Variations
FW 3.4: More Circle Practice
ارائه یک روش حل مبتنی بر استراتژی های تکاملی گروه بندی برای حل مسئله بسته بندی اقلام در ظروف
Decision Procedures Christoph M. Wintersteiger 9/11/2017 3:14 PM
Limits on Anomalous WWγ and WWZ Couplings from DØ
Presentation transcript:

مقدمه ای بر ماشین تورینگ و نظریه محاسبه پذیری مقدمه ای بر ماشین تورینگ و نظریه محاسبه پذیری پیام سراجی IPM, Isfahan branch, Farvardidin 1396

نخستین سوالی که باید به آن پاسخ دهیم این است که «محاسبه» چیست؟

جمع:

تشخیص اعداد اول: ۲۷ ………اول نیست ۳۱………… اول است

حل معادلات : :حل معادله 2𝑥−6=1 جواب: 𝑥= 7 2

محاسبه مشتق مسئله: مشتق تابع 𝑦= 𝑥 3 +𝑥 را حساب کنید. جواب : 𝑦=3 𝑥 2 +1

نقطه مشترک در همه این مثال ها برای «محاسبه» این است که یک (یا چند) دنباله متناهی از نمادها به عنوان ورودی داده شده و (پس از انجام عملیات لازم) یک دنباله از نمادها (به عنوان جواب) در خروجی چاپ می شود.

یک مجموعه متناهی تعریف : فرض کنید Σ={ 𝑎 1 ,… 𝑎 𝑛 } از نمادها باشد. مجموعه همه دنباله های متناهی از این نمادها را با Σ ∗ نشان می دهیم.

مثال: اگر آنگاه Σ= 0,1 Σ ∗ ={𝜆,0,1,00,01,10,11,000,001,…}

تعریف : به هر زیر مجموعه روی « زبان» یک 𝐿⊆ Σ ∗ الفبای Σ گوییم.

یک محاسبه در زبان 𝐿 : 𝑓: 𝐿 𝑛 ⟶𝐿

یک مسله «تصمیم» محاسبه تابعی به این صورت است: 𝑓 𝑥 = 𝑦𝑒𝑠 𝑥∈𝐴 𝑁𝑜 𝑥∉𝐴 (𝐴⊆𝐿)

ماشین تورینگ

Σ={ 𝑠 0 ,…, 𝑠 𝑚 } { 𝑞 0 ,…, 𝑞 𝑛 } 𝑞 𝑖 𝑠 𝑗 𝑠 𝑘 𝑞 𝑙 𝑋 اجزای یک ماشین تورینگ Σ={ 𝑠 0 ,…, 𝑠 𝑚 } الفبای زبان { 𝑞 0 ,…, 𝑞 𝑛 } مجموعه حالت های درونی مجموعه ای از دستور ها به صورت : 𝑞 𝑖 𝑠 𝑗 𝑠 𝑘 𝑞 𝑙 𝑋

𝑞 𝑖 𝑠 𝑗 𝑠 𝑘 𝑞 𝑙 𝑋 اگر ماشین در حالت درونی 𝑞 𝑖 بود و هد ماشین در روبروی 𝑞 𝑖 𝑠 𝑗 𝑠 𝑘 𝑞 𝑙 𝑋 اگر ماشین در حالت درونی 𝑞 𝑖 بود و هد ماشین در روبروی یک نماد 𝑠 𝑗 بود آنگاه نماد 𝑠 𝑘 را به جای آن بنویس. حالت درونی را به 𝑞 𝑙 تغییر بده و اگر 𝑋=𝑅 هد را یک خانه به سمت راست و اگر X=L هد را یک خانه به سمت چپ حرکت بده.

𝑞 0 𝑞 0 1 0 𝑞 3 𝑅

𝑞 3

قرار داد: در ابتدا هد ماشین در برابر اولین نماد ورودی از سمت چپ قرار دارد. به جز خانه هایی که ورودی بر روی آنها نوشته شده بقیه خانه ها سفید هستند و ماشین در وضعیت درونی 𝑞 0 قرار دارد.

مثال : ماشین تورینگی روی الفبای 0,1,𝐵 بنویسید که به انتهای هر دنباله از صفر و یک دو عدد 1 اضافه کند. 110 11011

𝑞 0 1 1 𝑞 0 𝑅 𝑞 0 0 0 𝑞 0 𝑅 𝑞 0 𝐵 1 𝑞 1 𝑅 𝑞 1 𝐵 1 𝑞 2 𝑅

1 𝑛 =11…1 (n times) تعریف: تابع 𝑓:ℕ⟶ℕ را محاسبه پذیر تورینگ گوییم اگر یک ماشین تورینگ M وجود داشته باشد به طوری که برای هر 𝑛∈ℕ که 𝑓(𝑛) تعریف شده باشد این ماشین با ورودی 1 𝑛 متوقف شده و خروجی 1 𝑓(𝑛) را تحویل دهد.

ماشین متوقف نمی شود) f(n) (در حالتی که

𝑓 𝑛 =𝑛+2 𝑞 0 1 1 𝑞 0 𝑅 𝑞 0 𝐵 1 𝑞 1 𝑅 𝑞 1 𝐵 1 𝑞 2 𝑅

𝑓(𝑚,𝑛)

تابع f محاسبه پذیر با یک ماشین تورینگ است تابع f توسط یک برنامه به زبان C محاسبه پذیر است

مجموعه ماشین های تورینگ شمارا است 𝑀 0 , 𝑀 1 ,…, 𝑀 𝑛 ,….

مجموعه ماشین های تورینگ شمارا ی کارامد است 𝑀 0 , 𝑀 1 ,…, 𝑀 𝑛 ,….

یک ماشین تورینگ جهانی وجود دارد. یعنی ماشینی که می تواند عملکرد هر ماشین دیگر را شبیه سازی کند

کانتور(۱۸۷۰) ℕ={0,1,2,3,….} ℤ ℚ مجموعه ℝ (0,1) {𝑓:ℕ⟶ℕ} شمارا: نا شمارا: ℝ (0,1) {𝑓:ℕ⟶ℕ}

اثبات کانتور برای ناشمارا بودن اعداد حقیقی:

𝑓 𝑥 = 𝑀 𝑛 𝑛 +1 𝑖𝑓 𝑀 𝑛 (𝑛)↓ 0 𝑖𝑓 𝑀 𝑛 (𝑛)↑

𝑀 1 1 ↓ ⇒ 𝑓 1 = 𝑀 1 1 +1≠ 𝑀 1 1 𝑀 1 1 ↑ ⇒ 𝑓 1 =0 پس در هر صورت تابع f نمی تواند برابر تابعی باشد که توسط 𝑀 1 محاسبه می شود

با استدلال مشابه نتیجه می شود که f توسط هیچ یک تورینگی محاسبه پذیر نیست.

𝑓 𝑥 = 𝑀 𝑛 𝑛 +1 𝑖𝑓 𝑀 𝑛 (𝑛)↓ 0 𝑖𝑓 𝑀 𝑛 (𝑛)↑ ولی با توجه به تعریف تابع f واضح است که اگر الگوریتمی برای تعیین توقف یا عدم توقف 𝑀 𝑛 (𝑛) داشتیم آنگاه تابع f محاسبه پذیر می شد: 𝑓 𝑥 = 𝑀 𝑛 𝑛 +1 𝑖𝑓 𝑀 𝑛 (𝑛)↓ 0 𝑖𝑓 𝑀 𝑛 (𝑛)↑

پس مسیله توقف «حل پذیر الگوریتمی» نیست. یعنی الگوریتمی وجود ندارد که بتواند توقف یا عدم توقف هر الگوریتم دلخواه را مشخص کند!

پارادکس دروغگو: این جمله درست نیست!

1−𝑖𝑛𝑝𝑢𝑡 𝑥 2- if 𝑀 𝑥 (𝑥)↓ then goto 4 3- if 𝑀 𝑥 (𝑥)↑ then stop الگوریتم زیر را در نظر بگیرید: 1−𝑖𝑛𝑝𝑢𝑡 𝑥 2- if 𝑀 𝑥 (𝑥)↓ then goto 4 3- if 𝑀 𝑥 (𝑥)↑ then stop 4- goto 4

فرض کنید 𝑀 𝑛 0 ماشین تورینگی باشد که این الگوریتم را اجرا می کند. حال اندیس را 𝑛 0 به عنوان ورودی به خود این برنامه می دهیم! حال عملکرد الگوریتم چنین خواهد بود : این الگوریتم متوقف می شود اگر و فقط اگر همین الگوریتم متوقف نشود!

𝑀 𝑛 0 ( 𝑛 0 ) ↑ 2- if 𝑀 𝑛 0 ( 𝑛 0 )↓ then goto 4 3- if 𝑀 𝑛 0 ( 𝑛 0 )↑ then stop 4- goto 4 𝑀 𝑛 0 ( 𝑛 0 )↓ پس در هر صورت به تناقض می رسیم!

تصمیم ناپذیری منطق محمولات Σ⊢𝛼 Σ⊬𝛼

𝐷⊢𝐻⟺ 𝑀 𝑛 (m)↓ برای هر ماشین 𝑀 𝑛 و ورودی 𝑚 مجموعه 𝐷 از فرمولهل برای هر ماشین 𝑀 𝑛 و ورودی 𝑚 مجموعه 𝐷 از فرمولهل (در زبان منطق محمولات) و فرمول 𝐻 را به طوری می سازیم که : 𝐷⊢𝐻⟺ 𝑀 𝑛 (m)↓

برای هر حالت درونی 𝑞 𝑖 یک محمول 𝑄 𝑖 (t,x) در نظر می گیریم، به این معنا که ماشین برای هر نماد 𝑠 𝑖 یک محول 𝐴 𝑖 (t,x) به این معنا که ماشین در زمان t در خانه شماره x نماد 𝑠 𝑖 قراردارد. 0, 𝑠 𝑥 ,

𝑄 0 0,0 ∧ 𝐴 1 0,0 ∧ 𝐴 1 0, 1 ∧ ∀𝑥 (𝑥≠0 ∧𝑥≠ 1 → 𝐴 0 0,𝑥 ) 𝐴 0 …………𝐵 𝐴 1 ………….1 𝑄 0 0,0 ∧ 𝐴 1 0,0 ∧ 𝐴 1 0, 1 ∧ ∀𝑥 (𝑥≠0 ∧𝑥≠ 1 → 𝐴 0 0,𝑥 )

𝑞 0 1 𝐵 𝑞 3 𝑅 ∀𝑥,𝑡( 𝑄 0 (𝑡,𝑥)∧ 𝐴 1 (𝑡,𝑥)→ 𝑄 3 𝑠 𝑡 ,𝑠 𝑥 ∧ 𝐴 0 𝑠 𝑡 ,𝑥 ∧ ∀𝑧≠𝑥( 𝐴 1 (𝑡,𝑧)→ 𝐴 1 (𝑠 𝑡 ,𝑧) ∧ 𝐴 0 (𝑡,𝑧)→ 𝐴 0 (𝑠 𝑡 ,𝑧))

توقف ماشین: ∃𝑡,𝑥( 𝑄 3 𝑡,𝑥 ∨ 𝑄 0 𝑡,𝑥 ∧ 𝐴 0 𝑡,𝑥 )

مسائل تقلیل پذیر به مسئله توقف: 1-مسئله هم ارز بودن دو الگوریتم: دو الگوریتم زیر را در نظر بگیرید:

input(n) If n=1 then print “NO” and stop. for i:=2 to n-1 do { if (n mod i)=0 then print “NO” and stop} Print “YES” and stop.

input(n) If n=1 then print “NO” and stop. for i:=2 to round(sqrt(n))+1 do { if (n mod i)=0 then print “NO” and stop} Print “YES” and stop.

دو الگوریتم فوق در واقع هم ارزند ، به دلیل اینکه هر عدد غیر اول n حتما یک مقسوم علیه کمتر یا مساوی 𝑛 دارد.

آیا دو ماشین تورینگ (برنامه به زبان C ) داده شده معادل هستند؟

وجود الگوریتم برای مسئله معادل بودن وجود الگوریتم برای مسئله توقف

برای هر ماشین تورینگ دلخواه 𝑀 𝑛 ماشین تورینگی برای هر ماشین تورینگ دلخواه 𝑀 𝑛 ماشین تورینگی می سازیم که الگوریتم زیر را اجرا کند: 1-input(i) 2- perfom 𝑀 𝑛 (n), for i steps and if it halted, then print(0) and stop. 3- print(1) 1-input(i) 2- print(1) سوال: آیا دو الگوریتم فوق معادلند؟

مسئلع توقف «تقلیل پذیر» (reducable) به مسئله معادل بودن است دوالگوریتم معادلند 𝑀 𝑛 (𝑛)↑ مسئلع توقف «تقلیل پذیر» (reducable) به مسئله معادل بودن است

𝑥 2 +5𝑥+3=0 مسئله وجود ریشه برای معادلات چند جمله ای آیا معادلات زیر ریشه حقیقی داند: 𝑥 2 +5𝑥+3=0 𝑥 7 +7 𝑥 4 −8 𝑥 3 −𝑥+1=0

آیا معادلات زیر ریشه طبیعی داند: 𝑥 2 + 𝑦 2 = 𝑧 2 𝑥 3 −2𝑥𝑦= 𝑦 4 +5

مسئله دهم هیلبرت: برای یک معادله چند جمله ای داده شده (با ضرایب صحیح) مشخص کنید که آیا در اعداد طبیعی ریشه دارد یا خیر؟ ماتیاسویچ در 1970 نشان داد که این مسئله حل پذیر نیست! (با کمک روش تقلیل به مسئله توقف)

بازی حیات کانوی

1- هر نقطه مسکونی که کمتر از دو همسایه داشته باشد در مرحله بعد خالی از جمعیت می شود. 2- هر نقطه مسکونی که دارای دو یا سه همسایه مسکونی باشد در مرحله بعد هم مسکونی باقی می ماند. 3- هر نقطه مسکونی که بیش از سه همسایه مسکونی داشته باشد در مرحله بعد خالی از جمعیت می شود. 4- هر نقطه غیر مسکونی که دقیقا سه همسایه مسکونی داشته باشد در محله بعد مسکونی می شود.

مسئله :آیا با شروع از یک حالت اولیه داده شده به یک دوره تناوب می رسیم یا خیر؟

آیا از یک حالت اولیه داده شده می توان به حالت دوم (داده شده ) رسید یا خیر؟

قضیه رایس : فرض کنید A یک خاصیت در مورد الگوریتمها باشد به طوری که: 1- اگر دو الگوریتم M و N معادل باشند، آنگاه یا هردو خاصیت A را دارند و یا هردو خاصیت A را ندارند. 2- حداقل یک الگوریتم هست که دارای خاصیت A است و حداقل یک الگوریتم هم هست که دارای خاصیت A نیست. در این صورت این مسئله که یک الگوریتم (ماشین تورینگ) داده شده دارای خاصیت A هست یا خیر، حل ناپذیر است.

ویروس کامپیوتری: برنامه ای است که خود را تکثیر می کند خاصیت «خود تکثیری» در شرایط قضیه رایس صدق می کند، تشخیص اینکه یک برنامه ویروس است یا خیر، یک مسئله حل پذیر (توسط یک الگوریتم ثابت و مشخص ) نیست، بلکه باید الگوریتمهای تشخیص ویروس مرتبا با اطلاعات جدید به روز شوند.