Supervisory control of a class of discrete event processes
SIAM Journal on Control and Optimization
On the synthesis of a reactive module
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The ESTEREL synchronous programming language: design, semantics, implementation
Science of Computer Programming
Automatic synthesis of interfaces between incompatible protocols
DAC '98 Proceedings of the 35th annual Design Automation Conference
Formal Methods in System Design - Special issue on The First Federated Logic Conference (FLOC'96), part II
Automating Modular Verification
CONCUR '99 Proceedings of the 10th International Conference on Concurrency Theory
The Control of Synchronous Systems
CONCUR '00 Proceedings of the 11th International Conference on Concurrency Theory
Detecting Errors Before Reaching Them
CAV '00 Proceedings of the 12th International Conference on Computer Aided Verification
STOC '82 Proceedings of the fourteenth annual ACM symposium on Theory of computing
Interface Theories for Component-Based Design
EMSOFT '01 Proceedings of the First International Workshop on Embedded Software
Trading Probability for Fairness
CSL '02 Proceedings of the 16th International Workshop and 11th Annual Conference of the EACSL on Computer Science Logic
Qualitative concurrent parity games
ACM Transactions on Computational Logic (TOCL)
Do agents make model checking explode (computationally)?
CEEMAS'05 Proceedings of the 4th international Central and Eastern European conference on Multi-Agent Systems and Applications
Model checking strategic abilities of agents under incomplete information
ICTCS'05 Proceedings of the 9th Italian conference on Theoretical Computer Science
A survey of stochastic ω-regular games
Journal of Computer and System Sciences
On distributed program specification and synthesis in architectures with cycles
FORTE'06 Proceedings of the 26th IFIP WG 6.1 international conference on Formal Techniques for Networked and Distributed Systems
Hi-index | 0.00 |
A controller is an environment for a system that achieves a particular control objective by providing inputs to the system without constraining the choices of the system. For synchronous systems, where system and controller make simultaneous and interdependent choices, the notion that a controller must not constrain the choices of the system can be formalized by type systems for composability. In a previous paper, we solved the control problem for static and dynamic types: a static type is a dependency relation between inputs and outputs, and composition is well-typed if it does not introduce cyclic dependencies; a dynamic type is a set of static types, one for each state. Static and dynamic types, however, cannot capture many important digital circuits, such as gated clocks, bidirectional buses, and random-access memory. We therefore introduce more general type systems, so-called dependent and bidirectional types, for modeling these situations, and we solve the corresponding control problems. In a system with a dependent type, the dependencies between inputs and outputs are determined gradually through a game of the system against the controller. In a system with a bidirectional type, also the distinction between inputs and outputs is resolved dynamically by such a game. The game proceeds in several rounds. In each round the system and the controller choose to update some variables dependent on variables that have already been updated. The solution of the control problem for dependent and bidirectional types is based on algorithms for solving these games.