Synthesizing nested relational queries from implicit specifications: via model theory and via proof theory

by   Michael Benedikt, et al.

Derived datasets can be defined implicitly or explicitly. An implicit definition (of dataset O in terms of datasets I) is a logical specification involving the source data I and the interface data O. It is a valid definition of O in terms of I, if any two models of the specification agreeing on I agree on O. In contrast, an explicit definition is a query that produces O from I. Variants of Beth's theorem state that one can convert implicit definitions to explicit ones. Further, this conversion can be done effectively given a proof witnessing implicit definability in a suitable proof system. We prove the analogous implicit-to-explicit result for nested relations: implicit definitions, given in the natural logic for nested relations, can be converted to explicit definitions in the nested relational calculus (NRC) We first provide a model-theoretic argument for this result, which makes some additional connections that may be of independent interest. between NRC queries, interpretations, a standard mechanisms for defining structure-to-structure translation in logic, and between interpretations and implicit to definability "up to unique isomorphism". The latter connection makes use of a variation of a result of Gaifman concerning "relatively categorical" theories. We also provide a proof-theoretic result that provides an effective argument: from a proof witnessing implicit definability, we can efficiently produce an NRC definition. This will involve introducing the appropriate proof system for reasoning with nested sets, along with some auxiliary Beth-type results for this system. As a consequence, we can effectively extract rewritings of NRC queries in terms of NRC views, given a proof witnessing that the query is determined by the views.


page 1

page 2

page 3

page 4


Synthesizing Nested Relational Queries from Implicit Specifications

Derived datasets can be defined implicitly or explicitly. An implicit de...

Generating collection queries from proofs

Nested relations, built up from atomic types via tupling and set types, ...

Strongly-Normalizing Higher-Order Relational Queries

Language-integrated query is a powerful programming construct allowing d...

Graphical Conjunctive Queries

The Calculus of Conjunctive Queries (CCQ) has foundational status in dat...

Controlling unfolding in type theory

We present a novel mechanism for controlling the unfolding of definition...

Implicit Definitions with Differential Equations for KeYmaera X (System Description)

Definition packages in theorem provers provide users with means of defin...

Living without Beth and Craig: Explicit Definitions and Interpolants in the Guarded Fragment

The guarded fragment of FO fails to have the Craig Interpolation Propert...

Please sign up or login with your details

Forgot password? Click here to reset