Опубликован: 03.04.2013 | Доступ: свободный | Студентов: 351 / 28 | Длительность: 34:17:00
Специальности: Разработчик аппаратуры
Лекция 6:

Базовые положения теории многофункциональных логических модулей

< Лекция 5 || Лекция 6: 123456 || Лекция 7 >

5.2. Каноническая система преобразований универсальных дискретных модулей

Из приведенных выше данных видно: для полного описания работы МПЭ требуется формальная модель, которая включает некоторую процедуру перечисления либо всех функций из фиксированного класса (F_{\alpha}\in\{F_{\alpha}\} - универсальный дискретный модуль (УДМ)), либо только из некоторого подкласса ( F_{\alpha} \in \{\tilde{F}_{\alpha}\} \subset \{F_{\alpha}\}(F_{\alpha} \in \{\tilde{F}_{\alpha}\} \subset \{F_{\alpha}\} - многофункциональный дискретный модуль (МДМ)). В любом случае исходным для такого перечисления является класс или множество функций и задаваемые ими отношения эквивалентности. Поэтому раскроем роль и место преобразований, сохраняющих отношение в классах произвольнозначных логических и дискретных функций, заданных (5.2).

Определение 5.1. Подмножество \{X^{s}_n\} _{b_j}\subset \{X^{s}_n\} наборов значений аргументов функции F_{\alpha} называется эквизначным, если функция принимает на нем одно и то же значение b_j: F_{\alpha} (\{X_n^s\}_{b_j}) = const = b_j

Например, двузначная ЛФ двух переменных F_{1}(x_2, x _{1}) = x _{2}*x _{1} принимает значение "ноль" на наборах X_2^0 = (0,0), X^1_2 = (0,1), X_{2}^{2} = (1,0) и значение "единица" на наборе X_{2}^{3} = (1,1), то есть ЛФ "И" разбивает все векторное пространство \{X_{2} ^{S}\} на два подмножества \{X_{2} ^{S}\}_{0} и \{X_{2} ^{S}\}_1 мощности 3 и 1 соответственно.

Для произвольных \gamma -значных функций ( \gamma = \overline{1,k} ) число эквизначных подмножеств равно \gamma.

Обозначим через r_j = \{X_n^s\}_{b_j}| мощность j -го эквизначного подмножества ( r_j =\overline{0,Q + 1} ; j = \overline{1,\gamma } ; \sum_j{r_j}=Q + 1 ).

Из определения 5.1 и (5.2) следует, что каждый вектор X^{s}_n принадлежит только одному "эквизначному" подмножеству и поэтому отношение эквизначности является отношением эквивалентности, так как оно разбивает все множество \{X^{s}_n\} на непересекающиеся подмножества \{X^s_n\} _{b_j}.

Справедливо утверждение 5.2: функция F_{\alpha} и задаваемое ею отношение R_{\alpha 1} эквизначности на множестве входных векторов \{X^{s}_n\} инвариантны перестановкам \{Ф_{w}\}_{R_{\alpha 1}} элементов внутри эквизначных подмножеств.

Следствие 5.1. Функция F_{\alpha} инвариантна множеству перестановок мощности:

|\{Ф_w\}_{R_{\alpha 1}}| = \prod_{j=1}^{\gamma}{r_j!} ( 5.5)

Для простоты будем считать, что преобразования \{Ф_w\}_{R_{\alpha 1}} определены на множестве индексов \{s\}, а \lambda -разбиения на эквизначные подмножества формируются вектором порогов H_{\chi} с целочисленными компонентами h_j (j\overline{1,\chi}) заданными на \{s\}.

Из определения 5.1 и (5.2) следует утверждение 5.3: отношение эквизначности, задаваемое фиксированным разбиением \lambda, инвариантно подмножеству функций \{F_{\alpha}\}_{\lambda}\subset \{F_{\alpha}\}, отличающихся только порядком размещения своих у значений над эквизначными подмножествами этого разбиения.

Следствие 5.2.1-разбиение заданной функции F_{\alpha} инвариантно множеству функций \{F_{\alpha}\}_{\lambda} мощности:

|\{F_{\alpha}\}_{\lambda}| = A^{\gamma}_{\chi+1} ( 5.6)

где A^{\gamma}_{\chi+1} - размещения (возможно с повторениями) \gamma значений F_{\alpha} над (\chi+1) эквизначным множеством.

Утверждения 5.2 и 5.3 говорят о том, что эквизначные подмножества \{s\}^{\lambda}_{m_j} в одном и том же разбиении \lambda можно рассматривать как неупорядоченное множество неупорядоченных подмножеств, отличающихся только количеством r_{j} элементов в каждом.

Отсюда следует утверждение 5.4: фиксированное отношение эквизначности инвариантно перестановкам собственных равномощных подмножеств.

Обозначим через \rho^{\lambda}_m мощность множества эквизначных подмножеств, имеющих в фиксированном \lambda -разбиении одну и ту же мощность

r_j^{\lambda} =m(\rho^{\lambda}_m=\overline{0,Q+1}, m=\overline{0,Q+1})

Следствие 5.3. Отношение эквизначности инвариантно множеству перестановок \{Ф_{\аlpha}\}_{R_{\аlpha 2}} собственных равномощных подмножеств, мощность которого:

|\{Ф_{\аlpha}\}_{R_{\аlpha 2}} | = \prod_m{\rho^{\lambda}_m!} ( 5.7)

В комбинаторике [90] числа \{r^{\lambda}_m\} и \{\rho^{\lambda}_m\} называют соответственно первичной и вторичной спецификациями, характеризующими с количественной стороны фиксированное \lambda - разбиение. Чтобы учесть качественные отличия \lambda -разбиений с одной и той же первичной и вторичной спецификациями, необходимо отличать эквизначные подмножества по составу входящих в них элементов.

Введем множество G всевозможных перестановок векторов X^{s}_n по индексу s, такое, что мощность |G| = (Q+1)!. Тогда мощность M_{w} множества \lambda -разбиений, отличающихся только составом элементов в соответствии с (5.5 2.11) и (5.7 2.13) будет:

M_w=\cfrac{(Q+1)!}{\prod_j{r_j^{\lambda}!}\prod_m{\rho_m^{\lambda}!}} ( 5.8)

С учетом (5.6 2.12) мощность только \gamma -значных функций \{F_{\alpha}\}_{\gamma} (из класса k -значных), инвариантных фиксированному \lambda -разбиению, будет:

M_{\gamma}^{\lambda} = | \{F_{\alpha}\}_{\gamma}^{\lambda}| 
= \cfrac{(Q+1)!k!}{\prod_j{r_{j}^{\lambda}!}\prod_j{\rho_{m}^{\lambda}!}(k-\gamma)!} ( 5.9)

где вектор порогов Н_{\chi} всегда имеет минимальную размерность \chi = \gamma - 1.

Мощность всего \gamma -значного (под)класса функций:

M_{\gamma}= \sum_{\lambda}{M_{\gamma}^{\lambda}} ( 5.10)

где суммирование ведется по всем допустимым \lambda -разбиениям.

Мощность всего k -значного класса функций:

M_k = \sum_{\gamma}{M_{\gamma}} = \sum_{\gamma}\sum_{\lambda}{\cfrac{(Q+1)!}{\prod_j{r_j^{\lambda}!}\prod_m{\rho_m^{\lambda}!}}} ( 5.11)

где суммирование ведется по всем минимально пороговым \lambda -разбиениям числа (Q+1), удовлетворяющим условию \chi \le \gamma - 1.

В таблицах 5.1, 5.2 приведены примеры расчета мощностей соответствующих (5.8)-(5.11) подклассов функций F_{\alpha}. При анализе этих таблиц следует помнить: М_w - мощность множества неупорядоченных подмножеств. С этих позиций разбиения со спецификациями (r_0, r_1) = (2,6) и (r_0, r_1) = (6,2) являются эквивалентными, и поэтому при определении мощности соответствующего подкласса учитывается только одно из них (см. табл. 5.2).

Таблица 5.1. Распределение двумерных двузначных ЛФ по lambda-подклассам
n=q_1=q_2=k=2; Q+1=4;M_k=\sum{M_{\gamma}}=16
\gamma \lambda r_j \rho_m M^{w} M^{\gamma}^{\lambda} M^{\gamma}
r_0 r_1 \rho_1 \rho_2 \rho_3 \rho_4
1 1 0 4 0 0 0 1 4!/4!=1 1*21=2 2
2 2 1 3 1 0 1 0 4!/1!3!=4 4*2!=8 14
3 2 2 0 2 0 0 4!/2!2!2!=3 3*2!=6
Таблица 5.2. Распределение трехмерных двузначных ЛФ по lambda-подклассам
n=3;q_1=q_2=q_3=k=2; Q+1=8;M_k=\sum{M_{\gamma}}=256
\gamma \lambda r_j \rho_m M^{w} M^{\gamma}^{\lambda} M^{\gamma}
r_0 r_1 \rho_1 \rho_2 \rho_3 \rho_4 \rho_5 \rho_6 \rho_7 \rho_8
1 1 0 8 0 0 0 0 0 0 0 1 8!/0!8!=1 1*2!=2 2
2 2 1 7 1 0 0 0 0 0 1 0 8!/1!7!=8 8*2!=16 254
3 2 6 0 1 0 0 0 1 0 0 8!/2!6!=28 28*21=56
4 3 5 0 0 1 0 1 0 0 0 8!/3!5!=56 56*21=112
5 4 4 0 0 0 2 0 0 0 0 8!/4!4!2!=35 35*21=70

При построении (5.11) фактически использовано три оператора:

  • перестановок входных векторов, мощность которого:
    |G| = (Q+1)!; ( 5.12-a)
  • разбиений упорядоченного множества векторов \{X^{s}_n\} на эквизначные подмножества, мощность которого:
    |\Lambda | = \prod_j{r_j^{\lambda}!}\prod_m{\rho_m^{\lambda}!} ( 5.12-б)
  • размещений \gamma -значных функций (с выбором из k возможных) над эквизначными подмножествами, мощность которого:
    |K|=\cfrac{k!}{(k-\gamma)!} ( 5.12-в)

Именно оператор K позволяет рассматривать \lambda -разбиения как неупорядоченное множество неупорядоченных подмножеств, так как при любом порядке перечисления эквизначных подмножеств в фиксированном \lambda -разбиении всегда найдется порядок размещения \gamma значений функции, отвечающий заданному отображению F_{\alpha}: X^{s}_n \to f_s.

Таким образом, используя преобразования, сохраняющие отношение эквизначности, удалось показать:

  1. Комбинаторное соотношение (5.11) обеспечивает перечисление классов функций (5.2), причем перечислительный (а не вычислительный [118]) характер (5.11) и отвечающих ему преобразований следует из того, что в них входит индекс разбиения \lambda.
  2. Устойчивость реализации функций типа (5.2) вообще и динамическая устойчивость в частности обеспечивается флуктуацией или блужданием "рабочей точки" по множеству перестановок входных векторов, сохраняющих отношение эквизначности, причем мощность "рабочей области" равна |\Lambda|.
  3. Напротив, адаптация МДМ на одну из функций типа (5.2) связана с перечислением соответствующих параметров в операторах G, \Lambda, K, изменяющих отношение эквизначности.
  4. Полученные комбинаторные соотношения позволяют ввести формальную модель работы и настройки универсальных дискретных модулей (УДМ), которая базируется не на операциях булевой алгебры, а на общих теоретико-групповых преобразованиях.

Принятая в работе форма задания функции (5.2) идентична форме задания дискретных объектов в комбинаторике [90], и поэтому процесс адаптации УДМ, состоящий в переходе от одной функции к другой, оказывается идентичен процессу перечисления дискретных объектов,

который исследуется в рамках самостоятельной теории перечислимости Дж. Пойя [118].

В вычислительной технике перечисляемыми являются инструкции реализуемой программы, что и составляет основу управления ходом вычислительного процесса. С учетом наличия в программе операторов циклов, завершаемых по условию, а также операторов условных переходов реально реализуемый в ОКОД- или ОКМД-архитектурах поток инструкций частично упорядочен во времени, а в МКМД-архитектурах процессе - и в пространстве.

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

Перечислительный процесс типа (5.11) исходит из общей комбинаторной схемы [90], преобразования которой можно представить [119]:

(K * G) : \Lambda, ( 5.13)

где:

  • K, G, \Lambda - определенные в (5.12) соответственно группы подстановок значений реализуемой функции над эквизначными подмножествами и перестановок входных векторов и их разбиения на эквизначные подмножества;
  • K*G - (полу)прямое произведение группы K и G ;
  • \Lambda - подгруппа "эквизначности", заданная на (полу)прямом произведении K*G с порядком
    |\Lambda | = \prod_j{r_j^{\lambda}!}\prod_m{\rho_m^{\lambda}!(k-\gamma)!}
  • (K*G):\Lambda - разложение (полу)прямого произведения групп K и G по факторгруппе "эквизначности" \Lambda [119].

Если общая комбинаторная схема исследует классы дискретных объектов с количественной стороны и в предположении, что отношение эквивалентности на множестве объектов задается произвольным образом, то система преобразований (5.13) интересует нас с качественной стороны и в предположении, что отношение эквивалентности задается функциями (5.2).

Из (5.13) видно, что система преобразований, перечисляющая все F_{\alpha} из \{F_{\alpha}\}, основана на преобразованиях конечной симметрической группы [103, 120, 121] (группы подстановок), которые выполняются в следующем порядке:

  • вначале реализуется (полу)прямое произведение K*G, учитывающее всевозможные способы упорядочения \{ X^{s}_n\} и f_{s} в двойках \{(X^{s}_n, f_{s} )\} ;
  • затем с помощью факторгруппы \Lambda из множества полученных таким образом пар \{(X^{s}_n, f_s)\} устраняются все эквивалентные отображения \{F_{\alpha} : X^{s}_n \to f_s\}_{\alpha}, отвечающие заданной F_{\alpha}.

Поэтому (5.13) описывает процесс реализации заданной функции F_{\alpha}, если вариации параметров G, \Lambda, K не нарушают заданное этой функцией отношение "эквизначности". В противном случае (5.13) описывает процесс адаптации УДМ, в результате чего происходит выбор, а значит, и последовательное перечисление F_{\alpha} из заданного класса.

Физическому порядку выполнения преобразований (5.13) обычно отвечает последовательность "перестановки - разбиения - подстановки":

G*\Lambda*K, ( 5.14)

где входные ( G ), внутренние ( \Lambda ) и выходные ( K ) преобразования отвечают теоретико-групповым соотношениям (5.13), возможно, с некоторыми ограничениями, как это имеет место в МПЭ [79, 80].

Параметры преобразований (5.13) и (5.14) зависят только от классов "перечисляемых" функций и не зависят от особенностей работы и/или настройки реализующих эти преобразования УДМ. Это позволяет рассматривать (5.13) и (5.14) как каноническую тройку, задающую систему преобразований абстрактного УДМ, с помощью которого можно описать работу и настройку любого реального МДМ или УДМ.

< Лекция 5 || Лекция 6: 123456 || Лекция 7 >