4
โปรแกรมให้เหตุผลเกี่ยวกับซอร์สโค้ดของตัวเอง
แรงบันดาลใจสำหรับคำถามนี้คือคำถามต่อไปนี้ (คลุมเครือ): อะไรคือภาษาการเขียนโปรแกรม / รากฐานที่เป็นตรรกะสำหรับการมี AI ซึ่งอาจมีเหตุผลเกี่ยวกับรหัสที่มาของตัวเองและแก้ไขได้หรือไม่ นี่ไม่ใช่ทั้งหมดที่เข้มงวดดังนั้นนี่คือความพยายามของฉันที่จะดึงคำถามที่เป็นรูปธรรมออกมา มีสองสิ่งที่ฉันสนใจ: (A) ภาษาการเขียนโปรแกรม P ที่สามารถเป็นตัวแทนและจัดการโปรแกรมของตัวเองเป็นโปรแกรมประเภทข้อมูล (เช่น AST) (หากต้องการวัตถุชนิดโปรแกรมสามารถแปลงเป็นสตริงซึ่งเป็นข้อความของโปรแกรมที่ถูกต้องในภาษานั้นจะเป็นสิ่งที่ตรงกันข้ามกับสิ่งที่คอมไพเลอร์ทำ) (B) วิธีการให้เหตุผลเกี่ยวกับสิ่งที่โปรแกรมในภาษา P ทำ นี่คือสองระดับฉันคิดเกี่ยวกับมัน: ภาษาอื่น Q (พร้อมความสามารถในการพิสูจน์ทฤษฎี) ซึ่งเป็นแบบจำลองสิ่งที่โปรแกรม P ทำ ควรสามารถแสดงและพิสูจน์ข้อความเช่น "ผลลัพธ์ของการรันโปรแกรม p คือ foo" วิธีให้เหตุผลเกี่ยวกับสิ่งที่โปรแกรม p: โปรแกรมทำในภาษา P เอง (ดังนั้นเราจึงใช้ P = Q ด้านบน) ระดับนี้มีการดำเนินการในระดับใดหรือความก้าวหน้าในทิศทางนี้คืออะไร? อะไรคืออุปสรรคในทางปฏิบัติ ในแง่ของความตั้งใจดั้งเดิมของคำถามวิธีที่ดีที่สุดในการทำให้เป็นปัญหาคืออะไร? * * * * เป็นคำตอบที่แสดง …