KIT | KIT-Bibliothek | Impressum | Datenschutz

Exploration of Language Specifications by Compilation to First-Order Logic (extended version)

Grewe, Sylvia ; Erdweg, Sebastian ORCID iD icon 1; Pacak, André; Raulf, Michael; Mezini, Mira
1 Institut für Programmstrukturen und Datenorganisation (IPD), Karlsruher Institut für Technologie (KIT)

Abstract (englisch):

Exploration of language specifications helps to discover errors and inconsistencies early during the development of a programming language. We propose exploration of language specifications via application of existing automated first-order theorem provers (ATPs). To this end, we translate language specifications and exploration tasks to first-order logic, which many ATPs accept as input. However, there are several different strategies for compiling a language specification to first-order logic, and even small variations in the translation may have a large impact on the time it takes ATPs to find proofs.
In this paper, we first present a systematic empirical study on how to best compile language specifications to first-order logic such that existing ATPs can solve typical exploration tasks efficiently. We have developed a compiler product line that implements 36 different compilation strategies and used it to feed language specifications to 4 existing first-order theorem provers. As benchmarks, we developed language specifications for typed SQL and for a Questionnaire Language (QL), with 50 exploration goals each. Our study empirically confirms that the choice of a compilation strategy greatly influences prover performance in general and shows which strategies are advantageous for prover performance. ... mehr


Originalveröffentlichung
DOI: 10.1016/j.scico.2017.08.001
Scopus
Zitationen: 3
Dimensions
Zitationen: 3
Zugehörige Institution(en) am KIT Institut für Programmstrukturen und Datenorganisation (IPD)
Publikationstyp Zeitschriftenaufsatz
Publikationsjahr 2018
Sprache Englisch
Identifikator ISSN: 0167-6423, 1872-7964
KITopen-ID: 1000188582
Erschienen in Science of Computer Programming
Verlag Elsevier
Band 155
Heft 1
Seiten 146-172
Vorab online veröffentlicht am 06.03.2018
Schlagwörter Type systems, Formal specification, Declarative languages, First-order theorem proving, Domain-specific languages
Nachgewiesen in Scopus
Web of Science
Dimensions
OpenAlex
Globale Ziele für nachhaltige Entwicklung Ziel 4 – Hochwertige Bildung
KIT – Die Universität in der Helmholtz-Gemeinschaft
KITopen Landing Page