Файл: Учебник издание шестое Рекомендовано Министерством образования и науки Российской Федерации в качестве учебника для студентов высших технических учебных заведений.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 11.12.2023

Просмотров: 554

Скачиваний: 6

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

б) отношение перпендикулярности двух прямых?28. Доказать, что отношение {((x1, y1), (x2, y2)) | x2 1+ y2 1= x2 2+ y2 2} являет- ся отношением эквивалентности на множестве R2. Определить классы этой эквивалентности.29. Доказать, что отношение {(a, b) | (a − b) — рациональное число} явля- ется отношением эквивалентности на множестве вещественных чисел.30. Пусть на множестве ω определено отношение 6, задаваемое следую- щим правилом:m 6 n ⇔ m делит n.Считая, что 0 делит 0, показать, что 6 — частичный порядок. Для произвольных натуральных чисел m и n найти inf{m, n} и sup{m, n}относительно указанного порядка.31. Для обычных отношений 6 и < на множестве ω показать, что< ◦ < 6= <, 6 ◦ < = < и 6 ◦ > = ω2 32. Построить пример ч.у.м. с единственным минимальным элементом, но без наименьшего.33. Рассмотрим на множестве R2отношение Парето Π:(x1, y1) Π (x2, y2) ⇔ x1 6 x2и y1 6 y2.Для точек A(a1, a2) и B(b1, b2) найти множество нижних и верхних гра- ней множества {A, B}. Чему равен inf{A, B} и sup{A, B}?34. Построить линейный порядок на множестве комплексных чисел.35. Составить матрицу отношения полного порядка, при котором нумера- ция элементов ведется: а) по возрастанию; б) по убыванию. 50Глава 1. ЭЛЕМЕНТЫ ТЕОРИИ МНОЖЕСТВ36. Проверить, являются ли частичными порядками бинарные отношения со следующими матрицами:а)1 1 1 1 0 0 1 1 1 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 1; б)1 0 0 1 1 1 1 1 1 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1; в)1 0 0 0 1 1 1 1 1 1 0 0 1 0 1 0 0 1 1 1 0 0 0 0 1;г)1 0 0 0 1 1 1 0 0 1 1 1 1 1 1 0 0 0 1 1 0 0 0 0 1; д)1 0 0 0 0 1 1 1 1 1 1 0 1 0 0 1 0 1 1 1 1 0 1 0 1; е)1 0 1 1 1 0 1 1 1 1 0 0 1 0 0 0 0 1 1 0 0 0 1 0 1;ж)1 0 1 0 0 1 1 1 0 1 0 0 1 0 0 1 0 1 1 0 1 0 1 0 1; з)1 0 0 0 0 1 1 1 1 1 0 0 1 0 1 1 0 0 1 0 0 0 0 0 1; и)1 1 0 1 0 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 1 1 0 1 1;к)1 0 0 0 0 1 1 1 1 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1; л)1 1 1 1 1 0 1 0 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0 0 1; м)1 0 0 0 0 0 1 0 0 0 0 1 1 0 0 1 0 0 1 1 1 0 0 0 1Построить диаграммы Хассе для заданных порядков. Есть ли в со- ответствующих частично упорядоченных множествах наименьшие или наибольшие элементы? Какие из этих частичных порядков линейные?37. Построить всевозможные попарно неизоморфные четырехэлементые ч.у.м. hA; 6i. Какие из этих ч.у.м. самодвойственны, т. е. изоморфныhA; >i? Глава 2АЛГЕБРАИЧЕСКИЕ СИСТЕМЫ§ 2.1.Определения и примерыЧасто объектом изучения в математике и ее приложениях служит мно- жество вместе с определенной на нем структурой. Читателю уже известны поля, формирующие основу обычной арифметики, линейные пространства,обеспечивающие связь геометрических объектов с операциями над числами,множества с введенными на них бинарными отношениями. Все эти струк- туры образуют алгебраические системы, представляющие собой некоторые миры с определенными в них законами. Перейдем к точному определению алгебраической системы.Рассмотрим непустое множество A. В § 1.2 было введено понятиеn-местной операции на множестве A (f : An→ A). Отметим, что, поскольку операция f является функцией, для любого набора (x1, . . . , xn) ∈ Anре- зультат применения операции f (x1, . . . , xn) однозначно определен. Так как область значений операции f лежит в множестве A, то будем говорить, что операция f замкнута на множестве A.Сигнатурой или языком Σ называется совокупность предикатных и функциональных символов с указанием их местности. При этом множе- ства предикатных и функциональных символов не пересекаются. 0-Местный функциональный символ называется константным символом или простоконстантой. Если α — функциональный или предикатный символ, то его местность обозначается через µ(α). n-Местные предикатные и функциональ- ные символы часто будем обозначать соответственно через P(n)и f(n). Если в рассматриваемой сигнатуре используются стандартные символы, такие,например, как + для операции сложения, 6 для отношения порядка, | для 52Глава 2. АЛГЕБРАИЧЕСКИЕ СИСТЕМЫотношения делимости, 0 для константного символа и другие, то мы просто пишем Σ = {6}, Σ = {6, +, ·, 0}, Σ = {+, −, |, 0, 1} и т. д.Алгебраической системой A = hA; Σi сигнатуры Σ называется непустое множество A, где каждому n-местному предикатному (функциональному)символу из Σ поставлен в соответствие n-местный предикат (соответственно операция), определенный на множестве A. Множество A называется носите-лем или универсумом алгебраической системы hA; Σi. Предикаты и функ- ции, соответствующие символам из Σ, называются их интерпретациями.Обозначать интерпретации будем теми же буквами, что и соответствую- щие символы сигнатуры. Заметим, что интерпретацией любого константного символа является некоторый элемент (константа) из A.Алгебраические системы в дальнейшем будут обозначаться готическими буквами A, B, . . . (возможно, с индексами), а их носители — соответствующи- ми латинскими буквами A, B, . . . (с соответствующими индексами). Иногда мы будем отождествлять носитель с алгебраической системой.Мощностью алгебраической системы A называется мощность ее носите- ля A. В дальнейшем будем часто опускать слово “алгебраическая” и назы- вать A системой или структурой.Непустая сигнатура Σ называется функциональной (предикатной), если она не содержит предикатных (функциональных) символов. Система A на- зывается алгеброй (моделью или реляционной системой), если ее сигнатура функциональна (предикатна).Пример 2.1.1. 1. Набор hω; +, ·i является алгеброй с двумя двухмест- ными операциями.2. Набор hω; 6, +, ·,0, 0, 1i является системой с бинарным отношением 6(µ(6) = 2), двухместными операциями +, · (µ(+) = µ(·) = 2), одноместной операцией0: n 7→ n + 1 (µ(0) = 1) и двумя нуль-местными операциями(константами) 0, 1 (µ(0) = µ(1) = 0).3. Набор hZ; +, :,√2i не образует алгебру, поскольку деление не является операцией на множестве Z (например, 2 : 3 /∈ Z), а элемент√2 не принадле- жит Z.4. Набор hP(U); ∩, ∪, , 0, 1i с двухместными операциями ∩, ∪, одномест- ной операцией : A 7→ A, константами 0 = ∅ и 1 = U является алгеброй,называемой алгеброй Кантора.5. Алгеброй является любое кольцо.6. Пара­{f (x) | f : R → R};ddx®(гдеddx— операция дифференцирова- ния) не является алгеброй, поскольку не всякая функция дифференцируема, 2.1. ОПРЕДЕЛЕНИЯ И ПРИМЕРЫ53но если рассмотреть множество A = {f (x) | f (x) дифференцируема беско- нечное число раз}, то отображение дифференцированияddx: f 7→dfdxявляется операцией на A и пара­A;ddx®образует алгебру. ¤Заметим, что частичную операцию f , отображающую Anв A, можно рассматривать как (n + 1)-местное отношениеRf­ {(x1, x2, . . . , xn, y) | (x1, . . . , xn) ∈ Anи y = f (x1, . . . , xn)}.Поэтому в последнем примере пару­{f (x) | f : R → R};ddx®можно считать алгебраической системой, если рассматриватьddxкак бинарное отношение©(f, g) | g =dfdxªАлгебра A сигнатуры Σ = {f }, где µ(f ) = 2, называется группоидом.Единственная здесь операция f обычно обозначается символом ·: A = hA; ·i.Если A — конечное множество, действия операции · можно задать квадрат- ной таблицей, в которой для каждой пары (ai, aj) ∈ A2записан результат действия ·(ai, aj). Такая таблица называется таблицей Кэли группоида A.Группоид A называется полугруппой, если · — ассоциативная операция, т. е.для всех элементов x, y, z ∈ A верно x · (y · z) = (x · y) · z. Полугруппа A на- зывается моноидом, если существует элемент e ∈ A, называемый единицей,такой, что e · x = x · e = x для всех x ∈ A. Полугруппы и моноиды имеют особое значение в теории языков при обработке слов.Пример 2.1.2. Пусть W (X) — множество слов алфавита X. Определим на W (X) операцию конкатенации ˆследующим образом: если α, β ∈ W (X),то αˆβ = αβ, т. е. результатом является слово, полученное соединением словα и β (например, xyzˆzx = xyzzx). Операция ˆ ассоциативна, т. е. для лю- бых слов α, β, γ верно (αˆβ)ˆγ = αˆ(βˆγ). Следовательно, система hW (X);ˆiявляется полугруппой. Так как для всех α ∈ W (X) верно Λˆα = αˆΛ = α,где Λ — пустое слово, то Λ удовлетворяет свойству единицы. Таким образом,система hW (X);ˆi является моноидом. ¤Моноид A = hA; ·i называется группой, если для любого элементаx ∈ A существует элемент x−1∈ A, называемый обратным к x, такой, чтоx · x−1= x−1· x = e. Группа A называется коммутативной или абелевой,если x · y = y · x для всех x, y ∈ A.Пример 2.1.3. 1. Если hK; +, ·i — кольцо, то hK; +i — абелева группа.2. Система hGLn(K); ·i, где GLn(K) ­ {A | A — матрица порядка nнад полем K, и det A 6= 0} является группой, которая некоммутативна приn > 2. ¤ 54Глава 2. АЛГЕБРАИЧЕСКИЕ СИСТЕМЫ§ 2.2.МорфизмыПусть даны алгебраические системы A = hA; Σi и B = hB; Σi. Отобра- жение ϕ: A → B называется гомоморфизмом системы A в систему B, если выполняются следующие условия:1) для любого функционального символа f(n)∈ Σ, соответствующих функций fAи fBв системах A и B и любых a1, a2, . . . , an∈ A выполня- етсяϕ(fA(a1, a2, . . . , an)) = fB(ϕ(a1), ϕ(a2), . . . , ϕ(an));2) для любого предикатного символа P(n)∈ Σ, соответствующих преди- катов PAи PBв системах A и B и любых a1, a2, . . . , an∈ A выполняется(a1, a2, . . . , an) ∈ PA⇒ (ϕ(a1), ϕ(a2), . . . , ϕ(an)) ∈ PB.Если ϕ: A → B — гомоморфизм, то будем его обозначать черезϕ: A → B.При гомоморфизме сохраняются действия операций и отношения. Это позволяет переносить изучение свойств с одной системы на другую.Пример 2.2.1. Рассмотрим системы A = hZ; +, 6i и B = hZ2; +, 6i, где в системе B сложение задается по правилу(a1, b1) + (a2, b2) = (a1+ a2, b1+ b2),а отношение порядка —(a1, b1) 6 (a2, b2) ⇔ a1 6 a2и b1 6 b2.Отображение ϕ: Z → Z2, при котором ϕ(a) = (a, 0), является гомоморфиз- мом. Действительно, для любых a, b ∈ Z имеемϕ(a + b) = (a + b, 0) = (a, 0) + (b, 0) = ϕ(a) + ϕ(b),и если a 6 b, то (a, 0) 6 (b, 0), т. е. ϕ(a) 6 ϕ(b). ¤Гомоморфизм ϕ: A → B, являющийся инъекцией, называется мономор-физмом. Гомоморфизм ϕ: A → B, являющийся сюръекцией, называетсяэпиморфизмом, и при этом система B называется гомоморфным образом 2.2. МОРФИЗМЫ55системы A. Гомоморфизм ϕ: A → A называется эндоморфизмом. Сюръек- тивный мономорфизм ϕ: A → B, для которого ϕ−1— гомоморфизм, называ- ется изоморфизмом A на B и обозначается через ϕ: A ∼→ B. Если существует изоморфизм ϕ: A ∼→ B, то системы A и B называются изоморфными и обо- значается это так: A ' B.Таким образом, условие A ' B означает, что существует биекцияϕ: A ↔ B, удовлетворяющая следующим условиям:1) для любого функционального символа f(n)∈ Σ, соответствующих функций fAи fBв системах A и B и любых a1, a2, . . . , an∈ A выполня- етсяϕ(fA(a1, a2, . . . , an)) = fB(ϕ(a1), ϕ(a2), . . . , ϕ(an));2) для любого предикатного символа P(n)∈ Σ, соответствующих преди- катов PAи PBв системах A и B и любых a1, a2, . . . , an∈ A выполняется(a1, a2, . . . , an) ∈ PA⇔ (ϕ(a1), ϕ(a2), . . . , ϕ(an)) ∈ PB.Изоморфизм ϕ: A ∼→ A называется автоморфизмом системы A. Заметим,что, поскольку изоморфизм ϕ: A ∼→ B является биекцией A ↔ B, изоморф- ные системы равномощны.Утверждение 2.2.1. 1. idA: A ∼→ A.2. Если ϕ: A ∼→ B, то ϕ−1: B ∼→ A.3. Если ϕ: A1∼→ A2и ψ: A2∼→ A3, то ϕ ◦ ψ: A1∼→ A3. ¤Таким образом, отношение изоморфизма ' является эквивалентностью на любом множестве алгебраических систем (отметим, что класс всех алгеб- раических систем не является множеством, поскольку не существует множе- ства всех множеств). Это означает, что отношение изоморфизма разбивает множества алгебраических систем на классы эквивалентности, в каждом из которых содержатся системы, имеющие “одинаковое устройство”. Это да- ет возможность переносить изучение свойств с одной системы на другую,изоморфную ей. Так, используя факт изоморфизма геометрического вектор- ного пространства пространству строк, работу с геометрическими объекта- ми можно свести к действиям с наборами чисел, что позволяет применять компьютеры.Пример 2.2.2. 1. Рассмотрим множество векторов E3геометрическо- го векторного пространства с операциями сложения векторов и умножения 56Глава 2. АЛГЕБРАИЧЕСКИЕ СИСТЕМЫвекторов на вещественные числа. Получим систему A = hE3; +, {λ·}λ∈Ri бес- конечной сигнатуры, где одноместные функции λ· ставят в соответствие век- тору a вектор 1   2   3   4   5   6   7   8   9   ...   29

λa. Рассмотрим также систему B = hR3; +, {λ·}λ∈Ri, носитель которой состоит из троек вещественных чисел (x, y, z), + — двухместная операция покоординатного сложения троек, а функция λ· — операция умно- жения троек на число λ для всех вещественных чисел λ. Системы A и B яв- ляются линейными пространствами над полем R. Отображение ϕ, ставящее в соответствие вектору a ∈ E3его координатную строку (x, y, z) в некотором фиксированном базисе e1, e2, e3, является биекцией (ϕ: E3↔ R3), при кото- рой сохраняются действия операций: ϕ(a+b) = ϕ(a)+ϕ(b) и ϕ(λ·a) = λ·ϕ(

1) является ли граф, соответствующий рассматриваемой принципиаль- ной схеме, планарным?2) если граф планарен, то как получить его изображение без пересечения ребер?На первый вопрос принципиальный ответ дает теорема Понтрягина—Куратовского, а методы получения плоских изображений планарных графов можно найти в книге Б. Н. Деньдобренько, А. С. Малика [7].Если граф G непланарен, то для его геометрической реализации удаля- ют отдельные ребра (переносят на другую плоскость). Минимальное число ребер, которое необходимо удалить из графа для получения его плоского изображения, называется числом планарности графа G. При вынесении этих ребер на вторую плоскость получают часть графа, которая также может оказаться неплоской. Тогда вновь решают задачу вынесения отдельных ре- бер на следующую плоскость и т. д. Минимальное число плоскостей m, при котором граф G разбивается на плоские части G1, G2, . . ., Gm(разбиение ведется по множеству ребер), называется толщиной графа G.Таким образом, толщина планарного графа равна 1.Пример 4.15.2. Каждый из графов K5и K3,3имеет толщину 2. ¤Задачи и упражнения1. Представить граф (рис. 4.50) в аналитической и матричной формах, списком дуг и структурой смежности.2. Составить матрицу инцидентности для мультиграфа, изображенного на рис. 4.51.3. Найти все неизоморфные подграфы и части графа K3 4. Представить в геометрической и матричной формах графы G1∪ G2,G1∩ G2, G1⊕ G2(рис. 4.52).5. Для графов G1и G2из предыдущей задачи найти G1× G2, G1[G2] и G2[G1]. ЗАДАЧИ И УПРАЖНЕНИЯ163•••••¡¡¡¡¡¡@@@@@@R ?¾-±°²¯••••¡¡¡¡¡¡µ¸?YK*¼g±°²¯Рис. 4.50Рис. 4.516. С помощью матрицы смежности графа (рис. 4.53) найти его матрицы дости- жимости, контрдостижимости и сильных компонент.7. Найти матрицу расстояний, диаметр, радиус, центральные и периферийные вершины графа, изображенного на рис. 4.54.8. Найти все кратчайшие маршруты из вершины 2 для взвешенного графа(рис. 4.55).9. Доказать, что в любом конечном бесконтурном графе существуют вершины с нулевой полустепенью исхода и с нулевой полустепенью захода.10. Проверить на эйлеровость и найти минимальное множество покрывающих цепей:а) графа K5; б) графа K3,3; в) графа, изображенного на рис. 4.56.•••¢¢¢¢¢¸AAAAAU1 23G1••••¾AAAAAU¢¢¢¢¢®1 23 4G2••••@@@I¡¡¡µ?@@@Rh1 23 4Рис. 4.52Рис. 4.53•••••••¡¡¡¡@@@@@@•••••½½½½>ZZZZ?-@@@@@@R¡¡¡¡¡¡µ¾6K®1 23 54(3)(4)(6)(2)(1)(2)(2)(3)(−2)(−5)Рис. 4.54Рис. 4.55 164Глава 4. ЭЛЕМЕНТЫ ТЕОРИИ ГРАФОВ•••••••¶¶¶¶¶¶³³³³³³³³´´´´PPPPPPPPQQQQEEEEEEEE¢¢¢¢¢¢¡¡¡•••••••¶¶¶¶¶¶@@@´´´´@@@@@@EEEEEEEESSSSSS¡¡¡¡¡¡¢¢¢¢¢¢(2)(2)(3)(3)(1)(2)(2)(4)(3)(1)Рис. 4.56Рис. 4.57••••••••••••••••@@R¡¡ª¡¡ª ??¡¡ª@@R@@R@@R@@R¡¡ª¡¡ª¡¡ª¡¡ª@@R¡¡ª1 23 45 67 89 10 11 12 13 14 15 16•••••••JJJJ1 23 45 97 86 10Рис. 4.58Рис. 4.5911. Построить все неизоморфные трех-, четырех- и пятивершинные деревья.12. Найти остов минимального веса взвешенного графа (рис. 4.57).13. Найти упорядоченный лес, соответствующий бинарному дереву, изображен- ному на рис. 4.58.14. Найти матрицы фундаментальных циклов и фундаментальных разрезов гра- фа (рис. 4.59).15. Найти хроматическое число графа (рис. 4.60).16. Найти толщину графа (рис. 4.61).•••••••¡¡¡@@@@@@@@@SSSSSS¦¦¦¦¦¦¦¦••••••¡¡¡¡@@@@HHHHHHHHHHHHHH©©©©©©©©©©©©©©Рис. 4.60Рис. 4.61 Глава 5КОМБИНАТОРИКАКомбинаторика — раздел математики, посвященный решению задач вы- бора и расположения элементов некоторого, обычно конечного, множества в соответствии с заданными правилами. Каждое такое правило определяет способ построения некоторой конструкции из элементов исходного множе- ства, называемой комбинаторной конфигурацией. Поэтому целями комби- наторного анализа являются изучение комбинаторных конфигураций, алго- ритмов их построения, оптимизация таких алгоритмов, а также решение за- дач перечисления. Простейшими примерами комбинаторных конфигураций являются перестановки, размещения, сочетания и разбиения. При подсчете комбинаторных конфигураций используются правила суммы, произведения и степени, сформулированные в § 1.4.§ 5.1.Перестановки и подстановкиПусть дано множество M = {a1, a2, . . . , an}. Перестановкой элементов множества M называется любой кортеж (ai1, ai2, . . . , ain), состоящий из nразличных элементов множества M.Перестановки отличаются друг от друга только порядком входящих в них элементов. Покажем, что число Pnвсех перестановок множества Mравно n!. Действительно, на первое место в кортеже можно подставить лю- бой из n элементов, на второе место — любой из n − 1 оставшихся и т. д. Для последнего места остается единственный элемент. Поэтому получаем всегоn(n − 1)(n − 2) . . . 2 · 1 = n! перестановок. 166Глава 5. КОМБИНАТОРИКАПример 5.1.1. 1. Расставить на полке 10 книг можно P10= 10! == 3 628 800 различными способами.2. Список студентов группы, состоящей из 25 человек, можно составитьP25= 25! способами. ¤Напомним, что биекция σ: M ↔ M называется подстановкой множе- ства M. Пусть σ — подстановка множества M = {1, 2, . . . , n}. Тогдаσ(k) = sk, где 1 6 sk6 n, k = 1, 2, . . . , n, {s1, s2, . . . , sn} = {1, 2, . . . , n},и поэтому подстановку σ можно представить в виде матрицы, состоящей из двух строк:[σ] ­µ1 2 . . . ns1s2. . . sn¶.Ясно, что если в матрице [σ] переставить столбцы, то полученная матрица будет также определять подстановку σ. Множество всех подстановок мно- жества {1, 2, . . . , n} обозначается через Sn. Для подстановок σ, τ ∈ Snможно определить произведение σ · τ как произведение двух функций. Зная матри- цы подстановок[σ] =µ1 2 . . . ns1s2. . . sn¶и [τ ], переставив столбцы матрицы [τ ] так, чтобы ее первая строка совпала со второй строкой матрицы [σ]:µs1s2. . . snt1t2. . . tn¶,получаем[στ ] =µ1 2 . . . ns1s2. . . sn¶ µs1s2. . . snt1t2. . . tn¶=µ1 2 . . . nt1t2. . . tn¶.Пример 5.1.2. Если [σ] =µ1 2 3 4 2 1 4 3¶, [τ ] =µ1 2 3 4 3 1 4 2¶, то[στ ] =µ1 2 3 4 2 1 4 3¶ µ2 1 4 3 1 3 2 4¶=µ1 2 3 4 1 3 2 4¶. ¤Теорема 5.1.1. Алгебра hSn; ·i является группой. При n > 3 она неком-мутативна. 5.1. ПЕРЕСТАНОВКИ И ПОДСТАНОВКИ167Доказательство. Операция · ассоциативна как операция произведе- ния функций. Легко проверяется, что существует единичная подстановка εс матрицей [ε] =µ1 2 . . . n1 2 . . . n¶и для любой подстановки σ с матрицей[σ] =µ1 2 . . . ns1s2. . . sn¶существует обратная подстановка σ−1, соответству- ющая матрицеµs1s2. . . sn1 2 . . . n¶Если n > 3, то рассмотрим подстановки σ и τс матрицами[σ] =µ1 2 3 4 . . . n2 1 3 4 . . . n¶и [τ ] =µ1 2 3 4 . . . n3 2 1 4 . . . n¶Имеем [στ ] =µ1 2 3 4 . . . n2 3 1 4 . . . n¶, [τ σ] =µ1 2 3 4 . . . n3 1 2 4 . . . n¶, т. е.στ 6= τ σ. Таким образом, группа hSn; ·i некоммутативна. ¤Группа hSn; ·i называется симметрической группой степени n. Число элементов этой группы |Sn| равно Pn­ n!.Подстановка σ называется циклом длины r, если матрицу [σ] переста- новкой столбцов можно привести к видуµs1s2s3. . . sr−1srsr+1. . . sns2s3s4. . .srs1sr+1. . . sn¶.Очевидно, что в этом случае σ задает биекцию, в которой s17→ s2,s27→ s3, . . ., sr7→ s1, а остальные элементы неподвижны. Описанный цикл σобозначается через (s1s2. . . sr).Пример 5.1.3. Подстановка с матрицейµ1 2 3 4 5 6 1 5 6 4 3 2¶является циклом (2 5 3 6), а подстановка с матрицейµ1 2 3 4 5 6 4 5 2 1 6 3¶циклом не яв- ляется, так как из нее можно выделить два цикла (1 4) и (2 5 6 3). ¤Циклы (s1s2. . . sr) и (t1t2. . . tp) называются независимыми, если{s1, s2, . . . , sr} ∩ {t1, t2, . . . , tp} = ∅.Теорема 5.1.2. Каждую подстановку можно однозначно, с точностьюдо порядка сомножителей, представить в виде произведения независимыхциклов. ¤ 168Глава 5. КОМБИНАТОРИКАВ примере 5.1.3 имеемµ1 2 3 4 5 6 1 5 6 4 3 2¶= (2 5 3 6) иµ1 2 3 4 5 6 4 5 2 1 6 3¶= (1 4)(2 5 6 3).Двухэлементный цикл (i j) называется транспозицией. При транспози- ции i-й и j-й элементы меняются местами, а остальные сохраняют свое по- ложение.Теорема 5.1.3. Каждая подстановка есть произведение транспозиций.Доказательство. По теореме 5.1.2 достаточно установить, что любой цикл (s1s2. . . sr) можно представить в виде произведения транспозиций,но легко проверяется, что (s1s2. . . sr) = (s1s2)(s1s3) . . . (s1sr). ¤Пример 5.1.4. (1 2 3 4) = (1 2)(1 3)(1 4). ¤§ 5.2.Размещения и сочетанияПусть M — множество, состоящее из n элементов, m 6 n. Размещениемиз n элементов по m или упорядоченной (n, m)-выборкой, называется любой кортеж (ai1, ai2, . . . , aim), состоящий из m попарно различных элементов мно- жества M. Размещение можно рассматривать как разнозначную функциюf : {1, 2, . . . , m} → M, для которой f (j) = aijПример 5.2.1. Для множества M = {a, b, c} пары (a, b) и (b, a) являются размещениями из 3 по 2, тройка (a, c, b) — размещением из 3 по 3, а тройка(b, a, b) размещения не образует. ¤Число размещений из n по m обозначается через Amnили P (n, m). Пока- жем, чтоAmn=n!(n − m)!= n(n − 1) . . . (n − m + 1)(5.1)(напомним, что 0! = 1). Действительно, размещение m элементов мож- но представить как заполнение некоторых m позиций элементами множе- ства M. При этом первую позицию можно заполнить n различными спосо- бами. После того как 1-я позиция заполнена, элемент для заполнения 2-й позиции можно выбрать (n − 1) способами. Если продолжить этот процесс, 5.2. РАЗМЕЩЕНИЯ И СОЧЕТАНИЯ169то после заполнения позиций с 1-й по (m − 1)-ю будем иметь (n − m + 1) спо- собов заполнения последней, m-й позиции. Перемножая эти числа, получаем формулу (5.1).Пример 5.2.2. Из десяти различных книг произвольным образом бе- рутся и ставятся на полку одна за другой 3 книги. Имеется A3 10вариантов расстановок, где A3 10=10!7!= 10 · 9 · 8 = 720. ¤Cочетанием из n элементов по m или неупорядоченной (n, m)-выборкойназывается любое подмножество множества M, состоящее из m элементов.Пример 5.2.3. Если M = {a, b, c}, то {a, b}, {a, c}, {b, c} — все сочетания из 3 по 2. ¤Число сочетаний из n по m обозначается через Cmn,¡nm¢или C(n, m).Если объединить размещения из n элементов по m, состоящие из од- них и тех же элементов (не учитывая порядка их расположения), в клас- сы эквивалентности, то можно установить биекцию ϕ между сочетаниями и полученными классами по следующему правилу: ϕ({ai1, ai2, . . . , aim}) ­­ {(b1, b2, . . . , bm) | {b1, b2, . . . , bm} = {ai1, ai2, . . . , aim}}. Так как из каждого сочетания C можно получить m! размещений (упорядочивая m! способами элементы из множества C по числу перестановок этого множества), то каж- дый класс эквивалентности содержит m! размещений и, значит, Amn= m!·Cmn,т. е. Cmn=Amnm!. Таким образом,Cmn=n!(n − m)! m!.Пример 5.2.4. Из десяти чисел четыре можно выбрать C4 10=10!6!4!==7·8·9·10 4!=7·8·9·10 1·2·3·4= 210 способами. ¤Число Cmnобладает следующими свойствами:1) Cmn= Cn−mn;2) Cmn+ Cm+1n= Cm+1n+1(правило Паскаля);3) (a + b)n=nPm=0Cmnambn−mдля любых a, b ∈ R, n ∈ ω (бином Ньютона).В силу последнего свойства числа Cmnназываются биномиальными коэф-фициентами.Пример 5.2.5. Из свойства 3 следует, что 2n=nPm=0Cmn. Действительно,2n= (1 + 1)n=nPm=0Cmn1m1n−m=nPm=0Cmn. ¤ 170Глава 5. КОМБИНАТОРИКА§ 5.3.Размещения и сочетания с повторениемРазмещением с повторением из n элементов по m или упорядоченной(n, m)-выборкой с возвращениями называется любой кортеж (a1, a2, . . . , am)элементов множества M, для которого |M| = n.Поскольку в кортеж (a1, a2, . . . , am) на каждое место может претендовать любой из n элементов множества M, число размещений с повторениямиˆP (n, m) равно n · n · . . . · n|{z}m раз= nm:ˆP (n, m) = nm.Пример 5.3.1. Из цифр 1, 2, 3, 4 можно составить ˆP (4, 3) = 4 3= 64трехзначных числа. ¤Определим отношение эквивалентности на множестве размещений с по- вторениями из n по m:(a1, a2, . . . , am) ∼ (b1, b2, . . . , bm) ⇔ для любого c ∈ M число элементов ai,равных c, совпадает с числом элементов bi, равных c.Сочетанием с повторением из n элементов по m или неупорядоченной(n, m)-выборкой с возвращениями называется любой класс эквивалентности по отношению ∼ множества размещений с повторениями из n элементов поm. Другими словами, сочетания с повторениями суть множества, которые состоят из элементов, выбранных m раз из множества M, причем один и тот же элемент допускается выбирать повторно.Число сочетаний с повторениями из n элементов по m обозначается через ˆC(n, m) и вычисляется по формулеˆC(n, m) = Cmn+m−1=(n + m − 1)!m!(n − 1)!.Пример 5.3.2. Число различных бросаний двух одинаковых кубиков равно ˆC(6, 2) = C2 7= 21. ¤§ 5.4.РазбиенияПусть M — множество мощности n, {M1, M2, . . . , Mk} — разбиение мно- жества M на k подмножеств, |Mi| = mi, m1+ m2+ . . . + mk= n. Кортеж(M1, . . . , Mk) называется упорядоченным разбиением множества M. 5.4. РАЗБИЕНИЯ171Если k = 2, то упорядоченное разбиение множества M на два подмноже- ства, имеющие соответственно m1и m2элементов, определяется сочетанием(без повторений) из n элементов по m1или из n по m2(m2= n − m1). Следо- вательно, число разбиений R(m1, m2) равно биномиальному коэффициентуCm1n= Cm2n. Таким образом,R(m1, m2) =n!m1!(n − m1)!=n!m1! m2!.В общем случае число R(m1, m2, . . . , mk) упорядоченных разбиений(M1, M2, . . . , Mk), для которых |Mi| = mi, равноn!m1! m2! . . . mk!, а числоR0(n, k) упорядоченных разбиений на k подмножеств вычисляется по фор- мулеR0(n, k) =Xm1+ ... +mk=n,mi>0R(m1, m2, . . . , mk).Числа R(m1, m2, . . . , mk) называются полиномиальными коэффициентами,поскольку для всех a1, a2, . . . , ak∈ R справедливо соотношение(a1+ a2+ . . . + ak)n=Xm1+ ... +mk=n,mi>0n!m1! . . . mk!· am1 1am2 2. . . amkk.Пример 5.4.1. В студенческой группе, состоящей из 25 человек, при вы- боре старосты за выдвинутую кандидатуру проголосовали 12 человек, про- тив — 10, воздержались — 3. Сколькими способами могло быть проведено такое голосование?Пусть M — множество студентов в группе, M1— множество студентов,проголосовавших за выдвинутую кандидатуру, M2— множество студентов,проголосовавших против, M3— множество студентов, воздержавшихся от голосования. Тогда |M| = 25, |M1| = 12, |M2| = 10, |M3| = 3, (M1, M2, M3) —упорядоченное разбиение множества M. Искомое число R(12, 10, 3) равно25!12!10!3!= 1487285800. ¤Число ˆR(l1, l2, . . . , lr; m1, m2, . . . , mr) разбиений исходного множества Mна k подмножеств, неупорядоченных между собой, среди которых liмножеств 172Глава 5. КОМБИНАТОРИКАимеет мощность mi, i = 1, . . . , r, l1+ . . . + lr= k, m1l1+ . . . + mrlr= n,вычисляется по формулеˆR(l1, . . . , lr; m1, . . . , mr) =n!l1! . . . lr!(m1!)l1. . . (mr!)lr,а число всех возможных разбиений множества M на k подмножеств, неупо- рядоченных между собой, равноXl1+...+lr=k,m1l1+ ... +mrlr=n,mi>0приli>0ˆR(l1, . . . , lr; m1, . . . , mr).1   ...   14   15   16   17   18   19   20   21   ...   29


3.2. СИСТЕМЫ СЧИСЛЕНИЯ
83
Как показано в § 3.1, запись произвольного действительного чис- ла x (x > 0) в десятичной системе представляет собой перечисление всех коэффициентов разложения числа x по степеням числа 10:
a
k
a
k−1
. . . a
1
a
0
.a
1
a
2
. . . a
−n
. . . .
На этих же принципах основаны и другие позиционные системы счис- ления с любым целым числом P (P > 1), которое называется основанием
счисления. В каждой из этих систем используется P различных символов,
называемых цифрами, для обозначения некоторых различных натуральных чисел, называемых базисными. В дальнейшем в качестве базисных прини- маются целые числа от 0 до P − 1.
Запись произвольного числа x в системе счисления с основанием P так- же определяется разложением этого числа x по последовательным степеням числа P :
b
k
P
k
+ b
k−1
P
k−1
+ . . . + b
1
P
1
+ b
0
P
0
+ b
1
P
1
+ b
2
P
2
+ . . . ,
где каждый коэффициент b
i
является одним из базисных чисел и обознается одной цифрой. Аналогично записи в десятичной системе число x в P -ичной системе изображается последовательностью своих коэффициентов с разде- лением целой и дробной частей с помощью точки: x = b
k
b
k−1
. . . b
0
.b
1
b
2
. . . .
Для указания используемой системы счисления будем основание системы
(в ее десятичной записи) приводить в качестве нижнего индекса у записи числа, например 758 16
Арифметические операции над числами в любой P -ичной системе выпол- няются по тем же правилам, что и в десятичной, поскольку все они осно- вываются на правилах выполнения операций над соответствующими много- членами. При этом используются таблицы сложения и умножения, которые имеют место в системе счисления с данным основанием.
2.
Двоичная система
При P = 2 для записи чисел используются всего две цифры: 0 и 1.
Пример 3.2.1. 23 10
= 1 · 2 4
+ 0 · 2 3
+ 1 · 2 2
+ 1 · 2 1
+ 1 · 2 0
= 10111 2
,
29 32
= 1 · 2
1
+ 1 · 2
2
+ 1 · 2
3
+ 0 · 2
4
+ 1 · 2
5
= 0.11101 2
. ¤

84
Глава 3. ЧИСЛОВЫЕ СИСТЕМЫ
Полезно запомнить запись в двоичной системе первых шестнадцати на- туральных чисел:
0 1
2 3
4 5
6 7
0000 0001 0010 0011 0100 0101 0110 0111 8
9 10 11 12 13 14 15 1000 1001 1010 1011 1100 1101 1110 1111
При выполнении арифметических операций над числами в двоичной системе используются следующие таблицы сложения и умножения:
0 + 0 = 0, 0 + 1 = 1, 1 + 0 = 1, 1 + 1 = 10;
0 · 0 = 0, 0 · 1 = 0, 1 · 0 = 0, 1 · 1 = 1.
Поскольку в этой системе для изображения чисел берутся только две цифры, для построения компьютера можно использовать элементы, име- ющие лишь два различных устойчивых состояния, одно из которых соот- ветствует цифре 0, а другое — цифре 1. При этом алгебраическая система с носителем, состоящим из двоичных кодов, изоморфна соответствующей алгебраической системе, элементы которой имеют десятичную запись.
3.
Восьмеричная система
В
восьмеричной системе счисления используются цифры
0, 1, 2, 3, 4, 5, 6, 7. Запись числа основывается на его разложении по сте- пеням числа восемь с указанными коэффициентами.
Пример 3.2.2.
215 10
= 192 + 16 + 7 = 3 · 8 2
+ 2 · 8 1
+ 7 · 8 0
= 327 8
,
30.25 10
= 3 · 8 1
+ 6 · 8 0
+ 2 · 8
1
= 36.2 8
. ¤
4.
Шестнадцатеричная система
В этой системе для записи базисных чисел от нуля до пятнадцати ис- пользуются следующие символы (цифры): от 0 до 9 — те же самые арабские цифры, а для следующих чисел — от десяти до пятнадцати — символы a, b,
c, d, e, f .
Пример 3.2.3. ae.8 16
= 10 · 16 + 14 + 8/16 = 160 + 14 + 0.5 = 174.5 10
. ¤


3.2. СИСТЕМЫ СЧИСЛЕНИЯ
85 5.
Смешанные системы счисления
В некоторых случаях числа, заданные в системе счисления с основани- ем P , приходится изображать с помощью цифр системы с основанием Q
(Q < P ). Такая необходимость возникает, например, когда в память машины,
способной воспринимать только двоичные цифры, нужно ввести десятичные числа для их последующей переработки. В таких случаях используют сме-
шанные системы счисления, в которых каждый коэффициент разложения числа по степеням P записывается в Q-ичной системе. Такая смешанная система называется Q-P -ичной. При этом для записи каждого из упомя- нутых выше коэффициентов используется одно и то же количество Q-ичных разрядов, минимально необходимое для записи любого из допустимых коэф- фициентов.
Пример 3.2.4. Представим число 8903 10
в смешанной двоично- десятичной системе. Поскольку 8 10
= 1000 2
, 9 10
= 1001 2
, 3 10
= 0011 2
, имеем
8903 10
= 1000 1001 0000 0011 210
. ¤
Отметим, что запись в двоично-десятичной системе отличается от за- писи данного числа в двоичной системе счисления. Например, 8903 10
=
= 10001011000111 2
, что отличается от записи этого же числа в смешанной двоично-десятичной системе.
Особый интерес представляет случай, когда P = Q
l
(l ∈ ω). При этом запись любого числа в смешанной Q-P -ичной системе совпадает с записью этого числа в Q-ичной системе.
Пример 3.2.5. Если P = 8, Q = 2 (8 = 2 3
), то
2763 8
= 010 111 110 011 28
= 010 111 110 011 2
. ¤
Таким образом, запись числа в P -ичной системе счисления в случае
P = Q
l
является просто сокращенной записью изображения этого же числа в Q-ичной системе: для такой сокращенной записи Q-ичные цифры в изоб- ражении числа объединяются вправо и влево от точки в группы по l раз- рядов (дополняя, в случае необходимости, нужное количество нулей справа и слева), и каждое число, представленное в Q-ичной системе этой группой разрядов, записывается одной P -ичной цифрой.
Пример 3.2.6. 1011011011.111011 2
= 0010 1101 1011.1110 1100 2
=
= 0010 1101 1011.1110 1100 216
= 2db.ea
16
. ¤

86
Глава 3. ЧИСЛОВЫЕ СИСТЕМЫ
6.
Перевод чисел из одной системы счисления в другую
В связи с использованием различных систем счисления возникает необхо- димость перевода чисел из одной системы в другую. Задача перевода состоит в следующем. Пусть известна запись числа x в системе счисления с основа- нием P : x = (p
n
p
n−1
. . . p
0
.p
1
p
2
. . . p
−k
)
P
, где p
i
— цифры P -ичной систе- мы. Требуется найти запись числа x в системе счисления с основанием Q:
x = (q
m
q
m−1
. . . q
0
.q
1
q
2
. . . q
1
)
Q
, где q
i
— цифры Q-ичной системы. При этом можно ограничиться рассмотрением положительных чисел, поскольку перевод любого числа сводится к переводу его абсолютной величины с по- следующим приписыванием соответствующего знака.
Для определенности будем считать, что в процессе перевода должны ис- пользоваться только средства P -ичной арифметики. В связи с этим необхо- димо рассмотреть перевод из Q-ичной системы в P -ичную (Q → P ) и из P - ичной в Q-ичную (P → Q).
Перевод Q → P . Если известна запись числа x в Q-ичной системе
x = (q
m
q
m−1
. . . q
0
.q
1
q
2
. . . q
1
)
Q
, перевод в P -ичную систему сводится к вы- числению значения многочлена
x = q
m
Q
m
+ q
m−1
Q
m−1
+ . . . + q
0
+ q
1
Q
1
+ q
2
Q
2
+ . . . + q
−l
Q
−l
,
что следует из правил записи числа x в Q-ичной системе.
Пример 3.2.7. Переведем число x = ba.8 16
в десятичную систему сред- ствами десятичной арифметики. Здесь Q = 16, P = 10. Имеем
x = 11 · 16 + 10 + 8 · 16
1
= 186.5 10
. ¤
Перевод P → Q. Рассмотрим перевод целых чисел и правильных дробей.
В общем случае перевод любого числа сводится к независимому переводу его целой и дробной частей.
Перевод целых чисел. Пусть дана запись целого числа N в системе счис- ления с основанием P . Поскольку N — целое число, его запись в Q-ичной системе будет иметь вид N = (q
k
q
k−1
. . . q
0
)
Q
, где q
i
(0 6 q
i
< Q) — иско- мые цифры Q-ичной системы. Эта запись является сокращенной записью многочлена N = q
k
Q
k
+ q
k−1
Q
k−1
+ . . . + q
0


3.2. СИСТЕМЫ СЧИСЛЕНИЯ
87
Для определения q
0
разделим обе части последнего равенства на Q:
N/Q = q
k
Q
k−1
+ . . . + q
1
+ q
0
/Q. Приравнивая между собой целые и дробные части в левой и правой частях (учитывая, что q
i
< Q), получим, что q
0
есть остаток от деления N на Q.
Целочисленное частное от деления N на Q обозначим через N
1
Тогда N
1
= q
k
Q
k−1
+ . . . + q
1
. Поскольку N
1
есть целое число, к нему можно применить тот же прием для определения значения q
1
, которое равно остат- ку от деления N
1
на Q. Полученное при этом частное обозначим через N
2
и т. д. Этот процесс заканчивается, когда очередное частное окажется рав- ным нулю. Для окончательной записи числа N в Q-ичной системе нужно в соответствующем порядке записать коэффициенты q
i
, изображая каждый из них одной Q-ичной цифрой.
Пример 3.2.8. 1. Переведем десятичное число N = 23 в двоичную систему средствами десятичной арифметики (P = 10, Q = 2):
23/2 = 11 + 1/2, q
0
= 1, N
1
= 11,
11/2 = 5 + 1/2, q
1
= 1, N
2
= 5,
5/2 = 2 + 1/2, q
2
= 1, N
3
= 2,
2/2 = 1 + 0/2, q
3
= 0, N
4
= 1,
1/2 = 0 + 1/2, q
4
= 1, N
5
= 0.
Поскольку числа нуль и единица в каждой из этих систем обозначаются цифрами 0 и 1, то в процессе деления сразу получены искомые двоичные цифры: N = 10111 2
2. Переведем число N = 175 10
в шестнадцатеричную систему:
175/16 = 10 + 15/16, q
0
= 15, N
1
= 10,
10/16 = 0 + 10/16, q
1
= 10, N
2
= 0.
Таким образом, N = 10 · 16 1
+ 15 · 16 0
. Число 10 соответствует шестнадцате- ричной цифре a, число 15 — цифре f , следовательно, N = af
16
. ¤
Перевод дробных чисел. Пусть требуется перевести в P -ичную систему правильную дробь x (0 6 x < 1), заданную в ее P -ичной записи:
x = 0.p
1
p
2
. . . p
−k
. Запись этого числа в Q-ичной системе будет иметь вид
1   ...   6   7   8   9   10   11   12   13   ...   29

x = 0.q
1
q
2
. . . q
−m
. . . Значит,
x = q
1
Q
1
+ q
2
Q
2
+ . . . + q
−m
Q
−m
+ . . . ,
где q
i
— коэффициенты Q-ичного разложения, подлежащие определению.
Нетрудно убедиться, что эти коэффициенты можно получить путем после- довательного умножения на Q сначала исходного числа x, а затем дробной

88
Глава 3. ЧИСЛОВЫЕ СИСТЕМЫ
части очередного полученного произведения. Этот процесс продолжается до тех пор, пока дробная часть очередного произведения не окажется рав- ной нулю либо не будет достигнута требуемая точность изображения числа x
в Q-ичной системе.
Пример 3.2.9. Перевод числа x = 0.1 10
в двоичную систему приводит к такой последовательности действий:
0.1 · 2 = 0.2, q
1
= 0, дробная часть = 0.2,
0.2 · 2 = 0.4, q
2
= 0, дробная часть = 0.4,
0.4 · 2 = 0.8, q
3
= 0, дробная часть = 0.8,
0.8 · 2 = 1.6, q
4
= 1, дробная часть = 0.6,
0.6 · 2 = 1.2, q
5
= 1, дробная часть = 0.2,
. . .
Очевидно, что дальше результаты будут повторяться, и поэтому
x = (0.0001100110011 . . .)
2
= 0.0(0011)
2
. ¤
§ 3.3.
Компьютерная алгебра и численный анализ
Термин компьютерная алгебра объясняется способностью компьюте- ров манипулировать математическими выражениями, заданными символь- но, а не численно. Системы компьютерной алгебры освобождают от рутин- ной работы, связанной с численными ошибками (усечение и округление).
Прежде чем рассматривать точную арифметику, реализуемую в систе- мах компьютерной алгебры, отметим неотъемлемые недостатки численных расчетов с использованием компьютеров. Компьютер — это машина с конеч- ной памятью, состоящей из слов конечной длины алфавита {0, 1}. Элементы компьютерного слова называются битами. Обычно длина компьютерного слова составляет 16 или 32 бита, при этом максимальное целое число, кото- рое можно разместить в слове (в двоичной системе счисления), составляет
2 16
1 или 2 32
1, что соответствует пятизначным или десятизначным числам в десятичной системе счисления.
При выполнении численных расчетов на компьютере обычно возникает проблема представления бесконечного множества вещественных чисел в ко- нечной памяти. Наиболее распространенным способом решения этой пробле- мы в численном анализе является приближение (округление) вещественных чисел с использованием конечного множества с плавающей точкой.


3.3. КОМПЬЮТЕРНАЯ АЛГЕБРА И ЧИСЛЕННЫЙ АНАЛИЗ
89 0
1 4
1 2
1 2
3 3
1 2

1 4

1 2
1
2
3
3 1
2
Рис. 3.1
Множество F чисел с плавающей точкой характеризуется основанием счисления P , точностью t и областью значений экспоненты [L, U ], где пара- метры P, t, L, U зависят от компьютера. Каждое число f ∈ F представляется в виде
f = ±
µ
d
1
P
+
d
2
P
2
+ . . . +
d
t
P
t

P
e
,
где целые числа d
i
, i = 1, 2, . . . , t, удовлетворяют неравенствам 0 6 d
i
6 P −1,
L 6 e 6 U. Если d
1
6= 0, число f ∈ F называется нормализованным числом
с плавающей точкой.
Отметим, что при использовании чисел с плавающей точкой или целых чисел, помещающихся в одном компьютерном слове, арифметические опера- ции выполняются очень быстро, поскольку они производятся не программ- ным обеспечением, а электронными схемами компьютера.
Нетрудно подсчитать, что множество F содержит
2(P − 1)P
t−1
· (U − L + 1) + 1
нормализованных чисел с плавающей точкой (включая нуль). Эти числа размещены на числовой прямой равномерно не на всей области значений,
а только между последовательными степенями P .
Пример 3.3.1. На рис. 3.1 изображено 33-элементное множество норма- лизованных чисел с параметрами P = 2, t = 3, L = 1, U = 2. ¤
Приведенный пример показывает, что сумма (или произведение) данных чисел f
1
и f
2
из F может не принадлежать F и должна быть приближена ближайшим числом с плавающей точкой. Разность между истинным и при- ближенным значениями суммы (или произведения) является ошибкой округ- ления. Отметим также, что частичные операции сложения и умножения в F
не удовлетворяют законам ассоциативности и дистрибутивности. Например,
в 33-элементном множестве F справедливо 5/4 + (3/8 + 3/8) = 2, где 5/4,

90
Глава 3. ЧИСЛОВЫЕ СИСТЕМЫ
3/8, 2 ∈ F . Однако (5/4 + 3/8) + 3/8 6= 2, поскольку в F не определена сумма
(5/4+3/8) и это выражение должно быть приближено в F либо числом 3/2,
либо числом 7/4. Ошибки округления могут возникать и при работе с це- лыми числами, например, при вычислении произведения двух s-значных чисел на компьютере, который не может обрабатывать числа, содержащие больше s цифр.
Таким образом, в численном анализе нужно тщательно оценивать ошиб- ки округления, возникающие при работе любого алгоритма. Это указывает на необходимость построения и использования программных систем, способ- ных обрабатывать выражения в символьном виде и производить безошибоч- ные вычисления. Опишем два подхода к построению таких систем, первый из которых использует списочное представление чисел, а второй — много- модульную арифметику.
§ 3.4.
Списочное представление чисел
1.
Списки и базисные операции над списками
Определим по индукции понятие списка над множеством S:
1) любой элемент a ∈ S является списком над множеством S;
2) если a
1
, . . . , a
n
— списки над множеством S, n > 0, то (a
1
, . . . , a
n
) —
список над множеством S;
3) никаких списков над множеством S, кроме построенных по пп. 1 и 2,
нет.
Список, соответствующий n = 0 в п. 2, называется пустым и обозна- чается так же, как и пустое слово, через Λ. По определению каждое слово непустого алфавита S является списком над S.
Определим основные операции над списками. Если a = (a
1
, . . . , a
n
) —
список, то
длина(a) ­ l(a) ­ n;
первый(a) ­ π
1
(a) ­ a
1
;
последний(a) ­ π
n
(a) ­ a
n
;
хвост(a) ­ π
2,...,n
(a) ­ (a
2
, . . . , a
n
);
развернутый(a) ­ π
n,...,1
(a) ­ (a
n
, . . . , a
1
);
если b = (b
1
, . . . , b
k
) — список, то
присоединение(b, a) ­ bˆa ­ (b
1
, . . . , b
k
, a
1
, . . . , a
n
);
отсоединение(b, bˆa) ­ a.