รหัสของคุณมีคุณสมบัติที่ถ้าคุณย้อนกลับ codewords ทั้งหมดแล้วคุณจะได้รับรหัสคำนำหน้า นี่หมายความว่ารหัสของคุณสามารถถอดรหัสได้โดยไม่ซ้ำกัน
จริง ๆ ให้พิจารณารหัสซึ่งมีถอดรหัสได้ไม่ซ้ำกัน ฉันอ้างว่าสามารถถอดรหัสได้โดยเฉพาะ นี่เป็นเพราะ
ในคำสลายตัวของเข้า codewords ของอยู่ในหนึ่งต่อหนึ่งการติดต่อกับการสลายตัวของเข้า codewords ของ R ตั้งแต่สมัยหลังนั้นมีความเป็นเอกลักษณ์C= x1, … , xnCR: = xR1, … , xRnC w = xผม1… xผมม. ถ้าหากว่า wR= xRผมม.… xRผม1.
WCWRCR
เนื่องจากรหัสคำนำหน้านั้นสามารถถอดรหัสได้โดยไม่ซ้ำใครจึงเป็นไปได้ว่าการย้อนกลับของรหัสคำนำหน้านั้นยังสามารถถอดรหัสได้โดยไม่ซ้ำกัน นี่เป็นกรณีในตัวอย่างของคุณ
ความไม่เท่าเทียมกันของ McMillan ระบุว่าถ้าสามารถถอดรหัสได้โดยเฉพาะแล้ว
กล่าวอีกอย่างหนึ่งคือรหัสที่ถอดรหัสไม่ซ้ำกันสอดคล้องกับความไม่เท่าเทียมของ Kraft ดังนั้นหากสิ่งที่คุณสนใจคือการลดความยาวรหัสที่คาดไว้ให้น้อยที่สุดก็ไม่มีเหตุผลที่จะดูเกินรหัสคำนำหน้าCΣi = 1n2- | xผม|≤ 1
Sam Roweis แสดงตัวอย่างที่ดีของสไลด์โค้ดที่ไม่เหมือนใครซึ่งไม่ใช่รหัสนำหน้าหรือย้อนกลับของรหัสนำหน้า:
เพื่อที่จะแสดงให้เห็นว่ารหัสนี้สามารถถอดรหัสได้โดยไม่ซ้ำกันมันพอเพียงที่จะแสดงวิธีการถอดรหัส codeword แรกของคำ หากคำเริ่มต้นด้วยแล้ว codeword แรกคือ110ถ้ามันเป็นของแบบฟอร์มแล้วมันต้องเป็นหรือ01มิฉะนั้นจะต้องมีคำนำหน้าของแบบฟอร์ม 0 ตอนนี้เราแยกแยะหลายกรณี:0 , 01 , 110
111001* * * *00101∗0
prefixcodeword00001001011000111001
อีกต่อไปไม่สามารถทำงานได้สามารถถอดรหัสได้ทั้งหมด1