คำถามนี้เกี่ยวกับว่ามีใครรู้ว่าทัวริง tarpits ที่ "ย้อนกลับ" หมายถึงในความหมายของAxelsen และGlückและ "tarpit" เป็นแนวคิดที่ไม่เป็นทางการมากขึ้น (และอาจไม่ใช่คำที่ดีมาก), แต่ฉันจะทำให้ดีที่สุดเพื่ออธิบายความหมายของมัน
สิ่งที่ฉันหมายถึงโดย "tarpit"
การคำนวณบางรุ่นได้รับการออกแบบให้มีประโยชน์ในทางใดทางหนึ่ง คนอื่น ๆ เพิ่งจะเป็นทัวริงที่สมบูรณ์และไม่มีคุณสมบัติที่เป็นประโยชน์อย่างยิ่ง สิ่งเหล่านี้เรียกว่า "ทัวริง tarpits" ตัวอย่างเช่นภาษาBrainfuck , หุ่นยนต์อัตโนมัติของกฎข้อที่ 110และภาษาBitwise Cyclic Tag (ซึ่งฉันชอบเพราะมันใช้งานง่ายมากและสตริงไบนารีใด ๆ เป็นโปรแกรมที่ถูกต้อง)
ไม่มีคำจำกัดความอย่างเป็นทางการของ "ทัวริงทาร์ปิต" แต่สำหรับคำถามนี้ฉันใช้มันเพื่อหมายถึงระบบที่ค่อนข้างง่าย (ในแง่ของการมี "กฎ" จำนวนน้อย) ว่า "เพิ่งเกิดขึ้น" จะทำให้ทัวริงสมบูรณ์ สถานะภายในของมันมีความหมายที่ชัดเจนใด ๆ สิ่งที่สำคัญที่สุดสำหรับวัตถุประสงค์ของฉันคือความเรียบง่ายของกฎมากกว่าการขาดความหมายที่ชัดเจน โดยพื้นฐานแล้วเรากำลังพูดถึงสิ่งต่าง ๆ ที่สตีเฟ่นวูล์ฟรามเคยเขียนหนังสือเล่มใหญ่ถึงแม้ว่าเขาจะไม่ได้ใช้คำว่า "tarpit"
สิ่งที่ฉันหมายถึงโดย "ย้อนกลับ"
ฉันสนใจการคำนวณย้อนกลับ โดยเฉพาะอย่างยิ่งฉันสนใจในภาษาที่สมบูรณ์ r-ทัวริงในแง่ของAxelsen และGlückซึ่งหมายความว่าพวกเขาสามารถคำนวณทุกฟังก์ชั่นการคำนวณที่คำนวณได้และสามารถคำนวณฟังก์ชั่นการฉีดได้เท่านั้น ขณะนี้มีหลายรูปแบบของการคำนวณที่มีกลับได้ในความรู้สึกนี้เช่นเครื่อง Axelsen ของพลิกกลับสากลทัวริงหรือภาษาระดับสูงพลิกกลับJanus (มีตัวอย่างอื่น ๆ อีกมากมายในวรรณคดีมันเป็นพื้นที่ของการวิจัย)
ควรสังเกตว่านิยามของ Axelsen และGlückเกี่ยวกับความสมบูรณ์ของ r-Turing เป็นวิธีที่แตกต่างในการคำนวณแบบย้อนกลับได้มากกว่าวิธีปกติเนื่องจาก Bennett ในแนวทางของเบนเน็ตต์ระบบอนุญาตให้ผลิต "ข้อมูลขยะ" ที่ถูกโยนทิ้งไปเมื่อสิ้นสุดการคำนวณ ภายใต้เงื่อนไขดังกล่าวระบบที่สามารถย้อนกลับได้อาจทัวริงสมบูรณ์ อย่างไรก็ตามในแนวทางของ Axelsen และGlückระบบไม่ได้รับอนุญาตให้สร้าง "ข้อมูลขยะ" เช่นนั้นซึ่ง จำกัด คลาสของปัญหาที่สามารถคำนวณได้ (ดังนั้น "r-Turing complete" แทนที่จะเป็น "Turing complete")
หมายเหตุ: กระดาษ Axelsen และGlückอยู่ด้านหลัง paywall นี่เป็นเรื่องโชคร้ายสำหรับความรู้ของฉันในปัจจุบันไม่มีทรัพยากรที่ไม่ได้รับการชำระในเรื่องของความสมบูรณ์ r-Turing ฉันจะพยายามเริ่มต้นหน้า Wikipedia ถ้าฉันมีเวลา แต่ไม่มีสัญญา
สิ่งที่ฉันกำลังมองหา
ตัวอย่างของการคำนวณแบบย้อนกลับที่กล่าวถึงข้างต้นล้วน แต่เป็น "ภาระทางความหมาย" นี่เป็นสิ่งที่ดีในบริบทส่วนใหญ่ แต่หมายความว่ากฎที่จำเป็นในการอัปเดตสถานะของพวกเขาในแต่ละขั้นตอนนั้นค่อนข้างซับซ้อน ฉันกำลังมองหา "tarpits" ของการคำนวณแบบย้อนกลับได้ นั่นคือระบบโดยพลการมากขึ้นหรือน้อยลงพร้อมกับกฎง่ายๆที่ "เพิ่งเกิดขึ้น" เพื่อเป็นภาษาที่สมบูรณ์ r-ทัวริง ฉันย้ำว่าไม่มีคำจำกัดความที่เป็นทางการของสิ่งที่ฉันกำลังมองหา แต่ฉันจะรู้ว่าเมื่อฉันเห็นมันและฉันคิดว่ามันเป็นสิ่งที่สมเหตุสมผลที่จะถามเกี่ยวกับ
มีหลายสิ่งที่ฉันรู้ว่าเกือบจะพอดีกับใบเรียกเก็บเงิน แต่ไม่มาก มีออโตมาร์เซลลูลาร์ที่สามารถย้อนกลับได้หลายตัวที่แสดงว่าเป็นทัวริงสมบูรณ์ มดของ Langton (เครื่องทัวริงสองมิติที่มีฟังก์ชั่นการเปลี่ยนสถานะที่ค่อนข้างง่ายและกลับตัวได้ง่าย) ก็ยังมีทัวริงที่สมบูรณ์ตราบใดที่เงื่อนไขเริ่มต้นได้รับอนุญาตให้มีรูปแบบการทำซ้ำที่ไม่มีที่สิ้นสุด อย่างไรก็ตามด้วยระบบเหล่านี้จึงไม่สำคัญที่จะกำหนดการแมปจากสถานะของพวกเขาเป็น "เอาท์พุท" ในลักษณะที่ไม่มีข้อมูลขยะถูกทิ้งไป ฉันสนใจเป็นพิเศษในระบบที่สามารถคิดได้ว่าเป็นอินพุททำการแสดงลำดับของการแปลง (ย้อนกลับ) บางส่วนจากนั้น (ถ้าพวกมันยุติ) จะคืนค่าเอาต์พุตบางอย่าง
(ฉันหวังว่าคำถามนี้จะตอบได้ง่ายกว่าคำถามที่เกี่ยวข้องก่อนหน้าของฉันเกี่ยวกับสิ่งที่ตรงกันข้ามกับแคลคูลัสแลมบ์ดา)