Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Торгашев В.А. Система остаточных классов и надежность ЦВМ

.pdf
Скачиваний:
6
Добавлен:
23.10.2023
Размер:
5.18 Mб
Скачать

С другой стороны, рассмотрим множество L, содержащее L целых чисел А, таких, что если какие-либо два числа А\ и Л2 при­ надлежат множеству L, то и любое целое число, лежащее между

А] и А2 , также принадлежит этому

множеству. Будем считать, что

в состав множества L обязательно входит нуль.

Как было показано в предыдущей главе, любое число из мно­

жества L можно представить в системе остаточных классов с об­

щим

основанием М=[р\, .... рт ],

если Ь ^.М . Каждому числу

A £ L ,

представленному в данной СОК, можно поставить в соответ­

ствие некоторый вектор Ж£Р, но обратное утверждение справедли­ во лишь в том случае, если M =L=P. При соблюдении этого усло­ вия будем говорить о б е з ы з б ы т о ч н о м представлении чисел в СОК.

Очевидно, что если основания системы остаточных классов не являются взаимно простыми, то представление чисел в такой СОК всегда избыточно, поскольку М < Р .

Для системы со взаимно простыми основаниями М=Р, и по­ этому вопрос об избыточности представления чисел зависит от со­ отношения между L и М. Степенью избыточности представления чисел в СОК назовем величину R = P/L. Избыточность представле­ ния чисел в СОК можно использовать для обнаружения и исправ­ ления ошибок, возникающих в процессе хранения, передачи пли пре­ образования информации.

Корректирующим кодом в системе остаточных классов назовем подмножество К множества Р, состоящее из L различных векторов

Ä, каждому из которых

соответствует одно

и

только

одно число

L. Поскольку множества К и L содержат одинаковое число эле­

ментов, каждому числу

А £ Ь соответствует

о д и н

и

т о л ь к о

один вектор А £ К . Векторы, принадлежащие

коду, будем

называть

также кодовыми словами.

 

 

 

 

 

Соответствие между векторами А £ Р и числами А £ L можно установить различными способами. Однако свойства кодов практи­ чески не зависят от выбора того или иного способа, а в основном определяются лишь числами L, М и Р. Поэтому в дальнейшем будем предполагать, что числу А = {а,, . . . , ат }уИ соответствует

вектор А = (о,, .. . , ат) в том и только том случае, если аі — а;

для любого і = 1, 2, ... , т. Следовательно, Л = {А }м .

В зависимости от соотношения между величинами L, М и Р в СОК все корректирующие коды можно разбить на три основных класса.

К первому классу относятся коды, соответствующие СОК со взаимно простыми основаниями. Эти коды наиболее пригодны для использования в ЦВМ, и поэтому им будет посвящена боль­ шая часть книги. Такие коды в дальнейшем будем называть ^-ко­ дами.

Кодам

второго и третьего классов

соответствуют отношения

L = M < P

и L<cM<P. В обоих случаях

основания системы оста­

точных классов не являются взаимно простыми. Первые из этих ко­ дов назовем L-кодами, а вторые — RL-кодами.

40

Пусть,

например, имеется СОК.

с основаниями

3,

4,

5. Если

1 = 12,

то

данной СОК. соответствует

R-код, у которого

Л1=Я=60;

R = 5.

Системе

остаточных классов

с

основаниями

3,

4,

6 соответ­

ствует L-код, у которого

L = M= 12;

Р = 72.

Наконец, системе с осно­

ваниями 3, 4, 5, 6 соответствует RL-код,

(L=12;

М= 60;

Р = 360).

Рассмотрим

теперь

некоторые

 

общие понятия,

характерные

для всех корректирующих кодов в СОК.

При оценке эффективности любого корректирующего кода не­ обходимо знать связь между избыточностью и возможностями об­ наруживать или исправлять ошибки. Для определения этих воз­

можностей чаще

всего

используют понятие м и м и м а л ь и о г о

р а с с т о я н и я

к о д а ,

т. е. наименьшего расстояния между дву­

мя любыми кодовыми словами. Расстоянием d между любыми двумя векторами Ä\ и >Т2 из множества Р назовем число компонент, в ко­ торых эти векторы отличаются друг от друга. Непосредственно из

определения

следуют такие

свойства

данного расстояния:

1)

d (Ä u

At) - d ( A t , Д,);

 

2)

d {Ai,

j4a) = 0 тогда

и только

тогда, когда At = А2\

Ң2 Л)

3)d (Ді, Л ) > 0;

4) d (Аі,

Ai) d (Ai, Аг) .

Расстояние,

удовлетворяющее перечисленным свойствам, часто

называют метрикой, а множество элементов, в котором задана мет­ рика, — метрическим пространством.

Величина расстояния между различными векторами множества Р изменяется в пределах от 1 до пі. Интересно отметить, что двум соседним числам А і и А2 (отличающимся на единицу) соответст­ вуют векторы Ä, и Я2, расстояние между которыми равно m для любой системы остаточных классов.

Определим операции сложения, вычитания и умножения век­ торов в пространстве Р так же, как определялись формальные мо­ дульные операции над числами, представленными в СОК (см. § 1.2). Те векторы, которым соответствуют числа, представленные в СОК, одновременно являются скалярными величинами. Таким образом, операция умножения вектора иа скаляр не отличается от умноже­ ния двух векторов. Каждому вектору из множества Р можно при­ своить определенный вес. Весом или весовой функцией W(Ä) век­ тора Я назовем число ненулевых компонент этого вектора.

Очевидно, что расстояние между двумя векторами равно весу

их разности, т. е.

 

d {At, A s) = W {Ai — Аг).

(2.2)

Приведем теперь несколько полезных свойств весовых функций,

которые

непосредственно вытекают из соотношений (2.1), опреде­

ляющих

метрику, и выражения (2.2):

 

 

w ( X +

Л ) <

W ( X ) + w (а,)\

(2.3)

 

W {А, ±

Л ) =

W { A 2± .4,);

(2.4)

41

W (Л) = W (—v4), где — А = 0 — .4;

(2.5)

У Й ^ К ш І п О Г ^ О Д Й ) ) .

(2 .6)

Понятия расстояния и веса, введенные выше, являются очень полезными при изучении корректирующих свойств кодов.

Предположим, что один из символов кодового слова Ä изменил свое значение в результате воздействия какой-либо помехи. Полу­ ченный в результате новый (искаженный) вектор Ä' находится на расстоянии, равном единице от вектора Л . Такую ошибку можно обнаружить лишь в том случае, если вектор Ä' не является кодо­ вым словом. Поэтому все кодовые слова должны быть удалены от вектора Ä иа расстояние, большее единицы. Чем больше расстояние между кодовыми словами, тем больше ошибок может обнаружи­ вать и исправлять такой код.

В дальнейшем под одиночной ошибкой будем понимать любое искажение символа, относящегося к какому-либо одному модулю, а t-кратной ошибкой назовем любые искажения символов, соот­

ветствующих

произвольным

I основаниям.

Однако

в некоторых

случаях при

рассмотрении Д-кодов будем

использовать

понятия

одиночной II г-кратной двоичных ошибок, понимая под ними иска­

жения

символом

двоичного

представления

остатков

а ь

. , ат .

Кроме

того,

будем

считать, что ошибки носят аддитивный

характер

и однозначно определяются вектором {Д}лг, вес которого равен крат­ ности ошибки. Искаженный вектор Ä' получается в результате сло­ жения (или вычитания) кодового слова и вектсра ошибки:

Л' = Л + Д.

Связь между минимальным расстоянием кода, т. е. наименьшим расстоянием между кодовыми словами, и его корректирующими возможностями устанавливается следующими двумя теоремами.

Теорема 2.1.

Корректирующий код в СОК может обнаружить все совокуп­ ности из I или меньшего числа ошибок лишь в том случае, если

минимальное расстояние кода больше I, т.

е.

 

d min> l + l .

(2.7)

Доказательство. Пусть Д =

А' — /1 — вектор ошибки с весом

не превышающим I.

Но если А'

является кодовым словом (а именно

в этом случае мы не

сможем обнаружить

ошибки), то вес разно­

сти А' А не может быть меньше минимального расстояния кода,

т. е. должен быть больше, чем I. Следовательно, А' не может быть кодовым словом и условие (2.7) является достаточным для обна­ ружения ошибок с кратностью, не превышающей I.

Предположим теперь, что d min -< /. Тогда найдутся два таких

вектора, принадлежащих коду, разность которых Д = А' А имеет

вес, равный или меньший I. Но поскольку А' является кодовым

словом, подобное искажение вектора А нельзя обнаружить. Следо-

42

вательно, условие (2.7) является и необходимым. Таким образом, теорема доказана.

Теорема 2.2.

Корректирующий код в СОК может исправить все совокупности

из k или меньшего числа ошибок лишь в том случае, если

мини­

мальное расстояние кода больше удвоенного числа ошибок, т.

е.

2/е + 1.

(2.8)

Доказательство. Искажения в векторе И исправимы лишь в том

случае, если каждому искаженному вектору А' можно сопоставить только одно кодовое слово (и соответственно один вектор ошибки). Следовательно, любая ошибка из некоторого множества В может быть исправлена корректирующим кодом, если для любых векто­

ров Д! и Д2, принадлежащих множеству Е, и любых двух кодо­

вых слов Аі и Л2 справедливо выражение:

+

(2.9)

Из условия (2.8) следует, что вес разности любых двух кодо­ вых слов не может быть меньше, чем 2k + 1. В то же время, в соответствии с формулой (2.3), вес разности любых двух векто­ ров ошибок, каждый из которых содержит не более k ненулевых компонент, ие может быть больше 2k0. Поэтому для любых кодо­

вых слов А і и И2, а также векторов ошибок Д, и Д2с весом, не

превышающим k, справедливо выражение W (И) — А^фѴК 2—Д,). Откуда непосредственно следует справедливость неравенства (2.5).

Докажем теперь необходимость выполнения условия (2.8) для коррекции /е-кратных ошибок. Если минимальное расстояние кода меньше, чем 2Л + 1, то найдутся, по крайней мере, два кодовых слова Ж\ и Лг, разность которых имеет вес, не превышающий 2k. Соответ­

ственно всегда можно найти два таких вектора ошибок Д, н Д2, что

А I — А2 Д[ — Д2.

Следовательно, условие (2.S) не выполняется и по значению искаженного вектора нельзя однозначно получить кодовое слово, что и требовалось доказать.

Из теорем 2.1 и 2.2 следует, что корректирующий код в СОК, исправляющий любые k ошибок и, кроме того, обнаруживающий

любые k

+ I

ошибок, дслжен

иметь минимальное расстояние, рав­

ное 2k +

1.

Таким образом,

определив минимальное расстояние

копа, можно получить представление о его корректирующих , возможностях.

Следует учитывать, что минимальное расстояние является до­ статочно грубой характеристикой, не раскрывающей полностью структуру и возможности кода, В частности, если расстояние меж­ ду большинствсм кодовых слов превышает минимальное, то такой код можно использовать для обнаружения или исправления значи­

тельной части

ошибок более высокой

кратности по сравнению

■с кратностями,

определяемыми теоремами

2.1 и 2.2. Поэтому можно

43

считать, что минимальное расстояние кода

позволяет установить

лишь г а р а н т и р у е м ы й м и н и м у м

числа обнаруживаемых

или исправляемых ошибок. Минимальное расстояние кода можно определить, если известны веса кодовых слсв.

Теорема 2.3.

Минимальное расстояние корректирующего кода в системе остаточных классов равно минимальному весу ненулевых кодовых

слов, если множество

L

не содержит

чисел

противоположных

знаков.

 

 

 

 

 

 

Доказательство. Предположим, что расстояние между кодовыми

словами Ä) и Я2 является

наименьшим для данного кода. Посколь­

ку числа Лі и А2 имеют

одинаковые знаки, должно выполняться

неравенство ІЛ,— Л2І < L. Поэтому одни из векторов

— Л2 либо

Л2— .41 является кодовым

словом, вес

которого

равен

d(Aь

Л"г),

т. е. минимальному расстоянию кода.

слов найдется

вектор

£3,

Допустим теперь,

что

среди кодовых

вес которого меньше минимального расстояния кода. Но тогда рас­ стояние между вектором Л3 и нулевым кодовым словом окажется меньше минимального, чего, естественно, быть не может. Следова­ тельно, теорема доказана.

Если множество L содержит числа разных знаков, то мини­ мальное расстояние кода может быть меньше минимального веса кодовых слов. Пусть множество L содержит L\ отрицательных чи­

сел. Прибавим к

каждому

кодовому слову

вектор

{Іі}лг.

Получим

новый

код с

прежним

минимальным расстоянием

(так

как

+ £,) — (Л2 +

£|) = (Я і — і?2),

но

теперь

уже удовлетворяющий

условию

теоремы

2.3. Определив

для

этого

кода

значение

мини­

мального веса, тем самым найдем минимальное расстояние исход­ ного кода.

Ограничения, налагаемые теоремой 2.3 на множество L, не от­ носятся к /.-кодам, так как у этих кодов в отличие от двух других корректирующих кодов в СОК сумма, разность и произведение лю­ бых кодовых слов обязательно являются кодовыми словами.

2.2. КОРРЕКТИРУЮЩИЕ Д-КОДЫ

Как следует из предыдущего раздела, /?-ко.дом называется та­ кой корректирующий код, векторам которого соответствуют числа, представленные в СОК со взаимно простыми основаниями. Эти коды могут иметь любое минимальное расстояние в зависимости от сте­ пени избыточности, причем, как следует из приведенной ниже теоремы, для любой заданной СОК величина R однозначно опре­ деляет корректирующие возможности кода.

Теорема 2.4.

Корректирующий R-код имеет минимальное расстояние d в том

и только том случае,

если

степень

избыточности R

не меньше

произведения любых d 1 оснований заданной СОК.'

 

д - і

 

 

 

 

R > W

pq.-

г Д е Чі =

1 . 2 , . . . , И .

( 2 . 1 0 )

/= 1

J

 

 

 

44

Доказательство. Разделив число М на левую и правую части неравенства (2 .10), получим следующее выражение:

 

M

m—d-t-1

 

L =

П Pg ■

( 2. 11)

d - \

П p„

}=1

 

Число А, соответствующее любому кодовому слову Ж, по абсо­ лютной величине меньше L и поэтому не может делиться ни на ка­ кое произведение т d + I модулей СОК. Если число А делится на некоторый модуль ри то соответствующая компонента вектора А должна равняться нулю. Поэтому число нулевых компонент векто­ ра А не может быть больше т d и, следовательно, вес вектора А не меньше, чем d. Если все числа А имеют одинаковые знаки, то

из теоремы

2.3 следует, что d

является

м и н и м а л ь н ы м

рас-

с т о я и и е м

кода.

множество

L содержит L\

отрица­

Предположим теперь, что

тельных чисел. Рассмотрим множество целых положительных чисел

В,

полученных путем

прибавления

к каждому числу А величины L x,

т.

е. В = А Е\. В

соответствии

с приведенным выше доказатель­

ством множество векторов В образует корректирующий код с ми­ нимальным расстоянием d. Но минимальные расстояния получен­ ного и исходного кодов должны быть равны по построению. Поэто­ му и в случае различных по знаку чисел А теорема справедлива.

Докажем теперь

необходимость

условия

(2.1C).

Предположим,

что произведение некоторых d 1

оснований

СОК

больше, чем R.

Тогда

т—d+ 1

 

 

 

 

 

 

 

 

L > П р ч

 

 

 

j = 1

 

 

 

 

Поэтому среди кодовых слов найдутся, по крайней

мере, два век

тора Аі и At такие,

что

 

 

 

 

 

m—d+l

 

 

 

 

■At — At =

О

p q .

 

 

 

/= 1

 

 

 

Следовательно, вектор А — Аг

содержит

т —■d + 1

нулевых ком­

понент, т. е. вес его равен d

1. Поэтому минимальное

расстояние

кода (в данном случае расстояние между

векторами

A t

и А ) мень­

ше d, что противоречит условию теоремы. Следовательно, теорема доказана.

Покажем теперь, что Д-код может обнаруживать и исправлять некоторое число ошибок более высокой кратности, чем та, которая допускается, в соответствии с теоремами 2.1, 2.2 и минимальным расстоянием кода. Предположим, что минимальное расстояние кода равнс rf, но в то же время имеются такие основания СОК, число

45

которых rfi d, что произведение этих модулей меньше R. Тогда любые ошибки в этих модулях можно обнаружить *.

Действительно, у вектора

ошибки Д

должно

быть

не менее

т — rf,

нулевых компонент.

Обозначим

произведение

модулей,

которым

соответствуют искаженные символы (т.

е.

ненулевые

составляющие вектора Д), через Q (rf,). Тогда число Д кратно ве­

личине MjQ (йС|)>- M /R = L и, следовательно, удовлетворяет нера­ венству

М — Д > Д > £ .

(2.12)

Нетрудно убедиться в том, что сумма любого

числа А и чис­

ла, соответствующего вектору

ошибки, не может

принадлежать

множеству L, т. е. подобную

ошибку можно обнаружить. Однако

даже в тех случаях, когда произведение оснований, соответствующих ошибочным символам, больше R, среди ошибок найдутся такие, которые удовлетворяют неравенству (2.12) и, следовательно, могут быть обнаружены.

(t ^

Число

различных

ошибок,

соответствующих

произвольным

d) основаниям СОК, равно

Q(t) ■— 1. Эти ошибки соответству­

ют

числам,

равномерно

распределенным в

интервале

(С, М) с ша­

гом

M/Q(t).

Если Q(t)

> R, то

найдется

[((?(/) — 1)//?] ошибок,

которые не удовлетворяют неравенству (2.12). Доля таких ошибок от' общего их числа не превышает величины 1/R. Поэтому можно утверждать, что Д-код позволяет обнаруживать все ошибки крат­

ности

d — 1 и менее, а также

большую часть

[(Д— 1)/R]

ошибок

более

высокой кратности.

корректирующий

R-код с

нечетным

Предположим теперь, что

минимальным расстоянием d используется для исправления ошибок кратности k и ниже, где k = (d 1)/2. Может ли этот код обнару­ живать или даже исправлять хотя бы часть ошибок более высокой кратности?

Пусть вектор Â', образован из кодового слова Ді в результате

воздействия ошибки, вес которой больше

/г. Если

на

расстоянии

d ^ k от вектора Ä't найдется кодовое

слово Я2,

то

оно будет

принято кодом за правильное значение исходного вектора. Ошибку можно было бы обнаружить, если бы в пределах расстояния k от вектора Л'\ нашлось еще одно кодовое слово Я3. Но такой ситуа­

ции быть

не может,

так как в этом случае, в

соответствии со-

свонством

метрики (2.1), расстояние

между

Я2

и

Яз оказалось

бы не больше, чем 2к, т. е. меньше минимального.

 

необходимо,

Таким

образом, для

обнаружения

такой

ошибки

чтобы на расстоянии /г от вектора К' і не было ни одного кодового слова. Соответственно, если мы хотим исправить f-кратную ошибку,

где

t > /е, то среди всех векторов,

находящихся на

расстоянии

d ^

/ от вектора Д'і, должно быть

лишь одно кодовое

слово А\.

 

В общем случае очень сложно оценить долга ошибок произволь­

ного веса t, которые можно обнаружить или исправить при помощи

кода с минимальным расстоянием,

меньшим d ^ 2t +

1. Цело в том,

что даже при достаточно грубых

 

оценках

необходимо знать не

только величину R, но и величину

каждого

из

модулей СОК.

* Под ошибкой в модуле р,- в дальнейшем понимается иска­ жение соответствующего остатка а<.

46

Например, долю произвольных ошибок, которые не могут быть обнаружены кодом, исправляющим к ошибок при минимальном расстоянии d = + 1, можно оценить исходя из следующих сооб­ ражений. Каждый вектор пространства Р можно считать геометри­ ческой точкой. Рассмотрим множество сфер радиуса к, центры которых находятся в точках, соответствующих различным кодовым

словам. Ни одна пара таких сфер

не может иметь общих точек,

так как иначе расстояние между

центрами таких сфер оказалось

бы меньше минимального расстояния кода. Каждая сфера содержит

одинаковое число точек V, равное

количеству различных векторов

с весом, ие превышающим к. V можно определить как сумму всех

произведений из к или меньшего числа оснований данной СОК.

Таким образом, доля векторов, которые находятся на расстоянии

d > k от кодовых слов, определяется как

 

(M—LV)IM = (R — V)/R.

(2.13)

При произвольных значениях ошибки и кодового слова Ä\ век­

тор Ä't может попасть с равной

вероятностью

в любую точку

пространства. Поэтому можно считать, что выражение (2.13) опре­ деляет вероятность того, что данный код. сможет обнаружить про­ извольную ошибку.. Приведенная оценка является не очень точной, поскольку ие учитывает зависимость между вероятностью обнаруже­ ния ошибки и величиной t, соответствующей весу ошибки.

Для определения вероятности исправления данным кодом оши­

бок веса к +

1 и

выше оценка (2.13)

не годится, так как

сферы

радиуса £ + 1

обязательно будут иметь общие точки.

инфор­

По-видимому,

наиболее реальным

способом получения

мации о возможностях каждого конкретного кода является стати­ стическое моделирование.

В табл. 2.1 и 2.2 приводятся некоторые результаты такого мо­

делирования для кодов с минимальным

расстоянием d =

3

(k = 1,

<7I (2) Ä 0) и d = 4 (k =

1, 9(2) = 1)

соответственно.

В

качестве

исходной была принята система остаточных

классов с основаниями

3, 5, 7, 11, 13, 17, 19, 23,

29, 31 и общим

основанием М.

Другие

СОК получены из исходной путем исключения старших оснований:

М, =

ЛГ/31;

М2 = М]/29; М3 = М2/23;

М4 =

М3/19.

 

избыточ­

Для кодов с минимальным расстоянием

d = 3 степень

ности

R определялась как произведение двух наибольших

модулей,

а для

d = 4 — как

произведение трех

наибольших

модулей.

 

 

 

 

 

Т а б л и ц а 2.1

 

1 logjl

1

1 logjtf [

q (2)

? (О

 

25

 

10

0,876

 

0,825

 

21

 

10

0,868

 

0,810

 

18

 

9

0,852

 

0,774

 

14

 

9

0,852

 

0,768

 

10

 

8

0,851

 

0,751

47

 

 

 

 

 

 

 

Т а б л и ц а

2.2

1log

1

 

] log,/? 1

 

ч (0

 

 

Ч1(2)

21

 

 

 

15

 

0,994

 

 

0,687

18

 

 

 

14

 

0,99

 

 

0,70

14

 

 

 

13

 

0,987

 

 

0,72

10

 

 

 

12

 

0,981

 

 

0,672

Интервал L равен произведению оставшихся модулей, но в таб­

лицах приведено не

само

значение

L,

а его двоичный

логарифм,

т. е. число

разрядов

эквивалентного

двоичного

кода. В

таблицах

использованы

следующие обозначения

вероятностей:

q(2) — вероят­

ность обнаружения

кодом

двойной

 

ошибки;

q ( t) — вероятность

обнаружения

/-кратной ошибки, где

t > 2;

<71(2) — вероятность

исправления двойной

ошибки.

с

минимальным

расстоянием

Из табл.

2.2 видно, что коды

d = 4 имеют довольно высокую вероятность исправить

двойную

ошибку.

 

показано в

предыдущей

главе, в

тех случаях,

когда

Как было

в системе остаточных классов представлены не целые числа, а дро­

би,

интервал L целесообразно

выбирать равным N (для положи­

тельных

чисел) либо

2N

(для

чисел

с произвольными

знаками),

где

N — знаменатель

дробей в СОК,

равный

произведению

некото­

рых

модулей системы. Обозначим X = L/N.

В

дальнейшем

будут

рассматриваться лишь такие У?-коды, у которых

X = 1

или

X = 2.

Назовем

основания

рі, . . . ,

рп,

произведение

которых

равно N,

информационными,

а остальные

основания рп+1, • ■., Рт контроль­

ными. Тогда степень избыточности равна или произведению конт­ рольных модулей, или половине этого произведения. Произведение контрольных оснований обозначим символом R і.

Связь между числом контрольных модулей г и минимальным расстоянием d устанавливается следующей теоремой.

Теорема 2.5.

Число контрольных модулей R-кооа с минимальным расстоя­

нием d не может быть меньше величины

(d 1) + (X— 1).

 

Доказательство.

Пусть

L = N,

т.

е. X— .1= 0 . Тогда

7? =

г

 

 

 

 

 

 

 

= J"[ рп+і. Если

г <

d — 1,

то

не

выполняется условие

теоре-

/=і

 

 

 

d — 1

 

 

мы 2.4, поскольку

произведение

оснований СОК, в

состав

которых входят г контрольных оснований, естественно, меньше, чем R.

Положим теперь L = 2N, т. е. X— 1 = 1. Тогда

Л = 2 П Рп+і- i=i

48

Условие теоремы 2.4 может выполняться лишь в том

случае,

если

г 73= гі. Что и требовалось доказать.

 

 

Приведем теперь два важных следствия из этой теоремы.

 

Следствие

2.5.1.

 

ин­

Если X — 1 и каждый контрольный модуль больше любого

формационного, іо минимальное расстояние кода

на единицу

больше числа ком рольных модулей, т. е. d — г + 1.

 

 

Следствие

2.5.2.

больше

про­

Если X =

2 и произведение контрольных модулей

изведения любых d — 1 оснований СОК, то минимальное расстояние кода равно числу контрольных модулей, т. е. d — г.

Итак, увеличивая или уменьшая число контрольных модулей, можно изменять минимальное расстояние кода. Если некоторая СОК расширяется путем добавления I модулей, каждый и.з которых боль­ ше модулей исходной системы, то минимальное расстояние кода автоматически увеличивается на величину /. Того же эффекта можно добиться, уменьшая число информационных модулей, т. е. переходя к вычислениям с меньшей точностью (с меньшим знаме­ нателем дробей). Следовательно, между корректирующими возмож­ ностями ^-кодов и точностью вычислений существует обратно про­ порциональная зависимость. На одной и той же ЦВМ можно одни вычисления выполнять с высокой точностью, но небольшой надеж­ ностью, а другие — с меньшей точностью, но зато с более высокой надежностью и скоростью, так как время выполнения основных операций пропорционально числу информационных модулей.

2.3. КОРРЕКТИРУЮЩИЕ L И ДІ-КОДЫ

Как уже указывалось выше, сумма, разность и произведение любых векторов L-кода являются кодовыми словами. В отличие от /?-кода в данном случае векторам, которые не являются кодовыми словами, нельзя поставить в соответствие никаких целых чисел.

Прежде всего покажем, что попытки обнаруживать или ис­ правлять при помощи L-кода произвольные искажения символов приводят к избыточности, эквивалентной резервированию.

Теорема 2.6.

Для того чтобы L-код имел минимальное расстояние d, необхо­ димо и достаточно, чтобы степень избыточности равнялась Md~l.

Доказательство. В соответствии с теоремой 2.3, минимальное расстояние кода должно равняться наименьшему весу ненулевых кодовых слов. Поэтому найдем условия, которым должен удовлет­

ворять L-код для того,

чтобы среди его

кодовых

слов

не было

векторов с весом, меньшим d.

 

 

 

М можно представить

Основание системы

остаточных классов

в виде произведения

 

 

и

 

 

R

ß

степеней

простых чисел g y t

g kk }каждое

из которых является

делителем

одного или

нескольких оснований

данной СОК.

A = Mlgi, где

g t — любой

из простых

делителей

Положим

основания М. Произвольная

составляющая

вектора

А ,

соответст­

вующая модулю pj,

может

принимать

ненулевое значение лишь

в том случае,

если g р

является делителем

основания pj.

4 З а к а з № 107

49

Соседние файлы в папке книги из ГПНТБ