عدم المساواة كرافت-ماكميلان

في نظرية الترميز ، تُقدّم متباينة كرافت-ماكميلان شرطًا ضروريًا وكافيًا لوجود رمز بادئة [ 1 ] (بصيغة ليون ج. كرافت) أو رمز قابل للفك بشكل فريد ( بصيغة بروكواي ماكميلان ) لمجموعة معينة من أطوال كلمات الترميز. وتُستخدم تطبيقاتها على رموز البادئة والأشجار بكثرة في علوم الحاسوب ونظرية المعلومات . ويمكن أن يحتوي رمز البادئة على عدد محدود أو عدد لا نهائي من كلمات الترميز.

نُشرت متباينة كرافت في بحث كرافت (1949) . مع ذلك، اقتصر بحث كرافت على مناقشة رموز البادئة، ونسب التحليل المؤدي إلى المتباينة إلى ريموند ريدهافر . وقد اكتُشفت النتيجة بشكل مستقل في بحث ماكميلان (1956) . أثبت ماكميلان النتيجة للحالة العامة للرموز القابلة للفك بشكل فريد، ونسب النسخة الخاصة برموز البادئة إلى ملاحظة شفهية أدلى بها جوزيف ليو دوب عام 1955 .

التطبيقات والحدس

تحدد متباينة كرافت أطوال الكلمات المشفرة في رمز البادئة : إذا أخذنا دالة أسية لطول كل كلمة مشفرة صالحة، فإن مجموعة القيم الناتجة يجب أن تبدو كدالة كتلة احتمالية ، أي أن يكون مجموع قياسها أقل من أو يساوي واحدًا. يمكن تصور متباينة كرافت من منظور ميزانية محدودة تُنفق على الكلمات المشفرة، حيث تكون الكلمات الأقصر أكثر تكلفة. من بين الخصائص المفيدة المترتبة على هذه المتباينة ما يلي:

  • إذا كانت متباينة كرافت صحيحة مع المتباينة الصارمة، فإن الكود يحتوي على بعض التكرار .
  • إذا تحققت متباينة كرافت مع المساواة، فإن الشفرة المعنية هي شفرة كاملة. [ 2 ]
  • إذا لم تتحقق متباينة كرافت، فإن الشفرة لا يمكن فك تشفيرها بشكل فريد .
  • لكل رمز قابل للفك بشكل فريد، يوجد رمز بادئة له نفس توزيع الطول.

بيان رسمي

ليكن كل رمز مصدر من الأبجدية

S={s1،s2،...،sن}{\displaystyle S=\{\,s_{1},s_{2},\ldots ,s_{n}\,\}}

يتم ترميزها إلى رمز قابل للفك بشكل فريد على أبجدية بحجمر{\displaystyle r}بأطوال الكلمات السرية

1،2،...،ن.{\displaystyle \ell _{1},\ell _{2},\ldots ,\ell _{n}.}

ثم

أنا=1نر-أنا1.{\displaystyle \sum _{i=1}^{n}r^{-\ell _{i}}\leqslant 1.}

وعلى العكس من ذلك، بالنسبة لمجموعة معينة من الأعداد الطبيعية1،2،...،ن{\displaystyle \ell _{1},\ell _{2},\ldots ,\ell _{n}}إذا تحققت المتباينة المذكورة أعلاه، فإنه يوجد رمز قابل للفك بشكل فريد على أبجدية بحجمر{\displaystyle r}مع أطوال كلمات المرور هذه.

مثال: الأشجار الثنائية

9 و 14 و 19 و 67 و 76 هي عقد أوراق على أعماق 3 و 3 و 3 و 3 و 2 على التوالي.

يمكن اعتبار أي شجرة ثنائية بمثابة تعريف لرمز بادئة لأوراق الشجرة . تنص متباينة كرافت على أن

أوراق2-عمق()1.{\displaystyle \sum _{\ell \in {\text{leaves}}}2^{-{\text{depth}}(\ell )}\leqslant 1.}

هنا، يُحسب المجموع على أوراق الشجرة، أي العقد التي ليس لها أبناء. العمق هو المسافة إلى العقدة الجذرية. في الشجرة على اليمين، يكون هذا المجموع

14+4(18)=341.{\displaystyle {\frac {1}{4}}+4\left({\frac {1}{8}}\right)={\frac {3}{4}}\leqslant 1.}

دليل

إثبات رموز البادئة

مثال على الشجرة الثنائية. تمثل العقد الحمراء شجرة بادئة. يوضح الشكل طريقة حساب عدد العقد الورقية المتفرعة في الشجرة الكاملة.

أولاً، دعونا نبين أن متباينة كرافت صحيحة كلما كان رمز لـS{\displaystyle S}هو رمز بادئة.

لنفترض أن12ن{\displaystyle \ell _{1}\leqslant \ell _{2}\leqslant \cdots \leqslant \ell _{n}}. يتركأ{\displaystyle A}كن كاملاًر{\displaystyle r}شجرة ذات عمقن{\displaystyle \ell _{n}}(وبالتالي، كل عقدة منأ{\displaystyle A}على مستوى<ن{\displaystyle <\ell _{n}}لديهر{\displaystyle r}الأطفال، بينما العقد في المستوىن{\displaystyle \ell _{n}}هي أوراق الشجر). كل كلمة بطولن{\displaystyle \ell \leqslant \ell _{n}}فوقر{\displaystyle r}يتوافق الأبجدية -ary مع عقدة في هذه الشجرة على عمق{\displaystyle \ell }. الأنا{\displaystyle i}الكلمة رقم في رمز البادئة تتوافق مع عقدةvأنا{\displaystyle v_{i}}؛ يتركأأنا{\displaystyle A_{i}}لتكن مجموعة جميع العقد الطرفية (أي العقد الموجودة على عمقن{\displaystyle \ell _{n}}) في الشجرة الفرعية لـأ{\displaystyle A}متجذرة فيvأنا{\displaystyle v_{i}}. ذلك الفرع ذو الارتفاعن-أنا{\displaystyle \ell _{n}-\ell _{i}}لدينا

|أأنا|=رن-أنا.{\displaystyle |A_{i}|=r^{\ell _{n}-\ell _{i}}.}

بما أن الرمز هو رمز بادئة، فلا يمكن لتلك الأشجار الفرعية أن تشترك في أي أوراق، مما يعني أن

أأناأج=،أناج.{\displaystyle A_{i}\cap A_{j}=\varnothing ,\quad i\neq j.}

وبالتالي، بالنظر إلى أن العدد الإجمالي للعقد عند العمقن{\displaystyle \ell _{n}}يكونرن{\displaystyle r^{\ell _{n}}}لدينا

|أنا=1نأأنا|=أنا=1ن|أأنا|=أنا=1نرن-أنارن{\displaystyle \left|\bigcup _{i=1}^{n}A_{i}\right|=\sum _{i=1}^{n}|A_{i}|=\sum _{i=1}^{n}r^{\ell _{n}-\ell _{i}}\leqslant r^{\ell _{n}}}

ومن ثمّ تترتب النتيجة.

وعلى العكس من ذلك، بالنظر إلى أي تسلسل مرتب منن{\displaystyle n}الأعداد الطبيعية،

12ن{\displaystyle \ell _{1}\leqslant \ell _{2}\leqslant \cdots \leqslant \ell _{n}}

بتحقيق متباينة كرافت، يمكن للمرء إنشاء رمز بادئة بأطوال كلمات رمزية متساوية لكل منهاأنا{\displaystyle \ell _{i}}عن طريق اختيار كلمة طويلةأنا{\displaystyle \ell _{i}}بشكل تعسفي، ثم استبعاد جميع الكلمات الأطول التي تبدأ بها. ومرة ​​أخرى، سنفسر هذا من حيث العقد الطرفية لـر{\displaystyle r}شجرة ذات عمقن{\displaystyle \ell _{n}}اختر أولاً أي عقدة من الشجرة الكاملة عند العمق1{\displaystyle \ell _{1}}إنها تُطابق الكلمة الأولى في رمزنا الجديد. وبما أننا نبني رمزًا بادئًا، فإن جميع الكلمات الفرعية لهذه العقدة (أي جميع الكلمات التي تبدأ بهذه الكلمة كبادئة) تصبح غير مناسبة للإدراج في الرمز. ندرس الكلمات الفرعية على عمق معين.ن{\displaystyle \ell _{n}}(أي، العقد الطرفية بين الفروع)؛ هناك رن-1{\displaystyle r^{\ell _{n}-\ell _{1}}}يتم استبعاد هذه العقد الفرعية من الاعتبار. في التكرار التالي، يتم اختيار عقدة (باقية) على عمق معين.2{\displaystyle \ell _{2}}ويزيلرن-2{\displaystyle r^{\ell _{n}-\ell _{2}}}ثم المزيد من العقد الورقية، وهكذا. بعد ذلكن{\displaystyle n}بعد عدة تكرارات، قمنا بإزالة ما مجموعه

أنا=1نرن-أنا{\displaystyle \sum _{i=1}^{n}r^{\ell _{n}-\ell _{i}}}

العقد. السؤال هو ما إذا كنا بحاجة إلى إزالة عدد من العقد الطرفية يفوق العدد المتاح لدينا فعلياً .رن{\displaystyle r^{\ell _{n}}}بالمجمل ، في عملية بناء الكود. وبما أن متباينة كرافت صحيحة، فقد حققنا بالفعل

أنا=1نرن-أنارن{\displaystyle \sum _{i=1}^{n}r^{\ell _{n}-\ell _{i}}\leqslant r^{\ell _{n}}}

وبالتالي يمكن إنشاء رمز بادئة. تجدر الإشارة إلى أنه نظرًا لأن اختيار العقد في كل خطوة هو اختياري إلى حد كبير، فإنه يمكن إنشاء العديد من رموز البادئة المناسبة المختلفة، بشكل عام.

إثبات الحالة العامة

سنثبت الآن أن متباينة كرافت صحيحة كلماS{\displaystyle S}هو رمز قابل للفك بشكل فريد. (لا حاجة لإثبات العكس، فقد أثبتناه بالفعل لرموز البادئة، وهو ادعاء أقوى). البرهان من إعداد جاك آي. كاروش. [ 3 ] [ 4 ]

يكفينا إثبات ذلك عندما يكون عدد الكلمات المشفرة محدودًا. أما إذا كان عددها لانهائيًا، فإن أي مجموعة جزئية محدودة منها قابلة للفك بشكل فريد، وبالتالي تحقق متباينة كرافت-ماكميلان. وبأخذ النهاية، نحصل على المتباينة للرمز الكامل.

دلج=أنا=1نر-لأنا{\displaystyle C=\sum _{i=1}^{n}r^{-l_{i}}}تتمثل فكرة البرهان في الحصول على حد أعلى لـجم{\displaystyle C^{m}}لمشمال{\displaystyle m\in \mathbb {N} }وأظهر أن ذلك لا يمكن أن يكون صحيحًا إلا لجميعم{\displaystyle m}لوج1{\displaystyle C\leq 1}أعد كتابةجم{\displaystyle C^{m}}مثل

جم=(أنا=1نر-لأنا)م=أنا1=1نأنا2=1نأنام=1نر-(لأنا1+لأنا2++لأنام){\displaystyle {\begin{aligned}C^{m}&=\left(\sum _{i=1}^{n}r^{-l_{i}}\right)^{m}\\&=\sum _{i_{1}=1}^{n}\sum _{i_{2}=1}^{n}\cdots \sum _{i_{m}=1}^{n}r^{-\left(l_{i_{1}}+l_{i_{2}}+\cdots +l_{i_{m}}\right)}\\\end{aligned}}}

ضع في اعتبارك جميع القوى mSم{\displaystyle S^{m}}، في شكل كلماتsأنا1sأنا2...sأنام{\displaystyle s_{i_{1}}s_{i_{2}}\dots s_{i_{m}}}، أينأنا1،أنا2،...،أنام{\displaystyle i_{1},i_{2},\dots ,i_{m}}هي مؤشرات بين 1 ون{\displaystyle n}لاحظ أنه بما أن S يفترض أنها قابلة للفك بشكل فريد، sأنا1sأنا2...sأنام=sج1sج2...sجم{\displaystyle s_{i_{1}}s_{i_{2}}\dots s_{i_{m}}=s_{j_{1}}s_{j_{2}}\dots s_{j_{m}}}يشير إلىأنا1=ج1،أنا2=ج2،...،أنام=جم{\displaystyle i_{1}=j_{1},i_{2}=j_{2},\dots ,i_{m}=j_{m}}هذا يعني أن كل عنصر من عناصر المجموع يتوافق مع كلمة واحدة فقط فيSم{\displaystyle S^{m}}وهذا يسمح لنا بإعادة كتابة المعادلة إلى

جم==1ممأxqر-{\displaystyle C^{m}=\sum _{\ell =1}^{m\cdot \ell _{max}}q_{\ell }\,r^{-\ell }}

أينq{\displaystyle q_{\ell }}عدد الكلمات السرية فيSم{\displaystyle S^{m}}من الطول{\displaystyle \ell }ومأx{\displaystyle \ell _{max}}يمثل طول أطول كلمة رمزية فيS{\displaystyle S}لـر{\displaystyle r}الأبجدية - الحروف فقطر{\displaystyle r^{\ell }}الكلمات المحتملة ذات الطول{\displaystyle \ell }، لذاqر{\displaystyle q_{\ell }\leq r^{\ell }}باستخدام هذا، نحدد الحد الأعلىجم{\displaystyle C^{m}}:

جم==1ممأxqر-=1ممأxرر-=ممأx{\displaystyle {\begin{aligned}C^{m}&=\sum _{\ell =1}^{m\cdot \ell _{max}}q_{\ell }\,r^{-\ell }\\&\leq \sum _{\ell =1}^{m\cdot \ell _{max}}r^{\ell }\,r^{-\ell }=m\cdot \ell _{max}\end{aligned}}}

أخذم{\displaystyle m}الجذر رقم -th، نحصل على

ج=أنا=1نر-لأنا(ممأx)1م{\displaystyle C=\sum _{i=1}^{n}r^{-l_{i}}\leq \left(m\cdot \ell _{max}\right)^{\frac {1}{m}}}

ينطبق هذا الحد على أيمشمال{\displaystyle m\in \mathbb {N} }الطرف الأيمن يساوي 1 تقريبًا، لذاأنا=1نر-لأنا1{\displaystyle \sum _{i=1}^{n}r^{-l_{i}}\leq 1}يجب أن يتحقق الشرط (وإلا فإن عدم المساواة سيُكسر لقيمة كبيرة بما فيه الكفاية).م{\displaystyle m}).

صيغة بديلة للعكس

بالنظر إلى سلسلة منن{\displaystyle n}الأعداد الطبيعية،

12ن{\displaystyle \ell _{1}\leqslant \ell _{2}\leqslant \cdots \leqslant \ell _{n}}

بتحقيق متباينة كرافت، يمكننا إنشاء رمز بادئة على النحو التالي. نُعرّف الكلمة الرمزية رقم i ، C i ، بأنها الأولىأنا{\displaystyle \ell _{i}}الأرقام التي تلي الفاصلة العشرية (مثل الفاصلة العشرية) في التمثيل الأساسي r لـ

ج=1أنا-1ر-ج.{\displaystyle \sum _{j=1}^{i-1}r^{-\ell _{j}}.}

لاحظ أنه وفقًا لمتباينة كرافت، فإن هذا المجموع لا يتجاوز 1 أبدًا. وبالتالي، فإن الكلمات المشفرة تلتقط القيمة الكاملة للمجموع. لذلك، بالنسبة لـ j > i ، فإن الأولأنا{\displaystyle \ell _{i}}تشكل أرقام C j عددًا أكبر من C i ، لذا فإن الشفرة خالية من البادئات.

التعميمات

تم العثور على التعميم التالي في [ 5 ]

نظرية إذاج،د{\textstyle C,D}يمكن فك تشفيرها بشكل فريد، وكل كلمة رمزية فيج{\textstyle C}هو عبارة عن سلسلة من الكلمات المشفرة فيد{\textstyle D}، ثمججر-|ج|جدر-|ج|{\displaystyle \sum _{c\in C}r^{-|c|}\leq \sum _{c\in D}r^{-|c|}}

النظرية السابقة هي الحالة الخاصة عندماد={أ1،...،أر}{\displaystyle D=\{a_{1},\dots ,a_{r}\}}.

دليل

يتركسؤالج(x){\textstyle Q_{C}(x)}أن تكون الدالة المولدة للبرنامج. أي،سؤالج(x):=ججx|ج|{\displaystyle Q_{C}(x):=\sum _{c\in C}x^{|c|}}

بحسب حجة العد، فإنك{\textstyle k}المعامل رقم - منسؤالجن{\textstyle Q_{C}^{n}}هو عدد السلاسل ذات الطولن{\textstyle n}مع طول الكودك{\textstyle k}. إنه،سؤالجن(x)=ك0xك8(سلاسل من الطول ن مع جرموز ذات طول ك){\displaystyle Q_{C}^{n}(x)=\sum _{k\geq 0}x^{k}\#({\text{strings of length }}n{\text{ with }}C{\text{-codes of length }}k)}بصورة مماثلة، 11-سؤالج(x)=1+سؤالج(x)+سؤالج(x)2+=ك0xك8(سلاسل مع جرموز ذات طول ك){\displaystyle {\frac {1}{1-Q_{C}(x)}}=1+Q_{C}(x)+Q_{C}(x)^{2}+\cdots =\sum _{k\geq 0}x^{k}\#({\text{strings with }}C{\text{-codes of length }}k)}

بما أن الشفرة قابلة للفك بشكل فريد، فإن أي قوة منسؤالج{\textstyle Q_{C}}محصورة تمامًا بـر|x|+ر2|x|2+=ر|x|1-ر|x|{\textstyle r|x|+r^{2}|x|^{2}+\cdots ={\frac {r|x|}{1-r|x|}}}لذلك كل واحد منسؤالج،سؤالج2،...{\textstyle Q_{C},Q_{C}^{2},\dots }و11-سؤالج(x){\textstyle {\frac {1}{1-Q_{C}(x)}}}تحليلي في القرص|x|<1/ر{\textstyle |x|<1/r}.

نزعم أن هذا ينطبق على الجميعx(0،1/ر){\textstyle x\in (0,1/r)}،سؤالجنسؤالدن+سؤالدن+1+{\displaystyle Q_{C}^{n}\leq Q_{D}^{n}+Q_{D}^{n+1}+\cdots }

الجانب الأيسر هوك0xك8(سلاسل من الطول ن مع جرموز ذات طول ك){\displaystyle \sum _{k\geq 0}x^{k}\#({\text{strings of length }}n{\text{ with }}C{\text{-codes of length }}k)}والجانب الأيمن هو

ك0xك8(سلاسل من الطولن مع درموز ذات طول ك){\displaystyle \sum _{k\geq 0}x^{k}\#({\text{strings of length}}\geq n{\text{ with }}D{\text{-codes of length }}k)}

الآن، بما أن كل كلمة سرية فيج{\textstyle C}هو عبارة عن سلسلة من الكلمات المشفرة فيد{\textstyle D}، ود{\textstyle D}يمكن فك تشفيرها بشكل فريد، كل سلسلة بطولن{\textstyle n}معج{\textstyle C}-شفرةج1...جن{\textstyle c_{1}\dots c_{n}}من الطولك{\textstyle k}يتوافق مع سلسلة فريدةsج1...sجن{\textstyle s_{c_{1}}\dots s_{c_{n}}}لمند{\textstyle D}-code هوج1...جن{\textstyle c_{1}\dots c_{n}}يبلغ طول السلسلة على الأقلن{\textstyle n}.

لذلك، فإن المعاملات الموجودة على اليسار أقل من أو تساوي المعاملات الموجودة على اليمين.

وهكذا، بالنسبة للجميعx(0،1/ر){\textstyle x\in (0,1/r)}وكل شيءن=1،2،...{\textstyle n=1,2,\dots }لديناسؤالجسؤالد(1-سؤالد)1/ن{\displaystyle Q_{C}\leq {\frac {Q_{D}}{(1-Q_{D})^{1/n}}}}أخذن{\textstyle n\to \infty }لدينا حد أقصىسؤالج(x)سؤالد(x){\textstyle Q_{C}(x)\leq Q_{D}(x)}للجميعx(0،1/ر){\textstyle x\in (0,1/r)}.

منذسؤالج(1/ر){\textstyle Q_{C}(1/r)}وسؤالد(1/ر){\textstyle Q_{D}(1/r)}إذا تقارب كلاهما، فسنحصل علىسؤالج(1/ر)سؤالد(1/ر){\textstyle Q_{C}(1/r)\leq Q_{D}(1/r)}عن طريق أخذ النهاية وتطبيق نظرية أبيل .

يوجد تعميم للرمز الكمي . [ 6 ]

ملحوظات

  1. كوفير، توماس م.؛ توماس، جوي أ. (2006)، "ضغط البيانات"، عناصر نظرية المعلومات (  الطبعة الثانية)، جون وايلي وأولاده، ص 108-109 ، doi : 10.1002/047174882X.ch5 ، ISBN  978-0-471-24195-9
  2. دي روي، ستيفن؛ غرونوالد، بيتر د. (2011)، "الحظ والندم في الاستدلال على الحد الأدنى لطول الوصف"، فلسفة الإحصاء ( الطبعة الأولى)، إلسيفير، ص 875، ISBN   978-0-080-93096-1
  3. كاروش، ج. (أبريل 1961). "برهان بسيط لمتباينة ماكميلان (مراسلات)". معاملات IEEE في نظرية المعلومات . 7 (2): 118. doi : 10.1109/TIT.1961.1057625 . ISSN 0018-9448 . 
  4. كوفير، توماس م.؛ توماس، جوي أ. (2006). عناصر نظرية المعلومات ( الطبعة الثانية). هوبوكين، نيوجيرسي: وايلي-إنترساينس. ISBN  978-0-471-24195-9.
  5. فولديس، ستيفان (2008-06-21). "حول نظرية ماكميلان المتعلقة بالرموز القابلة للفك بشكل فريد". arXiv : 0806.3277 [ math.CO ].
  6. شوماخر، بنيامين؛ ويستمورلاند، مايكل د. (10-09-2001). "الترميز الكمي غير المحدد الطول" . مجلة Physical Review A. 64 ( 4) 042304. arXiv : quant-ph/0011014 . Bibcode : 2001PhRvA..64d2304S . doi : 10.1103/PhysRevA.64.042304 . S2CID 53488312 . 

مراجع

  • ماكميلان، بروكواي (1956)، "متباينتان ضمنيتان من خلال قابلية فك التشفير الفريدة"، معاملات IEEE لنظرية المعلومات ، 2 (4): 115-116 ، doi : 10.1109/TIT.1956.1056818.

انظر أيضاً