- •Млта: Математическая логика и теория алгоритмов
- •Комплект трех вариантов структурной формулы
- •Базисные структуры параллельных алгоритмов
- •1.2 Исходные структурные формулы параллельных алгоритмов
- •Стандартная форма формулы алгоритма
- •Контроль результатов
- •1. 2 Автоматизация построений основной схемы алгоритма Исходные условия
- •Вариант 1 структурной схемы. Автоматизация построений
- •Анализ структурной схемы Общие данные структуры алгоритма
- •Проверочная нумерация оболочек формул и схем
- •Вложенность формульных оболочек
- •Явная операция разделения (вилки) потоков
- •Работа с тренажером схемных построений
- •Мозаичный набор схем
- •Временные диаграммы параллельных алгоритмов
- •Графический расчет длительности алгоритма
- •Расчет длительности алгоритма
- •Вербальные тексты параллельных алгоритмов базисных структур
- •ИнФ: Инфиксная форма вербального текста
- •Ги: Горизонтальное исполнение
- •Ви: Вертикальное исполнение
- •Автоматизация построений
- •НИнФ: Неявная инфиксная форма вербального текста
- •Исходные условия
- •Ги: Горизонтальное исполнение
- •КоФ: Комбинированная форма вербального текста: ИнПрПоФ
- •Ги: Горизонтальное исполнение
- •Alg a092: begin z1; cobegin begin z3; z1 end, begin cobegin z5, begin z2; cobegin z4, z0 coend end coend ; cobegin z6, begin z5; z2 end coend end coend_or end
- •Ви: Вертикальное исполнение
- •Автоматизация построений: Алгол (Паскаль)-подобный текст
- •ПрФ: Префиксная форма
- •Исходные условия
- •Ги: Горизонтальное исполнение
- •Автоматизация построений
Автоматизация построений: Алгол (Паскаль)-подобный текст
Используется программа TEXTPRAL.
СФА 4.11: Структурная формула алгоритма / ИнФ: Инфиксная форма
A090= (Z1-((Z3-Z1)V((Z5&(Z2-(Z4&Z0)))-(Z6&(Z5-Z2))))) =
= (Z1-((Z3-Z1)&((Z5&(Z2-(Z4&Z0)))-(Z6&(Z5-Z2)))))
Выполняются построения для АлгПТ: Алгол-подобного текста алгоритма.
Для ПасПТ: Паскаль-подобного текста – в данном случае все аналогично.
Набор формулы
ГИ: Горизонтальное исполнение
Настройки: ИнФ / АлгПТ / ГИ
ШТА 4.6: Шаблон текста алгоритма
ВИ: Вертикальное исполнение
Настройки: ИнФ / АлгПТ / ВИ
ВТА 4.10: Вербальный текст алгоритма
АлгПТ: Алгол-подобный текст ПасПТ: Паскаль-подобный текст
ПрФ: Префиксная форма
Исходные условия
Строится префиксная форма вербального (словесного) текста параллельного алгоритма (структура потока управления).
Первоначально рассматривается префиксная форма для алгол-подобного (паскаль-подобного) текста в горизонтальном исполнении, определяемая как подготовка оккам-подобного текста, который возможен только в вертикальном исполнении.
Префиксная форма оккам-подобного текста алгоритма определяется по аналогии с высокоуровневым языком параллельного программирования Оккам (Occam).
Ги: Горизонтальное исполнение
АлгПТ: Алгол-подобный текст
ШТА 4.7: Шаблон текста алгоритма
Исходная ИнФ: Инфиксная форма
A090 = (Z1-((Z3-Z1)V((Z5&(Z2-(Z4&Z0)))-(Z6&(Z5-Z2))))) =
= (Z1-((Z3-Z1)&((Z5&(Z2-(Z4&Z0)))-(Z6&(Z5-Z2))))) =
= -(Z1,#$(-(Z3,Z1),-(#&(Z5,-(Z2,(Z4,Z0))),#&(Z6,-(Z5,Z2)))))
РТА4.4: Рабочий текст алгоритма
вариант 1
alg A091: seq begin Z1, par_and begin seq begin Z3, Z1 end, seq begin par_and begin Z5, seq begin Z2, par_and begin Z4, Z0 end end end, par_and begin Z6, seq begin Z5, Z2 end end end end end
вариант 2
alg A092: seq begin Z1, par_or begin seq begin Z3, Z1 end, seq begin par_and begin Z5, seq begin Z2, par_and begin Z4, Z0 end end end, par_and begin Z6, seq begin Z5, Z2 end end end end end
Допустимые упрощения: par_and = par
alg A091: seq begin Z1, par begin seq begin Z3, Z1 end, seq begin par begin Z5, seq begin Z2, par begin Z4, Z0 end end end, par begin Z6, seq begin Z5, Z2 end end end end end
ВИ: Вертикальное исполнение
ОкПТ: Оккам-подобный текстВТА4.11: Вербальный текст алгоритма
ШТА: Шаблон текста алгоритма | ||||
1 |
2 |
3 |
4 |
5 |
A092 = - ( Z1 , # $ ( - ( Z3 , Z1 ) , - ( # & ( Z5 , - ( Z2 , # & ( Z4 , Z0 ) ) ) , # & ( Z6 , - ( Z5 , Z2 ) ) ) ) ) |
A092= - ( Z1, #$ ( - ( Z3, Z1 ), - ( #& ( Z5, - ( Z2, #& ( Z4, Z0 ) ) ), #& ( Z6, - ( Z5, Z2 ) ) ) ) ) |
A092: - ( | Z1 | #$ | ( | | - | | ( | | | Z3 | | | Z1 | | ) | | - | | ( | | | #& | | | ( | | | | Z5 | | | | - | | | | ( | | | | | Z2 | | | | | #& | | | | | ( | | | | | | Z4 | | | | | | Z0 | | | | | ) | | | | ) | | | ) | | | #& | | | ( | | | | Z6 | | | | - | | | | ( | | | | | Z5 | | | | | Z2 | | | | ) | | | ) | | ) | ) ) |
A092: - | Z1 | #$ | | - | | | Z3 | | | Z1 | | - | | | #& | | | | Z5 | | | | - | | | | | Z2 | | | | | #& | | | | | | Z4 | | | | | | Z0 | | | #& | | | | Z6 | | | | - | | | | | Z5 | | | | | Z2
|
alg A092: seq Z1 par_or seq Z3 Z1 seq par_and Z5 seq Z2 par_and Z4 Z0 par_and Z6 seq Z5 Z2 |
ВТА4.12: Вербальный текст алгоритма // Дополнение к ВТА 4 .11
Подстановка функций команд (операторы присваивания)
РТА: Рабочий текст алгоритма | |
7 |
9 |
alg A092: seq Z1:Y1 := F1(X1) par_or seq Z3:Y3 := F3(X3) Z1:Y1 := F1(X1) seq par_and Z5:Y5 := F5(X5) seq Z2:Y2 := F2(X2) par_and Z4:Y4 := F4(X4) Z0:Y0 := F0(X0) par_and Z6:Y6 := F6(X6) seq Z5:Y5 := F5(X5) Z2:Y2 := F2(X2) |
alg A092: seq Y1 := F1(X1) par_or seq Y3 := F3(X3) Y1 := F1(X1) seq par_and Y5 := F5(X5) seq Y2 := F2(X2) par_and Y4 := F4(X4) Y0 := F0(X0) par_and Y6 := F6(X6) seq Y5 := F5(X5) Y2 := F2(X2) |