Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- research-articleJune 2024
- research-articleMay 2024JUST ACCEPTED
RNA: R1CS Normalization Algorithm Based on Data Flow Graphs for Zero-Knowledge Proofs
The communities of blockchains and distributed ledgers have been stirred up by the introduction of zero-knowledge proofs (ZKPs). Originally designed as a solution to privacy issues, ZKPs have now evolved into an effective remedy for scalability concerns. ...
- research-articleMarch 2024
The Concept of Class Invariant in Object-oriented Programming
Formal Aspects of Computing (FAC), Volume 36, Issue 1Article No.: 5, Pages 1–38https://doi.org/10.1145/3626201Class invariants—consistency constraints preserved by every operation on objects of a given type—are fundamental to building, understanding, and verifying object-oriented programs. For verification, however, they raise difficulties, which have not yet ...
- research-articleMarch 2024
Sound Runtime Assertion Checking for Memory Properties via Program Transformation
Formal Aspects of Computing (FAC), Volume 36, Issue 1Article No.: 4, Pages 1–46https://doi.org/10.1145/3605951Runtime Assertion Checking (RAC) for expressive specification languages is a non-trivial verification task that becomes even more complex for memory-related properties of imperative languages with dynamic memory allocation. It is important to ensure the ...
-
- research-articleMarch 2024
Benchmarking Combinations of Learning and Testing Algorithms for Automata Learning
Formal Aspects of Computing (FAC), Volume 36, Issue 1Article No.: 3, Pages 1–37https://doi.org/10.1145/3605360Automata learning enables model-based analysis of black-box systems by automatically constructing models from system observations, which are often collected via testing. The required testing budget to learn adequate models heavily depends on the applied ...
- research-articleNovember 2023
Refinement-based Specification and Analysis of Multi-core ARINC 653 Using Event-B
Formal Aspects of Computing (FAC), Volume 35, Issue 4Article No.: 24, Pages 1–29https://doi.org/10.1145/3617183ARINC 653 as the de facto standard of partitioning operating systems has been applied in many safety-critical domains. The multi-core version of ARINC 653, ARINC 653 Part 1-4 (Version 4), provides support for services to be utilized with a module that ...
- research-articleNovember 2023
Explanatory Denotational Semantics for Complex Event Patterns
Formal Aspects of Computing (FAC), Volume 35, Issue 4Article No.: 23, Pages 1–37https://doi.org/10.1145/3608486Recent years brought popularity and importance of complex event processing (CEP) and associated query languages. CEP systems can be hard to understand. It is often non-trivial to determine streams of events matched by a query, and sometimes we may not ...
- research-articleSeptember 2023
Bit-Vector Typestate Analysis
Formal Aspects of Computing (FAC), Volume 35, Issue 3Article No.: 19, Pages 1–36https://doi.org/10.1145/3595299Static analyses based on typestates are important in certifying correctness of code contracts. Such analyses rely on Deterministic Finite Automata (DFAs) to specify properties of an object. We target the analysis of contracts in low-latency environments, ...
- research-articleSeptember 2023
Formal Specification and Verification of JDK’s Identity Hash Map Implementation
Formal Aspects of Computing (FAC), Volume 35, Issue 3Article No.: 18, Pages 1–26https://doi.org/10.1145/3594729Hash maps are a common and important data structure in efficient algorithm implementations. Despite their wide-spread use, real-world implementations are not regularly verified.
In this article, we present the first case study of the IdentityHashMap class ...
- research-articleJune 2023
Identifying Overly Restrictive Matching Patterns in SMT-based Program Verifiers (Extended Version)
Formal Aspects of Computing (FAC), Volume 35, Issue 2Article No.: 7, Pages 1–27https://doi.org/10.1145/3571748Universal quantifiers occur frequently in proof obligations produced by program verifiers, for instance, to axiomatize uninterpreted functions and to statically express properties of arrays. SMT-based verifiers typically reason about them via E-matching, ...
- research-articleJune 2023
On Lexicographic Proof Rules for Probabilistic Termination
Formal Aspects of Computing (FAC), Volume 35, Issue 2Article No.: 11, Pages 1–25https://doi.org/10.1145/3585391We consider the almost-sure (a.s.) termination problem for probabilistic programs, which are a stochastic extension of classical imperative programs. Lexicographic ranking functions provide a sound and practical approach for termination of non-...
- research-articleMarch 2023
A Deep Reinforcement Learning Framework with Formal Verification
Formal Aspects of Computing (FAC), Volume 35, Issue 1Article No.: 5, Pages 1–17https://doi.org/10.1145/3577204Artificial Intelligence (AI) and data are reshaping organizations and businesses. Human Resources (HR) management and talent development make no exception, as they tend to involve more automation and growing quantities of data. Because this brings ...
- research-articleSeptember 2022
Fast Automated Abstract Machine Repair Using Simultaneous Modifications and Refactoring
Formal Aspects of Computing (FAC), Volume 34, Issue 2Article No.: 8, Pages 1–31https://doi.org/10.1145/3536430Automated model repair techniques enable machines to synthesise patches that ensure models meet given requirements. B-repair, which is an existing model repair approach, assists users in repairing erroneous models in the B formal method, but repairing ...
- research-articleSeptember 2022
Tight Error Analysis in Fixed-point Arithmetic
Formal Aspects of Computing (FAC), Volume 34, Issue 1Article No.: 3, Pages 1–32https://doi.org/10.1145/3524051We consider the problem of estimating the numerical accuracy of programs with operations in fixed-point arithmetic and variables of arbitrary, mixed precision, and possibly non-deterministic value. By applying a set of parameterised rewrite rules, we ...
- research-articleJuly 2022
Verification of Crashsafe Caching in a Virtual File System Switch
Formal Aspects of Computing (FAC), Volume 34, Issue 1Article No.: 2, Pages 1–33https://doi.org/10.1145/3523737When developing file systems, caching is a common technique to achieve a performant implementation. Integrating write-back caches is not primarily a problem for functional correctness, but is critical for proving crash safety. Since parts of written data ...
- research-articleJuly 2022
The Development and Deployment of Formal Methods in the UK
Formal Aspects of Computing (FAC), Volume 34, Issue 1Article No.: 6, Pages 1–21https://doi.org/10.1145/3522577In addition to the major UK contributions to research underpinning formal approaches to the specification and development of computer systems—and perhaps as a consequence of this—some significant attempts to deploy the ideas into practical environments ...
- research-articleAugust 2021
Quantitative verification of Kalman filters
Formal Aspects of Computing (FAC), Volume 33, Issue 4-5Pages 669–693https://doi.org/10.1007/s00165-020-00529-wAbstractKalman filters are widely used for estimating the state of a system based on noisy or inaccurate sensor readings, for example in the control and navigation of vehicles or robots. However, numerical instability or modelling errors may lead to ...
- research-articleMarch 2021
Model-based Safety Assessment of a Triple Modular Generator with xSAP
Formal Aspects of Computing (FAC), Volume 33, Issue 2Pages 251–295https://doi.org/10.1007/s00165-021-00532-9AbstractThe system design process needs to cope with the increasing complexity and size of systems,motivating the replacement of labor intensivemanual techniques with automated and semi-automated approaches.Recently, formal methods techniques, such as ...
- research-articleFebruary 2020
Modeling and Verification of A Timing Protection Mechanism in the OSEK/VDX OS using CSP
Formal Aspects of Computing (FAC), Volume 32, Issue 1Pages 113–145https://doi.org/10.1007/s00165-020-00511-6AbstractThe functions of automobiles are becoming increasingly intelligent, which leads to the increasing number of electrical control units for one automobile. Hence, it makes software migration and extension more complicated. In order to avoid these ...