Grewe, Sylvia ; Erdweg, Sebastian ; Pacak, André ; Raulf, Michael ; Mira, Mezini (2018)
Exploration of language specifications by compilation to first-order logic.
In: Science of Computer Programming, 155
doi: 10.1016/j.scico.2017.08.001
Artikel, Bibliographie
Kurzbeschreibung (Abstract)
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. Second, we extend our empirical study with 4 domain-specific strategies for axiom selection and find that axiom selection does not influence prover performance in our benchmark specifications.
Typ des Eintrags: | Artikel |
---|---|
Erschienen: | 2018 |
Autor(en): | Grewe, Sylvia ; Erdweg, Sebastian ; Pacak, André ; Raulf, Michael ; Mira, Mezini |
Art des Eintrags: | Bibliographie |
Titel: | Exploration of language specifications by compilation to first-order logic |
Sprache: | Englisch |
Publikationsjahr: | 1 April 2018 |
Verlag: | Elsevier |
Titel der Zeitschrift, Zeitung oder Schriftenreihe: | Science of Computer Programming |
Jahrgang/Volume einer Zeitschrift: | 155 |
Buchtitel: | Science of Computer Programming |
DOI: | 10.1016/j.scico.2017.08.001 |
URL / URN: | https://www.sciencedirect.com/science/article/pii/S016764231... |
Kurzbeschreibung (Abstract): | 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. Second, we extend our empirical study with 4 domain-specific strategies for axiom selection and find that axiom selection does not influence prover performance in our benchmark specifications. |
Fachbereich(e)/-gebiet(e): | 20 Fachbereich Informatik 20 Fachbereich Informatik > Softwaretechnik |
Hinterlegungsdatum: | 01 Mär 2024 13:07 |
Letzte Änderung: | 31 Mai 2024 08:56 |
PPN: | 518757234 |
Export: | |
Suche nach Titel in: | TUfind oder in Google |
Frage zum Eintrag |
Optionen (nur für Redakteure)
Redaktionelle Details anzeigen |