Semirings and formal power series: their relevance to formal languages and automata
Handbook of formal languages, vol. 1
Context-sensitive synchronization-sensitive analysis is undecidable
ACM Transactions on Programming Languages and Systems (TOPLAS)
Introduction To Automata Theory, Languages, And Computation
Introduction To Automata Theory, Languages, And Computation
A generic approach to the static analysis of concurrent programs with procedures
POPL '03 Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Proceedings of the 8th Colloquium on Automata, Languages and Programming
The Mathematical Theory of Context-Free Languages
The Mathematical Theory of Context-Free Languages
Newton's Method for ω-Continuous Semirings
ICALP '08 Proceedings of the 35th international colloquium on Automata, Languages and Programming, Part II
Symbolic Context-Bounded Analysis of Multithreaded Java Programs
SPIN '08 Proceedings of the 15th international workshop on Model Checking Software
On fixed point equations over commutative semirings
STACS'07 Proceedings of the 24th annual conference on Theoretical aspects of computer science
An extension of Newton's method to ω-continuous semirings
DLT'07 Proceedings of the 11th international conference on Developments in language theory
Context-Bounded model checking of concurrent software
TACAS'05 Proceedings of the 11th international conference on Tools and Algorithms for the Construction and Analysis of Systems
Formal Methods in System Design
Complexity of pattern-based verification for multithreaded programs
Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Solving fixed-point equations by derivation tree analysis
CALCO'11 Proceedings of the 4th international conference on Algebra and coalgebra in computer science
On sequentializing concurrent programs
SAS'11 Proceedings of the 18th international conference on Static analysis
Formal Methods in System Design
Language-Theoretic abstraction refinement
FASE'12 Proceedings of the 15th international conference on Fundamental Approaches to Software Engineering
Synchronisation- and reversal-bounded analysis of multithreaded programs with counters
CAV'12 Proceedings of the 24th international conference on Computer Aided Verification
Linear-Time model-checking for multithreaded programs under scope-bounding
ATVA'12 Proceedings of the 10th international conference on Automated Technology for Verification and Analysis
On the Context-Freeness Problem for Vector Addition Systems
LICS '13 Proceedings of the 2013 28th Annual ACM/IEEE Symposium on Logic in Computer Science
Hi-index | 0.00 |
We show a new and constructive proof of the following language-theoretic result: for every context-free language L, there is a bounded context-free language L′⊆L which has the same Parikh (commutative) image as L Bounded languages, introduced by Ginsburg and Spanier, are subsets of regular languages of the form $w_1^*w_2^*\cdots w_k^*$ for some $w_1,\ldots,w_k\in\Sigma^*$ In particular bounded context-free languages have nice structural and decidability properties Our proof proceeds in two parts First, using Newton's iterations on the language semiring, we construct a context-free subset LN of L that can be represented as a sequence of substitutions on a linear language and has the same Parikh image as L Second, we inductively construct a Parikh-equivalent bounded context-free subset of LN. As an application of this result in model checking, we show how to underapproximate the reachable state space of multithreaded procedural programs The bounded language constructed above provides a decidable underapproximation for the original problem By iterating the construction, we get a semi-algorithm for the original problems that constructs a sequence of underapproximations such that no two underapproximations of the sequence can be compared This provides a progress guarantee: every word w∈L is in some underapproximation of the sequence, and hence, a program bug is guaranteed to be found In particular, we show that verification with bounded languages generalizes context-bounded reachability for multithreaded programs.