English
Related papers

Related papers: The Complexity of Flow Analysis in Higher-Order La…

200 papers

We give an exact characterization of the computational complexity of the $k$CFA hierarchy. For any $k > 0$, we prove that the control flow decision problem is complete for deterministic exponential time. This theorem validates empirical…

Programming Languages · Computer Science 2013-11-25 David Van Horn , Harry G. Mairson

Flow analysis is a ubiquitous and much-studied component of compiler technology---and its variations abound. Amongst the most well known is Shivers' 0CFA; however, the best known algorithm for 0CFA requires time cubic in the size of the…

Programming Languages · Computer Science 2013-11-25 David Van Horn , Harry G. Mairson

Low-level program analysis is a fundamental problem, taking the shape of "flow analysis" in functional languages and "points-to" analysis in imperative and object-oriented languages. Despite the similarities, the vocabulary and results in…

Programming Languages · Computer Science 2013-11-19 Matthew Might , Yannis Smaragdakis , David Van Horn

Traditional control-flow analysis (CFA) for higher-order languages, whether implemented by constraint-solving or abstract interpretation, introduces spurious connections between callers and callees. Two distinct invocations of a function…

Programming Languages · Computer Science 2016-03-23 Thomas Gilray , Steven Lyde , Michael D. Adams , Matthew Might , David Van Horn

In a functional language, the dominant control-flow mechanism is function call and return. Most higher-order flow analyses, including k-CFA, do not handle call and return well: they remember only a bounded number of pending calls because…

Programming Languages · Computer Science 2015-07-01 Dimitrios Vardoulakis , Olin Shivers

We present a new method for inferring complexity properties for a class of programs in the form of flowcharts annotated with loop information. Specifically, our method can (soundly and completely) decide if computed values are polynomially…

Programming Languages · Computer Science 2016-07-11 Amir M. Ben-Amram , Aviad Pineles

Context-free approaches to static analysis gain precision over classical approaches by perfectly matching returns to call sites---a property that eliminates spurious interprocedural paths. Vardoulakis and Shivers's recent formulation of…

Programming Languages · Computer Science 2010-07-27 Christopher Earl , Matthew Might , David Van Horn

A long-standing practical challenge in the optimization of higher-order languages is inlining functions with free variables. Inlining code statically at a function call site is safe if the compiler can guarantee that the free variables have…

Programming Languages · Computer Science 2013-06-11 Lars Bergstrom , Matthew Fluet , John Reppy , Nora Sandler

Higher-Order Fixpoint Logic (HFL) is a hybrid of the simply typed \lambda-calculus and the modal \lambda-calculus. This makes it a highly expressive temporal logic that is capable of expressing various interesting correctness properties of…

Logic in Computer Science · Computer Science 2015-07-01 Roland Axelsson , Martin Lange , Rafal Somla

The infimal prefix-closed, controllable and observable superlanguage plays an essential role in the relationship between controllability, observability and co-observability -- the central notions of supervisory control theory. Existing…

Systems and Control · Computer Science 2017-03-16 Tomáš Masopust

Programs that transform other programs often require access to the internal structure of the program to be transformed. This is at odds with the usual extensional view of functional programming, as embodied by the lambda calculus and SK…

Programming Languages · Computer Science 2015-12-15 Martin Lester

This paper addresses the challenging scheduling problem of coflows with release times, with the objective of minimizing the total weighted completion time. Previous literature has predominantly concentrated on establishing the scheduling…

Data Structures and Algorithms · Computer Science 2023-12-27 Chi-Yeh Chen

The existence of string functions, which are not polynomial time computable, but whose graph is checkable in polynomial time, is a basic assumption in cryptography. We prove that in the framework of algebraic complexity, there are no such…

Computational Complexity · Computer Science 2018-12-18 Peter Bürgisser

We develop a framework for computing two foundational analyses for concurrent higher-order programs: (control-)flow analysis (CFA) and may-happen-in-parallel analysis (MHP). We pay special attention to the unique challenges posed by the…

Programming Languages · Computer Science 2011-06-15 Matthew Might , David Van Horn

Total Flow Analysis (TFA) is a method for conducting the worst-case analysis of time sensitive networks without cyclic dependencies. In networks with cyclic dependencies, Fixed-Point TFA introduces artificial cuts, analyses the resulting…

Networking and Internet Architecture · Computer Science 2022-05-12 Stéphan Plassart , Jean-Yves Le Boudec

We show that time complexity analysis of higher-order functional programs can be effectively reduced to an arguably simpler (although computationally equivalent) verification problem, namely checking first-order inequalities for validity.…

Logic in Computer Science · Computer Science 2012-10-26 Ugo Dal Lago , Barbara Petit

Many problems in static program analysis can be modeled as the context-free language (CFL) reachability problem on directed labeled graphs. The CFL reachability problem can be generally solved in time $O(n^3)$, where $n$ is the number of…

Formal Languages and Automata Theory · Computer Science 2023-08-21 Paraschos Koutris , Shaleen Deep

We study the computational and descriptional complexity of the following transformation: Given a one-counter automaton (OCA) A, construct a nondeterministic finite automaton (NFA) B that recognizes an abstraction of the language L(A): its…

Formal Languages and Automata Theory · Computer Science 2016-02-11 Mohamed Faouzi Atig , Dmitry Chistikov , Piotr Hofman , K Narayan Kumar , Prakash Saivasan , Georg Zetzsche

We address the problem of verifying message passing programs, defined as a set of parallel processes communicating through unbounded FIFO buffers. We introduce a bounded analysis that explores a special type of computations, called…

Programming Languages · Computer Science 2018-04-20 Ahmed Bouajjani , Constantin Enea , Kailiang Ji , Shaz Qadeer

We improve and refine a method for certifying that the values' sizes computed by an imperative program will be bounded by polynomials in the program's inputs' sizes. Our work ''tames'' the non-determinism of the original analysis, and…

Logic in Computer Science · Computer Science 2021-07-05 Clément Aubert , Thomas Rubiano , Neea Rusch , Thomas Seiller
‹ Prev 1 2 3 10 Next ›