• 제목/요약/키워드: Satisfiability

검색결과 33건 처리시간 0.024초

집합 피복 공식화를 이용한 명제논리의 만족도 문제에 대한 계산실험 연구 (An Empirical Study for Satisfiability Problems in Propositional Logic Using Set Covering Formulation)

  • 조건
    • 한국경영과학회지
    • /
    • 제27권4호
    • /
    • pp.87-109
    • /
    • 2002
  • A satisfiability problem in propositional logic is the problem of checking for the existence of a set of truth values of atomic prepositions that renders an input propositional formula true. This paper describes an empirical investigation of a particular integer programming approach, using the set covering model, to solve satisfiability problems. Our satisfiability engine, SETSAT, is a fully integrated, linear programming based, branch and bound method using various symbolic routines for the reduction of the logic formulas. SETSAT has been implemented in the integer programming shell MINTO which, in turn, uses the CPLEX linear programming system. The logic processing routines were written in C and integrated into the MINTO functions. The experiments were conducted on a benchmark set of satisfiability problems that were compiled at the University of Ulm in Germany. The computational results indicate that our approach is competitive with the state of the art.

An Algorithm Solving SAT Problem Based on Splitting Rule and Extension Rule

  • Xu, Youjun
    • Journal of Information Processing Systems
    • /
    • 제13권5호
    • /
    • pp.1149-1157
    • /
    • 2017
  • The satisfiability problem is always a core problem in artificial intelligence (AI). And how to improve the efficiency of algorithms solving the satisfiability problem is widely concerned. Algorithm IER (Improved Extension Rule) is based on extension rule. The number of atoms and the number of clauses affect the efficiency of the algorithm IER. DPLL rules are helpful to reduce these numbers. Then a complete algorithm CIER based on splitting rule and extension rule is proposed in this paper in order to improve the efficiency. At first, the algorithm CIER (Complete Improved Extension Rule) reduces the scale of a clause set with DPLL rules. Then, the clause set is split into a group of small clause sets. In the end, the satisfiability of the clause set is got from these small clause sets'. A strategy MOAMD (maximum occurrences and maximum difference) for the algorithm CIER is given. With this strategy, a better arrangement of atoms could be got. This arrangement could make the number of small clause sets fewer and the scale of these sets smaller. So, the algorithm CIER will be more efficient.

A Subclass of Petri Net with Reachability Equivalent to State Equation Satisfiability: Live Single Branch Petri Net

  • Gao, Qian;Cho, Young Im
    • International Journal of Fuzzy Logic and Intelligent Systems
    • /
    • 제13권3호
    • /
    • pp.200-207
    • /
    • 2013
  • Petri Nets are a system description and analysis tool. Reachability is one of the most basic properties in Petri Net research. In a sense, reachability research is the foundation study for other dynamic properties of Petri Nets through which many problems involving Petri Nets can be described. Nowadays, there are two mature analysis methods-the matrix equation and the reachability tree. However, both methods are localized, i.e., it is difficult to find a general algorithm that can determine reachability for an arbitrary Petri Net, especially an unbounded Petri Net. This paper proposes and proves three propositions in order to present a subclass of a Petri Net, the live single-branch Petri Net, whose reachability is equivalent to the satisfiability of the state equation.

SAT에 기반한 포인터가 있는 프로그램을 위한 목적 지향 테스트 데이터 생성 (A Goal-oriented Test Data Generation for Programs with Pointers based on SAT)

  • 정인상
    • 인터넷정보학회논문지
    • /
    • 제9권2호
    • /
    • pp.89-105
    • /
    • 2008
  • 지금까지 테스트 데이터를 자동으로 생성하기 위한 대부분의 연구는 프로그램에 포인터가 존재하지 않는 경우만을 대상으로 하였다. 최근에 포인터가 있는 경우에도 테스트 데이터를 자동으로 생성할 수 있는 방법들이 제안되었지만 테스트할 프로그램 경로를 완전하게 명시해야 하는 경로 기반 방법이거나 프로그램을 실제 실행해야 하는 방법들이다. 이 논문에서는 프로그램 경로를 완전하게 명시하지 않아도 포인터가 있는 프로그램에 대하여 테스트 데이터를 생성할 수 있는 새로운 방법을 제안한다. 제안된 방법은 테스트 데이터 생성 문제를SAT(SATisfiability) 문제로 변환하고 SAT 해결도구를 이용하여 자동으로 테스트 데이터를 생성하는 정적 방법이다. 이를 위해 프로그램을 1차 관계 논리 언어인 Alloy로 변환하고 Alloy 분석기를 통하여 테스트 데이터를 생성한다.

  • PDF

만족가능성 처리기를 이용한 이진 변수 서브시퀀스 추출 (Extracting Subsequence of Boolean Variables using SAT-solver)

  • 박사천;권기현
    • 정보처리학회논문지D
    • /
    • 제15D권6호
    • /
    • pp.777-784
    • /
    • 2008
  • 최근 정형 검증 분야에서 상태 폭발 문제를 극복하기 위해 만족가능성(Satisfiability) 처리기를 사용하는 방법이 많이 연구되고 있다. 만족가능성 처리기를 사용하려면 대상을 CNF 식으로 변환해야 하는데, 이진 기수 제약 조건은 시스템을 CNF 식으로 변환하기 위해 많이 사용되는 기법이다. 그러나 이진 기수 제약 조건은 이진 변수들의 집합을 다루기 때문에 이진 변수들의 순서 정보는 변환할 수 없었다. 본 논문에서는 이진 변수의 시퀀스에서 길이가 k인 서브시퀀스 추출 문제에 대한 CNF 변환 방법을 제안한다. 또한 실험을 통해 제안된 방법이 순서정보를 고려치 않고 적용한 변환 방법보다 훨씬 더 좋은 결과를 얻을 수 있었다.

SAT를 이용한 MC/DC 블랙박스 테스트 케이스 자동 생성 (Automated Black-Box Test Case Generation for MC/DC with SAT)

  • 정인상
    • 정보처리학회논문지D
    • /
    • 제16D권6호
    • /
    • pp.911-920
    • /
    • 2009
  • 항공 소프트웨어가 FAA(미국연방항공청)에 승인받기 위해서는 DO-178B 표준에 따라야 한다. DO-178B에서는 안전 필수 소프트웨어의 단위 테스트가 MC/DC 기준을 만족하기를 요구하고 있다. MC/DC에 따른 테스트는 안전성과 관련된 오류를 효과적으로 찾을 수 있는 수단으로 알려져 있지만 MC/DC를 만족하는 테스트 케이스를 생성하는 작업이 용이하지 않는 것도 사실이다. 이 논문에서는 MD-SAT이라고 명명한 SAT(SATisfiability) 기술을 사용하여 MC/DC를 만족하는 테스트 케이스를 자동으로 생성하는 도구에 대해 소개한다. 이 도구는 결정표 기반 테스트, 인과 그래핑 및 상태 전이 테스트 방법을 구현한 도구에서 보다 다양한 테스트 케이스 생성을 위해 사용될 수 있다.

SAT를 기반으로 하는 플래그 변수가 있는 프로그램 테스팅을 위한 테스트 데이터 자동 생성 (Automated Test Data Generation for Testing Programs with Flag Variables Based on SAT)

  • 정인상
    • 정보처리학회논문지D
    • /
    • 제16D권3호
    • /
    • pp.371-380
    • /
    • 2009
  • 최근에 테스트 데이터를 자동으로 생성하는 방법에 관한 연구가 활발하게 진행되고 있다. 그러나 이러한 방법들은 플래그 변수가 프로그램에 존재하는 경우에는 효과적이지 못함이 밝혀졌다. 이는 엔진 제어기와 같은 내장형 시스템들이 전형적으로 디바이스 관련 상태 정보를 기록하기 위해 플래그 변수를 많이 이용한다는 점을 고려할 때 문제가 된다. 이 논문에서는 플래그 변수가 있는 프로그램에 대하여 효과적으로 테스트 데이터를 생성할 수 있는 방법을 소개한다. 이 방법은 테스트 데이터 생성 문제를 SAT(SATisfiability) 문제로 변환하고 SAT 해결도구를 이용하여 자동으로 테스트 데이터를 생성한다. 이를 위해 프로그램을 1차 관계 논리 언어인 Alloy로 변환하고 Alloy 분석기를 통하여 테스트 데이터를 생성한다.

DNF를 이용한 SAT의 효율적 적용 (Efficient Application to SAT Using DNF)

  • 남명진;최진영
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2003년도 봄 학술발표논문집 Vol.30 No.1 (A)
    • /
    • pp.881-883
    • /
    • 2003
  • 하드웨어 검증과 모델 체킹 등의 분야에서, SAT(satisfiability problem)나 항진 명제 검사(tautology checking)는 매우 중요한 문제이다. 그러나 이들은 모두 NP-complete 문제이므로 그 복잡도가 매우 크다. 이를 해결하기 위해 여러 가지 연구가 이루어져 왔으며, 여러 효율적인 알고리즘이 존재한다. 이러한 알고리즘은 대부분 일반 표현식을 CNF(conjunctive normal form)로 바꾸어 입력 형식으로 사용한다. 이 논문에서는 일반 표현식을 입력으로 받아 DNF로 변환한 뒤 DNF의 특성을 이용하여 SAT를 검사하는 효율적인 방법을 제시한다.

  • PDF

SAT Preprocessor의 구현 및 실험 (Implementation and Experiments of SAT preprocessor)

  • 남명진;최진영;곽희환
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2003년도 가을 학술발표논문집 Vol.30 No.2 (1)
    • /
    • pp.517-519
    • /
    • 2003
  • 하드웨어 검증과 모델 체킹 등의 분야에서, SAT(satisfiability problem)나 항진 명제 검사(tautology checking)는 매우 중요한 문제이다. 그러나 이들은 모두 NP-complete 문제이므로 그 복잡도가 매우 크다. 이를 해결하기 위한 여러 연구가 진행되고 있고, 그 결과 성능이 좋은 solver들이 개발되었다. 하지만 문제가 커질수록 solver의 처리 시간이 급격하게 증가한다. 이 논문에서는 solver가 복잡한 문제를 더 효율적으로 풀기 위해 논문“Local search for Boolean relations on the basis of unit propagation”[5]에서 제안된 preprocessor(전처리기), P_EQ의 개념을 설명하고, 실험을 통한 결과를 제시한다.

  • PDF

Yices와 모델 정보를 이용한 Simulink/Stateflow 모델의 테스트 케이스 생성 기법 (Test Case Generation For Simulink/Stateflow Model Using Yices and Model Information)

  • 박한곤;정기현;최경희
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제6권6호
    • /
    • pp.293-302
    • /
    • 2017
  • 본 논문에서는 SMT (Satisfiability Modulo Theories) Solver인 Yices와 Simulink/Stateflow (SL/SF)의 모델 정보를 이용한 SL/SF 모델의 테스트 케이스 생성 기법을 제안한다. SL/SF 모델로부터 테스트 케이스 생성 시 발생하는 가장 어려운 점은 도달 가능성 문제를 해결하는 것이다. 제안하는 방법에서는 Yices와 모델 정보로부터 만들어진 테이블로 도달 가능성 문제를 해결한다. 제안하는 방법에서는 SL/SF 모델을 Yices의 입력 언어로 변환한 SMT 모델을 사용하여 테스트 케이스를 생성한다. SL/SF 모델로부터 생성된 정보들은 제안하는 테스트 케이스 생성 알고리즘의 Backward 프로세싱에 사용되어 테스트 케이스 생성 효율을 증가시킨다. 제안된 테스트 케이스 생성 기법은 상용 냉장고 제어시스템 모델과 자동차의 ECU (Electrical Control Unit) 모델을 이용하여 성능을 평가한다.