지역(모델 검사)

Region (model checking)

컴퓨터 과학 분야인 모델 검사에서 영역 차원 볼록 폴리토프로서, 보다 정밀하게 한 구역으로, 일부 최소성 특성을 만족한다.영역 파티션

The set of zones depends on a set of constraints of the form , , and , with and 개의 변수 및 상수.영역은 두 x}} 및 x → {\이(가) 동일한 영역에 경우 K {\ K의 동일한 제약조건을 만족하도록 정의된다 나아가 이러한 벡터를 클럭의 튜플로 간주할 때 두 벡터는 동일한 세트가 동일하다.일어날 수 있는 미래직관적으로, 은 K 의 제약조건만을 사용하는 어떤 시간적 제안적 시간적 논리 형식 또는 시간적 자동 또는 신호 자동화가 두 벡터를 모두 구별할 수 없다는 것을 의미한다.

영역 세트를 통해 영역 자동화를 생성할 수 있으며, 이 그래프는 각 노드가 영역인 방향 그래프로서 각 에지 → r r'}이가) r의 미래 가능성을 보장한다 이 영역 자동화의 제품과 시간 지정 자동 언어 을(를) 받아들이는 디스플레이 은(는) 유한 또는 부치 자동화를 생성하며, 특히 의 비어 있는 문제를 유한 또는 부치 자동화에 대한 비어 있는 문제로 줄일 수 있다이 기술은 예를 들어 UPAAL 소프트웨어에 의해 사용된다.[1]

정의

C={ ,, x } 시계 집합. 에 대해c N 에 대해 . 직관적으로 이 숫자는 시계 을(를) 비교할 수 있는 값의 상한을 나타낸다 시계 위의 영역 정의는 이러한 숫자 c s를 사용한다.현재 세 가지 동등한 정의가 주어진다.

시계 할당 [ 은(는) ν }이(가) 속한 지역을 나타낸다.영역 집합은 으)로 표시된다

시계 할당 동등성

첫 번째 정의는 두 개의 과제가 동일한 영역에 속하는지 여부를 쉽게 테스트할 수 있도록 한다.

영역은 일부 동등성 관계에 대한 동등성 등급으로 정의될 수 있다. 개의 시계 할당 1{\1} {2 {\{2}}개가 다음과 같은 제약을 충족하는 경우 동등하다.[2]: 202

  • iff , for each and an integer, and ~ being one of the following relation =, < or .
  • iff , for each , , { {\\{은(는) r {\r}의 일부분이며 ~는 다음 관계 =, < 또는 ≤ 중 하나이다.

첫 번째 종류의 제약조건은 }가 동일한 제약조건을 만족하도록 보장한다.Indeed, if and , then only the second assignment satisfies . On the other hand, if and 이 정수만 사용하기 때문에 두 할당은 정확히 동일한 제한조건 집합을 만족한다

두 번째 종류의 제약조건은 두 과제의 미래가 동일한 제약조건을 충족하도록 보장한다.예를 들어, ν 1컵{)↦ 0.5, y↦ 0.6}{\displaystyle \nu_{1}=\{x\mapsto 0.5,y\mapsto 0.6\}}과 ν 2){)↦ 0.5, y↦ 0.4}{\displaystyle \nu_{2}=\{x\mapsto 0.5,y\mapsto 0.4\}}. 그리고 나서, 제약 조건은 y=1∧ x<1{\displaystyle y=1\land x< 1}결국 ν 1{\dis의 미래에 만족했다는 것입니다.연주한다클럭 리셋이 없는 경우 의 미래까지는 클럭 리셋이 없는 경우.

영역에 대한 명시적 정의

이전의 정의에서는 두 개의 과제가 동일한 영역에 속하는지 여부를 테스트할 수 있지만, 한 지역을 데이터 구조로 쉽게 나타낼 수는 없다.아래에 제시된 세 번째 정의는 지역의 표준 인코딩을 허용한다.

영역은 다음과 같은 제약을 충족하는 방정식과 S S을(를) 사용하여 구역으로 명시적으로 정의할 수 있다.

  • 에 대해 에는 다음 중 하나가 포함되어 있다.
    • = {\일부 정수 c {\의 경우
    • ( , +) 의 일부 정수 0 c < < >
    • >
  • furthermore, for each pair of clocks , where contains constraints of the form and , then contains an (in) equality of the form ~{ ~ 은(는) =, < 또는 입니다.

and {\ c을(를) 고정할 때 마지막 제약조건은 x ~ + - x y와) 동일하다.

이 정의는 지역을 데이터 구조로 인코딩할 수 있다.각 시계에 대해 어느 구간이 속하는지를 명시하고 길이 1의 개방된 간격에 속하는 시계의 부분 부분 순서를 기억하기에 충분하다.이 구조의 크기는 log k)+ ) C 이며 시계 수는 C 이다.

시간차등분

이제 지역에 대한 세 번째 정의를 내리자.이 정의는 좀 더 추상적이지만 모델체크에 지역이 활용되는 이유이기도 하다.직관적으로, 이 정의는 두 개의 시계 할당이 동일한 영역에 속한다고 명시한다. 만약 그들 사이의 차이가 시간 제한 자동화가 그들을 알아차릴 수 없는 것이라면 말이다.동일한 지역의 다른 할당 에 대한 시계 \}부터 시작하는 r r가) 실행 r r이(가) 동일한 위치를 통과하며, 여기서 유일한 차이점은 시간이 b를 기다렸다는 것이다.두 번의 연속적인 전환 사이에 차이가 있을 수 있고, 따라서 연속적인 시계 변화는 다를 수 있다.

형식적인 정의는 이제 주어졌다.시계 세트에서 두 개의 클럭 할당 1} 및 2{\시간 자동 계산 에 대해 동일한 영역에 속하며, 경비원은 시계 x 결코 비교하지 않는다number greater than , given any location of , there is a timed bisimulation between the extended states and . More precisely, 이 이등분율은 글자와 위치를 보존하지만 정확한 시계 배정은 보존하지 않는다.[1]: 7

지역 운영

일부 작업은 현재 지역에 걸쳐 정의된다.시계의 일부를 리셋하고, 시간을 보내는 것.

시계 재설정

Given a region defined by a set of (in)equations , and a set of clocks , the region similar to in which the clocks of are restarted is now defined.이 영역은 [ 로 표시되며 다음과 같은 제약조건으로 정의된다.

  • 시계 을(를) 포함하지 않는 의 각 제약 조건
  • =의 제약 조건 x=

에 의해 정의된 할당 집합은 α 대한 할당 집합 [ 0 정확히이다

시간 처리기

지역 를) 감안하여 시계를 재설정하지 않고도 얻을 수 있는 지역을 의 시간성공자라고 한다 이제 두 개의 동등한 정의가 주어진다.

정의

시계 지역 α′만약을 위해서 각 과제 ν∈ α{\displaystyle\nu\in \alpha}α{\displaystyle \alpha} 다른 시계 지역의{\displaystyle \alpha의}은 time-successor, 주는 긍정적인 진짜 tν, 존재하 α′>0{\displaystyle t_{\nu ,\alpha의}>. 0}일 경우가 ν+tν,α′∈ α′{년.displa

, 그것은 α+tν,α′)α′{\displaystyle \alpha +t_{\nu ,\alpha의}=\alpha'}예를 들어. 이 지역 α{\displaystyle \alpha}제약 조건({\displaystyle\와 같이{0<, x<, 1,0<, y<, 1,x<, y\}의 세트에 의해 정의되}이 time-successor α ′을 의미하지 않습니다.{\displaystyle \alpha의}제약 조건의 집합({\displaystyle\와 같이{0<, x<, 1,y=1\}}. 정의를 실제로, 각 ν에α{\displaystyle\nu\in \alpha}∈, 1−}tν,α ′)ν(y){\displaystyle t_{\nu ,\alpha의}=1-\nu(y) 받는 것으로 하지만, 그런은α+{\displaystyle지}은 진정한 t이 부족하다. t=α ′ \ α α α α + tαα \alpha\ α ααα α { 세그먼트를 정의한다.

계산 가능한 정의

이제 주어진 두 번째 정의는 그 제약조건 집합에 의해 주어진 지역의 시간-처리기 세트를 명시적으로 계산할 수 있다.

제한조건 의 집합으로 정의된 영역 을(를) 지정하면 시간 성공자 집합을 정의해 봅시다그러기 위해서는 다음과 같은 변수가 필요하다.T⊆ S형태의 S{S\displaystyle}의 제약 조건의 집합{\displaystyle T\subseteq S})나는 나는{\displaystyle x_{나는}=c_{나는}c정도}. Y⊆ Cy 시계를 세트{Y\subseteq C\displaystyle}자{이\displaystyle}은 S{S\displaystyle}제약 조건은 y>요리 y{\dis 포함한다.복수. Let the set of clocks such that there are no constraints of the form in .

(가) 비어 있으면 이(가) 자체적인 시간 후계자다.If , then is the only time-successor of . Otherwise, there is a least time-successor of not equal to . The least time-successor, if is non-empty, contains:

  • 의 제약 조건
  • >
  • ={ x
  • > 이( S {\ S 조건 i< < {\ x_에 속하지 않도록 y {\에 대해

(가) 비어 있는 경우 다음 제약 조건에 의해 최소 시간 소스가 정의된다.

  • 의 클럭을 하지 않는 {\S}의 제약 조건
  • 제약 z= + 1 z 각 제약 조건 < < >+ z Z Z.

특성.

!2 ! 2 C x ( 2 x+ ) C C}( {\() 시계 수입니다.[2]: 203

지역자동화

시간 제한 자동 {을(를) 감안할 때 해당 영역 자동화제한되지 않은 을(를) 수용하는 유한 자동 또는 Büchi 자동이며 이 자동화는 시계가 영역별로 대체되는A {\ {\ {과 유사하다.직관적으로 영역 자동화는 (와) 영역 그래프의 곱으로 구성된다.이 지역 그래프를 먼저 정의한다.

지역 그래프

지역 그래프는 시간 지정 오토암톤을 실행하는 동안 가능한 시계 평가 세트를 모형화하는 루트 방향 그래프다.다음과 같이 정의된다.

  • 노드는 지역이고
  • 그것의 근원은 초기 영역 0 이며 제한조건 집합에 의해 정의된다 {= C
  • 가장자리 집합은,, , α, α, α α, α, α,,α, displaystyle \\ 타임-스프로세서 \alpha 에 대한){\ }).

지역자동화

= , , , , , 시간 자동.For each clock , let the greatest number such that there exists a guard of the form in . The region automaton of , denoted by ( ) R 유한 또는 Büchi 자동이며, 기본적으로 (와) 위에 정의된 지역 그래프의 산물이다.즉, 지역 자동화의 각 상태는 위치와 지역을 포함하는 쌍이다.동일한 영역에 속하는 두 개의 시계 배정이 동일한 가드를 만족하기 때문에 각 영역에는 어떤 전환이 가능한지 결정할 수 있는 충분한 정보가 포함되어 있다.

공식적으로 지역 자동화는 다음과 같이 정의된다.

  • 알파벳은 이고
  • 상태 집합은
  • 상태 집합은 0 { 0}{\\{\이며 초기 영역은 0{\이다.
  • 수용 상태 집합은
  • its transition relation contains , for , such that () α (는) 의 시간 값이다

Given any run of , the sequence 는) [ R이며 [2]: 207 수락하고 있다. 뒤에( (A)= ( ( 이 있다. 특히, A){\) 단어를 수락할 경우에만 시간 지정 단어를 한다.또한 {의 수락 실행은 ( ) 의 수락 실행에서 계산할 수 있다

참조

  1. ^ a b Bengtsson, Johan; Yi, Wang L (2003). "Timed Automata: Semantics, Algorithms and Tools". Lectures on Concurrency and Petri Nets. Lecture Notes in Computer Science. 3098: 87–124. doi:10.1007/978-3-540-27755-2_3. ISBN 978-3-540-22261-3.
  2. ^ a b c Alur, Rajeev; Dill, David L (April 25, 1994). "A theory of timed automata" (PDF). Theoretical Computer Science. 126 (2): 183–235. doi:10.1016/0304-3975(94)90010-8.