ในหลักสูตรทฤษฎีการคำนวณของฉันปัญหามากมายของเราเกี่ยวข้องกับการใช้การเหนี่ยวนำที่ความยาวของสายป้อนเพื่อพิสูจน์งบเกี่ยวกับออโต้ จำกัด ฉันเข้าใจการอุปนัยทางคณิตศาสตร์ แต่เมื่อสายเข้ามาในการเล่นฉันได้รับจริงเพิ่มขึ้น ฉันซาบซึ้งจริง ๆ ถ้ามีคนจะผ่านขั้นตอนการทำเช่นขั้นตอนการพิสูจน์โดยขั้นตอน
นี่คือตัวอย่างปัญหา (แบบฝึกหัด 2.2.10 จาก Hopcroft และ Ullman รุ่นที่ 3):
พิจารณา DFA ด้วยตารางการเปลี่ยนแปลงต่อไปนี้:
0 1 ________ -> A | AB * B | บริติชแอร์เวย์อธิบายภาษาที่ยอมรับโดย DFA นี้อย่างไม่เป็นทางการและพิสูจน์โดยอุปนัยเกี่ยวกับความยาวของสตริงป้อนเข้าที่คำอธิบายของคุณถูกต้อง
นี่เป็นปัญหาที่ได้รับคำตอบในหนังสือดังนั้นฉันไม่ได้มองหาคนที่จะทำการบ้าน ฉันแค่ต้องการคนที่จะอธิบายให้ฉันตรงๆ
คำตอบของหนังสือ: (นำมาจากที่นี่ )
หุ่นยนต์จะบอกว่าจำนวนของ 1 ที่เห็นคือเท่ากัน (state A) หรือคี่ (state B) ยอมรับในกรณีหลัง มันเป็นเรื่องง่ายที่จะเหนี่ยวนำให้กับ | w | เพื่อแสดงว่า dh (A, w) = A ถ้าหาก w มีจำนวนเท่ากับ 1 พื้นฐาน: | w | = 0 จากนั้น w สตริงที่ว่างเปล่ามีจำนวนเท่ากับ 1 คือศูนย์ 1 และ hat-hat (A, w) = A
การเหนี่ยวนำ: สมมติคำสั่งสำหรับสตริงที่สั้นกว่า จากนั้น w = za โดยที่ a คือ 0 หรือ 1
กรณีที่ 1: a = 0 หาก w มีจำนวนคู่เท่ากับ 1 ดังนั้น z จะเท่ากับ โดยสมมติฐานอุปนัย, hat-hat (A, z) = A. การเปลี่ยนผ่านของ DFA บอกให้เราทราบ hat-hat (A, w) = A. หาก w มีจำนวนคี่เป็น 1 ดังนั้น z จึงเป็นเช่นนั้น โดยสมมติฐานอุปนัย hat-hat (A, z) = B และการเปลี่ยนผ่านของ DFA บอกเรา us-hat (A, w) = B ดังนั้นในกรณีนี้ hat-hat (A, w) = A ถ้าหาก w มีจำนวนเป็น 1
กรณีที่ 2: a = 1 ถ้า w มีเลขคู่เท่ากับ 1 ดังนั้น z มีเลขคี่เป็น 1 โดยสมมติฐานอุปนัย, δ-hat (A, z) = B การเปลี่ยนผ่านของ DFA บอกให้เราทราบ hat-hat (A, w) = A หาก w มีจำนวนคี่เป็น 1 จากนั้น z จึงมีเลขคู่ 1 โดยสมมติฐานอุปนัย hat-hat (A, z) = A และการเปลี่ยนผ่านของ DFA บอกเรา us-hat (A, w) = B ดังนั้นในกรณีนี้เช่นกันδ-hat (A, w ) = A ถ้าหาก w มีจำนวนเท่ากับ 1
ฉันเข้าใจวิธีพิสูจน์สิ่งต่าง ๆ เช่นโดยใช้การเหนี่ยวนำ ฉันแค่สับสนว่ามันทำงานอย่างไรกับการสร้างสาย ฉันสับสนโดยชิ้นส่วนที่เป็นตัวหนา ฉันไม่เข้าใจว่าพวกเขาเกิดขึ้นได้อย่างไร / มันพิสูจน์ได้จริงว่าอะไรที่ได้รับการยอมรับ / การเหนี่ยวนำนั้นเป็นอย่างไร
hat-hat เป็นฟังก์ชั่นการเปลี่ยนแปลงแบบขยายโดยวิธีการ