เครื่องจักรนามธรรมคืออะไร?

เครื่องบทคัดย่อหรือที่เรียกว่าออโตมาตะเป็นองค์ประกอบของวิทยาศาสตร์คอมพิวเตอร์เชิงทฤษฎี เครื่องนามธรรมคล้ายกับฟังก์ชั่นในวิชาคณิตศาสตร์ ได้รับอินพุตและสร้างเอาต์พุตตามกฎที่ระบุ เครื่องนามธรรมแตกต่างจากเครื่องที่แท้จริงมากขึ้นเพราะพวกเขาคาดว่าจะทำงานได้อย่างสมบูรณ์และเป็นอิสระจากฮาร์ดแวร์ พวกเขาถูกแบ่งย่อยเป็นประเภทตามลักษณะเช่นวิธีการดำเนินการและประเภทของอินพุตที่พวกเขาสามารถรับได้

เมื่อจำแนกเครื่องที่เป็นนามธรรมหนึ่งในความแตกต่างที่ง่ายที่สุดเกี่ยวข้องกับจำนวนของการดำเนินการที่พวกเขาได้รับอนุญาตให้ดำเนินการ ณ จุดใดก็ตาม เครื่องนามธรรมเรียกว่า deterministic หากมีเพียงวิธีเดียวเท่านั้นที่จะดำเนินการต่อไป มันเป็น nondeterministic หากมีความเป็นไปได้หลายอย่างสำหรับเครื่องในสถานะที่เป็นไปได้อย่างน้อยหนึ่งสถานะ ออโตเมติก "pushdown" เป็นสิ่งที่มีความสามารถในการจัดการสแต็คของอินพุตแทนที่จะตอบสนองทีละอย่างตามลำดับที่ปรากฏ

Wolfram MathWorld ให้ตัวอย่างที่มีชื่อเสียงของเครื่องจักรนามธรรม หนึ่งในตัวอย่างเหล่านี้คือเกมแห่งชีวิตของคอนเวย์ซึ่งเป็นเครื่องนามธรรมที่กำหนดค่าได้เนื่องจากมีเพียงโครงร่างเดียวเท่านั้นที่สามารถโผล่ออกมาจากสิ่งอื่นได้ เกมนี้ใช้ตารางซึ่งแต่ละช่องหรือเซลล์สามารถมีสถานะ "ชีวิต" หรือ "ตาย" ได้ สถานะของกริดทั้งหมดถูกกำหนดบนพื้นฐานของสถานะก่อนหน้า หากเซลล์ที่มีชีวิตสัมผัสกับเซลล์ที่มีชีวิตอย่างอื่นสองหรือสามเซลล์มันจะยังคงอยู่ต่อไป หากมีหนึ่ง, สองหรือมากกว่าสามเพื่อนบ้าน (มากถึงแปดที่เป็นไปได้) มันจะตาย เซลล์ที่ตายแล้วที่มีเพื่อนบ้านสามคนจะมีชีวิตขึ้นมา มิฉะนั้นมันจะยังคงอยู่

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

เครื่องนามธรรมเหล่านี้สามารถตอบสนองวัตถุประสงค์มากมาย พวกเขาสามารถเป็นของเล่นเชิงทฤษฎีที่สนุกสนาน แต่พวกเขายังสามารถทำหน้าที่เป็นแบบจำลองสำหรับระบบคอมพิวเตอร์จริง เครื่องนามธรรมเป็นหัวใจสำคัญของวิทยาศาสตร์คอมพิวเตอร์ในฐานะสาขาวิชา