Proceedings of the 18th International Symposium on Principles and Practice of Declarative Programming 2016
DOI: 10.1145/2967973.2968606
|View full text |Cite
|
Sign up to set email alerts
|

Exploration of language specifications by compilation to first-order logic

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 … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
2

Citation Types

2
14
1

Year Published

2017
2017
2018
2018

Publication Types

Select...
4
2

Relationship

3
3

Authors

Journals

citations
Cited by 6 publications
(17 citation statements)
references
References 25 publications
2
14
1
Order By: Relevance
“…The full code of our example and the implementation of Veritas is available at https://github.com/stg-tud/type-pragmatics/ tree/master/Veritas. For further details on our current encoding scheme and the specification of typed SQL, please refer to our recent paper "Exploration of Language Specifications by Compilation to First-order Logic" [3]. We model underspecified types via the keyword "open data", which we introduced into SPL since our presentation at the 2nd Vampire Workshop [5].…”
Section: Specification In Veritasmentioning
confidence: 99%
“…The full code of our example and the implementation of Veritas is available at https://github.com/stg-tud/type-pragmatics/ tree/master/Veritas. For further details on our current encoding scheme and the specification of typed SQL, please refer to our recent paper "Exploration of Language Specifications by Compilation to First-order Logic" [3]. We model underspecified types via the keyword "open data", which we introduced into SPL since our presentation at the 2nd Vampire Workshop [5].…”
Section: Specification In Veritasmentioning
confidence: 99%
“…This embedded DSL allows for specifying the syntax of a language via closed algebraic datatypes, the dynamic semantics (reduction semantics) of the language via simple recursive, immutable functions, and the static semantics (type system) as well as properties to prove via typing rules and formulas. In a previous publication, we thoroughly describe our input format and different variants of how we translate the format to untyped and typed first-order logic ( [5]), where we encode algebraic datatypes ourselves by generating axioms which describe the respective term algebras.…”
Section: Veritas Infrastructure and Test Specificationmentioning
confidence: 99%
“…SQL test specification For the present work, we use a type system specification described in one of our previous publications [5]: The language we model is a small subset of SQL, consisting of basic table values, simple select ... from ... where ... queries without joins and Cartesian products (i.e. combinations of table selection (of table rows) and projection (of table columns)), and queries for forming the union, intersection, and difference of two tables with the same table schema.…”
Section: Veritas Infrastructure and Test Specificationmentioning
confidence: 99%
See 2 more Smart Citations