Background Image
Previous Page  3 / 11 Next Page
Information
Show Menu
Previous Page 3 / 11 Next Page
Page Background

b

j

, называется последовательность переходов, ведущих из состояния

b

i

в состояние

b

j

. Если из состояния

b

i

существует какой-либо путь

в состояние

b

j

, то будем утверждать, что состояние

b

j

достижимо из

состояния

b

i

этим путем. Путь, ведущий из состояния

b

i

в состояние

b

j

через состояния, среди которых не встречается ни одной пары оди-

наковых, называется простым. В противном случае путь называется

сложным. Простой путь, ведущий из состояния

b

i

в то же самое со-

стояние

b

i

, называется циклом. Сложный путь, ведущий из состояния

b

i

в то же самое состояние

b

i

, называется контуром. Состояние

b

i

,

из которого ведет некоторый путь, называется начальным состоянием

этого пути, а состояние

b

j

, в который этот путь ведет, — конечным

состоянием данного пути.

Анализ корректности описания поведения сетевых экранов с по-

мощью логических программ на языке логического программирова-

ния VISUAL PROLOG сводится к поиску свойств процессных графов

переходов, наличие которых недопустимо с позиции корректности се-

тевых экранов. Например, это может быть наличие пар путей, которые

ведут в состояния, вызывающие определенного рода противоречия.

В синтаксисе языка VISUAL PROLOG каждое состояние

b

i

пред-

ставляется константой

bi

. Переменные, областью значений которых

являются состояния, обозначаются прописными символами

B

и индек-

сируются, если это необходимо, например, как

Bi

. Условия перехода

?

a

.!

a

или ?not

a

.!

e

представляются функторами, структура которых мо-

жет быть достаточно сложной. Пока соответствующие функторы обо-

значим как

f

(?

a

.!

a

) или

f

(?not

a

.!

e

). С учетом принятых обозначений

для введения структуры применяемых логических программ на языке

VISUAL PROLOG запишем следующие предикаты и правила:

initial

(

Bi

) — одноместный предикат, истинный, когда автомат на-

ходится в начальном состоянии

Bi

;

final

(

Bj

) — одноместный предикат, истинный, когда автомат на-

ходится в конечном состоянии

Bj

;

transition

(

Bi,f

(?

a

.!

a

)

, Bj

),

transition

(

Bi, f

(?not

a

.!

e

)

, Bj

) — трехмест-

ные предикаты, называемые переходами, истинные, если на про-

цессном графе переходов имеются переходы из состояния

Bi

в

состояние

Bj

, условиями перехода которых являются ?

a

.!

a

или

?not

a

.!

e

;

accessible

(

Bi

, [

X

]

, Bj

)) — двуместный предикат, истинный, если

состояние

Bj

достижимо из состояния

Bi

в результате после-

довательного выполнения условий перехода из представленных

в этом списке слева направо (наличие на процессном графе пе-

реходов пути, ведущем из состояния

Bi

в состояние

Bj

, дуги

которого помечены условиями перехода списка [

X

]);

accessible

(

Bi

,

X, Bj

):-

transition

(

Bi

,

X, Bj

) — нерекурсивное прави-

ло достижимости состояния

Bj

из состояния

Bi

;

102 ISSN 0236-3933. Вестник МГТУ им. Н.Э. Баумана. Сер. “Приборостроение”. 2015. № 1