Showing 1–2 of 2 results for author: Crosetti, N
-
Linear Programs with Conjunctive Database Queries
Authors:
Florent Capelli,
Nicolas Crosetti,
Joachim Niehren,
Jan Ramon
Abstract:
In this paper, we study the problem of optimizing a linear program whose variables are the answers to a conjunctive query. For this we propose the language LP(CQ) for specifying linear programs whose constraints and objective functions depend on the answer sets of conjunctive queries. We contribute an efficient algorithm for solving programs in a fragment of LP(CQ). The natural approach constructs…
▽ More
In this paper, we study the problem of optimizing a linear program whose variables are the answers to a conjunctive query. For this we propose the language LP(CQ) for specifying linear programs whose constraints and objective functions depend on the answer sets of conjunctive queries. We contribute an efficient algorithm for solving programs in a fragment of LP(CQ). The natural approach constructs a linear program having as many variables as there are elements in the answer set of the queries. Our approach constructs a linear program having the same optimal value but fewer variables. This is done by exploiting the structure of the conjunctive queries using generalized hypertree decompositions of small width to factorize elements of the answer set together. We illustrate the various applications of LP(CQ) programs on three examples: optimizing deliveries of resources, minimizing noise for differential privacy, and computing the s-measure of patterns in graphs as needed for data mining.
△ Less
Submitted 25 January, 2024; v1 submitted 29 October, 2022;
originally announced October 2022.
-
Solving linear programs on factorized databases
Authors:
Florent Capelli,
Nicolas Crosetti,
Joachim Niehren,
Jan Ramon
Abstract:
A typical workflow for solving a linear programming problem is to first write a linear program parametrized by the data in a language such as Math GNU Prog or AMPL then call the solver on this program while providing the data. When the data is extracted using a query on a database, this approach ignores the underlying structure of the answer set which may result in a blow-up of the size of the lin…
▽ More
A typical workflow for solving a linear programming problem is to first write a linear program parametrized by the data in a language such as Math GNU Prog or AMPL then call the solver on this program while providing the data. When the data is extracted using a query on a database, this approach ignores the underlying structure of the answer set which may result in a blow-up of the size of the linear program if the answer set is big. In this paper, we study the problem of solving linear programming problems whose variables are the answers to a conjunctive query. We show that one can exploit the structure of the query to rewrite the linear program so that its size depends only on the size of the database and not on the size of the answer set. More precisely, we give a generic way of rewriting a linear program whose variables are the tuples in Q(D) for a conjunctive query Q and a database D into a linear program having a number of variables that only depends on the size of a factorized representation of Q(D), which can be much smaller when the fractional hypertree width of Q is bounded.
△ Less
Submitted 19 July, 2019; v1 submitted 11 January, 2019;
originally announced January 2019.