<div>seq_trace looks useful, but I'm a little confused by the documentation.</div><div><br></div>   "The trace token contains a component which is called serial. It consists of two integers Previous and Current. The purpose is to uniquely identify each traced event within a trace sequence and to order the messages chronologically and in the different branches if any."<div>
<br></div><div>The term "branch" is left undefined. It's not really clear how Previous and Current uniquely identify events.  Do you need both, to uniquely identify events? Previous *what*? Current *what*?<br>
<div><br></div><div>Dangling reference:</div><div><br></div>   "A trace token contains a label, and a set of flags. Both the label and the flags are set in 1 and 2 above."<div><br></div><div>There's no "1 and 2 above". There are two bulleted lines just after "The current token of a process is set in two ways, either ...."  Are those the referents of "1" and "2"? </div>
<div><br></div><div>Ambiguous:</div><div><br></div><div>   "Let the serial of the trace token be tprev and tcurr. <br><br>   curr_cnt := curr_cnt + 1 </div><div>   tprev := prev_cnt <br>   tcurr := curr_cnt<br><br>   The trace token with tprev and tcurr is then passed along with the message."</div>
<div><br></div><div>I take it the "Let" means something like "define" and not "assign". Does this mean that prev_cnt doesn't get updated by a Send?</div><div><br></div><div>If these are counts, one a Previous count, the other a Current count, what exactly is it that's being counted? Current seems to be the number of traces sent to the tracer process from the process in question. But this seems contradicted later. </div>
<div><br></div>  "The curr_cnt of a process is incremented each time the process is involved in a sequential trace."</div><div><br></div><div>What does it mean for a process to be "involved in a sequential trace"?  Is that when a message gets sent to the tracer process?</div>
<div><br></div><div>Ambiguous and/or contradictory: in "When a message is received and contains a nonempty trace token":</div><div><br></div><div>   "The process trace token is set to the trace token from the message.<br>
<br>   Let the serial of the trace token be tprev and tcurr. <br>   if (curr_cnt < tcurr ) <br>       curr_cnt := tcurr <br>   prev_cnt := tcurr"</div><div><br></div><div>Does this mean that the process trace token is set to the trace token from the message, *except* for a Serial, {prev_cnt, curr_cnt}?</div>
<div><br></div><div>I'm really having trouble following this.  Earlier, before "What is Sequential Tracing", there's this explanation:</div><div><br></div>  "Serial is a tuple {PreviousSerial, ThisSerial}, where the first integer PreviousSerial denotes the serial counter passed in the last received message which carried a trace token."<div>
<br></div><div>"The serial counter"? But there are *two* serial counters being passed in each Serial, right?</div><div><br></div><div>  "If the process is the first one in a new sequential trace, PreviousSerial is set to the value of the process internal "trace clock". The second integer ThisSerial is the serial counter that a process sets on outgoing messages and it is based on the process internal "trace clock" which is incremented by one before it is attached to the trace token in the message."<div>
<br></div><div>But this just introduces a new undefined term, "trace clock". Is that "trace clock" the same as "curr_cnt"? Does "trace clock" mean something more like "trace count"? Does the "sets" in "the serial counter that a process sets on outgoing message" mean "initialize" or "puts"? Does "it is based on the process internal clock" mean that it has the same value as that internal clock, or is it derived from it, and if so, how?</div>
<div><br></div><div>I'm starting to play around with seq_trace, maybe it will become clearer in the process. </div><div><br></div><div>-michael turner<br><div><font class="Apple-style-span" face="Verdana, Arial, Helvetica, sans-serif" size="3"><br>
</font><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div></div></div></div>