Larry,
if by "definition" you mean a piece of CSP to describe the
situation, then the interleaving operator (|||) probably covers the
situation you are thinking of:
P \defs
(Q ||| R) [| {| a |} |] S
In the above process, if we assume {a} \in Q\cap R\cap S (ie all
processed have "a" in their alphabet) then S will synchronise with
either Q or R on a, but never both at the same time, and Q and R
will never synchronise together on a.
This therefore is "many to one", and the LHS of the parallel
operator could contain as many processes as you wish.
Hope this helps,
Alistair
________________________________________
From: Mailing_List_Robot [sympa@xxxxxxxxxx] On Behalf Of Larry
Dickson [tjoccam@xxxxxxxxxxx]
Sent: 17 October 2008 01:16
To: P.H.Welch@xxxxxxxxxx
Cc: occam-com@xxxxxxxxxx
Subject: many-to-one channel
Hi Peter and all,
Can you point me to a "standard" definition of a many-output-to-one-
input channel? The subject came up in a discussion I am having with
the Stackless Python people. I cobbled up a two-word version but
cannot remember if it was the standard way. The input needs to be able
to do ALTs, which I (subject to correction) don't think the many-to-
many can do.
Larry