ABSTRACT
The goal of software verification is to establish the correctness of a program formally. Verification of programs that involve combinations of novel and sophisticated data abstractions is a challenge because their verification typically involves mathematical domains for which there are no decision procedures. This research leverages the existing RESOLVE verifying compiler. A central piece of such a compiler is its prover. To scale up, the prover needs to instantiate and utilize appropriate theorems from arbitrary mathematical theory units. This research aims to replace the existing prototype prover with a more powerful one suitable for proving verification conditions in sequent form. The new prover uses a three-tiered searching strategy to optimize the proof quest by eliminating the exploration of unnecessary search spaces. The research uses generic maps and trees to experiment with the proposed strategy and evaluate the new prover.
Index Terms
- Making Proof Quest Effective for An Automated Prover
Recommendations
Theorem Prover for Intuitionistic Logic Based on the Inverse Method
The first-order intuitionistic logic is a formal theory from the family of constructive logics. In intuitionistic logic, it is possible to extract a particular example x = a and a proof of a formula P(a) from a proof of a formula źxP(x). Owing to this ...
Proof Theory for Casari's Comparative Logics
Comparative logics were introduced by Casari in the 1980s to treat aspects of comparative reasoning occurring in natural language. In this article Gentzen systems are defined for these logics by means of a special mix rule that combines calculi for ...
Validating assertion language rewrite rules and semantics with automated theorem provers
Modern assertion languages such as property specification language (PSL) and System Verilog assertions include many language constructs. By far, the most economical way to process the full languages in automated tools is to rewrite the majority of ...
Comments