A Faster–than Relation for Asynchronous Processes by sdfsb346f

VIEWS: 3 PAGES: 13

More Info
									    A Faster–than Relation
for Asynchronous Processes



                  ¨
          Gerald Luttgen

   Department of Computer Science

   The University of Sheffield, U.K.

     g.luettgen@dcs.shef.ac.uk




        —in collaboration with—


           Walter Vogler

    Institute for Computer Science

 The University of Augsburg, Germany

  vogler@informatik.uni-augsburg.de
                Process Algebras and Time


Classic process algebras:                          [e.g., Milner’s CCS ]


   Reason about asynchronous systems

   Assume the relative speeds of parallel processes are unbounded

   Focus on analysing the “functional” behaviour of processes




Timed process algebras:              [e.g., Hennessy and Regan’s TPL]


   Model synchronous systems (common global clock)

   Introduce clock prefix    :P (“one time unit must pass”) and timeout
   Allow one to use clock ticks for enabling and disabling actions




Question:


   What about faster–than relations in case lower or upper bounds
   on relative speeds of processes running in parallel are known?
                   Faster–than Relations


Seminal paper by Moller and Tofts [1991]:


   Process–algebraic setting based on CCS (bi/simulation semantics)

   Processes are attached with lower time bounds.

   Preorder compares processes wrt. best–case timing behaviour.


This talk:


   Again, an extension of CCS is considered.

   Processes are attached with upper time bounds, stating how long a
   process may delay its execution.

   Preorder compares processes wrt. worst–case timing behaviour.

   Faster–than relations have been studied extensively for Petri nets
   and testing semantics [Vogler ], but much less for process algebras
   and bi/simulation semantics.
    Timed Asynchronous Communicating Systems


Extends CCS by a non–standard clock–prefix operator “         :”:

     :P means that an internal computation or communication of P
   can be delayed by at most (!) one time unit.


Implements a concept of urgency:


   Intuition: An action in the scope of a clock prefix is non–urgent.

   Example:      : :0 + a:0
       Action a is urgent, and internal action     is non–urgent.

   Notation:   U P  denotes the set of all urgent (initial) actions of P .
Via a notion of maximal progress:


   Time can only pass for a process if it cannot engage in an urgent
   communication or an urgent internal computation.

                  P   ,!      if and only if     2 U P 
                                                 =
           Some Syntax and Operational Semantics



operator   action semantics             clock semantics


   0                                         0   ,! 0
   :P         ,! P
              :P                       :P           6
                                            ,! :P , =
           P ,! P 0
  :P                                         ,! P
                                            :P
           :P ,! P 0
           P ,! P 0                  P ,! P 0 Q ,! Q0
P +Q
         P + Q ,! P 0                P + Q ,! P 0 + Q0
           P ,! P 0
 P jQ
        P jQ ,! P 0 jQ
      P ,! P 0 Q ,! Q0
         a           a
                               P   ,! P 0 Q ,! Q0 2 U P jQ
                                                   =
        P jQ ,! P 0 jQ0            P jQ ,! P 0 jQ0
                   A Naive Faster–than Preorder


... refining Park and Milner’s notion of bisimulation.



Relation   A
           n
                on processes is the largest relation such that P   A
                                                                    Q if,
                                                                    n
for all actions   :


    P ,! P 0          implies   9Q0: Q ,! Q0 and P 0  Q0
                                                       A n


    Q ,! Q0           implies   9P 0: P ,! P 0 and P 0  Q0
                                                       A n


    P ,! P 0          implies   9Q0: Q ,! Q0 and P 0  Q0
                                                       A n




 Questions:


    Are there other sensible candidates for faster–than relations?

    If so, how do they relate to     A
                                     ?
                                      n
                        Alternative Preorders


The delayed faster–than preorder           A
                                              d
                                                   is the largest relation on
processes such that       A
                        P d Q       if, for all actions      :


    P ,! P 0       implies      9Q 0 : Q ,! ,!             0
                                                         ,! Q            and   P 0 d Q0
                                                                                   A

    Q ,! Q0        implies       9P 0: P ,! P 0 and P 0  Q0
                                                        A            d


    P ,! P 0       implies      9Q 0 : Q ,!+ Q0         and       P 0 d Q0
                                                                      A

Theorem:    A
             d
                   =   A
                           n




Another variant: What about adding the following clause to                      A
                                                                                ?n


  Q ,! Q0         implies       P n Q0
                                  A       or   9P 0: P ,! P 0 and P 0  Q0
                                                                      A               n



Problem: The faster process must match a clock transition of the slower
    process right away, if at all.
                   Family of Faster–than Preorders


Allow the faster process to perform “missed–out” clock transitions later:

      A
    P i Q means that P is faster than Q, assuming that P
    has i clock ticks credit.

  A
P i Q,    for i   2 N , if, for all actions   :


    P ,! P 0 implies 9Q0: Q ,! Q0 and P 0 i Q0
                                            A

    Q ,! Q0 implies 9P 0 : P ,! P 0 and P 0 i Q0
                                            A

    P ,! P 0 implies (a) 9Q0 : Q ,! Q0 and P 0 i Q0 , or
                                                  A
                       (b) i    0 and P 0 i,1 Q
                                          A

    Q ,! Q0 implies (a) 9P 0 : P ,! P 0 and P 0 i Q0 , or
                                                  A
                       (b) P i+1 Q0
                              A

Theorem:     A
             0     =     A
                             n




Conclusion:        A
                    n
                         is a sensible candidate for a faster–than preorder,
    as it coincides with two other appealing candidates, but is more
    simple and robust.
                                                     A
                        Semantic Theory for             n




Unfortunately,   A
                   n
                        is not yet a precongruence, as it is not compositional
wrt. parallel composition:

          A
     :a:0 n a:0
      :a:0 j a:0 6 n a:0 j a:0
                   A
    since :a:0 j a:0 ,! a:0 j a:0, but a:0 j a:0 ,!
                                                  6

Faster–than precongruence:             A
                                     P Q    if, for all actions   :


    P  ,! P 0 implies 9Q0: Q ,! Q0 and P 0  Q0
                                            A

    Q ,! Q0 implies 9P 0 : P ,! P 0 and P 0  Q0
                                            A

    P ,! P 0 implies
    U Q  U P  and 9Q0: Q ,! Q0 and P 0  Q0
                                             A


Full abstraction:       A                                           A
                         is the largest precongruence contained in  .  n
                         Further Results


Conservativity:

     A
   P Q    implies   Q, i.e.,  refines bisimulation.
                     P          A
   For –prefix–free P; Q : P  Q iff Q  P iff P  Q.
                              A        A

   P  –stripP , as well as P ,! P 0 implies P  P 0 .


Axiomatisation: (complete for finite, sequential processes)


                             P      w :P
                       :P + :Q      =   P + :Q
                    a:P + :a:Q      =   a:P + a:Q
                        P + :P      =   P
                       :P + Q     =    :P + :Q

Note: The law     :a:0 j :b:0   =   :a:0 j b:0   is valid in most timed
      process algebras but not here! (Consider the a–transition.)
                                                         Example: 2–place Storage

   1–place buffer:                       Be =df x: :in:out:x B =df in:out:Be Bf =df out:Be
   2–place array:                      2 ARR =df Be j Be    2–place buffer: 2 BUF =df Be c=out j Be c=in  n fcg


                                            Be Be                                                                              Be Be
                  out                                                          out
                        in                      σ                   in                         out               in                        σ


                                       σ                                                                                  in           σ
Bf Be                                       Bσ Bσ                                      Be Bf         Bf Be                     Bσ Be                  Bσ Bσ

                                                                                                                                                         σ
                  σ               in                     in                σ                                               σ
                                                                                                      τ                                          in
             in                   σ                      σ                      in
                                                                                                                      τ
                        Bf Bσ              σ        σ         Bσ Bf                                  Be Bf                     Bf Bσ
        out                                                                      out           out
                                                                                                                                           out
                                                                                                     in                    σ
                                           in       in

                                                                                                                      in
                  out        in             Bf Bf              in        out                         Bf Bf                     Bσ Bf

        in                                      σ                                    in                   σ                       σ


                                                                                                                           A
                        Be Bσ                                 Bσ Be
                                                                                               Result: 2 ARR                2 BUF
                                                                                                              ( A is the “weak” variant of
                                                                                                                                                      A
                                                                                                                                                       .)
                         Conclusions



  Developed the bi/simulation–based faster–than preorder   A
                                                           
   – For a conservative extension of CCS

   – For asynchronous processes with upper–time bounds

  Justified   A
              as reference preorder
  Investigated the semantic theory of   A
                                         including
   – A largest–precongruence result

   – An axiomatisation for finite, sequential processes

   – A corresponding “weak” variant




Future work:


  Extend axiomatisation to cover parallel composition as well as
  regular processes.

  Compare the presented setting in detail with Moller and Tofts’ work;
  integrate models for best–case and worst–case timing behaviour.
                Revisiting the Second Candidate


What about adding the following clause to the definition of       A
                                                                    n
                                                                         (or   A
                                                                                )?
                                                                                d


  Q ,! Q0          implies   P n Q0
                               A       or   9P 0: P ,! P 0 and P 0  Q0
                                                                   A       n



This is not sensible; consider the processes P        :a:0 j a:0 j a:0 and
Q  :a:0 j :a:0 j a:0.

    Intuitively:   P should be faster than Q.
    But:    Q ,! a:0 j a:0 j a:0  Q0 ; P ,!
                                           6         since   2 U P 
    Problem:       P should not be considered faster than Q0 .

Analysis: Intuitively, the computation

                                 a                a
           Q ,! a:0 j a:0 j a:0 ,! 0 j a:0 j a:0 ,! 0 j 0 j a:0
should be matched by

              a                                  a
           P ,! :a:0 j 0 j a:0 ,! a:0 j 0 j a:0 ,! 0 j 0 j a:0
Note that the first     a occurs earlier in the computation of P , while the
second a occurs at the same time.

								
To top