Results 1  10
of
53
A Generic Approach to the Static Analysis of Concurrent Programs with Procedures
, 2003
"... We present a generic aproach to the static analysis of concurrent programs with procedures. We model programs as communicating pushdown systems. It is known that typical dataow problems for this model are undecidable, because the emptiness problem for the intersection of contextfree languages, w ..."
Abstract

Cited by 77 (16 self)
 Add to MetaCart
We present a generic aproach to the static analysis of concurrent programs with procedures. We model programs as communicating pushdown systems. It is known that typical dataow problems for this model are undecidable, because the emptiness problem for the intersection of contextfree languages, which is undecidable, can be reduced to them. In this paper we propose an algebraic framework for de ning abstractions (upper approximations) of contextfree languages. We consider two classes of abstractions: nitechain abstractions, which are abstractions whose domains do not contain any in nite chains, and commutative abstractions corresponding to classes of languages that contain a word if and only if they contain all its permutations. We show how to compute such approximations by combining automata theoretic techniques with algorithms for solving systems of polynomial inequations in Kleene algebras.
Computation in Networks of Passively Mobile FiniteState Sensors
 Distributed Computing
, 2004
"... We explore the computational power of networks of small resourcelimited mobile agents. We define two new models of computation based on pairwise interactions of finitestate agents in populations of finite but unbounded size. With a fairness condition on interactions, we define the concept of stabl ..."
Abstract

Cited by 69 (15 self)
 Add to MetaCart
We explore the computational power of networks of small resourcelimited mobile agents. We define two new models of computation based on pairwise interactions of finitestate agents in populations of finite but unbounded size. With a fairness condition on interactions, we define the concept of stable computation of a function or predicate, and give protocols that stably compute functions in a class including Boolean combinations of thresholdk, parity, majority, and simple arithmetic. We prove that all stably computable predicates are in NL. With uniform random sampling of pairs to interact, we define the model of conjugating automata and show that any counter machine with O(1) counters of capacity O(n) can be simulated with high probability by a protocol in a population of size n. We prove that all predicates computable with high probability in this model are in P #RL.
How to compose PresburgerAccelerations: Applications to Broadcast Protocols
 IN PROC. 22ND CONF. FOUND. OF SOFTWARE TECHNOLOGY AND THEOR. COMP. SCI. (FST&TCS'2002), KANPUR
, 2002
"... Finite linear systems are finite sets of linear functions whose guards are de fined by Presburger formulas, and whose the squares matrice associated generate a finite multiplicative monoid. We prove that for finite linear systems, the accelerations of sequences of transitions always produce an effec ..."
Abstract

Cited by 48 (17 self)
 Add to MetaCart
Finite linear systems are finite sets of linear functions whose guards are de fined by Presburger formulas, and whose the squares matrice associated generate a finite multiplicative monoid. We prove that for finite linear systems, the accelerations of sequences of transitions always produce an effective Presburgerdefinable relation. We then show how to choose the good sequences of length n whose number is polynomial in n although the total number of cycles of length n is exponential in n. We implement these theoretical results in the tool FAST [FAS] (Fast Acceleration of Symbolic Transition systems). FAST computes in few seconds the minimal deterministic finite automata that represent the reachability sets of 8 wellknown broadcast protocols.
Message Sequence Graphs and Decision Problems on Mazurkiewicz Traces
 In Proc. of MFCS'99, LNCS 1672
, 1999
"... Message sequence charts (MSC) are a graphical specification language widely used for designing communication protocols. Our starting point are two decision problems concerning the correctness and the consistency of a design based by MSC graphs. Both problems are shown to be undecidable, in gener ..."
Abstract

Cited by 41 (11 self)
 Add to MetaCart
Message sequence charts (MSC) are a graphical specification language widely used for designing communication protocols. Our starting point are two decision problems concerning the correctness and the consistency of a design based by MSC graphs. Both problems are shown to be undecidable, in general. Using a natural connectivity assumption from Mazurkiewicz trace theory we show both problems to be EXPSPACEcomplete for locally synchronized graphs. The results are based on new complexity results for starconnected rational trace languages.
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 29 (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.
Counting in Trees for Free
, 2004
"... In [22], it was shown that MSO logic for ordered unranked trees becomes undecidable if Presburger constraints are allowed at children of nodes. We now show that a decidable logic is obtained if we use a a modal fixpoint logic instead. We present an automata theoretic characterization of this logi ..."
Abstract

Cited by 27 (1 self)
 Add to MetaCart
In [22], it was shown that MSO logic for ordered unranked trees becomes undecidable if Presburger constraints are allowed at children of nodes. We now show that a decidable logic is obtained if we use a a modal fixpoint logic instead. We present an automata theoretic characterization of this logic by means of deterministic Presburger tree automata (PTA) and show how it can be used to express numerical document queries. Surprisingly, the complexity of satisfiability for the extended logic is asymptotically the same as for the original logic. The nonemptiness for PTAs is in general pspacecomplete which is moderate given that it is already pspacehard to test whether the complement of a regular expression is nonempty. We also identify a subclass of PTAs with a tractable nonemptiness problem. Further, to decide whether a tree t satisfies a formula # is polynomial in the size of # and linear in the size of t.