3
เมื่อใดที่เราสามารถพูดได้ว่าสองโปรแกรมนั้นแตกต่างกัน
ไตรมาสที่ 1 เมื่อใดที่เราสามารถพูดได้ว่าสองโปรแกรม (เขียนด้วยภาษาโปรแกรมบางอย่างเช่น C ++) แตกต่างกันอย่างไร สุดขีดแรกคือการพูดว่าสองโปรแกรมเทียบเท่า iff พวกเขาเหมือนกัน สุดขีดอีกอันหนึ่งคือการพูดว่าโปรแกรมสองโปรแกรมนั้นมีค่าเทียบเท่าหากพวกเขาคำนวณฟังก์ชันเดียวกัน (หรือแสดงพฤติกรรมที่สังเกตได้เหมือนกันในสภาพแวดล้อมที่คล้ายกัน) แต่สิ่งเหล่านี้ไม่ดี: ไม่ใช่ทุกโปรแกรมที่ตรวจสอบสภาพดั้งเดิมเหมือนกัน เราสามารถเพิ่มบรรทัดของโค้ดโดยไม่มีผลกับผลลัพธ์และเราจะยังคงพิจารณาว่าเป็นโปรแกรมเดียวกัน ไตรมาสที่ 2 โปรแกรมและอัลกอริทึมเป็นวัตถุชนิดเดียวกันหรือไม่ ถ้าไม่คำจำกัดความของอัลกอริทึมคืออะไรและแตกต่างจากคำจำกัดความของโปรแกรมอย่างไร เมื่อใดที่เราสามารถบอกได้ว่าอัลกอริธึมทั้งสองนั้นเท่ากัน?