Static scheduling of synchronous data flow programs for digital signal processing
IEEE Transactions on Computers
Communications of the ACM
Theoretical Computer Science
The ESTEREL synchronous programming language: design, semantics, implementation
Science of Computer Programming
A new recursion-theoretic characterization of the polytime functions
Computational Complexity
Concurrent programming in ERLANG (2nd ed.)
Concurrent programming in ERLANG (2nd ed.)
Proceedings of the first ACM SIGPLAN international conference on Functional programming
Computability and complexity: from a programming perspective
Computability and complexity: from a programming perspective
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Term rewriting and all that
From system F to typed assembly language
ACM Transactions on Programming Languages and Systems (TOPLAS)
Guest Editorial: A Review of Worst-Case Execution-TimeAnalysis
Real-Time Systems - Special issue on worst-case execution-time analysis
The strength of non-size increasing computation
POPL '02 Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
IEEE Transactions on Software Engineering
On Lexicographic Termination Ordering with Space Bound Certifications
PSI '02 Revised Papers from the 4th International Andrei Ershov Memorial Conference on Perspectives of System Informatics: Akademgorodok, Novosibirsk, Russia
Max-plus quasi-interpretations
TLCA'03 Proceedings of the 6th international conference on Typed lambda calculi and applications
Synthesis of max-plus quasi-interpretations
Fundamenta Informaticae - Typed Lambda Calculi and Applications 2003, Selected Papers
Feasible reactivity in a synchronous Π-calculus
Proceedings of the 9th ACM SIGPLAN international conference on Principles and practice of declarative programming
Information and Computation
A model of cooperative threads
Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Quasi-interpretations and small space bounds
RTA'05 Proceedings of the 16th international conference on Term Rewriting and Applications
A polynomial time λ-calculus with multithreading and side effects
Proceedings of the 14th symposium on Principles and practice of declarative programming
Hi-index | 0.00 |
We develop new methods to statically bound the resources needed for the execution of systems of concurrent, interactive threads. Our study is concerned with a synchronous model of interaction based on cooperative threads whose execution proceeds in synchronous rounds called instants. Our contribution is a system of compositional static analyses to guarantee that each instant terminates and to bound the size of the values computed by the system as a function of the size of its parameters at the beginning of the instant.Our method generalises an approach designed for first-order functional languages that relies on a combination of standard termination techniques for term rewriting systems and an analysis of the size of the computed values based on the notion of quasi-interpretation. We show that these two methods can be combined to obtain an explicit polynomial bound on the resources needed for the execution of the system during an instant.As a second contribution, we introduce a virtual machine and a related bytecode thus producing a precise description of the resources needed for the execution of a system. In this context, we present a suitable control flow analysis that allows to formulate the static analyses for resource control at bytecode level.