Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Jonas Braband Jensen

dblp:74/9832 · DBLP profile ↗
← Back
6ranked-venue papers
3as first author
0since 2021 · last 2013
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 4 · 3 first-authorTheory of computation · 3

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
1 paper
Program verification · 100%

Topics — the 2 heaviest of 2, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Program verification › code-level verification
machine code verification
0.212013
High-level separation logic for low-level code · POPL 2013
Program verification › program logic
separation logic
0.212013
High-level separation logic for low-level code · POPL 2013
YearPublicationVenuePosition
2013 High-level separation logic for low-level code
abstract
Separation logic is a powerful tool for reasoning about structured, imperative programs that manipulate pointers. However, its application to unstructured, lower-level languages such as assembly language or machine code remains challenging. In this paper we describe a separation logic tailored for this purpose that we have applied to x86 machine-code programs.
Jonas Braband Jensen, Nick Benton, Andrew Kennedy
POPL1
2013 Coq: the world's best macro assembler?
abstract
We describe a Coq formalization of a subset of the x86 architecture. One emphasis of the model is brevity: using dependent types, type classes and notation we give the x86 semantics a makeover that counters its reputation for baroqueness. We model bits, bytes, and memory concretely using functions that can be computed inside Coq itself; concrete representations are mapped across to mathematical objects in the SSReflect library (naturals, and integers modulo 2n) to prove theorems. Finally, we use notation to support conventional assembly code syntax inside Coq, including lexically-scoped labels. Ordinary Coq definitions serve as a powerful "macro" feature for everything from simple conditionals and loops to stack-allocated local variables and procedures with parameters. Assembly code can be assembled within Coq, producing a sequence of hex bytes. The assembler enjoys a correctness theorem relating machine code in memory to a separation-logic formula suitable for program verification.
Andrew Kennedy, Nick Benton, Jonas Braband Jensen, Pierre-Évariste Dagand
PPDP3
2012 Fictional Separation Logic
Jonas Braband Jensen, Lars Birkedal
ESOP1
2012 Charge! - A Framework for Higher-Order Separation Logic in Coq
Jesper Bengtson, Jonas Braband Jensen, Lars Birkedal
ITP2
2011 Verifying Object-Oriented Programs with Higher-Order Separation Logic in Coq
Jesper Bengtson, Jonas Braband Jensen, Filip Sieczkowski, Lars Birkedal
ITP2
2010 Modular verification of linked lists with views via separation logic
abstract
We present a separation logic specification and verification of linked lists with views, a data structure from the C5 collection library for C#. A view is a generalization of the well-known concept of an iterator. Linked lists with views form an interesting case study for verification since they allow mutation of multiple possibly-overlapping views of the same underlying list. For modularity, we present our specification in a fragment of higher-order separation logic and use abstract predicates to give a specification with respect to which clients can be proved correct. We introduce a novel mathematical model of lists with views, and formulate succinct modular abstract specifications of the operations on the data structure. To show that the concrete implementation realizes the specification, we use fractional permissions in a novel way to capture the sharing of data between views and their underlying list.
Jonas Braband Jensen, Lars Birkedal, Peter Sestoft
FTfJP@ECOOP1