Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Sebastiaan J. C. Joosten is active.

Publication


Featured researches published by Sebastiaan J. C. Joosten.


certified programs and proofs | 2017

A formalization of the Berlekamp-Zassenhaus factorization algorithm

Jose Divasón; Sebastiaan J. C. Joosten; René Thiemann; Akihisa Yamada

We formalize the Berlekamp–Zassenhaus algorithm for factoring square-free integer polynomials in Isabelle/HOL. We further adapt an existing formalization of Yun’s square-free factorization algorithm to integer polynomials, and thus provide an efficient and certified factorization algorithm for arbitrary univariate polynomials. The algorithm first performs a factorization in the prime field GF(p) and then performs computations in the ring of integers modulo pk, where both p and k are determined at runtime. Since a natural modeling of these structures via dependent types is not possible in Isabelle/HOL, we formalize the whole algorithm using Isabelle’s recent addition of local type definitions. Through experiments we verify that our algorithm factors polynomials of degree 100 within seconds.


International Conference on Relational and Algebraic Methods in Computer Science | 2017

Parsing and Printing of and with Triples

Sebastiaan J. C. Joosten

We introduce the tool Amperspiegel, which uses triple graphs for parsing, printing and manipulating data. We show how to conveniently encode parsers, graph manipulation-rules, and printers using several relations. As such, parsers, rules and printers are all encoded as graphs themselves. This allows us to parse, manipulate and print these parsers, rules and printers within the system. A parser for a context free grammar is graph-encoded with only four relations. The graph manipulation-rules turn out to be especially helpful when parsing. The printers strongly correspond to the parsers, being described using only five relations. The combination of parsers, rules and printers allows us to extract Ampersand source code from ArchiMate XML documents. Amperspiegel was originally developed to aid in the development of Ampersand.


conference on automated deduction | 2017

Certifying Safety and Termination Proofs for Integer Transition Systems

Marc Brockschmidt; Sebastiaan J. C. Joosten; René Thiemann; Akihisa Yamada

Modern program analyzers translate imperative programs to an intermediate formal language like integer transition systems (ITSs), and then analyze properties of ITSs. Because of the high complexity of the task, a number of incorrect proofs are revealed annually in the Software Verification Competitions.


interactive theorem proving | 2018

A Formalization of the LLL Basis Reduction Algorithm

Jose Divasón; Sebastiaan J. C. Joosten; René Thiemann; Akihisa Yamada

The LLL basis reduction algorithm was the first polynomial-time algorithm to compute a reduced basis of a given lattice, and hence also a short vector in the lattice. It thereby approximates an NP-hard problem where the approximation quality solely depends on the dimension of the lattice, but not the lattice itself. The algorithm has several applications in number theory, computer algebra and cryptography.


integrated formal methods | 2018

Reasoning About JML: Differences Between KeY and OpenJML

Jan Boerman; Marieke Huisman; Sebastiaan J. C. Joosten

To increase the impact and capabilities of formal verification, it should be possible to apply different verification techniques on the same specification. However, this can only be achieved if verification tools agree on the syntax and underlying semantics of the specification language and unfortunately, in practice, this is often not the case.


certified programs and proofs | 2018

Efficient certification of complexity proofs: formalizing the Perron–Frobenius theorem (invited talk paper)

Jose Divasón; Sebastiaan J. C. Joosten; Ondrej Kuncar; René Thiemann; Akihisa Yamada

Matrix interpretations are widely used in automated complexity analysis. Certifying such analyses boils down to determining the growth rate of An for a fixed non-negative rational matrix A. A direct solution for this task involves the computation of all eigenvalues of A, which often leads to expensive algebraic number computations. In this work we formalize the Perron–Frobenius theorem. We utilize the theorem to avoid most of the algebraic numbers needed for certifying complexity analysis, so that our new algorithm only needs the rational arithmetic when certifying complexity proofs that existing tools can find. To cover the theorem in its full extent, we establish a connection between two different Isabelle/HOL libraries on matrices, enabling an easy exchange of theorems between both libraries. This connection crucially relies on the transfer mechanism in combination with local type definitions, being a non-trivial case study for these Isabelle tools.


The Journal of Logic and Algebraic Programming | 2018

Finding models through graph saturation

Sebastiaan J. C. Joosten

Abstract We give a procedure that can be used to automatically satisfy invariants of a certain shape. These invariants may be written with the operations intersection, composition and converse over binary relations, and equality over these operations. We call these invariants sentences that we interpret over graphs. For questions stated through sets of these sentences, this paper gives a semi-decision procedure we call graph saturation. It decides entailment over these sentences, inspired on graph rewriting. We prove correctness of the procedure. Moreover, we show the corresponding decision problem to be undecidable. This confirms a conjecture previously stated by the author [7] .


Archive | 2018

Towards Reliable Concurrent Software

Marieke Huisman; Sebastiaan J. C. Joosten

As the use of concurrent software is increasing, we urgently need techniques to establish the correctness of such applications. Over the last years, significant progress has been made in the area of software verification, making verification techniques usable for realistic applications. However, much of this work concentrates on sequential software, and a next step is necessary to apply these results also on realistic concurrent software. In this paper, we outline a research agenda to realise this goal. We argue that current techniques for verification of concurrent software need to be further developed in multiple directions: extending the class of properties that can be established, improving the level of automation that is available for this kind of verification, and enlarging the class of concurrent programs that can be verified.


The Archive of Formal Proofs | 2016

The Factorization Algorithm of Berlekamp and Zassenhaus.

Jose Divasón; Sebastiaan J. C. Joosten; René Thiemann; Akihisa Yamada


The Archive of Formal Proofs | 2018

A verified LLL algorithm

Jose Divasón; Sebastiaan J. C. Joosten; René Thiemann; Akihisa Yamada

Collaboration


Dive into the Sebastiaan J. C. Joosten's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Salvador Lucas

Polytechnic University of Valencia

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge