Results 1  10
of
11
Complete Functional Synthesis
"... Synthesis of program fragments from specifications can make programs easier to write and easier to reason about. To integrate synthesis into programming languages, synthesis algorithms should behave in a predictable way—they should succeed for a welldefined class of specifications. They should also ..."
Abstract

Cited by 28 (12 self)
 Add to MetaCart
Synthesis of program fragments from specifications can make programs easier to write and easier to reason about. To integrate synthesis into programming languages, synthesis algorithms should behave in a predictable way—they should succeed for a welldefined class of specifications. They should also support unbounded data types such as numbers and data structures. We propose to generalize decision procedures into predictable and complete synthesis procedures. Such procedures are guaranteed to find code that satisfies the specification if such code exists. Moreover, we identify conditions under which synthesis will statically decide whether the solution is guaranteed to exist, and whether it is unique. We demonstrate our approach by starting from decision procedures for linear arithmetic and data structures and transforming them into synthesis procedures. We establish results on the size and the efficiency of the synthesized code. We show that such procedures are useful as a language extension with implicit value definitions, and we show how to extend a compiler to support such definitions. Our constructs provide the benefits of synthesis to programmers, without requiring them to learn new concepts or give up a deterministic execution model.
Mixed RealInteger Linear Quantifier Elimination
, 1999
"... Consider the elementary theory T of the real numbers in the language L having 0, 1 as constants, addition and subtraction and integer part as operations, and equality, order and congruences modulo natural number constants as relations. We show that T admits an effective quantifier elimination proced ..."
Abstract

Cited by 26 (1 self)
 Add to MetaCart
Consider the elementary theory T of the real numbers in the language L having 0, 1 as constants, addition and subtraction and integer part as operations, and equality, order and congruences modulo natural number constants as relations. We show that T admits an effective quantifier elimination procedure and is decidable. Moreover this procedure provides sample answers for existentially quantified variables. The procedure comprises as special cases linear elimination for the reals and for Presburger arithmetic. We provide closely matching upper and lower bounds for the complexity of the quantifier elimination and decision problem for T . Applications include a characterization of T definable subsets of the real line, and the modeling of parametric mixed integer linear optimization, of continuous phenomena with periodicity, and the simulation and analysis of hybrid control systems. We also consider the elementary theory of reals in variations of this language in view of quantifier elimination...
Computational Geometry Problems in REDLOG
 AUTOMATED DEDUCTION IN GEOMETRY
, 1998
"... We solve algorithmic geometrical problems in real 3space or the real plane arising from applications in the area of cad, computer vision, and motion planning. The problems include parallel and central projection problems, shade and cast shadow problems, reconstruction of objects from images, offset ..."
Abstract

Cited by 19 (11 self)
 Add to MetaCart
We solve algorithmic geometrical problems in real 3space or the real plane arising from applications in the area of cad, computer vision, and motion planning. The problems include parallel and central projection problems, shade and cast shadow problems, reconstruction of objects from images, offsets of objects, Voronoi diagrams of a finite families of objects, and collision of moving objects. Our tools are real elimination algorithms implemented in the reduce package redlog. In many cases the problems can be solved uniformly in unspecified parameters. The power of the method is illustrated by examples many of which have been outside the scope of real elimination methods so far.
Gröbner Bases for Binomials with Parametric Exponents
 Technische Universität München
, 2004
"... We study the uniformity of Buchberger algorithms for computing Grobner bases with respect to a natural number parameter k in the exponents of the input polynomials. The problem is motivated by positive results of T. Takahashi on special exponential parameter series of polynomial sets in singular ..."
Abstract

Cited by 9 (0 self)
 Add to MetaCart
We study the uniformity of Buchberger algorithms for computing Grobner bases with respect to a natural number parameter k in the exponents of the input polynomials. The problem is motivated by positive results of T. Takahashi on special exponential parameter series of polynomial sets in singularity theory. For arbitrary input sets uniformity is in general impossible. By way of contrast we show that the Buchberger algorithm is indeed uniform up to a finite case distinction on the exponential parameter k for inputs consisting of monomials and binomials only. Under this hypothesis the case distinction is algorithmic and partitions the parameter range into Presburger sets. In each case the Buchberger algorithm is uniform and can be described explicitly and algorithmically. In the course of the algorithm the exponential parameter k enters also the coe#cients as exponent. Thus the uniformity in k is established with respect to parametric exponents in both terms and coe#cients. These results are obtained as a consequence of a much more general theorem concerning Buchberger algorithms for sets of monomials and binomials with arbitrary parametric coe#cients and exponents, generalizing the construction of Grobner systems.
An AutomataTheoretic Algorithm for Counting Solutions to Presburger Formulas
 In Compiler Construction 2004
, 2004
"... We present an algorithm for counting the number of integer solutions to selected free variables of a Presburger formula. We represent the Presburger formula as a deterministic finite automaton (DFA) whose accepting paths encode the standard binary representations of satisfying free variable valu ..."
Abstract

Cited by 8 (1 self)
 Add to MetaCart
We present an algorithm for counting the number of integer solutions to selected free variables of a Presburger formula. We represent the Presburger formula as a deterministic finite automaton (DFA) whose accepting paths encode the standard binary representations of satisfying free variable values. We count the number of accepting paths in such a DFA to obtain the number of solutions without enumerating the actual solutions. We demonstrate our algorithm on a suite of eight problems to show that it is universal, robust, fast, and scalable.
Proof synthesis and reflection for linear arithmetic. Submitted
, 2006
"... This article presents detailed implementations of quantifier elimination for both integer and real linear arithmetic for theorem provers. The underlying algorithms are those by Cooper (for Z) and by Ferrante and Rackoff (for R). Both algorithms are realized in two entirely different ways: once in ta ..."
Abstract

Cited by 6 (5 self)
 Add to MetaCart
This article presents detailed implementations of quantifier elimination for both integer and real linear arithmetic for theorem provers. The underlying algorithms are those by Cooper (for Z) and by Ferrante and Rackoff (for R). Both algorithms are realized in two entirely different ways: once in tactic style, i.e. by a proofproducing functional program, and once by reflection, i.e. by computations inside the logic rather than in the metalanguage. Both formalizations are highly generic because they make only minimal assumptions w.r.t. the underlying logical system and theorem prover. An implementation in Isabelle/HOL shows that the reflective approach is between one and two orders of magnitude faster. 1
On complete functional synthesis
, 2009
"... Synthesis of program fragments from specifications can make programs easier to write and easier to reason about. To integrate synthesis into programming languages, synthesis algorithms should behave in a predictable way—they should succeed for a welldefined class of specifications. They should also ..."
Abstract

Cited by 4 (3 self)
 Add to MetaCart
Synthesis of program fragments from specifications can make programs easier to write and easier to reason about. To integrate synthesis into programming languages, synthesis algorithms should behave in a predictable way—they should succeed for a welldefined class of specifications. They should also support unbounded data types such as numbers and data structures. We propose to generalize decision procedures into predictable and complete synthesis procedures. Such procedures are guaranteed to find code that satisfies the specification if such code exists. Moreover, we identify conditions under which synthesis will statically decide whether the solution is guaranteed to exist, and whether it is unique. We demonstrate our approach by extending decision procedures for integer linear arithmetic and data structures into synthesis procedures, and establishing results on the size and the efficiency of the synthesized code. We show that such procedures are useful as a language extension with implicit value definitions, and we show how to extend a compiler to support such definitions. Our constructs provide the benefits of synthesis to programmers, without requiring them to learn new concepts or give up a deterministic execution model. 1.
Quantifier elimination for the reals with a predicate for the powers of two
 Theoretical Computer Science
"... Abstract. In [5], van den Dries showed that the theory of the reals with a predicate for the integer powers of two admits quantifier elimination in an expanded language, and is hence decidable. He gave a modeltheoretic argument, which provides no apparent bounds on the complexity of a decision proc ..."
Abstract

Cited by 4 (0 self)
 Add to MetaCart
Abstract. In [5], van den Dries showed that the theory of the reals with a predicate for the integer powers of two admits quantifier elimination in an expanded language, and is hence decidable. He gave a modeltheoretic argument, which provides no apparent bounds on the complexity of a decision procedure. We provide a syntactic argument that yields a procedure that is primitive recursive, although not elementary. In particular, we show that it is possible to eliminate a single block of existential quantifiers in time 20, where n is the O(n) length of the input formula and 2x k denotes kfold iterated exponentiation. 1.