คำถามติดแท็ก halting-problem

30
สร้าง“ H” จาก“ H” ที่เล็กลง
ท้าทาย สร้างฟังก์ชั่นหรือโปรแกรมที่เมื่อได้รับจำนวนเต็มsizeทำต่อไปนี้: ถ้าsizeเท่ากับ 1 เอาต์พุต H H HHH H H ถ้าsizeมากกว่า 1 เอาต์พุต X X XXX X X โดยที่Xเอาต์พุตของโปรแกรม / ฟังก์ชั่นสำหรับsize - 1 (หากคุณต้องการคุณอาจมีกรณีฐานสอดคล้องกับ0ตราบใดที่คุณระบุในคำตอบของคุณ) รูปแบบผลลัพธ์ใด ๆ ต่อไปนี้เป็นที่ยอมรับแล้วแต่จำนวนใดจะสะดวกกว่าสำหรับคุณ: สตริงของโครงสร้างที่ต้องการพร้อมอักขระสองตัวที่แตกต่างกันซึ่งสอดคล้องกับHและspace อาร์เรย์สองมิติพร้อมโครงสร้างที่ต้องการโดยมีค่าแตกต่างกันสองค่าที่สอดคล้องกับHและspace อาร์เรย์ / รายการสตริงที่มีหนึ่งบรรทัดของเอาต์พุตในแต่ละสตริงโดยมีค่าแตกต่างกันสองค่าที่สอดคล้องกับHและspace อนุญาตให้มีช่องว่างนำหน้าตราบใดที่มีช่องว่างนำหน้าจำนวนหนึ่งคงที่ในแต่ละบรรทัด อักขระเอาต์พุตที่แตกต่างกันสองตัวสามารถขึ้นอยู่กับสิ่งที่คุณเลือกตราบใดที่อักขระเหล่านั้นแตกต่างกัน ระบุรูปแบบผลลัพธ์ที่โค้ดของคุณส่งคืน กรณีทดสอบ 1 H H HHH H H 2 H H H H HHH HHH H …
73 code-golf  ascii-art  fractal  code-golf  code-golf  string  code-golf  string  matrix  code-golf  graph-theory  maze  binary-matrix  code-golf  kolmogorov-complexity  random  code-challenge  metagolf  test-battery  brain-flak  text-processing  code-golf  matrix  code-golf  number-theory  primes  code-golf  string  matrix  code-golf  binary  bitwise  code-golf  number  factorial  floating-point  code-golf  number  sequence  code-golf  sequence  cops-and-robbers  code-golf  sequence  cops-and-robbers  code-golf  string  code-golf  math  decision-problem  number-theory  integer  code-golf  number  decision-problem  functional-programming  code-golf  array-manipulation  matrix  code-golf  string  classification  string  code-challenge  binary  compression  decode  code-golf  string  string  code-challenge  balanced-string  encode  code-golf  number-theory  integer  base-conversion  code-golf  math  number-theory  geometry  abstract-algebra  code-golf  array-manipulation  sorting  optimization  code-golf  math  geometry  image-processing  generation  code-golf  string  cops-and-robbers  repeated-transformation  grammars  cops-and-robbers  repeated-transformation  grammars  code-challenge  restricted-source  tips  source-layout  javascript  code-challenge  kolmogorov-complexity  restricted-source  code-golf  combinatorics  counting  math  fastest-code  linear-algebra  code-golf  math  permutations  matrix  linear-algebra  code-golf  string  decision-problem  restricted-source  code-golf  number  array-manipulation  subsequence  code-golf  number  array-manipulation  matrix  code-golf  brainfuck  code-golf  color  code-golf  quine  source-layout  code-golf  subsequence  code-golf  string  ascii-art  code-golf  string  ascii-art  alphabet  code-golf  decision-problem  interpreter  hexagonal-grid  halting-problem  code-golf  string  polynomials  calculus  code-golf  math  decision-problem  matrix  complex-numbers  code-golf  random  code-golf  number  arithmetic 

15
เครื่องฟูนี้หยุดหรือไม่?
การพิจารณาว่าเครื่องทัวริงหยุดการทำงานเป็นที่รู้จักกันดีว่าไม่สามารถตัดสินใจได้ แต่นั่นไม่จำเป็นต้องเป็นจริงสำหรับเครื่องที่เรียบง่าย เครื่อง Fooเป็นเครื่องที่มีเทป จำกัด ที่ถือในเทปแต่ละคนมีจำนวนเต็มหรือสัญลักษณ์หยุดhเช่น 2 h 1 -1 ตัวชี้คำสั่งเริ่มต้นด้วยการชี้ไปที่เซลล์แรก: 2 h 1 -1 ^ ในทุกขั้นตอนตัวชี้คำสั่งจะเลื่อนไปข้างหน้าตามหมายเลขที่มันชี้ไปแล้วลบล้างจำนวนนั้น ดังนั้นหลังจากหนึ่งขั้นตอนมันจะเคลื่อนที่ไปข้างหน้า2เซลล์และเปลี่ยน2เป็น-2: -2 h 1 -1 ^ เครื่อง Foo ทำเช่นนี้ต่อไปจนกระทั่งตัวชี้คำสั่งชี้ไปที่สัญลักษณ์หยุด ( h) ดังนั้นนี่คือการดำเนินการเต็มรูปแบบของโปรแกรมนี้: 2 h 1 -1 ^ -2 h 1 -1 ^ -2 h -1 -1 ^ -2 h -1 1 ^ -2 …

1
ทำให้ฉันสับสนเพื่อแก้ไขปัญหาการหยุดชะงัก
โปรดทราบ:โดยธรรมชาติแล้วข้อมูลจำเพาะสำหรับความท้าทายนี้ยากที่จะเข้าใจ มันอาจจะต้องมีหลักสูตรน้องใหม่อย่างน้อยในทฤษฎีการคำนวณหรือการอ่านพื้นหลังเทียบเท่า นอกจากนี้ความท้าทายนั้นค่อนข้างยาก การตอบมันจะต้องเขียนล่ามทั้งหมดสำหรับบางส่วนของภาษาที่คุณเลือกและไม่เพียงแค่นั้น แต่ล่ามจะต้องอยู่ในรูปแบบของบางอย่างเช่นควินิน หากคำตอบของคุณไม่ได้ทำทั้งหมดนี้ก็เกือบจะไม่เป็นไปตามข้อกำหนด คุณไม่จำเป็นต้องแก้ปัญหาการหยุดพัก (แม้แต่บางส่วน) เพื่อแก้ปัญหานี้ อย่างไรก็ตามคุณเกือบจะต้องเขียนล่าม (ของภาษาที่คุณใช้, เขียนในภาษาเดียวกันกับที่แปล) แม้ว่ามันจะไม่จำเป็นต้องมีคุณสมบัติที่สมบูรณ์ นี่คือสิ่งที่ทำให้สิ่งนี้เป็นความท้าทายที่น่าสนใจ ฉันสัญญาว่าจะได้รับรางวัลเงินรางวัล 500 ชี้ไปที่คำตอบแรกที่ตรงกับสเป็คและนี้จะได้รับการตอบ BF โจของพระบาทสมเด็จพระเจ้าอยู่หัว ความท้าทาย เวอร์ชันที่เรียบง่ายและเรียบง่ายของการพิสูจน์ของอลันทัวริงเรื่องความไม่สามารถแก้ปัญหาการหยุดชะงักได้มีดังนี้: สมมติว่าฉันได้เขียนโปรแกรมFที่มีไว้เพื่อแก้ปัญหาโปรแกรมหยุดทำงาน นั่นคือFใช้ซอร์สโค้ดของโปรแกรมอื่นเป็นอินพุตและF(G)ควรส่งคืน1ถ้าGหยุดและ0อย่างอื่น แต่ถ้าฉันให้โปรแกรมของฉันแก่คุณคุณFก็สามารถสร้างโปรแกรมอื่นHได้นั่นคือการรันโปรแกรมของฉันด้วยHการป้อนข้อมูลของมัน หากF(H)ผลตอบแทน0นั้นHกลับ0มา แต่อย่างอื่นมันจงใจเข้าไปในวงไม่สิ้นสุด สิ่งนี้นำไปสู่ความขัดแย้งและเราต้องสรุปว่าFไม่สามารถแก้ปัญหาการหยุดชะงักได้ งานของคุณคือการเขียนโปรแกรมHแต่ด้วยการบิด: ฉันจะไม่ให้โปรแกรมของฉัน แต่โปรแกรมของคุณจะได้รับซอร์สโค้ดของโปรแกรมเป็นอินพุต นั่นคือ: โปรแกรมของคุณจะได้รับโปรแกรมของฉันเป็นอินพุตในรูปแบบซอร์สโค้ด (เช่นเป็นไฟล์หรืออินพุตบรรทัดคำสั่งรายละเอียดขึ้นอยู่กับคุณ) โปรแกรมของฉันจะเขียนเป็นภาษาเดียวกับโปรแกรมของคุณและยังป้อนข้อมูลในรูปแบบของสตริงซอร์สโค้ด หากโปรแกรมของฉันกลับมา0เมื่อให้โปรแกรมของคุณเป็นอินพุตโปรแกรมของคุณควรหยุด (และกลับมา0) เมื่อให้โปรแกรมของฉันเป็นอินพุต (ความหมายที่แท้จริงของ "การรักษา0" ขึ้นอยู่กับคุณ) หากโปรแกรมของฉันไม่หยุดทำงานหรือหากโปรแกรมส่งคืนสิ่งอื่นนอกเหนือจาก0เมื่อให้โปรแกรมของคุณเป็นอินพุตโปรแกรมของคุณควรทำงานต่อไปเรื่อย ๆ การบิดคือการทำให้ยากขึ้นจริงๆคุณต้องทำตามกฎต่อไปนี้: คุณไม่สามารถใช้ฟังก์ชันในตัวexecหรือevalชนิดใดก็ได้ คุณไม่สามารถใช้วิธี "โกง" เพื่อรับซอร์สโค้ดของโปรแกรมของคุณเอง (เช่นคุณไม่สามารถพูดว่า "บันทึกสิ่งนี้ในไฟล์ชื่อ 'โปรแกรม'" …

11
แก้ไขปัญหาการหยุดชะงักของ Befinge
ให้มีกำหนดที่เรียบง่ายภาษา 2D ซึ่งเราจะให้ชื่อเดิมอย่างไม่น่าเชื่อbefinge Befinge มี 5 คำแนะนำ: <>^vเช่นเดียวกับใน esolangs 2D ส่วนใหญ่ให้เปลี่ยนเส้นทางตัวชี้คำสั่งในทิศทางที่เกี่ยวข้อง . เป็น no-op ตัวชี้คำสั่งเริ่มต้นที่มุมบนซ้ายไปทางขวา หากตัวชี้คำแนะนำเข้าใกล้ขอบโปรแกรมจะหยุด ทุกโปรแกรมของ Befinge จะหยุดหรือเข้าสู่วงวนไม่สิ้นสุดซึ่งไม่ทำอะไรเลย นี่คือสองตัวอย่าง: ลังเล: >.v ..< แบบไม่ลังเล: >....v ..v..< ..>v.. ^..<.. ปัญหาการหยุดชะงักไม่สามารถแก้ไขได้สำหรับภาษาทัวริงที่สมบูรณ์ แต่สำหรับภาษานี้ งานของคุณคือการเขียนโปรแกรม (หรือฟังก์ชั่น) ที่ใช้เป็นอินพุตสตริงที่แทนโปรแกรมbefingeและส่งกลับค่าความจริงหรือความเท็จขึ้นอยู่กับว่ามันจะหยุดหรือไม่ คุณสามารถสันนิษฐานได้ว่าการป้อนข้อมูลจะประกอบด้วยตัวละครเหล่านี้เท่านั้นและจะถูกเติมด้วยช่องว่างเพื่อสร้างสี่เหลี่ยมผืนผ้า คุณสามารถใช้ชุดอักขระห้าตัวสำหรับคำแนะนำ (เช่นadws ) กรณีทดสอบ ลังเล: . v> >^ ....v.... ....>...v .^..<.... .......v< .......v. ....^..<. v<>v>v^ >v^>^>v …

14
นี่เป็นตัวเลขสามเหลี่ยมที่ถูกตัดทอนหรือไม่?
ลำดับ OEIS ที่เกี่ยวข้อง: A008867 หมายเลขสามเหลี่ยมที่ถูกตัดทอน คุณสมบัติทั่วไปของตัวเลขสามเหลี่ยมคือพวกเขาสามารถจัดเรียงในรูปสามเหลี่ยม ตัวอย่างเช่นใช้ 21 และจัดเป็นสามเหลี่ยมของos: โอ อู OOO oooo ooooo oooooo ลองกำหนด "การตัดปลาย:" การตัดสามเหลี่ยมขนาดเดียวกันจากแต่ละมุม วิธีหนึ่งในการตัดทอน 21 มีดังนี้: . . . OOO oooo . ooo . . oo . (รูปสามเหลี่ยม.ถูกตัดจากต้นฉบับ) oเหลืออีก12 วินาทีดังนั้น 12 จึงเป็นเลขสามเหลี่ยมที่ถูกตัดทอน งาน งานของคุณคือการเขียนโปรแกรมหรือฟังก์ชั่น (หรือเทียบเท่า) ที่ใช้จำนวนเต็มและส่งกลับ (หรือใช้วิธีการส่งออกมาตรฐานใด ๆ ) ไม่ว่าจะเป็นตัวเลขเป็นจำนวนสามเหลี่ยมตัดทอน กฎระเบียบ ไม่มีช่องโหว่มาตรฐาน อินพุตเป็นจำนวนเต็มที่ไม่เป็นลบ การตัดไม่สามารถมีความยาวด้านเกินกว่าครึ่งหนึ่งของสามเหลี่ยมเดิม (เช่นการตัดไม่สามารถซ้อนทับกันได้) …
20 code-golf  math  decision-problem  number-theory  integer  code-golf  number  decision-problem  functional-programming  code-golf  array-manipulation  matrix  code-golf  string  classification  string  code-challenge  binary  compression  decode  code-golf  string  string  code-challenge  balanced-string  encode  code-golf  number-theory  integer  base-conversion  code-golf  math  number-theory  geometry  abstract-algebra  code-golf  array-manipulation  sorting  optimization  code-golf  math  geometry  image-processing  generation  code-golf  string  cops-and-robbers  repeated-transformation  grammars  cops-and-robbers  repeated-transformation  grammars  code-challenge  restricted-source  tips  source-layout  javascript  code-challenge  kolmogorov-complexity  restricted-source  code-golf  combinatorics  counting  math  fastest-code  linear-algebra  code-golf  math  permutations  matrix  linear-algebra  code-golf  string  decision-problem  restricted-source  code-golf  number  array-manipulation  subsequence  code-golf  number  array-manipulation  matrix  code-golf  brainfuck  code-golf  color  code-golf  quine  source-layout  code-golf  subsequence  code-golf  string  ascii-art  code-golf  string  ascii-art  alphabet  code-golf  decision-problem  interpreter  hexagonal-grid  halting-problem  code-golf  string  polynomials  calculus  code-golf  math  decision-problem  matrix  complex-numbers  code-golf  random  code-golf  number  arithmetic 

27
เขียนล่ามสำหรับ *
งานง่าย เขียนล่ามภาษาที่* นี่คือลิงก์ที่ใหญ่กว่าไปยังวิกิ มีโปรแกรม * ที่ใช้ได้เพียงสามโปรแกรมเท่านั้น: * พิมพ์ "Hello World" * พิมพ์ตัวเลขสุ่มระหว่าง 0 ถึง 2,147,483,647 *+* ทำงานตลอดไป กรณีที่สามจะต้องเป็นวงไม่สิ้นสุดตามข้อกำหนดใน คำถามนี้ การป้อนข้อมูล: อินพุตสามารถใช้วิธีการอินพุตที่ยอมรับได้โดยกฎ I / O มาตรฐานของเรา มันจะเป็นหนึ่งในโปรแกรมข้างต้น เอาท์พุท: กรณีแรกควรพิมพ์อย่างแน่นอนHello Worldโดยมีหรือไม่มีตัวแบ่งบรรทัดต่อท้าย สำหรับกรณีที่สองหากจำนวนเต็มสูงสุดของภาษาของคุณน้อยกว่า 2,147,483,647 ให้ใช้จำนวนเต็มสูงสุดของภาษาของคุณ เคสแรกและเคสที่สองสามารถพิมพ์ไปยังเอาต์พุตที่ยอมรับได้โดยกฎ I / O มาตรฐานของเรา กรณีที่สามไม่ควรให้ผลลัพธ์ใด ๆ เกณฑ์การให้คะแนน: เช่นนี้คือcode-golfคำตอบที่สั้นที่สุดเป็นไบต์ชนะ
20 code-golf  interpreter  code-golf  array-manipulation  sorting  code-golf  halting-problem  code-golf  javascript  code-golf  algorithm  code-golf  arithmetic  code-golf  math  counting  code-golf  math  code-golf  decision-problem  radiation-hardening  code-golf  conversion  bitwise  code-golf  number  decision-problem  code-golf  string  decision-problem  code-golf  random  game  code-golf  ascii-art  graphical-output  code-golf  decision-problem  binary-tree  tree-traversal  code-challenge  array-manipulation  code-challenge  graphical-output  path-finding  test-battery  algorithm  code-golf  integer  factorial  code-golf  binary-tree  code-golf  grid  graph-theory  code-golf  regular-expression  quine  code-golf  encoding  code-golf  king-of-the-hill  javascript 

2
ล่ามสำหรับทฤษฎีจำนวนโมดูโล n
ประโยคของทฤษฎีจำนวน (สำหรับวัตถุประสงค์ของเรา) เป็นลำดับของสัญลักษณ์ต่อไปนี้: 0และ'(ตัวตายตัวแทน) - ตัวตายตัวแทนหมายถึง+1ดังนั้น0'''' = 0 + 1 + 1 + 1 + 1 = 4 +(เพิ่มเติม) และ*(การคูณ) = (เท่ากับ) (และ)(วงเล็บ) ตัวดำเนินการเชิงตรรกะnand( a nand bคือnot (a and b)) forall (ปริมาณสากล) v0, v1, v2ฯลฯ (ตัวแปร) นี่คือตัวอย่างของประโยค: forall v1 (forall v2 (forall v3 (not (v1*v1*v1 + v2*v2*v2 = v3*v3*v3)))) นี่not …
12 code-golf  number-theory  parsing  code-golf  kolmogorov-complexity  code-golf  code-golf  array-manipulation  matrix  code-golf  array-manipulation  code-golf  string  code-challenge  graphical-output  compression  code-golf  kolmogorov-complexity  code-golf  sequence  array-manipulation  code-golf  number  base-conversion  code-golf  string  decision-problem  code-golf  string  ascii-art  code-golf  string  random  code-challenge  brainfuck  code-generation  code-golf  code-golf  quine  code-golf  interpreter  code-golf  interpreter  code-golf  array-manipulation  sorting  code-golf  halting-problem  code-golf  javascript  code-golf  algorithm  code-golf  arithmetic  code-golf  math  counting  code-golf  math  code-golf  decision-problem  radiation-hardening  code-golf  conversion  bitwise  code-golf  number  decision-problem  code-golf  string  decision-problem  code-golf  random  game  code-golf  ascii-art  graphical-output  code-golf  decision-problem  binary-tree  tree-traversal  code-challenge  array-manipulation  code-challenge  graphical-output  path-finding  test-battery  algorithm  code-golf  integer  factorial  code-golf  binary-tree  code-golf  grid  graph-theory  code-golf  regular-expression  quine  code-golf  encoding  code-golf  king-of-the-hill  javascript 

2
แก้ไขปัญหาการหยุดชะงักสำหรับ Modilar SNISP
ในจิตวิญญาณของการแก้ปัญหาลังเลสำหรับ Befingeให้มีกำหนดภาษาอื่นที่เรียกว่า 2D Modilar SNISP Modilar SNISP มีหกคำแนะนำต่อไปนี้: \ ชี้นำตัวชี้คำสั่งดังนี้: หากเข้าหาจากด้านบนไปทางขวา; ถ้าเดินจากทางขวาขึ้นไป; หากเข้าหาจากด้านล่างไปซ้าย; หากเข้าหาจากด้านซ้ายให้ลงไป / ชี้นำตัวชี้คำสั่งดังนี้: ถ้าเข้าหาจากด้านบนไปซ้าย; หากเข้าหาจากด้านซ้ายขึ้นไป; หากเข้าหาจากด้านล่างไปทางขวา; หากเข้าหาจากด้านขวาให้ลงไป ! ข้ามคำแนะนำถัดไป @ ผลักตำแหน่ง IP และทิศทางไปยังสแตกการโทร #ดึงตำแหน่ง IP และทิศทางจาก call stack และเรียกคืนจากนั้นข้ามคำสั่งถัดไป หาก call stack ว่างเปล่าการดำเนินการจะหยุดลง . ไม่ทำอะไรเลย ตัวชี้คำสั่งเริ่มต้นที่มุมซ้ายบนไปทางขวา หากเคยออกจากสนามแข่งขันการประหารชีวิตจะหยุดลง Modilar SNISP ไม่สามารถมีประสิทธิภาพมากกว่าPDAได้เพราะแหล่งเดียวของที่เก็บข้อมูลที่ไม่ได้ จำกัด คือสแต็ก (call call) ที่มีตัวอักษรที่ จำกัด (คู่ของ …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.