-
Incrementalizing Production CodeQL Analyses
Authors:
Tamás Szabó
Abstract:
Instead of repeatedly re-analyzing from scratch, an incremental static analysis only analyzes a codebase once completely, and then it updates the previous results based on the code changes. While this sounds promising to achieve speed-ups, the reality is that sophisticated static analyses typically employ features that can ruin incremental performance, such as inter-procedurality or context-sensit…
▽ More
Instead of repeatedly re-analyzing from scratch, an incremental static analysis only analyzes a codebase once completely, and then it updates the previous results based on the code changes. While this sounds promising to achieve speed-ups, the reality is that sophisticated static analyses typically employ features that can ruin incremental performance, such as inter-procedurality or context-sensitivity. In this study, we set out to explore whether incrementalization can help to achieve speed-ups for production CodeQL analyses that provide automated feedback on pull requests on GitHub. We first empirically validate the idea by measuring the potential for reuse on real-world codebases, and then we create a prototype incremental solver for CodeQL that exploits incrementality. We report on experimental results showing that we can indeed achieve update times proportional to the size of the code change, and we also discuss the limitations of our prototype.
△ Less
Submitted 18 August, 2023;
originally announced August 2023.
-
Improved Integrality Gap in Max-Min Allocation: or Topology at the North Pole
Authors:
Penny Haxell,
Tibor Szabó
Abstract:
In the max-min allocation problem a set $P$ of players are to be allocated disjoint subsets of a set $R$ of indivisible resources, such that the minimum utility among all players is maximized. We study the restricted variant, also known as the Santa Claus problem, where each resource has an intrinsic positive value, and each player covets a subset of the resources. Bezáková and Dani showed that th…
▽ More
In the max-min allocation problem a set $P$ of players are to be allocated disjoint subsets of a set $R$ of indivisible resources, such that the minimum utility among all players is maximized. We study the restricted variant, also known as the Santa Claus problem, where each resource has an intrinsic positive value, and each player covets a subset of the resources. Bezáková and Dani showed that this problem is NP-hard to approximate within a factor less than $2$, consequently a great deal of work has focused on approximate solutions. The principal approach for obtaining approximation algorithms has been via the Configuration LP (CLP) of Bansal and Sviridenko. Accordingly, there has been much interest in bounding the integrality gap of this CLP. The existing algorithms and integrality gap estimations are all based one way or another on the combinatorial augmenting tree argument of Haxell for finding perfect matchings in certain hypergraphs. Our main innovation in this paper is to introduce the use of topological methods for the restricted max-min allocation problem, to replace the combinatorial argument. This approach yields substantial improvements in the integrality gap of the CLP. In particular we improve the previously best known bound of $3.808$ to $3.534$. We also study the $(1,\varepsilon)$-restricted version, in which resources can take only two values, and improve the integrality gap in most cases.
△ Less
Submitted 27 January, 2025; v1 submitted 2 February, 2022;
originally announced February 2022.
-
Generating spherical multiquadrangulations by restricted vertex splittings and the reducibility of equilibrium classes
Authors:
Richárd Kápolnai,
Gábor Domokos,
Tímea Szabó
Abstract:
A quadrangulation is a graph embedded on the sphere such that each face is bounded by a walk of length 4, parallel edges allowed. All quadrangulations can be generated by a sequence of graph operations called vertex splitting, starting from the path P_2 of length 2. We define the degree D of a splitting S and consider restricted splittings S_{i,j} with i <= D <= j. It is known that S_{2,3} generat…
▽ More
A quadrangulation is a graph embedded on the sphere such that each face is bounded by a walk of length 4, parallel edges allowed. All quadrangulations can be generated by a sequence of graph operations called vertex splitting, starting from the path P_2 of length 2. We define the degree D of a splitting S and consider restricted splittings S_{i,j} with i <= D <= j. It is known that S_{2,3} generate all simple quadrangulations.
Here we investigate the cases S_{1,2}, S_{1,3}, S_{1,1}, S_{2,2}, S_{3,3}. First we show that the splittings S_{1,2} are exactly the monotone ones in the sense that the resulting graph contains the original as a subgraph. Then we show that they define a set of nontrivial ancestors beyond P_2 and each quadrangulation has a unique ancestor.
Our results have a direct geometric interpretation in the context of mechanical equilibria of convex bodies. The topology of the equilibria corresponds to a 2-coloured quadrangulation with independent set sizes s, u. The numbers s, u identify the primary equilibrium class associated with the body by Várkonyi and Domokos. We show that both S_{1,1} and S_{2,2} generate all primary classes from a finite set of ancestors which is closely related to their geometric results.
If, beyond s and u, the full topology of the quadrangulation is considered, we arrive at the more refined secondary equilibrium classes. As Domokos, Lángi and Szabó showed recently, one can create the geometric counterparts of unrestricted splittings to generate all secondary classes. Our results show that S_{1,2} can only generate a limited range of secondary classes from the same ancestor. The geometric interpretation of the additional ancestors defined by monotone splittings shows that minimal polyhedra play a key role in this process. We also present computational results on the number of secondary classes and multiquadrangulations.
△ Less
Submitted 8 June, 2012;
originally announced June 2012.
-
The Local Lemma is asymptotically tight for SAT
Authors:
Heidi Gebauer,
Tibor Szabo,
Gabor Tardos
Abstract:
The Local Lemma is a fundamental tool of probabilistic combinatorics and theoretical computer science, yet there are hardly any natural problems known where it provides an asymptotically tight answer. The main theme of our paper is to identify several of these problems, among them a couple of widely studied extremal functions related to certain restricted versions of the k-SAT problem, where the L…
▽ More
The Local Lemma is a fundamental tool of probabilistic combinatorics and theoretical computer science, yet there are hardly any natural problems known where it provides an asymptotically tight answer. The main theme of our paper is to identify several of these problems, among them a couple of widely studied extremal functions related to certain restricted versions of the k-SAT problem, where the Local Lemma does give essentially optimal answers.
As our main contribution, we construct unsatisfiable k-CNF formulas where every clause has k distinct literals and every variable appears in at most (2/e + o(1))*2^k/k clauses. The Lopsided Local Lemma shows that this is asymptotically best possible. The determination of this extremal function is particularly important as it represents the value where the corresponding k-SAT problem exhibits a complexity hardness jump: from having every instance being a YES-instance it becomes NP-hard just by allowing each variable to occur in one more clause.
The construction of our unsatisfiable CNF-formulas is based on the binary tree approach of [16] and thus the constructed formulas are in the class MU(1) of minimal unsatisfiable formulas having one more clauses than variables. The main novelty of our approach here comes in setting up an appropriate continuous approximation of the problem. This leads us to a differential equation, the solution of which we are able to estimate. The asymptotically optimal binary trees are then obtained through a discretization of this solution.
The importance of the binary trees constructed is also underlined by their appearance in many other scenarios. In particular, they give asymptotically precise answers for seemingly unrelated problems like the European Tenure Game introduced by Doerr [9] and a search problem allowing a limited number of consecutive lies.
△ Less
Submitted 19 April, 2016; v1 submitted 3 June, 2010;
originally announced June 2010.