จะตัดสินใจได้อย่างไรว่า


130

เราได้รับแบบฝึกหัดต่อไปนี้

ปล่อย

f(n)={10n occurs in the decimal representation of π0else

พิสูจน์ว่าคำนวณได้f

เป็นไปได้อย่างไร? เท่าที่ผมรู้ว่าเราไม่ทราบว่าสภาพอากาศมีลำดับของตัวเลขทุก (หรือ) และขั้นตอนวิธีการได้อย่างแน่นอนไม่ได้ตัดสินใจว่าลำดับบางอย่างจะไม่เกิดขึ้น ดังนั้นฉันคิดว่าfไม่สามารถคำนวณได้เพราะปัญหาพื้นฐานเป็นแบบกึ่งตัดสินใจได้เท่านั้นπf


32
ยกโทษให้ฉันด้วยความโง่เขลาอย่างสมบูรณ์ฉันเห็นได้ชัดว่าขาดจุดเริ่มต้นของคำถาม แต่ไม่ใช่ 0 ^ n เสมอ 0 ใช่ไหม เนื่องจากตำแหน่งทศนิยมที่ 32 ถ้า pi เป็น 0 นั่นจะไม่หมายความว่า f (n) จะส่งคืน 1 เสมอหรือไม่
Cory Klein

68
nna5=aaaaa0

คำตอบ:


133

มีเพียงสองความเป็นไปได้ที่จะต้องพิจารณา

  • n0nπ

  • N0NπN

    Zeros-in-pi(n):
     if (n > N) then return 0 else return 1
    

Nnπ


สังเกตความแตกต่างที่ลึกซึ้งด้วยภาพร่างหลักฐานต่อไปนี้ที่เสนอโดยgallais :

  1. ใช้เครื่องทัวริงสุ่มและอินพุตแบบสุ่ม
  2. การคำนวณจะดำเนินต่อไปเรื่อย ๆ หรือจะหยุดในบางจุดและมีฟังก์ชันที่คำนวณได้ (ค่าคงที่) ซึ่งอธิบายพฤติกรรมแต่ละอย่างเหล่านี้
  3. ???
  4. กำไร!

Alex ten Brinkอธิบาย:

ระวังสิ่งที่ทฤษฎีบท Halting กล่าว: มันบอกว่าไม่มีโปรแกรมเดียวที่สามารถตัดสินใจได้ว่าโปรแกรมใดโปรแกรมหนึ่งหยุดทำงานหรือไม่ คุณสามารถสร้างโปรแกรมสองโปรแกรมได้โดยง่ายว่าโปรแกรมใดโปรแกรมหนึ่งหยุดทำงานหรือไม่โปรแกรมแรกมักจะบอกว่า 'หยุดเลย' ส่วนที่สอง 'ไม่หยุด' - โปรแกรมหนึ่งถูกต้องเสมอ ของพวกเขาคือ!

sepp2kเพิ่ม:

ในกรณีตัวอย่างของอเล็กซ์อัลกอริทึมจะไม่ส่งคืนผลลัพธ์ที่ถูกต้องสำหรับอินพุตทั้งหมด ในกรณีของคำถามนี้หนึ่งในนั้นจะ คุณสามารถอ้างได้ว่าปัญหานั้นสามารถตัดสินใจได้เพราะคุณรู้ว่ามีอัลกอริทึมที่ให้ผลลัพธ์ที่ถูกต้องสำหรับอินพุตทั้งหมด ไม่สำคัญว่าคุณจะรู้ว่าอัลกอริทึมนั้นคืออะไร 10


ความคิดเห็นไม่ได้มีไว้สำหรับการอภิปรายเพิ่มเติม การสนทนานี้ได้รับการย้ายไปแชท
Gilles

12
จะเกิดอะไรขึ้นถ้ามีคนพิสูจน์ว่าคำสั่ง "สำหรับทุกจำนวนเต็มบวก n สตริง 0 ^ n ปรากฏในการแทนทศนิยมของ of" ไม่สามารถพิสูจน์ได้? เราจะยังคงบอกว่าปัญหานี้สามารถแก้ไขได้แม้ว่าจะไม่มีการสร้างอัลกอริทึมที่ถูกต้องหรือไม่?
อื่น ๆ

4
@ คนอื่น ๆ ใช่เราจะ
JeffE

1
@JeffE เอาล่ะ เป็นไปได้ในการพิสูจน์ในตรรกะปรีชา หรือกฎหมายของคนกลางที่ได้รับการยกเว้นจำเป็นหรือไม่
อื่น ๆ

NMN

14

เพียงโพสต์รายละเอียดเล็กน้อยในคำตอบของ JeffE

เรารู้ว่ามีสองฟังก์ชัน / กรณีที่มีอยู่ซึ่งสามารถคำนวณฟังก์ชัน f (n):

  1. ฟังก์ชั่นที่ส่งกลับค่าจริงเสมอ (สำหรับ n ทั้งหมดมีจำนวน n เป็น 0 ต่อเนื่องกัน)
  2. ฟังก์ชันที่จะคืนค่าจริงหาก n น้อยกว่าจำนวนเต็ม N ซึ่ง N ถูกกำหนดเป็นความยาวสูงสุดของ 0 ต่อเนื่องที่มีอยู่ในจำนวนอตรรกยะที่กำหนด

ฟังก์ชันเหล่านี้หนึ่งเดียวเท่านั้นที่สามารถแก้ไขได้ เราไม่รู้ว่าสิ่งใด แต่เรารู้แน่ชัดว่ามีคำตอบอยู่ การคำนวณต้องการฟังก์ชันที่มีอยู่ซึ่งสามารถกำหนดคำตอบภายในจำนวนขั้นตอนที่ จำกัด

จำนวนขั้นตอนในกรณีที่ 1 ถูกผูกไว้กับการคืนค่าเพียงเล็กน้อย 1

NTN(n)n<NNNTN(n)n<N

แม้ว่าจะไม่สามารถเลือกได้ระหว่างสองกรณี (แม้ว่าจะดูเหมือนว่ามีแนวโน้มมากกว่าอีกกรณีหนึ่ง) แต่เรารู้ว่าหนึ่งในนั้นต้องถูกต้อง

ในฐานะที่เป็นหมายเหตุด้าน: โซลูชันของเราสมมติว่าในขณะที่เราไม่สามารถระบุได้ว่าฟังก์ชั่นใดจะทำให้เกิดค่าที่ถูกต้องสาระสำคัญของการคำนวณไม่ได้ขึ้นอยู่กับความสามารถในการสร้างของการพิสูจน์ มีอยู่จริงก็เพียงพอแล้ว


9
นักคณิตศาสตร์บางคนไม่ยอมรับสิ่งนี้ - เช่นนักสัญชาตญาณไม่ทำเช่นนั้น
reinierpost

P¬P

5

ขั้นตอนที่ 5 ของความพยายามหลักฐานดังต่อไปนี้ไม่ยุติธรรมและในความเป็นจริงที่ไม่ถูกต้อง - เป็น counterexample สามารถพบได้ที่นี่ (ขอบคุณ Yuval มันให้ความรู้สึกเหมือนเป็นส่วนที่เป็นภาพร่างที่สุดของภาพร่าง) ฉันทิ้งคำตอบไว้ที่นี่เพราะฉันคิดว่าข้อผิดพลาดนั้นเป็นประโยชน์


ก่อนปิด: คำตอบของ JeffE ก็เพียงพอแล้ว fคำนวณได้ทั้งสองทาง


π
π
π

π
π


10
ππ

1
อาอันตรายของการก้าวกระโดด: P ขอให้โชคดี
Stephen Voris

1
บังเอิญถ้าข้อสรุปผิดฉันจะลบมันได้ดีกว่าหรือปล่อยทิ้งไว้และรับทราบผ่านการแก้ไขว่าผิดหรือเปล่า?
Stephen Voris

4
πbb

2
@DavidRicherby ปัญหาใหญ่ที่เปิดอยู่คุณพูดว่า? ใช่มันเป็นเรื่องดีที่จะรู้ ฉันคิดว่านี่เป็นความผิดพลาดทางการศึกษาที่มีเหตุผลเป็นหลักฐานว่าปัญหาที่คำถามของ OP ใช้นั้นซับซ้อนเพียงใด - เห็นได้ชัดว่าฉันผิดด้วยเช่นกัน
Stephen Voris
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.