English
Related papers

Related papers: Deadlock detection in linear recursive programs

200 papers

We present a framework for statically detecting deadlocks in a concurrent object-oriented language with asynchronous method calls and cooperative scheduling of method activations. Since this language features recursion and dynamic resource…

Programming Languages · Computer Science 2015-11-17 Elena Giachino , Cosimo Laneve , Michael Lienhardt

This paper introduces a novel paradigm for the analysis and verification of concurrent programs -- the Singularity Theory. We model the execution space of a concurrent program as a branched topological space, where program states are points…

Programming Languages · Computer Science 2025-10-30 Di Zhang

This paper presents a technique for deadlock detection of Java programs. The technique uses typing rules for extracting infinite-state abstract models of the dependencies among the components of the Java intermediate language -- the Java…

Programming Languages · Computer Science 2017-09-14 Abel Garcia , Cosimo Laneve

Deadlocks are a major source of bugs in concurrent programs. They are hard to predict, because they may only occur under specific scheduling conditions. Dynamic analysis attempts to identify potential deadlocks by examining a single…

Programming Languages · Computer Science 2026-05-13 Bas van den Heuvel , Martin Sulzmann , Peter Thiemann

We present an algorithm for the repair of parameterized systems. The repair problem is, for a given process implementation, to find a refinement such that a given safety property is satisfied by the resulting parameterized system, and…

Logic in Computer Science · Computer Science 2022-07-29 Swen Jacobs , Mouhammad Sakr , Marcus Völp

Deadlock detection is a challenging issue in the analysis and design of on-chip networks. We have designed an algorithm to detect deadlocks automatically in on-chip networks with wormhole switching. The algorithm has been specified and…

Logic in Computer Science · Computer Science 2011-10-24 Freek Verbeek , Julien Schmaltz

Many logic programming languages have delay primitives which allow coroutining. This introduces a class of bug symptoms -- computations can flounder when they are intended to succeed or finitely fail. For concurrent logic programs this is…

Programming Languages · Computer Science 2007-11-06 Lee Naish

We previously developed a polymorphic type system and a type checker for a multithreaded lock-based polymorphic typed assembly language (MIL) that ensures that well-typed programs do not encounter race conditions. This paper extends such…

Programming Languages · Computer Science 2010-02-05 Vasco T. Vasconcelos , Francisco Martins , Tiago Cogumbreiro

Deadlocks occur in concurrent programs as a consequence of cyclic resource acquisition between threads. In this paper we present a novel type system that guarantees deadlock freedom for a language with references, unstructured locking…

Programming Languages · Computer Science 2011-10-20 Prodromos Gerakios , Nikolaos Papaspyrou , Konstantinos Sagonas

In the vicinity of a solution of a nonlinear programming problem at which both strict complementarity and linear independence of the active constraints may fail to hold, we describe a technique for distinguishing weakly active from strongly…

Optimization and Control · Mathematics 2025-10-20 Stephen J. Wright

We show how logic programs with "delays" can be transformed to programs without delays in a way which preserves information concerning floundering (also known as deadlock). This allows a declarative (model-theoretic), bottom-up or goal…

Programming Languages · Computer Science 2020-02-19 Lee Naish

Recursive calls over recursive data are useful for generating probability distributions, and probabilistic programming allows computations over these distributions to be expressed in a modular and intuitive way. Exact inference is also…

Programming Languages · Computer Science 2023-03-28 David Chiang , Colin McDonald , Chung-chieh Shan

Neural networks have in recent years shown promise for helping software engineers write programs and even formally verify them. While semantic information plays a crucial part in these processes, it remains unclear to what degree popular…

Machine Learning · Computer Science 2023-06-27 Shizhuo Dylan Zhang , Curt Tigges , Stella Biderman , Maxim Raginsky , Talia Ringer

Much algorithmic research in NLP aims to efficiently manipulate rich formal structures. An algorithm designer typically seeks to provide guarantees about their proposed algorithm -- for example, that its running time or space complexity is…

Programming Languages · Computer Science 2025-12-30 Tim Vieira , Ryan Cotterell , Jason Eisner

Identifying the dynamic precompensator that renders a nonlinear control system feedback linearizable is a challenging problem. Researchers have explored the problem -- dynamic feedback linearization -- and produced existence conditions and…

Optimization and Control · Mathematics 2026-02-03 Rollen S. D'Souza

Computational models of human language often involve combinatorial problems. For instance, a probabilistic parser may marginalize over exponentially many trees to make predictions. Algorithms for such problems often employ dynamic…

Computation and Language · Computer Science 2021-09-16 Tim Vieira , Ryan Cotterell , Jason Eisner

Bounded model checking of pointer programs is a debugging technique for programs that manipulate dynamically allocated pointer structures on the heap. It is based on the following four observations. First, error conditions like dereference…

Logic in Computer Science · Computer Science 2016-03-02 Witold Charatonik , Piotr Witkowski

Probabilistic models often have parameters that can be translated, scaled, permuted, or otherwise transformed without changing the model. These symmetries can lead to strong correlation and multimodality in the posterior distribution over…

Machine Learning · Statistics 2013-12-20 Robert Nishihara , Thomas Minka , Daniel Tarlow

Topological deep learning is a formalism that is aimed at introducing topological language to deep learning for the purpose of utilizing the minimal mathematical structures to formalize problems that arise in a generic deep learning…

Machine Learning · Computer Science 2021-02-17 Mustafa Hajij , Kyle Istvan

Computational interpretations of linear logic allow static control of memory resources: the data produced by the program are endowed through its type with attributes that determine its life cycle, and guarantee safe deallocation. The use of…

Programming Languages · Computer Science 2025-10-09 Hector Gramaglia
‹ Prev 1 2 3 10 Next ›