16 research outputs found
A Combinatorial Certifying Algorithm for Linear Programming Problems with Gainfree Leontief Substitution Systems
Linear programming (LP) problems with gainfree Leontief substitution systems
have been intensively studied in economics and operations research, and include
the feasibility problem of a class of Horn systems, which arises in, e.g.,
polyhedral combinatorics and logic. This subclass of LP problems admits a
strongly polynomial time algorithm, where devising such an algorithm for
general LP problems is one of the major theoretical open questions in
mathematical optimization and computer science. Recently, much attention has
been paid to devising certifying algorithms in software engineering, since
those algorithms enable one to confirm the correctness of outputs of programs
with simple computations. In this paper, we provide the first combinatorial
(and strongly polynomial time) certifying algorithm for LP problems with
gainfree Leontief substitution systems. As a by-product, we answer
affirmatively an open question whether the feasibility problem of the class of
Horn systems admits a combinatorial certifying algorithm
Incrementally Closing Octagons
The octagon abstract domain is a widely used numeric abstract domain expressing relational information between variables whilst being both computationally efficient and simple to implement. Each element of the domain is a system of constraints where each constraint takes the restricted form ±xi±xj≤c. A key family of operations for the octagon domain are closure algorithms, which check satisfiability and provide a normal form for octagonal constraint systems. We present new quadratic incremental algorithms for closure, strong closure and integer closure and proofs of their correctness. We highlight the benefits and measure the performance of these new algorithms
Polyhedral Compilation: Applications, Approximations and GPU-specific Optimizations
Polyhedral compilation has been successful in analyzing, optimizing, automatically parallelizing
a�ne computations for modern heterogenous target architectures. Many of the tools have been
developed to automate the process of program analysis and transformations for a�ne control parts
of programs including widely used open-source and production compilers such as GCC, LLVM,
IBM/XL. This thesis makes contribution to the polyhedral model in three orthogonal dimensions as
follows:
• Applications: Applies polyhedral loop transformations on Deep learning computation kernel
to demonstrate the e�ectiveness of complex loop transformations on these kernels.
• Approximations: Developes two efficient algorithms to over-approximate convex polyhedra
into U-TVPI polyhedra having applications in polyhedral compilation as well as automated
program verification.
• GPU-Specific Optimizations: Builds end-to-end fully automatic compiler framework to
generate cache optimized CUDA code begining from sequential C program by using polyhedral
modelling techniques.
New results on rewrite-based satisfiability procedures
Program analysis and verification require decision procedures to reason on
theories of data structures. Many problems can be reduced to the satisfiability
of sets of ground literals in theory T. If a sound and complete inference
system for first-order logic is guaranteed to terminate on T-satisfiability
problems, any theorem-proving strategy with that system and a fair search plan
is a T-satisfiability procedure. We prove termination of a rewrite-based
first-order engine on the theories of records, integer offsets, integer offsets
modulo and lists. We give a modularity theorem stating sufficient conditions
for termination on a combinations of theories, given termination on each. The
above theories, as well as others, satisfy these conditions. We introduce
several sets of benchmarks on these theories and their combinations, including
both parametric synthetic benchmarks to test scalability, and real-world
problems to test performances on huge sets of literals. We compare the
rewrite-based theorem prover E with the validity checkers CVC and CVC Lite.
Contrary to the folklore that a general-purpose prover cannot compete with
reasoners with built-in theories, the experiments are overall favorable to the
theorem prover, showing that not only the rewriting approach is elegant and
conceptually simple, but has important practical implications.Comment: To appear in the ACM Transactions on Computational Logic, 49 page