13,892 research outputs found
User-friendly Support for Common Concepts in a Lightweight Verifier
Machine verification of formal arguments can only increase our confidence in the correctness of those arguments, but the costs of employing machine verification still outweigh the benefits for some common kinds of formal reasoning activities. As a result, usability is becoming increasingly important in the design of formal verification tools. We describe the "aartifact" lightweight verification system, designed for processing formal arguments involving basic, ubiquitous mathematical concepts. The system is a prototype for investigating potential techniques for improving the usability of formal verification systems. It leverages techniques drawn both from existing work and from our own efforts. In addition to a parser for a familiar concrete syntax and a mechanism for automated syntax lookup, the system integrates (1) a basic logical inference algorithm, (2) a database of propositions governing common mathematical concepts, and (3) a data structure that computes congruence closures of expressions involving relations found in this database. Together, these components allow the system to better accommodate the expectations of users interested in verifying formal arguments involving algebraic and logical manipulations of numbers, sets, vectors, and related operators and predicates. We demonstrate the reasonable performance of this system on typical formal arguments and briefly discuss how the system's design contributed to its usability in two case studies
Testing timed systems modeled by stream X-machines
Stream X-machines have been used to specify real systems where complex data structures. They are a variety of extended finite state machine where a shared memory is used to represent communications between the components of systems. In this paper we introduce an extension of the Stream X-machines formalism in order to specify systems that present temporal requirements. We add time in two different ways. First, we consider that (output) actions take time to be performed. Second, our formalism allows to specify timeouts. Timeouts represent the time a system can wait for the environment to react without changing its internal state. Since timeous affect the set of available actions of the system, a relation focusing on the functional behavior of systems, that is, the actions that they can perform, must explicitly take into account the possible timeouts. In this paper we also propose a formal testing methodology allowing to systematically test a system with respect to a specification. Finally, we introduce a test derivation algorithm. Given a specification, the derived test suite is sound and complete, that is, a system under test successfully passes the test suite if and only if this system conforms to the specification
Validation and Verification of Formal Specifications in Object-Oriented Software Engineering
The use of formal specifications allows for a software system to be defined with stringent mathematical semantics and syntax via such tools as propositional calculus and set theory. There are many perceived benefits garnered from formal specifications, such as a thorough and in-depth understanding of the domain and system being specified and a reduction in user requirement ambiguity. Probably the greatest benefit of formal specifications, and that which is least capitalized upon, is that mathematical proof procedures can be used to test and prove internal consistency and syntactic correctness in an effort to ensure comprehensive validation and verification (V&V). The automation of the proof process will make formal methods far more attractive by reducing the time required and the effort involved in the V&V of software systems
Computer Science and Metaphysics: A Cross-Fertilization
Computational philosophy is the use of mechanized computational techniques to
unearth philosophical insights that are either difficult or impossible to find
using traditional philosophical methods. Computational metaphysics is
computational philosophy with a focus on metaphysics. In this paper, we (a)
develop results in modal metaphysics whose discovery was computer assisted, and
(b) conclude that these results work not only to the obvious benefit of
philosophy but also, less obviously, to the benefit of computer science, since
the new computational techniques that led to these results may be more broadly
applicable within computer science. The paper includes a description of our
background methodology and how it evolved, and a discussion of our new results.Comment: 39 pages, 3 figure
Distributed First Order Logic
Distributed First Order Logic (DFOL) has been introduced more than ten years
ago with the purpose of formalising distributed knowledge-based systems, where
knowledge about heterogeneous domains is scattered into a set of interconnected
modules. DFOL formalises the knowledge contained in each module by means of
first-order theories, and the interconnections between modules by means of
special inference rules called bridge rules. Despite their restricted form in
the original DFOL formulation, bridge rules have influenced several works in
the areas of heterogeneous knowledge integration, modular knowledge
representation, and schema/ontology matching. This, in turn, has fostered
extensions and modifications of the original DFOL that have never been
systematically described and published. This paper tackles the lack of a
comprehensive description of DFOL by providing a systematic account of a
completely revised and extended version of the logic, together with a sound and
complete axiomatisation of a general form of bridge rules based on Natural
Deduction. The resulting DFOL framework is then proposed as a clear formal tool
for the representation of and reasoning about distributed knowledge and bridge
rules
Proceedings of the 21st Conference on Formal Methods in Computer-Aided Design ā FMCAD 2021
The Conference on Formal Methods in Computer-Aided Design (FMCAD) is an annual conference on the theory and applications of formal methods in hardware and system verification. FMCAD provides a leading forum to researchers in academia and industry for presenting and discussing groundbreaking methods, technologies, theoretical results, and tools for reasoning formally about computing systems. FMCAD covers formal aspects of computer-aided system design including verification, specification, synthesis, and testing
- ā¦