나는 promela를 처음 사용합니다. 나는 promela로 쓰여진 프로그래밍을 가지고있다 : bit signal [2];
active [2] proctype proc() {
l1: signal[_pid]=1;
l2: !signal[1-_pid] ->
l3: signal[_pid]=0;
}
#define sig0 (signal[0]==0)
#d
현재 시스템 프로토 타입을 전환 시스템 모델로 변환하려고합니다. 일부 LTL 속성이 있고 모델 검사 도구 NuSMV를 사용하여 이러한 속성을 확인하려고합니다. 필자는 단지 원자 속성 및 기타 수학적 측면을 정의하여 모델링을 시작하는 방법에 대한 정보만을 제공합니다. NuSMV 그 전환 시스템의에 Pictorial Representation of Model
새로 입문했습니다. 전이 시스템이 주어진 LTL 특성을 만족시키는 지 확인하고 싶습니다. 그러나 나는 promela에서 전이 시스템을 모델링하는 방법을 모른다. 예를 들어 아래에 표시된 전환 시스템에는 두 가지 상태가 있으며 초기 상태는 s0입니다. LTL 속성이 <> q인지 확인하는 방법. 아무도 promela 에서이 문제를 설명하는 방법을 알고 있습니까
Z3의 PDR 엔진을 사용하여 전환 시스템의 불변 조건을 증명합니다. 전환 시스템에 특정 상태에 도달하기 위해 통과해야하는 카운터 루프가 포함되어 있으면 성능이 느립니다. 다음 소스 코드에서 Z3 Fixedpoint Homepage에 전환 시스템 파이썬 클래스로 구현 된 3 가지 상태와 3 가지 전환을 포함하는 전환 시스템의 예를 볼 수 있습니다. 마지막
HTTP 상호 작용, 즉 HTTPRequest/HTTPResponse 시퀀스를 모델링하고이를 전환 시스템으로 모델링하려고합니다. 내가 사용하여 클래스 상태에 순서를 정의 : 국가는 단순히 메시지의 집합입니다 open util/ordering[State]
: sig State {
msgSet: set Message
}
의 각 쌍 (HTTPR
종속 파서는 아니지만 여전히 전환 기반 시스템 인 파서를 개발 중입니다. arc-transition처럼 SHIFT, REDUCE-LEFT, REDUCE-RIGHT와 같은 3 개의 액션을 사용하는 대신, 필자는 파서에 대한 자신의 액션을 제안했다. Andor 외의 논문을 통한 나의 이해로서 (2016), 시스템이 종이에 정의 된 몇 가지 규칙을 따르는 한 T