stringtranslate.com

Частичное уменьшение порядка

В информатике частичное уменьшение порядка — это метод уменьшения размера пространства состояний , в котором выполняется поиск с помощью алгоритма проверки модели или автоматизированного планирования и составления расписания . Он использует коммутативность одновременно выполняемых переходов , которые приводят к одному и тому же состоянию при выполнении в разных порядках.

В явном исследовании пространства состояний частичная редукция порядка обычно относится к конкретной технике расширения представительного подмножества всех разрешенных переходов. Эта техника также описывается как проверка модели с представителями. [1] Существуют различные версии метода, так называемый метод упрямого множества, [2] метод обильного множества, [1] и метод постоянного множества. [3]

Обширные наборы

Обильные наборы являются примером проверки модели с представителями. Их формулировка основана на отдельном понятии зависимости . Два перехода считаются независимыми, только если они не могут отключить другой, когда они взаимно включены. Выполнение обоих приводит к уникальному состоянию независимо от порядка, в котором они выполняются. Переходы, которые не являются независимыми, являются зависимыми. На практике зависимость аппроксимируется с помощью статического анализа .

Обильные наборы для различных целей можно определить, задав условия, когда набор переходов является «обильным» в данном состоянии.

С0

C1 Если переход зависит от некоторого отношения перехода в , этот переход не может быть вызван, пока не будет выполнен какой-либо переход в достаточном наборе.

Условия C0 и C1 достаточны для сохранения всех тупиков в пространстве состояний. Дальнейшие ограничения необходимы для сохранения более тонких свойств. Например, для сохранения свойств линейной темпоральной логики необходимы следующие два условия:

C2 Если , то каждый переход в обильном наборе невидим.

C3 Цикл не допускается , если он содержит состояние, в котором разрешен какой-либо переход, но никогда не включается в выборку(ы) для каких-либо состояний в цикле.

Эти условия достаточны для обширного набора, но не являются необходимыми условиями. [4]

Упрямые наборы

Упрямые множества не используют явное отношение независимости. Вместо этого они определяются исключительно через коммутативность по последовательностям действий. Множество (слабо) упрямо в s, если выполняется следующее.

D0 , если выполнение последовательности возможно и приводит к состоянию , то выполнение последовательности возможно и приведет к состоянию .

D1 Либо это тупик, либо таково , что выполнение возможно.

Эти условия достаточны для сохранения всех тупиков , как и C0 и C1 в методе ample set. Однако они несколько слабее и, как таковые, могут привести к меньшим наборам. Условия C2 и C3 также могут быть еще более ослаблены по сравнению с тем, что они есть в методе ample set, но метод stubhard set совместим с C2 и C3.

Другие

Существуют также другие обозначения для частичного сокращения порядка. Одним из наиболее часто используемых является алгоритм persistent set/sleep set. Подробную информацию можно найти в диссертации Патриса Годфруа. [3]

В символической проверке модели частичное сокращение порядка может быть достигнуто путем добавления дополнительных ограничений (укрепление охраны). Дальнейшие приложения частичного сокращения порядка включают автоматизированное планирование.

Цитаты

  1. ^ ab (Пелед 1993)
  2. ^ (Вальмари 1990)
  3. ^ ab (Годфруа 1994)
  4. ^ (Кларк, Грумберг и Пелед 1999)

Ссылки