Циклический участок (Loop region) — конструкция, позволяющая на основе анализа уграфа с вершинами и дугами за время выявлять циклическую структуру алгоритма и находить отношения частот выполнения между всеми подмножествами его элементов, которые
не противоречат достоверным отношениям частот выполнения, если уграф алгоритма является регуляризуемым.
Пусть — такая последовательность уграфов, в которой только не содержит нетривиальных бикомпонент, и для любого уграф получается из удалением в каждой нетривиальной бикомпоненте уграфа всех дуг, заходящих в один из ее входов. Эту входную вершину бикомпоненты называют ее головой, а удаленные дуги — дугами повторения уровня .
Пусть обозначает множество всех дуг повторения уровня Части схемы называемые ее циклическими участками, определяются по следующим двум правилам:
1) Циклический участок нулевого уровня в уграфе один; он состоит
из всех тех вершин и дуг, которые принадлежат путям по
от к , и имеет головой вершину ;
2) пусть для некоторого — бикомпонента схемы с головой тогда в имеется циклический участок уровня с головой он состоит из всех тех вершин и дуг, из которых достижима в графе, полученном из удалением всех дуг повторения уровня
См. также
Литература
- Касьянов В.Н. Оптимизирующие преобразования программ. — М.: Наука, 1988.