English
Related papers

Related papers: Extracting Formal Specifications to Strenghten Typ…

200 papers

Safety and assurance standards often rely on the principle that requirements errors can be minimised by expressing the requirements more formally. Although numerous case studies have shown that the act of formalising previously informal…

Software Engineering · Computer Science 2014-04-29 Ibrahim Habli , Andrew Rae

Testing of network services represents one of the biggest challenges in cyber security. Because new vulnerabilities are detected on a regular basis, more research is needed. These faults have their roots in the software development cycle or…

Cryptography and Security · Computer Science 2018-03-29 Josip Bozic , Lina Marsso , Radu Mateescu , Franz Wotawa

Data analysis requires translating higher level questions and hypotheses into computable statistical models. We present a mixed-methods study aimed at identifying the steps, considerations, and challenges involved in operationalizing…

Other Computer Science · Computer Science 2021-04-08 Eunice Jun , Melissa Birchfield , Nicole de Moura , Jeffrey Heer , Rene Just

Use case driven development methodologies put use cases at the center of the software development process. However, in order to support automated development and analysis, use cases need to be appropriately formalized. This will also help…

Software Engineering · Computer Science 2016-03-30 Rui Couto , António Nestor Ribeiro , José Creissac Campos

While language models are increasingly more proficient at code generation, they still frequently generate incorrect programs. Many of these programs are obviously wrong, but others are more subtle and pass weaker correctness checks such as…

Software Engineering · Computer Science 2024-03-01 Alex Gu , Wen-Ding Li , Naman Jain , Theo X. Olausson , Celine Lee , Koushik Sen , Armando Solar-Lezama

Large language models are becoming increasingly practical for translating code across programming languages, a process known as $transpiling$. Even though automated transpilation significantly boosts developer productivity, a key concern is…

Software Engineering · Computer Science 2024-01-31 Hasan Ferit Eniser , Valentin Wüstholz , Maria Christakis

The formal analysis of automated systems is an important and growing industry. This activity routinely requires new verification frameworks to be developed to tackle new programming features, or new considerations (bugs of interest). Often,…

Logic in Computer Science · Computer Science 2026-02-17 Paul Brunet

Strategy languages enable programmers to compose rewrite rules into strategies and control their application. This is useful in programming languages, e.g., for describing program transformations compositionally, but also in automated…

Programming Languages · Computer Science 2023-04-28 Rongxiao Fu , Ornela Dardha , Michel Steuwer

Unit tests are an important artifact that supports the software development process in several ways. For example, when a test fails, its name can provide the first step towards understanding the purpose of the test. Unfortunately, unit…

Software Engineering · Computer Science 2020-05-20 Jianwei Wu , James Clause

This paper discusses a model-based approach to validate software requirements in agile development processes by simulation and in particular automated testing. The use of models as central development artifact needs to be added to the…

Software Engineering · Computer Science 2014-09-24 Jewgenij Botaschanjan , Markus Pister , Bernhard Rumpe

Security protocols are essential building blocks of modern IT systems. Subtle flaws in their design or implementation may compromise the security of entire systems. It is, thus, important to prove the absence of such flaws through formal…

Cryptography and Security · Computer Science 2023-09-12 Linard Arquint , Malte Schwerhoff , Vaibhav Mehta , Peter Müller

Protocols for tasks such as authentication, electronic voting, and secure multiparty computation ensure desirable security properties if agents follow their prescribed programs. However, if some agents deviate from their prescribed programs…

Cryptography and Security · Computer Science 2015-05-06 Anupam Datta , Deepak Garg , Dilsun Kaynar , Divya Sharma , Arunesh Sinha

Complex systems typically have many different parts and facets, with different characteristics. In a multi-paradigm approach to modeling, formalisms with different natures are used in combination to describe complementary parts and aspects…

Logic in Computer Science · Computer Science 2013-08-14 Marcello M. Bersani , Carlo A. Furia , Matteo Pradella , Matteo Rossi

This work introduces the novel concept of kind refinement, which we develop in the context of an explicitly polymorphic ML-like language with type-level computation. Just as type refinements embed rich specifications by means of…

Programming Languages · Computer Science 2019-08-02 Luís Caires , Bernardo Toninho

The software patterns provide building blocks to the design and implementation of a software system, and try to make the software engineering to progress from experience to science. The software patterns were made famous because of the…

Logic in Computer Science · Computer Science 2021-10-26 Yong Wang

Estimating software testability can crucially assist software managers to optimize test budgets and software quality. In this paper, we propose a new approach that radically differs from the traditional approach of pursuing testability…

Software Engineering · Computer Science 2023-08-01 Luca Guglielmo , Leonardo Mariani , Giovanni Denaro

Model-driven design of software for safety-critical applications often relies on mathematically grounded techniques such as the B method. Such techniques consist in the successive applications of refinements to derive a concrete…

Software Engineering · Computer Science 2009-07-14 David Deharbe , Bruno E. G. Gomes , Anamaria M. Moreira

In industrial model-based development (MBD) frameworks, requirements are typically specified informally using textual descriptions. To enable the application of formal methods, these specifications need to be formalized in the input…

Logic in Computer Science · Computer Science 2019-06-18 Philipp Berger , Johanna Nellen , Joost-Pieter Katoen , Erika Abraham , Md Tawhid Bin Waez , Thomas Rambow

Some approaches to increasing program reliability involve a disciplined use of programming languages so as to minimise the hazards introduced by error-prone features. This is realised by writing code that is constrained to a subset of the a…

Programming Languages · Computer Science 2007-11-06 Guillem Marpons-Ucero , Julio Mariño , Ángel Herranz , Lars-Åke Fredlund , Manuel Carro , Juan José Moreno-Navarro

Program synthesis is the generation of a program from a specification. Correct synthesis is difficult, and methods that provide formal guarantees suffer from scalability issues. On the other hand, neural networks are able to generate…

Logic in Computer Science · Computer Science 2020-01-28 Elizabeth Polgreen , Ralph Abboud , Daniel Kroening