• 제목/요약/키워드: 시제 논리식

검색결과 6건 처리시간 0.019초

Sequence Diagram을 이용한 테스트 오라클 생성 (Generating Test Oracles from Sequence Diagram for Java)

  • 정정수
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2000년도 가을 학술발표논문집 Vol.27 No.2 (1)
    • /
    • pp.442-444
    • /
    • 2000
  • 이 논문에서는 산업계의 표준으로 널리 사용되고 있는 객체 지향 시스템의 명세 언어인 UML의 sequence diagram을 이용하여 객체 지향 시스템을 검증하는 방법과 이 방법을 테스팅 오라클을 생성하는데 사용할 수 있는 프레임웍을 제시하였다. 우리는 sequence diagram을 테스팅 결과의 검증에 사용하기 위하여 정형적으로 재정의 하였다. 그리고 시제 논리의 강력한 검증 능력을 사용하기 위해서 Half-Order Dynamic Temporal Logic(HDTL)이라 불리는 새로운 시제 논리를 정의하였고 sequence diagram을 HDTL 논리식으로 변화시키는 의미 함수(semantic function)를 정의하였다. HDTL에서 오토마톤을 생성하기 위해서 Tableau 방법을 변형하여 적용시켰다. 이 결과 생성된 오토마톤은 이상 상태(anomaly), 즉 sequence diagram에 표현되지 않은 사건(evevt)의 발생을 검색하는 오라클로 사용할 수 있다. 테스팅의 결과를 수작업으로 검증하는 것은 매우 어렵고 오류가 발생하기 쉬운 작업이므로 제안한 방법은 유용하게 사용될 수 있다.

  • PDF

SMV를 이용한 유한 상태 기계의 동치 검사 (Equivalence Checking of Finite State Machines with SMV)

  • 권기현;엄태호
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제30권7_8호
    • /
    • pp.642-648
    • /
    • 2003
  • 본 연구에서는 유한 상태 기계들 간의 동치 여부를 검증하고자 한다. 즉 모든 입력에 대하여 유한 상태 기계의 반응이 항상 동일한지를 판정하고자 한다. 만약 두 개의 유한 상태 기계가 동치라고 판정된다면, 복잡한 유한 상태 기계는 단순한 기계로 대치될 수 있다. 또한 명세와 구현이 모두 유한 상태 기계로 표현된 경우, 동치 검사를 이용해서 구현이 명세를 만족하는지 결정할 수 있다. 본 논문에서는 이와 같은 유한 상태 기계의 동치 검사를 모델 검사 기법으로 다음과 같이 해결한다. 주어진 유한 상태 기계${M_A}와 {M_R}$를 조합하여 모델 $M = {M_A} {\times} {M_\beta}$을 구축하고, 검사할 동치 조건을 시제 논리식 ${\Phi}$로 기술한다. 만일 모델이 시제 논리식을 만족한다면$(M={\Phi})$ 두 기계는 동치이다. 그렇지 않다면 두 기계는 비동치이며 그 이유를 설명하는 반례를 제공한다. 전 과정이 자동화되었으며, 여러 개의 사례 연구에 적용한 결과 만족할 만한 결과를 얻었다.

릴레이 모델 체킹을 이용한 상태 폭발 문제 해결 (Mitigating the State Explosion Problem using Relay Model Checking)

  • 이태훈;권기현
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제31권11호
    • /
    • pp.1560-1567
    • /
    • 2004
  • 모델 체킹에서 고려해야 할 상태의 수는 모델의 크기에 따라 지수적으로 증가한다. 이것을 상태 폭발 문제라고 부르며 이를 해결하기 위한 방법으로 추상화, 반순서, 대칭성 등이 폭 넓게 사용되고 있다. 이들 방법들은 모델의 구조 정보를 이용하여 모델의 크기를 축소하는 데 목표를 두고 있다. 이와는 달리, 본 논문에서는 논리식을 순서적으로 분할하여 차례대로 모델 체킹을 수행하는 릴레이 모델 체킹을 제안한다. 그리고 기존 모델 체킹 기법으로 해결하지 못했던 상태 폭발 문제를 릴레이 모델 체킹으로 해결한 경험을 기술한다.

모형검사를 위한 Modal mu-Calculus 와 CTL의 안전성 및 필연성 및 논리식 증명 (A Proof of Safety and Liveness Property in Modal mu-Calculus and CTL for Model Checking)

  • 이부호;김태균;이준원;김성운
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제26권12호
    • /
    • pp.1485-1492
    • /
    • 1999
  • 대규모 시스템 명세의 올바름을 검증하기 위한 유한 상태 LTS에 기반을 둔 CTL논리 적용에 있어 가장 큰 문제점은, 시스템 내부의 병렬 프로세스간의 상호작용으로 인한 상태폭발이다. 그러나 Modal mu-calculus 논리를 시스템 안전성 및 필연성 특성 명세에 사용하면, 행위에 의한 순환적 정의가 가능하므로 상태폭발 문제가 해결 가능하다. 본 논문에서는 LTS로 명세화된 통신 프로토콜 시스템 모델의 안전성 및 필연성 특성을 모형 검사 기법에 의해 검증함에 있어, 시제 논리로 사용된 Modal mu-calculus 안전성 및 필연성 논리식과 CTL 의 안전성 및 필연성 논리식의 극한값이 동일함을 두 논리식을 만족하는 상태 집합이 같다는 것을 보임으로써 증명한다. 증명된 결과는 I/O FSM 모델로 표현된 통신 프로토콜의 안전성 및 필연성 검사를 위해 이론적인 기반으로서, 컴퓨터를 이용한 모형검사 기법에 효과적인 방법으로 응용이 가능하다.Abstract In applying CTL-based model checking approach to correctness verification of large state transition system specifications, the major obstacle is the combinational explosion of the state space arising due to interaction of many loosely coupled parallel processes. If, however, the modal mu-calculus viewed as a CTL-based logic with recursion, is used to specify the safety and liveness property of a given system, it is possible to resolve this problem. In this paper, we discuss the problem of verifying communication protocol system specified in LTS, and prove that a logic expression specifying safety and liveness in modal mu-calculus is semantically identical to the maximum value of the expression in CTL. This relation is verified by the proof that the sets of states satisfying the two logic expressions are equivalent. The proof can be used as a theoretical basis for verifying safety and liveness of communication protocols represented as I/O FSM model.

혼합 도달성 분석을 이용한 상태 불변식의 단순화 (Simplification of State Invariant with Mixed Reachability Analysis)

  • 권기현
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제30권3_4호
    • /
    • pp.212-218
    • /
    • 2003
  • 상태 불변식은 도달 가능한 모든 상태에서 만족되는 속성이다. 불변식은 복잡한 소프트웨어 시스템의 분석과 이해에 사용될 뿐만 아니라 안전성, 궁극성, 일관성 등과 같은 시스템 검증에도 사용된다. 이와 같은 이유로 인해서, 유한 상태 기계 모델로부터 상태 불변식을 추출하는 연구가 활발히 진행되고 있다. 상태 불변식을 생성하는 기존 연구에서는 도달 가능한 상태가 모두 고려됐다. 따라서 생성된 상태 불변식은 길고 복잡해서, 사용자가 이해하기 어려웠다. 본 논문에서는 '어떻게 상태 불변식을 단순화 할 것인가\ulcorner` 란 질문에 대한 답을 보인다. 상태 불변식의 복잡성은 고려되어진 상태의 크기에 강하게 좌우된다. 고려된 상태들이 작으면 작을수록, 상태 불변식의 길이는 짧다. 단순한 상태 불변식을 생성하기 위해서는, 전체 상태 공간보다는 관심 있는 특정 부분(즉 범위)에 집중해야 한다. 관심 있는 범위를 표현하기 위하여 본 논문에서는 CTL 논리를 사용한다. CTL로 범위가 표현되면, 혼합 도달성 분석을 이용하여 범위 내에 속하는 상태들을 찾는다. 명백히, 이 방법으로 계산된 상태 집합은 도달 가능한 모든 상태의 부분 집합이다. 따라서, 더 약하지만 더 이해력 있는 상태 불변식을 얻는다.

게임 풀이를 위한 상태 공간 축소 (Reductions of State Space for Solving Games)

  • 이태훈;권기현
    • 한국게임학회 논문지
    • /
    • 제4권1호
    • /
    • pp.58-66
    • /
    • 2004
  • 본 논문에서는 반례를 도달성 게임 풀이에 활용했다. 도달성 게임이란, 게임 규칙을 준수하면서 초기 상태에서 목표 상태로 가는 경로를 찾는 것이다. 게임의 초기 상태를 유한 상태 모델로 표현하고 목표 상태의 부정(오답)을 시제 논리식으로 표현해서 모델 검사기에 입력하면, 반례로 오답에 대한 부정 즉 정답을 출력한다. 다시 말해서 반례로 출력된 것이 문제를 해결하는 정답인 것이다. 이와 같은 아이디어를 푸쉬푸쉬 게임 풀이에 적용했다. 그 결과 크기가 작은 푸쉬푸쉬 게임의 경우 게임을 해결하는 최단 경로를 쉽게 찾아냈다. 그러나 게임의 크기가 큰 경우 제한된 시간(실험에서는 3시간)내에 찾아내지 못했다. 왜냐하면 게임의 크기가 커질 경우 검사해야할 상태의 수가 지수적으로 증가하는 상태 폭발 문제가 발생했기 때문이다. 상태 폭발 문제를 해결하기 위해 추상화 기법을 이용해서 검사해야 할 상태공간을 축소하였다. 상태 공간을 줄인 결과, 기존 모델체킹으로 해결하지 못했던 게임을 풀 수 있었다.

  • PDF