Amir M. Ben-Amram

dblp:b/AMBenAmram · DBLP profile ↗
← Back
44ranked-venue papers
41as first author
1since 2021 · last 2021
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Theory of computation · 32 · 31 first-author · 1 since 2021Software engineering, systems software and programming languages · 13 · 11 first-authorApplied, interdisciplinary, general and emerging computing · 3 · 3 first-authorDatabases, data management, data science and information retrieval · 1 · 1 first-author
YearPublicationVenuePosition
2021 Tight Polynomial Bounds for Loop Programs in Polynomial Space
abstract
We consider the following problem: given a program, find tight asymptotic bounds on the values of some variables at the end of the computation (or at any given program point) in terms of its input values. We focus on the case of polynomially-bounded variables, and on a weak programming language for which we have recently shown that tight bounds for polynomially-bounded variables are computable. These bounds are sets of multivariate polynomials. While their computability has been settled, the complexity of this program-analysis problem remained open. In this paper, we show the problem to be PSPACE-complete. The main contribution is a new, space-efficient analysis algorithm. This algorithm is obtained in a few steps. First, we develop an algorithm for univariate bounds, a sub-problem which is already PSPACE-hard. Then, a decision procedure for multivariate bounds is achieved by reducing this problem to the univariate case; this reduction is orthogonal to the solution of the univariate problem and uses observations on the geometry of a set of vectors that represent multivariate bounds. Finally, we transform the univariate-bound algorithm to produce multivariate bounds.
Amir M. Ben-Amram, Geoff W. Hamilton
Log. Methods Comput. Sci.1
2020 Tight Polynomial Worst-Case Bounds for Loop Programs
Amir M. Ben-Amram, Geoff W. Hamilton
Log. Methods Comput. Sci.1
2019 Tight Worst-Case Bounds for Polynomial Loop Programs
abstract
Abstract In 2008, Ben-Amram, Jones and Kristiansen showed that for a simple programming language—representing non-deterministic imperative programs with bounded loops, and arithmetics limited to addition and multiplication—it is possible to decide precisely whether a program has certain growth-rate properties, in particular whether a computed value, or the program’s running time, has a polynomial growth rate. A natural and intriguing problem was to improve the precision of the information obtained. This paper shows how to obtain asymptotically-tight multivariate polynomial bounds for this class of programs. This is a complete solution: whenever a polynomial bound exists it will be found.
Amir M. Ben-Amram, Geoff W. Hamilton
FoSSaCS1
2019 Multiphase-Linear Ranking Functions and Their Relation to Recurrent Sets
Amir M. Ben-Amram, Jesús Doménech, Samir Genaim
SAS1
2017 On Multiphase-Linear Ranking Functions
Amir M. Ben-Amram, Samir Genaim
CAV (2)1
2015 Complexity of Bradley-Manna-Sipma Lexicographic Ranking Functions
Amir M. Ben-Amram, Samir Genaim
CAV (2)1
2014 Ranking Functions for Linear-Constraint Loops
abstract
In this article, we study the complexity of the problems: given a loop, described by linear constraints over a finite set of variables, is there a linear or lexicographical-linear ranking function for this loop? While existence of such functions implies termination, these problems are not equivalent to termination. When the variables range over the rationals (or reals), it is known that both problems are PTIME decidable. However, when they range over the integers, whether for single-path or multipath loops, the complexity has not yet been determined. We show that both problems are coNP-complete. However, we point out some special cases of importance of PTIME complexity. We also present complete algorithms for synthesizing linear and lexicographical-linear ranking functions, both for the general case and the special PTIME cases. Moreover, in the rational setting, our algorithm for synthesizing lexicographical-linear ranking functions extends existing ones, because our definition for such functions is more general, yet it has PTIME complexity.
Amir M. Ben-Amram, Samir Genaim
J. ACM1
2013 On the linear ranking problem for integer linear-constraint loops
abstract
In this paper we study the complexity of the Linear Ranking problem: given a loop, described by linear constraints over a finite set of integer variables, is there a linear ranking function for this loop? While existence of such a function implies termination, this problem is not equivalent to termination. When the variables range over the rationals or reals, the Linear Ranking problem is known to be PTIME decidable. However, when they range over the integers, whether for single-path or multipath loops, the complexity of the Linear Ranking problem has not yet been determined. We show that it is coNP-complete. However, we point out some special cases of importance of PTIME complexity. We also present complete algorithms for synthesizing linear ranking functions, both for the general case and the special PTIME cases.
Amir M. Ben-Amram, Samir Genaim
POPL1
2013 Mortality of Iterated Piecewise Affine Functions over the Integers: Decidability and Complexity (extended abstract)
abstract
In the theory of discrete-time dynamical systems, one studies the limiting behaviour of processes defined by iterating a fixed function f over a given space. A much-studied case involves piecewise affine functions on R^n. Blondel et al. (2001) studied the decidability of questions such as mortality for such functions with rational coefficients. Mortality means that every trajectory includes a 0; if the iteration is seen as a loop while (x \ne 0) x := f(x), mortality means that the loop is guaranteed to terminate. Blondel et al. proved that the problems are undecidable when the dimension n of the state space is at least two. They assume that the variables range over the rationals; this is an essential assumption. From a program analysis (and discrete Computability) viewpoint, it would be more interesting to consider integer-valued variables. This paper establishes (un)decidability results for the integer setting. We show that also over integers, undecidability (moreover, Pi^0_2 completeness) begins at two dimensions. We further investigate the effect of several restrictions on the iterated functions. Specifically, we consider bounding the size of the partition defining f, and restricting the coefficients of the linear components. In the decidable cases, we give complexity results. The complexity is PTIME for affine functions, but for piecewise-affine ones it is PSPACE-complete. The undecidability proofs use some variants of the Collatz problem, which may be of independent interest.
Amir M. Ben-Amram
STACS1
2012 On the Termination of Integer Loops
Amir M. Ben-Amram, Samir Genaim, Abu Naser Masud
VMCAI1
2012 Monotonicity Constraints in Characterizations of PSPACE
abstract
A celebrated contribution of Bellantoni and Cook was a function algebra to capture FPTIME. This algebra uses recursion on notation. Later, Oitavem showed that including primitive recursion, an algebra is obtained that captures FPSPACE. The main results of this article concern variants of the later algebra. First, we show that iteration can replace primitive recursion. Then, we consider the results of imposing a monotonicity constraint on the primitive recursion or iteration. We find that in the case of iteration, the power of the algebra shrinks to FPTIME. More interestingly, with primitive recursion, we obtain a new implicit characterization of the polynomial hierarchy (FPH). The idea to consider these monotonicity constraints arose from the results on write-once tapes for Turing machines. We review this background and also note a new machine characterization of ΔP2, that similarly to our function algebras, arises by combining monotonicity constraints with a known characterization of PSPACE.
Amir M. Ben-Amram, Bruno Loff, Isabel Oitavem
J. Log. Comput.1
2012 Corrigendum to "A simple and efficient Union-Find-Delete algorithm" [Theoret. Comput. Sci. 412(4-5) 487-492]
Amir M. Ben-Amram, Simon Yoffe
Theor. Comput. Sci.1
2012 On the Termination of Integer Loops
abstract
In this article we study the decidability of termination of several variants of simple integer loops, without branching in the loop body and with affine constraints as the loop guard (and possibly a precondition). We show that termination of such loops is undecidable in some cases, in particular, when the body of the loop is expressed by a set of linear inequalities where the coefficients are from Z ∪ { r } with r an arbitrary irrational; when the loop is a sequence of instructions, that compute either linear expressions or the step function; and when the loop body is a piecewise linear deterministic update with two pieces. The undecidability result is proven by a reduction from counter programs, whose termination is known to be undecidable. For the common case of integer linear-constraint loops with rational coefficients we have not succeeded in proving either decidability or undecidability of termination, but we show that a Petri net can be simulated with such a loop; this implies some interesting lower bounds. For example, termination for a partially specified input is at least EXPSPACE-hard.
Amir M. Ben-Amram, Samir Genaim, Abu Naser Masud
ACM Trans. Program. Lang. Syst.1
2011 A simple and efficient Union-Find-Delete algorithm
Amir M. Ben-Amram, Simon Yoffe
Theor. Comput. Sci.1
2011 SAT-based termination analysis using monotonicity constraints over the integers
abstract
Abstract We describe an algorithm for proving termination of programs abstracted to systems of monotonicity constraints in the integer domain. Monotonicity constraints are a nontrivial extension of the well-known size-change termination method. While deciding termination for systems of monotonicity constraints is PSPACE complete, we focus on a well-defined and significant subset, which we call MCNP (for “monotonicity constraints in NP”), designed to be amenable to a SAT-based solution. Our technique is based on the search for a special type of ranking function defined in terms of bounded differences between multisets of integer values. We describe the application of our approach as the back end for the termination analysis of Java Bytecode. At the front end, systems of monotonicity constraints are obtained by abstracting information, using two different termination analyzers:AProVEandCOSTA. Preliminary results reveal that our approach provides a good trade-off between precision and cost of analysis.
Michael Codish, Igor Gonopolskiy, Amir M. Ben-Amram, Carsten Fuhs, Jürgen Giesl
Theory Pract. Log. Program.3
2009 Size-Change Termination, Monotonicity Constraints and Ranking Functions
Amir M. Ben-Amram
CAV1
2009 A complexity tradeoff in ranking-function termination proofs
Amir M. Ben-Amram
Acta Informatica1
2008 Linear, Polynomial or Exponential? Complexity Inference in Polynomial Time
Amir M. Ben-Amram, Neil D. Jones, Lars Kristiansen
CiE1
2008 A SAT-Based Approach to Size Change Termination with Global Ranking Functions
Amir M. Ben-Amram, Michael Codish
TACAS1
2008 Size-change termination with difference constraints
abstract
This article considers an algorithmic problem related to the termination analysis of programs. More specifically, we are given bounds on differences in sizes of data values before and after every transition in the program's control-flow graph. Our goal is to infer program termination via the following reasoning (“the size-change principle”): if in any infinite (hypothetic) execution of the program, some size must descend unboundedly, the program must always terminate, since infinite descent of a natural number is impossible. The problem of inferring termination from such abstract information is not the halting problem for programs and may well be decidable. If this is the case, the decision algorithm forms a “back end” of a termination verifier, and it is interesting to find out the computational complexity of the problem. A restriction of the problem described above, which only uses monotonicity information (but not difference bounds), is already known to be decidable. We prove that the unrestricted problem is undecidable, which gives a theoretical argument for studying restricted cases. We consider a case where the termination proof is allowed to make use of at most one bound per target variable in each transition. For this special case, which we claim is practically significant, we give (for the first time) an algorithm and show that the problem is in PSPACE, in fact that it is PSPACE-complete. The algorithm is based on combinatorial arguments and results from the theory of integer programming not previously used for similar problems. The algorithm has interesting connections to other work in termination, in particular to methods for generating linear ranking functions or invariants.
Amir M. Ben-Amram
ACM Trans. Program. Lang. Syst.1
2007 Program termination analysis in polynomial time
abstract
Asize-change termination algorithmtakes as input abstract information about a program in the form ofsize-change graphsand uses it to determine whether any infinite computation would imply that some data decrease in size infinitely. Since such an infinite descent is presumed impossible, this proves program termination. The property of the graphs that implies program termination is called SCT. There are many examples of practical programs whose termination can be verified by creating size-change graphs and testing them for SCT.The size-change graph abstraction is useful because the graphs often carry sufficient information to deduce termination, and at the same time are simple enough to be analyzed automatically. However, there is a tradeoff between the completeness and efficiency of this analysis, and complete algorithms in the literature can easily be pushed to an exponential combinatorial search by certain patterns in the graph structures.We therefore propose a novel algorithm to detect common forms of parameter-descent behavior efficiently. Specifically, we target lexicographic descent, multiset descent, and min- and max-descent. Our algorithm makes it possible to verify practical instances of SCT while guarding against unwarranted combinatorial search. It has worst-case time complexity cubic in the input size, and its effectiveness is demonstrated empirically using a test suite of over 90 programs.
Amir M. Ben-Amram, Chin Soon Lee
ACM Trans. Program. Lang. Syst.1
2006 Backing up in singly linked lists
abstract
We show how to reduce the time overhead for implementing two-way movement on a singly linked list to O ( n ϵ ) per operation without modifying the list and without making use of storage other than a finite number of pointers into the list. We also prove a matching lower bound.These results add precision to the intuitive feeling that doubly linked lists are more efficient than singly linked lists, and quantify the efficiency gap in a read-only situation. We further analyze the number of points of access into the list (pointers) necessary for obtaining a desired value of ϵ. We obtain tight tradeoffs which also separate the amortized and worst-case settings.Our upper bound implies that read-only programs with singly-linked input can do string matching much faster than previously expected.
Amir M. Ben-Amram, Holger Petersen 0001
J. ACM1
2003 Element distinctness on one-tape Turing machines: a complete solution
Amir M. Ben-Amram, Omer Berkman, Holger Petersen 0001
Acta Informatica1
2003 Tighter constant-factor time hierarchies
Amir M. Ben-Amram
Inf. Process. Lett.1
2002 Lower Bounds for Dynamic Data Structures on Algebraic RAMs
Amir M. Ben-Amram, Zvi Galil
Algorithmica1
2002 Improved Bounds for Functions Related to Busy Beavers
Amir M. Ben-Amram, Holger Petersen 0001
Theory Comput. Syst.1
2001 The size-change principle for program termination
abstract
The "size-change termination" principle for a first-order functional language with well-founded data is: a program terminates on all inputs if every infinite call sequence (following program control flow) would cause an infinite descent in some data values.Size-change analysis is based only on local approximations to parameter size changes derivable from program syntax. The set of infinite call sequences that follow program flow and can be recognized as causing infinite descent is an ω-regular set, representable by a Büchi automaton. Algorithms for such automata can be used to decide size-change termination. We also give a direct algorithm operating on "size-change graphs" (without the passage to automata).Compared to other results in the literature, termination analysis based on the size-change principle is surprisingly simple and general: lexical orders (also called lexicographic orders), indirect function calls and permuted arguments (descent that is not in-situ) are all handled automatically and without special treatment, with no need for manually supplied argument orders, or theorem-proving methods not certain to terminate at analysis time.We establish the problem's intrinsic complexity. This turns out to be surprisingly high, complete for PSPACE, in spite of the simplicity of the principle. PSPACE hardness is proved by a reduction from Boolean program termination. An ineresting consequence: the same hardness result applies to many other analyses found in the termination and quasitermination literature.
Chin Soon Lee, Neil D. Jones, Amir M. Ben-Amram
POPL3
2001 A Generalization of a Lower Bound Technique due to Fredman and Saks
Amir M. Ben-Amram, Zvi Galil
Algorithmica1
2001 Topological Lower Bounds on Algebraic Random Access Machines
abstract
We prove general lower bounds for set recognition on random access machines (RAMs) that operate on real numbers with algebraic operations $\{+,-,\times,/\}$, as well as RAMs that use the operations $\{+,-,\times,\lfloor\;\rfloor\}$. We do it by extending a technique formerly used with respect to algebraic computation trees. In the case of algebraic computation trees, the complexity was related to the number of connected components of the set W to be recognized. For RAMs, four similar results apply to the number of connected components of $W^\circ$, the topological interior of W. Two results use $(\overline W)^\circ$, the interior of the topological closure of W. We present theorems that can be applied to a variety of problems and obtain lower bounds, many of them tight, for the following models: 1. A RAM which operates on real numbers, using integers to address memory and either the operations $\{+,-,\times,/\}$ or $\{+,-,\times,\lfloor\;\rfloor\}$. 2. A RAM of each of the above instruction sets, extended by allowing arbitrary real numbers to be used as memory addresses and adding a test-for-integer instruction. 3. A RAM of each of the above instruction sets which can compute with arbitrary real numbers, as well as use them for memory addressing, while the input is restricted to the integers. (For one result on this model, we require that all program constants be rational.)
Amir M. Ben-Amram, Zvi Galil
SIAM J. Comput.1
2000 Computational complexity via programming languages: constant factors do matter
Amir M. Ben-Amram, Neil D. Jones
Acta Informatica1
1999 Worst-Case and Amortised Optimality in Union-Find (Extended Abstract)
abstract
We study the interplay between worst-case and amortised time bounds for the classic Disjoint Set Union problem (Union-Find). We ask whether it is possible to achieve optimal worst-case and amortised bounds simultaneously. Furthermore we would like to allow a tradeoff between the worst-case time for a query and for an update. We answer this question by first providing lower bounds for the possible worst-case time tradeoffs, as well as lower bounds which show where in this tradeoff range optimal amortised time is achievable. We then give an algorithm which tightly matches both lower bounds simultaneously. The lower bounds are provided in the cell-probe model as well as in the algebraic real-number RAM, and the upper bounds hold for a RAM with logarithmic word size and a modest instruction set. Our lower bounds show that for worst-case query and update time tq and tu respectively, one must have tq = \\Omega (log n = log tu), and only for tq * ff(m; n) can this tradeoff be achieved simultaneously with the optimal amortised time of \\Theta (ff(m; n)). Our
Stephen Alstrup, Amir M. Ben-Amram, Theis Rauhe
STOC2
1999 Backing Up in Singly Linked Lists
abstract
two-way movement in the input, nor tables or other types of auxiliary memory are available.We show how to reduce the time overhead for backingThe main result of this paper is a method for reducup in a singly linked list to O(n') per operation for any ing the time overhead for backing up in a linear list.e > 0 without modifying the list and without making More specifically for every E > 0 the time complexity use of storage other than a finite number of pointers into of backing up by one position in a singly linked list the list.We also prove a matching lower bound.Our of length n can be reduced to 0(n<).There are some results add precision to the intuitive feeling that doubly preparatory operations that take linear time, but since linked lists are more efficient than singly linked lists, merely inspecting the input takes linear time, the worst and quantify the efficiency gap in a read-only situation.case complexity of any reasonable program will not suf-As an application, our upper bound implies that readfer from these operations.We will therefore assume only programs can do string matching much faster than throughout this paper that the time complexity of all previously expected.programs to be simulated is at least linear.
Amir M. Ben-Amram, Holger Petersen 0001
STOC1
1999 A Precise Version of a Time Hierarchy Theorem
abstract
Using a simple programming language as a computational model, Neil Jones has shown that a constant-factor time hierarchy exists: thus a constant-factor difference in time makes a difference in problem-solving power, unlike the situation with Turing m
Amir M. Ben-Amram, Neil D. Jones
Fundam. Informaticae1
1998 CONS-Free Programs with Tree Input (Extended Abstract)
Amir M. Ben-Amram, Holger Petersen 0001
ICALP1
1997 When Can We Sort in o(n log n) Time?
abstract
We define two conditions on a random access machine (RAM) with arithmetic and Boolean instructions and possible bounds on word and memory sizes. One condition asserts that we either restrict attention to short words or allow nonuniform programs. The second asserts that we either allow a large memory or a double-precision multiplication. Our main theorem shows that the RAM can sort ino(n log n) time if and only if both of these conditions hold. This theorem breaks down into four upper bounds only one of which has been known before, and two lower bounds neither of which has been known.
Amir M. Ben-Amram
J. Comput. Syst. Sci.1
1996 A Note on Busy Beavers and Other Creatures
Amir M. Ben-Amram, Bryant A. Julstrom, Uri Zwick
Math. Syst. Theory1
1995 Lower Bounds on Algebraic Random Access Machines (Extended Abstract)
Amir M. Ben-Amram, Zvi Galil
ICALP1
1995 On the Power of the Shift Instruction
abstract
This paper examines the power of the shift primitive when included in a high level model operatin on unbounded integers. It is shown that in such a model a constant number of registers suffices for simulating an unbounded memory RAM of the sam instruction set. The simulation is on-line, and its cost can be bounded by O(tα(s)), for a RAM program of running time t and space s. By multitask programming (postponing lengthy updates) it can be made close to real-time (O(α(s)) per operation).
Amir M. Ben-Amram, Zvi Galil
Inf. Comput.1
1994 The Subtree Max Gap Problem with Application to Parallel String Covering
Amir M. Ben-Amram, Omer Berkman, Costas S. Iliopoulos, Kunsoo Park
SODA1
1994 Unit-Cost Pointers versus Logarithmic-Cost Addresses
Amir M. Ben-Amram
Theor. Comput. Sci.1
1993 When can we sort in o(n log n) time?
abstract
We define two conditions on a random access machine (RAM) with arithmetic and Boolean instructions and possible bounds on word and memory sizes. One condition asserts that we either restrict attention to short words or allow non-uniform programs. The second asserts that we either allow a large memory or a double-precision multiplication. Our main theorem shows that the RAM can sort in o(nlog n) time if and only if both of these conditions hold. This theorem breaks down into four upper bounds only one of which has been known before, and two lower bounds neither of which has been known.>
Amir M. Ben-Amram, Zvi Galil
FOCS1
1992 On Pointers versus Addresses
abstract
What is the cost of random access to memory?This fundamental problem M addressed by studying the simulation of random addressing by a machine that lacks it, a "pointer machine.'"The problem is formulated in the context of high-level computational models, allowing the use of a data type of our choice, A RAM program of time tand space s can be simulated m 0( f log .s)time using a tree.To enable a lower-bound proof, we formalize a notion of incompressibility for general data types.The main theorem states that for all incompressible data types an Ll( f log s) lower bound holds.Incompressibility trivially holds for strings, but is harder to prove for a powerful data type.Incompressibility is proved for the real numbers with a set of primitives that includes all functions that are continuous except on a countable closed set.This may be the richest set of operations considered m a lower-bound proof.It is also shown that the integers with arithmetic +, -, x and [ .x/2~,any Boolean operations, and left shift are incompressible.Tbe situation is reversed once right shift is allowed.
Amir M. Ben-Amram, Zvi Galil
J. ACM1
1991 Lower Bounds for Data Structure Problems on RAMs (Extended Abstract)
abstract
A technique is described for deriving lower bounds and tradeoffs for data structure problems. Two quantities are defined. The output variability depends only on the model of computation. It characterizes in some sense the power of a model. The problem variability depends only on the problem under consideration. It characterizes in some sense the difficulty of the problem. The first theorem states that if a model's output variability is smaller than the problem variability, a lower bound on the worst case (average case) time for the problem follows. A RAM that can add, subtract and compare unbounded integers is considered. The second theorem gives an upper bound on the output variability of this model. The two theorems are used to derive lower bounds for the union-find problem in this RAM.>
Amir M. Ben-Amram, Zvi Galil
FOCS1
1988 On Pointers versus Addresses (Extended Abstract)
abstract
The problem of determining the cost of random-access memory (RAM) is addressed by studying the simulation of random addressing by a machine which lacks it, called a pointer machine. The model allows the use of a data type of choice. A RAM program of time t and space s can be simulated in O(t log s) time using a tree. However, this is not an obvious lower bound since a high-level data type can allow the data to be encoded in a more economical way. The major contribution is the formalization of incompressibility for general data types. The definition extends a similar property of strings that underlies the theory of Kolmogorov complexity. The main theorem states that for all incompressible data types an Omega (t log s) lower bound holds. Incompressibility is proved for the real numbers with a set of primitives which includes all functions which are continuously differentiable except on a countable closed set.>
Amir M. Ben-Amram, Zvi Galil
FOCS1