Циклический избыточный код
- 1 year ago
- 0
- 0
Циклический ранг ориентированного графа — мера связности орграфа , предложенная Эгганом и . Это понятие интуитивно отражает, насколько близок орграф к направленному ациклическому графу (НАГ, en:DAG), когда циклический ранг НАГ равен нулю, в то время как ориентированный орграф порядка n с петлями в каждой вершине имеет циклический ранг n . Циклический ранг ориентированного графа тесно связан с глубиной дерева неориентированного графа и высотой итерации регулярных языков . Циклический ранг нашёл применение также в вычислениях с разреженными матрицами (см. статью ) и логике .
Циклический ранг r ( G ) орграфа G = ( V , E ) индуктивно определяется следующим образом
Глубина дерева неориентированного графа имеет очень похожее определение с помощью неориентированной связности и связных компонент вместо сильной связности и компонент сильной связности.
Циклический ранг ввёл Эгган в контексте высоты итерации регулярных языков . Циклический ранг переоткрыли Айзенштат и Лю как обобщение неориентированной глубины дерева . Понятие разрабатывалась с начала 1980-х и применялись для работы с разреженными матрицами .
Циклический ранг направленного ациклического графа равен 0, в то время как полный орграф порядка n с петлёй в каждой вершине имеет циклический ранг n . Кроме этих двух случаев, известен циклический ранг нескольких других орграфов: неориентированный путь порядка n , который обладает отношением симметрии рёбер и не имеет петель, имеет циклический ранг . Для ориентированного -тора , т.е. прямого произведения двух ориентированных контуров длины m и n , имеем и для m ≠ n .
Вычисление циклического ранга является сложной задачей. Грубер доказал, что соответствующая задача разрешимости является NP-полной даже для разреженных орграфов с максимальной полустепенью исхода 2. Положительный момент состоит в том, что задача разрешима за время на орграфах с максимальной полустепенью исхода 2 и за время на общих орграфах. Существует аппроксимационный алгоритм с аппроксимационным коэффициентом .
Первое приложение циклического ранга было в теории формальных языков для изучения высоты итерации языка регулярных языков . Эгган установил отношение между теориями регулярных выражений, конечными автоматами и ориентированными графами . В последующих годах это отношение стало известно как теорема Эггана . В теории автоматов недетерминированный конечный автомат с c ε-переходами (ε-НКА) определяется как 5-ка , ( Q , Σ, δ , q 0 , F ), состоящая из
Слово w ∈ Σ * допускается ε-НКА автоматом, если существует ориентированный путь из начального состояния q 0 в некоторое конечное состояние из F используя рёбра из δ , так что конкатенация всех меток вдоль пути даёт слово w . Множество всех слов над Σ * , допускаемых автоматом, является языком , принимаемым автоматом A .
Когда говорят о свойствах орграфов недетерминированного конечного автомата A с множеством состояний Q , естественным образом подразумевается орграф с множеством вершин Q , порождённый отношением переходов.
Доказательства этой теоремы дали Эгган и, позднее, Сакарович .
Другое приложение этой концепции лежит в области вычислений с разреженными матрицами , а именно, для использования при вычислении разложения Холецкого (симметричной) матрицы с помощью параллельного алгоритма. Заданную разреженную матрицу M можно интерпретировать как матрицу смежности некоторого симметричного орграфа G с n вершинами, так что ненулевые элементы матрицы соответствуют один-к-одному рёбрам графа G . Если циклический ранг орграфа G не превосходит k , то разложение Холецкого матрицы M может быть вычислено максимум за k шагов на параллельном компьютере с процессорами .