Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
UchebnoePosobie.doc
Скачиваний:
72
Добавлен:
11.11.2019
Размер:
6.36 Mб
Скачать

1.2. Соответствия, отображения и функции

Если по какому-то правилу для элементов множества A ставят в соответствие один или несколько элементов множества B, то формируют упорядоченные пары или кортежи (x, y), множество которых называют соответствием или отображением.

Соответствия или отображения, как и множества, могут быть четкими и нечеткими. Так каждому символу клавиатуры компъютера соответствует определенная кодовая комбинация, но фоторобот недостаточно четко соответствует какому-то лицу.

1.2.1. Четкие отображения и функции

Если некоторым элементам множества А соответствуют некоторые элементы множества В, то множество упорядоченных пар формирует подмножество прямого произведения множеств А и В,

т. е. {(x, y)| xA и yB}(АВ). Множество A называют областью отправления, а множество B - областью прибытия.

На рис. 1.1 показаны области отправления A={a, b, c, d, e, f} и прибытия – B={1, 2, 3, 4, 5, 6}.

Проекция на первую компоненту пары {1(x, y)} формирует область определения A0={a, b, c, d, f} A, а на вторую {2(x, y)} - область значений B0={1, 2, 4, 5, 6} B. Элемент yjB0 есть образ элемента хiA0, а элемент хiA0 - прообраз элемента yjB0.

Если хотя бы для одного элемента хiA0 существует несколько образов, то {(x, y)|xA,yB} (AB) называют соответствием.

Например, на рис. 1.1. представлено соответствие, т. к. есть

(c, 1), (c, 6), (d, 4), (d, 5).

Соответствие - это, как правило, двуязычные словари, когда словам одного языка (множество А), как правило, соответствуют несколько слов другого языка (множество В). Например, capacity – способность, мощность, емкость, array – массив, таблица, расположение, scanner - лексический анализатор, устройство для ввода изображений и т. д.

Если для каждого элемента хiA0 существует единственный образ, то такое множество упорядоченных пар называют отображением.

Например, в компьютере каждая буква, цифра или символ отображаются в уникальную 8-битовую кодовую комбинацию: “F”:=01000110,.. “s”:=01110011,.. ”Ф”:=11000100,.. “я”:=11001111,.. “5”:=00110101,.. “+”:=00101011,.. “”:=00100110,.. “{“:=01111011 и т.д.

Единственное отображение принято обозначать t=(x, y), а их множество h={(x, y)|xA, yB}(AB).

Если область определения задана на нескольких множествах Хi, то каждое отображение есть кортеж t=(x1, x2,..,xn, y), а их множество

h={(x1, x2, ..,xn, y)| xiXi, yY}((X1X2..Xn)Y).

В этом случае yjY0 является образом для (x1i, x2i,..,xni)(X1X2..Xn), а (x1i, x2i,..,xni)(X1X2..Xn) - прообразом для yjY0.

Если X1=X2=..=Xn=X, то h={(x1, x2,..,xn, y)| xiX, yY}(XnY).

Отображение удобно представлять в операторной форме:

h: XnY,

где h -оператор отображения.

Отображение логически совпадает с понятием функция

f=(x, y) или f=(x1, x2,..,xn, y). В этом случае элементы х и (x1, x2,..,xn) называют аргументами, а y –значением функции y=f(x) или y=f(x1, x2,..,xn).

Например, f+=(x1, x2, y) есть y=x1+x2 или fsg=(x, y) есть y=sg(x).

Множество, связывающее значения аргументов и значения функции, называют графиком функции.

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

|h||X1|*|X2|*..*|Xn|*|Y|.

Каждому отображению h может быть найдено обратное отображение: h-1: YXn или h-1={(y, x1, x2,..xn)| xiX, yY}(YXn).

Обратное отображение удобно применять при формировании таблиц реляционных баз данных (см. табл.1.3), когда в “шапке” указывают для каждого столбца имя соответствующей атрибута - Iy, Ix1, Ix2,..Ixn, а в “теле” записывают их значения.

таблица 1.3

h-1

Iy

Ix1

Ix2

...

Ixn

y1

x11

x12

...

x1n

y2

x21

x22

...

x2n

...

...

...

...

ym

xm1

xm2

...

xmn

В таблице 1.4 дан фрагмент “Журнала заказов..”. В первом столбце приведен уникальный код заказа (Iy), а в остальных указаны атрибуты клиента.

таблица 1.4.

Код

Клиент

Дата

Город

Индекс

10326

Bolido Comidas preparadas

10-ноя

Мадрид

28023

10837

Berglunds snabbkop

16-фев

Лулео

S-958 22

10853

Blauer Delikatessen

27-фев

Мангейм

68306

10876

Antonio Moreno Taqueria

28-фев

Мехико

05023

11011

Alfreds Futterkiste

09-май

Берлин

12209

...

...

...

...

...

Функция, принимающая значение на двухэлементном множестве {“истина”, “ложь”} или {1, 0}, называется предикатом. В тексте ее обозначают Р(х) или Р(x1, x2,..,xn).

Например, если на множестве целых чисел задать предикаты: Р1(х):-”x - простое число”, Р2(xi, xj):- ”xi и xj имеют общий делитель”, Р3(f+(xi, xj), xk):- ”xk ,больше суммы xi и хj”, то для x1=3, х2=4 и х3=8 имеем Р1(3)=“истина”, Р1(4)=“ложь”, Р1(8)=“ложь”, Р2(3, 4)=“ложь”, Р2(3, 8)=“ложь”, Р2(4, 8)=“истина”, Р3(f+(3, 4), 8)=“истина”;

Значения предикатов удобно описывать двухмерными таблицами, каждая клетка которых содержит “1”, если выполняется логическое условие, и “0” в противном случае. Например, для Р2(xi, xj) см. таблицу 1.5.

таблица 1.5.

Р2(xi, xj)

1

2

3

4

5

6

7

8

9

10

1

1

1

1

1

1

1

1

1

1

1

2

1

1

0

1

0

1

0

1

0

1

3

1

0

1

0

0

1

0

0

1

0

4

1

1

0

1

0

1

0

1

0

1

5

1

0

0

0

1

0

0

0

0

1

6

1

1

1

1

0

1

0

1

1

1

7

1

0

0

0

0

0

1

0

0

0

8

1

1

0

1

0

1

0

1

0

1

9

1

0

1

0

0

1

0

0

1

0

10

1

1

0

1

1

1

0

1

0

1

Если даны два отображения h1 и h2, то в результате присоединения справа к каждому кортежу первого отображения каждого кортежа второго отображения формируются кортежи нового отображения h, как результат прямого произведения h1 и h2, т. е.

h=(h1h2)={(y1;x11;x21;...xn1;y2;x12;x22;...xn2)|y(Y1Y2), xi1X1; xi2X2}.

Операторная запись прямого произведения имеет вид:

h:=product(h1, h2)

Число строк формируемого отображения равно произведению числа кортежей первого и второго отображений, а его ранг равен сумме рангов первого и второго отображений.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]