English
Related papers

Related papers: Refinement types in Jolie

200 papers

The Unified Modeling Language (UML) is a widely used general purpose modeling language. Together with the Object Constraint Language (OCL), formal models can be described by defining the structure and behavior with UML and additional OCL…

Human-Computer Interaction · Computer Science 2017-01-31 Frank Hilken , Martin Gogolla

In the field of Business Process Management formal models for the control flow of business processes have been designed since more than 15 years. Which methods are best suited to verify the bulk of these models? The first step is to select…

Logic in Computer Science · Computer Science 2011-05-04 Christoph Schneider , Joachim Wehler

We present a bounded model checking algorithm for signal temporal logic (STL) that exploits mixed-integer linear programming (MILP). A key technical element is our novel MILP encoding of the STL semantics; it follows the idea of stable…

Systems and Control · Electrical Eng. & Systems 2024-08-14 Sota Sato , Jie An , Zhenya Zhang , Ichiro Hasuo

Static software checking tools are useful as an additional automated software inspection step that can easily be integrated in the development cycle and assist in creating secure, reliable and high quality code. However, an often quoted…

Software Engineering · Computer Science 2007-05-23 Cathal Boogerd , Leon Moonen

Parser generators generate translators from language specifications. In many cases, such specifications contain semantic actions written in the same language as the generated code. Since these actions are subject to little static checking,…

Programming Languages · Computer Science 2010-02-09 Andrey Breslav

Synchronous model is a type of formal models for modelling and specifying reactive systems. It has a great advantage over other real-time models that its modelling paradigm supports a deterministic concurrent behaviour of systems. Various…

Software Engineering · Computer Science 2021-04-09 Yuanrui Zhang

Dynamically typed object-oriented languages enable programmers to write elegant, reusable and extensible programs. However, with the current methodology for program verification, the absence of static type information creates significant…

Programming Languages · Computer Science 2015-01-13 Björn Engelmann , Ernst-Rüdiger Olderog , Nils Erik Flick

This paper introduces and presents a new language named MAIL (Malware Analysis Intermediate Language). MAIL is basically used for building malware analysis and detection tools. MAIL provides an abstract representation of an assembly program…

Cryptography and Security · Computer Science 2022-11-08 Shahid Alam

We present a type system that combines, in a controlled way, first-order polymorphism with intersectiontypes, union types, and subtyping, and prove its safety. We then define a type reconstruction algorithm that issound and terminating.…

Programming Languages · Computer Science 2023-11-20 Giuseppe Castagna , Mickaël Laurent , Kim Nguyen

Gradual verification soundly combines static checking and dynamic checking to provide an incremental approach for software verification. With gradual verification, programs can be partially specified first, and then the full specification…

Programming Languages · Computer Science 2025-12-01 Doruk Alp Mutlu

This paper investigates whether formal specifications using Java Modeling Language (JML) can enhance the quality of Large Language Model (LLM)-generated Javadocs. While LLMs excel at producing documentation from code alone, we hypothesize…

Software Engineering · Computer Science 2025-06-12 Juan Carlos Recio Abad , Ruben Saborido , Francisco Chicano

We present a type system and inference algorithm for a rich subset of JavaScript equipped with objects, structural subtyping, prototype inheritance, and first-class methods. The type system supports abstract and recursive objects, and is…

Programming Languages · Computer Science 2016-10-19 Satish Chandra , Colin S. Gordon , Jean-Baptiste Jeannin , Cole Schlesinger , Manu Sridharan , Frank Tip , Youngil Choi

Machine learning-based static malware detectors remain vulnerable to adversarial evasion techniques, such as metamorphic engine mutations. To address this vulnerability, we propose a certifiably robust malware detection framework based on…

Cryptography and Security · Computer Science 2026-04-23 Nandakrishna Giri , Asmitha K. A. , Serena Nicolazzo , Antonino Nocera , Vinod P

Multiparty session typing (MPST) is a method to make concurrent programming simpler. The idea is to use type checking to automatically detect safety and liveness violations of implementations relative to specifications. In practice, the…

Programming Languages · Computer Science 2025-01-30 Sung-Shik Jongmans

Modern state-of-the-art Semantic Role Labeling (SRL) methods rely on expressive sentence encoders (e.g., multi-layer LSTMs) but tend to model only local (if any) interactions between individual argument labeling decisions. This contrasts…

Computation and Language · Computer Science 2019-09-10 Chunchuan Lyu , Shay B. Cohen , Ivan Titov

Dependent types offer great versatility and power, but developing proofs with them can be tedious and requires considerable human guidance. We propose to integrate Satisfiability Modulo Theories (SMT)-based refinement types into the…

Programming Languages · Computer Science 2021-10-13 Gan Shen , Lindsey Kuper

Statically analyzing dynamically-typed code is a challenging endeavor, as even seemingly trivial tasks such as determining the targets of procedure calls are non-trivial without knowing the types of objects at compile time. Addressing this…

Machine Learning · Computer Science 2023-10-05 Lukas Seidel , Sedick David Baker Effendi , Xavier Pinho , Konrad Rieck , Brink van der Merwe , Fabian Yamaguchi

Scripting code may present maintenance problems in the long run. There is, then, the call for methodologies that make it possible to control the properties of programs written in dynamic languages in an automatic fashion. We introduce…

Logic in Computer Science · Computer Science 2015-03-18 Marcin Benke , Viviana Bono , Aleksy Schubert

Logics and model-checking have been successfully used in the last decades for modeling and verification of various types of hardware (and software) systems. While most languages and techniques emerged in a context of monolithic systems with…

Software Engineering · Computer Science 2016-07-14 Manuel Mazzara

SMT-based verifiers have long been an effective means of ensuring safety properties of programs. While these techniques are well understood, we show that they implicitly require eager semantics; directly applying them to a lazy language is…

Programming Languages · Computer Science 2014-01-27 Niki Vazou , Eric L. Seidel , Ranjit Jhala