KIT | KIT-Bibliothek | Impressum | Datenschutz

More Powerful Constant Value Checking with SMT Solving

Mittnacht, Jonas

Abstract:

Pluggable type systems extend the basic type system of a programming language by introducing additional type hierarchies to specify more complex properties and dependencies
between variables. For Java, the Checker Framework provides various pluggable type systems
corresponding with so-called Checkers that verify the correct use of their types. One such
Checker is the Constant Value Checker, with which a user can specify restrictions on the
values a primitive integer or boolean variable can hold using a set or range of constant
values. However, the current implementation of the Value Checker makes use of a limited set
of manual typing rules that, in practice, often fail to verify well-typedness of more complex
code. The aim of this thesis is to address this limitation using SMT (Satisfiability Modulo
Theories) solvers by creating corresponding first-order logic formulas for expressions whose
type checks fail with the current implementation and determining their well-typedness
based on the satisfiability of these formulas. Furthermore, we introduce new dependent
types for specifying allowed values with expressions that can depend on other variables
... mehr


Volltext §
DOI: 10.5445/IR/1000191941
Veröffentlicht am 02.04.2026
Cover der Publikation
Zugehörige Institution(en) am KIT Institut für Informationssicherheit und Verlässlichkeit (KASTEL)
Kompetenzzentrum für angewandte Sicherheitstechnologie (KASTEL)
Publikationstyp Hochschulschrift
Publikationsdatum 03.03.2026
Sprache Englisch
Identifikator KITopen-ID: 1000191941
HGF-Programm 46.23.01 (POF IV, LK 01) Methods for Engineering Secure Systems
Verlag Karlsruher Institut für Technologie (KIT)
Umfang 62
Art der Arbeit Abschlussarbeit - Bachelor
Prüfungsdaten 26.03.2026
Referent/Betreuer Lanzinger, Florian
Beckert, Bernhard
KIT – Die Universität in der Helmholtz-Gemeinschaft
KITopen Landing Page