English
Related papers

Related papers: An Operational Semantics for Yul

200 papers

The rigorous security model of Bitcoin's UTXO architecture often comes at the cost of developer usability, forcing a reliance on manual stack manipulation that leads to critical financial vulnerabilities like signature malleability,…

Cryptography and Security · Computer Science 2026-01-06 Hyunhum Cho , Ik Rae Jeong

Recent years have seen an increasing use of Signal Temporal Logic (STL) as a formal specification language for symbolic control, due to its expressiveness and closeness to natural language. Furthermore, STL specifications can be encoded as…

Systems and Control · Electrical Eng. & Systems 2020-06-11 Yann Gilpin , Vince Kurtz , Hai Lin

In the past two decades, significant research and development effort went into the development of verification tools for individual languages, such asC, C++, and Java. Many of the used verification approaches are in fact language-agnostic…

Programming Languages · Computer Science 2025-11-27 Dirk Beyer , Gidon Ernst , Martin Jonáš , Marian Lingsch-Rosenfeld

We present a methodology to develop verified smart contracts. We write smart contracts, their specifications and implementations in the verification-friendly language Dafny. In our methodology the ability to write specifications,…

Logic in Computer Science · Computer Science 2022-08-08 Franck Cassez , Joanne Fuller , Horacio Mijail Anton Quiles

Modular reasoning about class invariants is challenging in the presence of dependencies among collaborating objects that need to maintain global consistency. This paper presents semantic collaboration: a novel methodology to specify and…

Software Engineering · Computer Science 2014-05-08 Nadia Polikarpova , Julian Tschannen , Carlo A. Furia , Bertrand Meyer

Software Defined Networking is currently revolutionizing computer networking by decoupling the network control (control plane) from the forwarding functions (data plane) enabling the network control to become directly programmable and the…

Software Engineering · Computer Science 2020-05-08 Mario Golling , Robert Koch , Peter Hillmann , Rick Hofstede , Frank Tietze

Analyzing Ethereum bytecode, rather than the source code from which it was generated, is a necessity when: (1) the source code is not available (e.g., the blockchain only stores the bytecode), (2) the information to be gathered in the…

Programming Languages · Computer Science 2018-11-20 Elvira Albert , Pablo Gordillo , Benjamin Livshits , Albert Rubio , Ilya Sergey

Cuv\'ee is a program verification tool that reads SMT-LIB-like input files where terms may additionally contain weakest precondition operators over abstract programs. Cuv\'ee translates such inputs into first-order SMT-LIB by symbolically…

Logic in Computer Science · Computer Science 2020-10-13 Gidon Ernst

The Unified Modelling Language is emerging as a de-facto standard for modelling object-oriented systems. However, the semantics document that a part of the standard definition primarily provides a description of the language's syntax and…

Software Engineering · Computer Science 2014-09-25 Andy Evans , Kevin Lano , Robert France , Bernhard Rumpe

This paper introduces a tool for verifying Python programs, which, using type annotation and front-end processing, can harness the capabilities of a bounded model-checking (BMC) pipeline. It transforms an input program into an abstract…

Software Engineering · Computer Science 2024-07-08 Bruno Farias , Rafael Menezes , Eddie B. de Lima Filho , Youcheng Sun , Lucas C. Cordeiro

Satisfiability modulo theories (SMT) is a core tool in formal verification. While the SMT-LIB specification language can be used to interact with theorem proving software, a high-level interface allows for faster and easier specifications…

Logic in Computer Science · Computer Science 2024-12-05 Emiko Soroka , Mykel J. Kochenderfer , Sanjay Lall

Small-step and big-step operational semantics are two fundamental styles of structural operational semantics (SOS), extensively used in practice. The former one is more fine-grained and is usually regarded as primitive, as it only defines a…

Logic in Computer Science · Computer Science 2025-07-14 Sergey Goncharov , Pouya Partow , Stelios Tsampas

Existing attestation mechanisms lack scalability and support for heterogeneous virtual execution environments (VEEs), such as virtual machines and containers executed inside or outside hardware isolation on different vendors' hardware in…

Cryptography and Security · Computer Science 2023-04-04 Wojciech Ozga , Patricia Sagmeister , Tamás Visegrády , Silvio Dragone

In order to reason about the behaviour of programs described in a programming language, a mathematically rigorous definition of that language is needed. In this paper, we present a machine-checked formalisation of concurrent Core Erlang (a…

Programming Languages · Computer Science 2023-11-20 Péter Bereczky , Dániel Horpácsi , Simon Thompson

We provide formal semantics for a large subset of the Lua programming language, in its version 5.2. We validate our model by mechanizing it and testing it against the test suite of the reference interpreter of Lua, confirming that our model…

Programming Languages · Computer Science 2017-06-09 Mallku Soldevila , Beta Ziliani , Bruno Silvestre , Daniel Fridlender , Fabio Mascarenhas

As Large Language Models (LLMs) evolve in understanding and generating code, accurately evaluating their reliability in analyzing source code vulnerabilities becomes increasingly vital. While studies have examined LLM capabilities in tasks…

Software Engineering · Computer Science 2025-05-28 Yansong Li , Paula Branco , Alexander M. Hoole , Manish Marwah , Hari Manassery Koduvely , Guy-Vincent Jourdan , Stephan Jou

A program that maintains key safety properties even when interacting with arbitrary untrusted code is said to enjoy \emph{robust safety}. Proving that a program written in a mainstream language is robustly safe is typically challenging…

Programming Languages · Computer Science 2022-05-16 Marco Patrignani , Sam Blackshear

Symbolic and logic computation systems ranging from computer algebra systems to theorem provers are finding their way into science, technology, mathematics and engineering. But such systems rely on explicitly or implicitly represented…

Logic in Computer Science · Computer Science 2011-05-04 Florian Rabe , Michael Kohlhase

Modeling interoperability between programs in different languages is a key problem when modeling verified and secure compilation, which has been successfully addressed using multi-language semantics. Unfortunately, existing models of…

Programming Languages · Computer Science 2025-09-25 William J. Bowman

We present a self-certifying compiler for the COGENT systems language. COGENT is a restricted, polymorphic, higher-order, and purely functional language with linear types and without the need for a trusted runtime or garbage collector. It…