169 research outputs found

    A Linearization Technique for Multivariate Polynomials Using Convex Polyhedra Based on Handelman-Krivine's Theorem

    No full text
    National audienceWe present a new linearization method to over-approximate non-linear multivariate polynomials with convex polyhedra.It is based on Handelman-Krivine's theorem and consists in using products of constraints of a polyhedron to over-approximate a polynomial on this polyhedron. We implemented it together with two other linearization methods that we will not detail in this paper, but that we shall use as comparison. Our implementation in Ocaml generates certificates that can be verified by a trusted checker, certified in Coq, that guarantees the correctness of our linear approximation

    Polyhedral Approximation of Multivariate Polynomials using Handelman's Theorem

    No full text
    International audienceConvex polyhedra are commonly used in the static analysis of programs to represent over-approximations of sets of reachable states of numerical program variables. When the analyzed programs contain nonlinear instructions, they do not directly map to standard polyhedral operations: some kind of linearization is needed. Convex polyhe-dra are also used in satisfiability modulo theory solvers which combine a propositional satisfiability solver with a fast emptiness check for polyhedra. Existing decision procedures become expensive when nonlinear constraints are involved: a fast procedure to ensure emptiness of systems of nonlinear constraints is needed. We present a new linearization algorithm based on Handelman's representation of positive polynomials. Given a polyhedron and a polynomial (in)equality, we compute a polyhedron enclosing their intersection as the solution of a parametric linear programming problem. To get a scalable algorithm, we provide several heuristics that guide the construction of the Handelman's representation. To ensure the correctness of our polyhedral approximation , our Ocaml implementation generates certificates verified by a checker certified in Coq

    Invariant Generation through Strategy Iteration in Succinctly Represented Control Flow Graphs

    Full text link
    We consider the problem of computing numerical invariants of programs, for instance bounds on the values of numerical program variables. More specifically, we study the problem of performing static analysis by abstract interpretation using template linear constraint domains. Such invariants can be obtained by Kleene iterations that are, in order to guarantee termination, accelerated by widening operators. In many cases, however, applying this form of extrapolation leads to invariants that are weaker than the strongest inductive invariant that can be expressed within the abstract domain in use. Another well-known source of imprecision of traditional abstract interpretation techniques stems from their use of join operators at merge nodes in the control flow graph. The mentioned weaknesses may prevent these methods from proving safety properties. The technique we develop in this article addresses both of these issues: contrary to Kleene iterations accelerated by widening operators, it is guaranteed to yield the strongest inductive invariant that can be expressed within the template linear constraint domain in use. It also eschews join operators by distinguishing all paths of loop-free code segments. Formally speaking, our technique computes the least fixpoint within a given template linear constraint domain of a transition relation that is succinctly expressed as an existentially quantified linear real arithmetic formula. In contrast to previously published techniques that rely on quantifier elimination, our algorithm is proved to have optimal complexity: we prove that the decision problem associated with our fixpoint problem is in the second level of the polynomial-time hierarchy.Comment: 35 pages, conference version published at ESOP 2011, this version is a CoRR version of our submission to Logical Methods in Computer Scienc

    Quasiconvex Programming

    Full text link
    We define quasiconvex programming, a form of generalized linear programming in which one seeks the point minimizing the pointwise maximum of a collection of quasiconvex functions. We survey algorithms for solving quasiconvex programs either numerically or via generalizations of the dual simplex method from linear programming, and describe varied applications of this geometric optimization technique in meshing, scientific computation, information visualization, automated algorithm analysis, and robust statistics.Comment: 33 pages, 14 figure

    Randomized Rounding for the Largest Simplex Problem

    Full text link
    The maximum volume jj-simplex problem asks to compute the jj-dimensional simplex of maximum volume inside the convex hull of a given set of nn points in Qd\mathbb{Q}^d. We give a deterministic approximation algorithm for this problem which achieves an approximation ratio of ej/2+o(j)e^{j/2 + o(j)}. The problem is known to be NP\mathrm{NP}-hard to approximate within a factor of cjc^{j} for some constant c>1c > 1. Our algorithm also gives a factor ej+o(j)e^{j + o(j)} approximation for the problem of finding the principal j×jj\times j submatrix of a rank dd positive semidefinite matrix with the largest determinant. We achieve our approximation by rounding solutions to a generalization of the DD-optimal design problem, or, equivalently, the dual of an appropriate smallest enclosing ellipsoid problem. Our arguments give a short and simple proof of a restricted invertibility principle for determinants
    corecore