ثبات تغییر بازخورد خطی
شیفت‌رِجیستر فیدبک‌دار خطی یا LFSR، شیفت‌رجیستری formula_1-بیتی است که ترکیب خطی برخی از بیت‌های آن، به عنوان ورودی، به آن بازخورد (فیدبک) می‌شود (شکل روبرو را ببینید).
کار LFSR با یک مقدار اولیۀ formula_1-بیتی غیرصفر آغاز می‌شود. این مقدار اولیه، دانه (Seed) یا حالت اولیه (Initial state) نام دارد. رشته‌بیت‌های تولیدشدۀ LFSR، به حالت (State) کنونی و ورودی شیفت‌رجیستر بستگی دارد. چون تعداد حالات ممکن شیفت‌رجیستر، محدود است، رشته‌بیت خروجی آن تکرار می‌شود.
با انتخاب سرهای (بیت‌های) مناسب که ترکیب خطی آن‌ها به ورودی شیفت‌رجیستر بازخورد (فیدبک) می‌شود، می‌توان رشته‌ای از بیت‌ها را تولید کرد که شبه تصادفی (Pseudorandom) و دارای دوره تکرار طولانی هستند. اینکه کدام بیت‌های شیفت‌رجیستر برای فیدبک انتخاب شوند را چندجمله‌ای متناظر LFSR تعیین می‌کند. هر LFSR، یک چندجمله‌ای متناظر دارد.
در یک LFSR با شیفت‌رجیستر formula_1-بیتی، حداکثر دورۀ تناوب رشته‌بیت تولیدشده، برابر formula_4 است. این مقدار به شرطی به‌دست می‌آید که چندجمله‌ای متناظر LFSR، اول (primitive) باشد. چندجمله‌ای اول، کاهش‌ناپذیر (irreducible) است، یعنی نمی‌توان آن‌را به عوامل اول تجزیه کرد. در این حالت، رشته‌بیت تولیدشده را «رشتۀ با طول بیشینه» (maximum-length sequence) یا به اختصار m-رشته (m-sequence) می‌گویند. m-رشته‌ها، خواص جالبی دارند؛ مثلاً اینکه تابع خودهمبستگی آن‌ها، شباهت زیادی به تابع خودهمبستگی نویز سفید دارد، و نیز اینکه، تعداد صفر و یک‌ها در آن‌ها، تقریباً برابر است. به این دو دلیل، آن‌ها شبه تصادفی هستند.
اصول عملکرد LFSRها، در مبحث میدان‌های محدود (Finite fields) در ریاضیات مطرح می‌شود. میدان‌های محدود را باformula_5 نشان می‌دهند، که formula_6، عددی اول و formula_1 عددی طبیعی است (در اینجا، طول شیفت‌رجیستر). اعضای formula_5، چندجمله‌ای‌هایی هستند که درجۀ آن‌ها، حداکثر برابر formula_1 است، و ضرائب آن‌ها از مجموعۀ formula_10 گرفته می‌شوند. چندجمله‌ای متناظر LFSR، در این میدان تعریف می‌شود. اگر formula_11 باشد، خروجی LFSR، یک رشته‌بیت (باینری) است.
نام دیگر میدان‌های محدود، میدان‌های گالوا (Galois fields) است؛ به افتخار ریاضی‌دان فرانسوی، اِواریست گالوا (Evariste Galois).
کاربردی از LFSR در تولید اعداد شبه تصادفی (تولید نویز سفید) است. در مهندسی برق (به ویژه مخابرات) و کامپیوتر از LFSRها استفاده می‌شود.
در یک LFSR، سرهای شیفت‌رجیستر که ترکیب خطی بیت‌های متناظر آن‌ها، به شیفت‌رجیستر فیدبک می‌شود، تَپ (tap) نام دارند. مثلاً در شکل روبرو، این تپ‌ها [۱۶٬۱۴٬۱۳٬۱۱] هستند.
بنابراین، چندجمله‌ای متناظر LFSR در این مثال چنین است:
formula_12
که یک چندجمله‌ای اول (primitive) دودویی (باینری) است، به این معنی که ضرائب چندجمله‌ای، صفر یا یک هستند. بیت‌های متناظر با این تپ‌ها، با هم XOR (یای انحصاری) شده، و حاصل وارد شیفت‌رجیستر می‌شود (فیدبک می‌شود). بیت شانزدهم، خروجی LFSR نیز هست.
دورۀ تناوب رشته‌بیت تولیدشده این LFSR، formula_13است.
مثالی از کد به زبان C برای تولید این LFSR چنین است؛
uint16_t lfsr = 0xACE1u; unsigned bit; unsigned period = ۰; do { } while(lfsr!= 0xACE1u);
مقدار (حالت) اولیۀ این LFSR، عدد formula_14است که در مبنای شانزده نوشته شده‌است.
LFSR گالوا، ساختار دیگری برای پیاده‌سازی LFSRها است (شکل روبرو).
نمونه کد به زبان C برای پیاده‌سازی یک LFSR گالوا با یک شیفت‌رجیستر 32-بیتی در زیر آمده است:
uint32_t lfsr = ۱; unsigned period = ۰;
do { } while(lfsr!= 1u);
و کد نمونه ۱۶ بیتی در شکل، چنین است:
uint16_t lfsr = 0xACE1u; unsigned period = ۰;
do { } while(lfsr!= 0xACE1u);
uint16_t lfsr = 0xACE1u; unsigned period = ۰;
do { } while(lfsr!= 0xACE1u);
اگر formula_15 باشد، رشتۀ خروجی LFSR، از اعداد مجموعۀ formula_16 تشکیل می‌شود. در حالت خاص formula_17، خروجی LFSR، رشته‌ای از بیت‌هاست.
اینجا، برخی از چندجمله‌ای‌های اول دارای طول ماکسیمم (m-رشته) برای formula_18 لیست شده‌اند.