الگوریتم چندجمله‌ای
الگوریتم چندجمله‌ای ، در نظریه کدگذاری، کد چندجمله‌ای نوعی از کدهای خطی است که مجموعهٔ کد واژه‌های قابل قبول آن شامل آن دسته از چندجمله‌ای ها(معمولاً با طول ثابت)است که با یک چندجمله‌ای داده شده و ثابت (با طول ثابت به نام چندجمله‌ای مولد) قابل قسمت هستند.
عبارت چند جمله(GF(x ای را در نظر بگیرید که عناصر آن را ضرایب آن می‌گیریم. برای ساخت کدهای چندجمله‌ای، یک رشته از n ضریب a,a... ,a را با چندجمله‌ای زیر مشخص می‌کنیم:
ax+ax+... +a
اعداد صحیح و ثابت را در نظر بگیرید و فرض کنید که (g(x چندجمله‌ای ثابت از درجه‌ای m (به نام چندجمله‌ای مولد) باشد. کد چندجمله‌ای ای که با (g(x تولید می‌شود، کدی خواهد بود که کد واژه‌های آن قطعاً چندجمله‌ای‌هایی با درجهٔ کمتر از n بوده و بر (g(x بخش پذیر هستند(بدون باقی‌مانده).
در نظریه کدگذاری، کد چندجمله‌ای نوعی از کدهای خطی است که مجموعهٔ کد واژه‌های قابل قبول آن شامل آن دسته از چندجمله‌ای ها(معمولاً با طول ثابت)است که با یک چندجمله‌ای داده شده و ثابت (با طول ثابت به نام چندجمله‌ای مولد) قابل قسمت هستند.
عبارت چند جمله(GF(x ای را در نظر بگیرید که عناصر آن را ضرایب آن می‌گیریم. برای ساخت کدهای چندجمله‌ای، یک رشته از n ضریب a,a... ,a را با چندجمله‌ای زیر مشخص می‌کنیم:
ax+ax+... +a
اعداد صحیح و ثابت را در نظر بگیرید، و فرض کنید که(g(x چندجمله‌ای ثابت از درجه‌ای m (به نام چندجمله‌ای مولد) باشد. کد چندجمله‌ای ای که با (g(x تولید می‌شود، کدی خواهد بود که کد واژه‌های آن قطعاً چندجمله‌ای‌های با درجهٔ کمتر از n بوده و بر (g(x بخش پذیر هستند(بدون باقی‌مانده).
کد چندجمله‌ای روی {GF(2) = {0,1، باm=2,n=5 و چندجمله‌ای مولد g(x) = x2 + x + 1 را در نظر بگیرید.in کد شامل کد واژه‌های زیر است:
x+x+1, x+x+x, x+۱ ,۰,
x+x+x , x+x+x+1 , ,x+x,x+x+۱
به‌طور مشابه می‌توان کد واژه‌ها را به صورت رشته‌هایی از ارقام دودویی نمایش داد:
۰۰۰۰۰٬۰۰۱۱۱٬۰۱۱۱۰٬۰۱۰۰۱ ۱۱۱۰۰٬۱۱۰۱۱٬۱۰۰۱۰٬۱۰۱۰۱
توجه کنید که هر کد چندجمله‌ای خود یک کد خطی نیز هست. پس هر ترکیب خطی از کد واژه‌های ان نیز کد واژه خواهدبود.
در یک کد چندجمله‌ای روی(GF(q، با طول کد n و چندجمله‌ای مولد(q(x، دقیقاً formula_1 کد واژه وجود خواهد داشت. البته طبق تعریف(p(x یک کد واژه‌است اگر و فقط اگر formula_2، که در آن(q(x(خارج قسمت) از درجهٔ کمتر از formula_3 است. پس چون به تعداد formula_1 از این خارج قسمت‌ها وجود خواهد داشت، به همین تعداد نیز کد واژه‌های قابل قبول وجود دارد.
بازی از مولفان مانند(Lidl & Pilz, 1999) فقط تابدیلاتی formula_5 را به عنوان نسبت دادن داده واژه‌ها به کد واژه‌ها بر رسی می‌کنند. به هر حال بدی این روش این است که داده واژه به عنوان قسمتی از کد واژه ظاهر نمی‌شود.
برای مثال بالا باformula_6, formula_7 و چندجمله‌ای مولدformula_8، انتصاب زیر را از داده واژه‌ها به کد واژه‌ها به دست می‌آوریم:
یک پیغام حاوی خطا می‌تواند با یک کار بسیار سر راست شناسایی شود، به طوری که تقسیم چندجمله‌ای بر چندجمله‌ای مولد باقی‌ماندهٔ غیر صفر می‌دهد.
بااین فرض که کد واژه فاقد خطاست، یک کد اصولی را می‌توان به سادگی با برداشتن m رقم(مجموع مقابله‌ای) آن، رمز گشایی کرد.
اگر خطایی وجود داشته باشد، ابتدا قبل از رمز گشایی کار تصحیح خطا باید انجام شود. برای کدهای چندجمله‌ای خاص، مثل کدهای BCH، الگوریتم‌های مفیدی برای رمز گشایی وجود دارد.
مثل همهٔ کدهای دیجیتال، توانایی کدهای چندجمله‌ای در تشخیص و تصحیح خطا با حداقل فاصلهٔ همینگ آن کدتعیین می‌شود. از آنجایی که کدهای چندجمله‌ای نوعی کد خطی هستند، حد اقل فاصلهٔ همینگ آن‌ها برابر است باحداقل وزن(weight) کد واژه‌های غیر صفر آن.
کدهای چرخشی:هر کد چرخشی خود نیز یک کد چندجمله‌ای به شمار می‌رود, کد افزونگی چرخشی مثال معروفی از این دسته کدهااست.
کدهای BCH:خانواده‌ای از کدهای چرخشی با مقدار فاصلهٔ همینگ زیاد و الگوریتم‌های جبری تصحیح خطای بسیار مفید.
تصحیح خطای رید-سالامون:زیر مجموعهٔ بسیار مهمی از کدهای BHCبا ساختارهای بسیار ویژه و مفید.
تشخیص خطا در انتقال.
تصحیح خطا در انتقال.