• 제목/요약/키워드: temporal logic formula

검색결과 7건 처리시간 0.02초

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

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

LTL Synthesis 를 통한 단일 로봇의 작업 계획 (Task Planning of Single Robot through LTL Synthesis)

  • 권령구;권기현
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2010년도 추계학술발표대회
    • /
    • pp.295-298
    • /
    • 2010
  • Linear Temporal Logic synthesis 는 LTL formula 로 표현된 요구 사항으로부터 그것을 만족하는 시스템을 만들어낸다. 이러한 synthesis 과정은 2EXPTIME-complete 이 요구 되지만 GR formula 라는 특수한 형태를 사용함으로써 복잡도를 Polynomial 시간으로 줄일 수 있다. LTL synthesis 는 작업 공간, 로봇이 취하는 센서 정보와 액션의 종류, 상위 수준의 작업 명세를 입력으로 받아 GR formula 형태로 변환하고, 기대되는 작업이 실현 가능하다면 그것을 성취할 수 있는 오토마타를 생성해낸다. Synthesis 알고리즘을 구현한 LTLMoP 라는 도구를 이용하여 LTL synthesis 과정을 보이고 화성 행궁의 미아 찾기 로봇 작업 계획을 구현한다. 마지막으로 시뮬레이션 과정을 통해 기대하는 작업을 성공적으로 성취할 수 있음을 보인다.

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})$ 두 기계는 동치이다. 그렇지 않다면 두 기계는 비동치이며 그 이유를 설명하는 반례를 제공한다. 전 과정이 자동화되었으며, 여러 개의 사례 연구에 적용한 결과 만족할 만한 결과를 얻었다.

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

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

  • PDF

병행성 분석을 위한 액션 기반의 LTS 바운드 모델 체커 (An Action-based LTS Bounded Model Checker for Analyzing Concurrency)

  • 박사천;권기현
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제35권9호
    • /
    • pp.529-537
    • /
    • 2008
  • 병행 컴포넌트를 포함하는 소프트웨어는 디버깅하기가 매우 어렵다. 따라서 철저하면서도 자동화된 검증 도구의 사용이 필수적이다. 이러한 도구 개발의 노력 중 하나가 바운드 모델 체킹 도구이다. 바운드 모델 체킹은 주어진 바운드 k 안에서 시스템의 실행 경로에 에러가 존재하는지를 철저히 검사한다. 본 논문에서는 LTS로 모델링 된 병행 프로그램을 검증하는 바운드 모델 체킹 도구를 소개한다. 이 도구에서 속성은 FLTL로 기술되는데 FLTL은 LTS 모델에서 액션을 가지고 속성을 표현하기에 적합하다. 우리는 기존 모델 체커들과의 실험을 통해서 개발된 도구의 성능을 비교분석한다.

SMV를 이용한 RACE 프로토콜의 정형 검증 및 테스팅 (Formal Verification and Testing of RACE Protocol Using SMV)

  • 남원홍;최진영;한우종
    • 전자공학회논문지CI
    • /
    • 제39권3호
    • /
    • pp.1-17
    • /
    • 2002
  • 본 논문은 심볼릭 모델 체커 SMV(Symbolic Model Verifier)를 이용하여, 한국전자통신연구원 (Electronics and Communications Research Institute)에서 개발한 캐쉬 일관성 프로토콜인 RACE(Remote Access Cache coherency Enforcement) 프로토콜의 몇 가지 특성(property)들을 검증함으로써, RACE 프로토콜이 중요 요구사항(requirement)들을 만족함을 보인다. 본 검증에서는 RACE 프로토콜의 모델을 SMV 입력 언어로 명세하며, 검증할 특성들을 CTL(Computational Tree Logic)을 이용하여 나타낸다. 본 검증을 통해서 RACE 프로토콜은 4개의 노드로 구성된 시스템에서 비정상적인 state/input 조합이 발생하지 않으며, liveness와 safety를 만족한다는 것을 검증하였다. 또한, 프로토콜 개발자들이 예상하지 못한 명세서 상의 모호성(ambiguity) 및 기아현상(starvation)을 발견하였으며, 본 검증 사례를 통하여 모델 체킹 기법이 하드웨어 프로토콜 검증에 효과적으로 이용될 수 있다는 것을 제안한다. 그리고, 검증시에 구현된 모델을 이용하여 시뮬레이션 및 테스팅에 유용하게 사용될 수 있는 테스트 케이스를 자동적으로 생성할 수 있는 새로운 방법을 제안한다.

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

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