The calculus of communicating systems (CCS) is a process calculus introduced by Robin Milner around 1980 and the title of a book describing the calculus. Its actions model indivisible communications between exactly two participants. The formal language includes primitives for describing parallel composition, choice between actions and scope restriction. CCS is useful for evaluating the qualitative correctness of properties of a system such as deadlock or livelock. According to Milner, "There is nothing canonical about the choice of the basic combinators, even though they were chosen with great attention to economy. What characterises our calculus is not the exact choice of combinators, but rather the choice of interpretation and of mathematical framework". The expressions of the language are interpreted as a labelled transition system. Between these models, bisimilarity is used as a semantic equivalence. TOC Given a set of action names, the set of CCS processes is defined by the following BNF grammar: The parts of the syntax are, in the order given above inactive process the inactive process is a valid CCS process action the process can perform an action and continue as the process process identifier write to use the identifier to refer to the process (which may contain the identifier itself, i.e., recursive definitions are allowed) summation the process can proceed either as the process or the process parallel composition tells that processes and exist simultaneously renaming is the process with all actions named renamed as restriction is the process without action Communicating sequential processes (CSP), developed by Tony Hoare, is a formal language that arose at a similar time to CCS. The Algebra of Communicating Processes (ACP) was developed by Jan Bergstra and Jan Willem Klop in 1982, and uses an axiomatic approach (in the style of Universal algebra) to reason about a similar class of processes as CCS.

À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.
Cours associés (3)
ENG-366: Signals, instruments and systems
The goal of this course is to transmit knowledge in sensing, computing, communicating, and actuating for programmable field instruments and, more generally, embedded systems. The student will be able
MGT-484: Applied probability & stochastic processes
This course focuses on dynamic models of random phenomena, and in particular, the most popular classes of such models: Markov chains and Markov decision processes. We will also study applications in q
AR-461: UE G : Architecture By Any Means [BAM]
The course will tackle different types of practicing architecture with a focus on communication tools and its different formats to convey an architectural message. It explores strategies for translati
Séances de cours associées (11)
Décomposition des chaînes Markov
Couvre la décomposition des chaînes de Markov, la preuve LLN, l'application du modèle d'inventaire et les coûts moyens.
Probabilité appliquée et processus stochastiques: Tutoriel 02
Couvre la communication des classes, frapper le temps, les probabilités, et le modèle de ruine du joueur dans les processus stochastiques.
Cryptographie : génération de clés et sécurité
Explore la génération de clés, les limitations de cryptographie, les systèmes de clés publiques et l'échange Diffie-Hellman.
Afficher plus
Publications associées (15)

Orchestrating learning analytics (OrLA): Supporting inter-stakeholder communication about adoption of learning analytics at the classroom level

Maria Jesus Rodriguez Triana

Despite the recent surge of interest in learning analytics (LA), their adoption in everyday classroom practice is still slow. Knowledge gaps and lack of inter-stakeholder communication (particularly with educational practitioners) have been posited as crit ...
2019

Jacket for embodied interaction with virtual or distal robotic device

David Atienza Alonso, Dario Floreano, Stefano Mintchev, Fabio Isidoro Tiberio Dell'Agnola, Carine Rognon, Alice Ghislaine Concordel

A system for interacting with a remote object comprising a wearable jacket for a user, two actuators for supporting arms of the user, motors for causing movements to at least one of a torso and the arms of the user, and sensors for measuring at least one o ...
2018

Uniform Analysis for Communicating Timed Systems (Extended Technical Report)

Hossein Hojjat

Languages based on the theory of timed automata are a well established approach for modelling and analysing real-time systems, with many applications both in an industrial and academic context. Model checking for timed automata has been studied extensively ...
2013
Afficher plus
Personnes associées (1)
Concepts associés (4)
Algèbre de processus
Les algèbres de processus sont une famille de langages formels permettant de modéliser les systèmes (informatiques) concurrents ou distribués. Les algèbres de processus fournissent des outils formels permettant principalement de caractériser les interactions entre processus au sein d'un système concurrent ou distribué, les interactions prenant la forme d'échanges de messages. L'étude des algèbres de processus relève de l'informatique théorique, et leurs applications relèvent principalement du génie logiciel, en particulier des systèmes distribués.
Programmation concurrente
La programmation concurrente est un paradigme de programmation tenant compte, dans un programme, de l'existence de plusieurs piles sémantiques qui peuvent être appelées threads, processus ou tâches. Elles sont matérialisées en machine par une pile d'exécution et un ensemble de données privées. La concurrence est indispensable lorsque l'on souhaite écrire des programmes interagissant avec le monde réel (qui est concurrent) ou tirant parti de multiples unités centrales (couplées, comme dans un système multiprocesseurs, ou distribuées, éventuellement en grille ou en grappe).
Concurrency (computer science)
In computer science, concurrency is the ability of different parts or units of a program, algorithm, or problem to be executed out-of-order or in partial order, without affecting the outcome. This allows for parallel execution of the concurrent units, which can significantly improve overall speed of the execution in multi-processor and multi-core systems. In more technical terms, concurrency refers to the decomposability of a program, algorithm, or problem into order-independent or partially-ordered components or units of computation.
Afficher plus

Graph Chatbot

Chattez avec Graph Search

Posez n’importe quelle question sur les cours, conférences, exercices, recherches, actualités, etc. de l’EPFL ou essayez les exemples de questions ci-dessous.

AVERTISSEMENT : Le chatbot Graph n'est pas programmé pour fournir des réponses explicites ou catégoriques à vos questions. Il transforme plutôt vos questions en demandes API qui sont distribuées aux différents services informatiques officiellement administrés par l'EPFL. Son but est uniquement de collecter et de recommander des références pertinentes à des contenus que vous pouvez explorer pour vous aider à répondre à vos questions.