answers.tex
changeset 200 ff826e28d85c
child 201 fcc6f4c3c32f
equal deleted inserted replaced
199:4a75769a93b5 200:ff826e28d85c
       
     1 \documentclass{article}
       
     2 
       
     3 \begin{document}
       
     4 
       
     5 %%%%
       
     6 % Reviewer 1.
       
     7 \section*{Comments by Reviewer \#1}
       
     8 
       
     9 
       
    10 \begin{itemize}
       
    11 \item {\it 1.) I don't see the point of working with a more general
       
    12     library of possibly infinite graphs when it is clear that no
       
    13     (necessarily finite) evolution of the state could ever generate an
       
    14     infinite graph.}
       
    15 
       
    16   It seemed the most convenient approach for us and we added the following
       
    17   comment on page 8 about justifying our choice. There was already a
       
    18   comment about having finiteness as a property, rather than a built-in
       
    19   assumption.
       
    20   
       
    21   \begin{quote}
       
    22     It seems for our purposes the most convenient representation of
       
    23     graphs are binary relations given by sets of pairs. The pairs
       
    24     stand for the edges in graphs. This relation-based representation
       
    25     has the advantage that the notions \textit{waiting} and
       
    26     \textit{holding} are already defined in terms of relations
       
    27     amongst threads and resources.  Also, we can easily re-use the
       
    28     standard notions of transitive closure operations $\_*$ and $\_+$,
       
    29     as well as relation composition for our graphs.
       
    30   \end{quote}
       
    31 
       
    32 \item {\it 2.) Later, the release function is defined using Hilbert
       
    33     choice (Isabelle/HOL's \texttt{SOME} function) as a method for emulating
       
    34     non-determinism. This is horrid. The highest level generation of
       
    35     traces handles non-determinism beautifully; using choice at a
       
    36     lower level lets you keep things functional, but hides the fact
       
    37     that you want to model non-determinism at the lower level as
       
    38     well. I agree that the final theorem does imply that the way in
       
    39     which the new waiting list is chosen is irrelevant, but this
       
    40     implication is only apparent through a close reading of that
       
    41     definition. Better I think to lift the non-determinism and make it
       
    42     more apparent at the top level.}
       
    43 
       
    44   \begin{quote}
       
    45     We generally agree with the reviewer about the use of
       
    46     \texttt{SOME}, but we cannot see a way to make this nondeterminism
       
    47     explicit without complicating too much the topelevel rules.
       
    48   \end{quote}
       
    49 
       
    50 \item {\it 3. In \S 4, there is an assumption made about the number of
       
    51     threads allowed to be created. Given the form of theorem 2, this
       
    52     seems to me to be unnecessary. It's certainly extremely weird and
       
    53     ugly because it says that there are at most BC many thread
       
    54     creation events in all possible future traces (of which there are
       
    55     of course infinitely many). \ldots}
       
    56 
       
    57     We think this mis-reads our theorem: Although the constrains we
       
    58     put on thread creation prohibit the creation of higher priority
       
    59     threads, the creation of lower priority threads may still consume
       
    60     CPU time and prevent \textit{th} from accomplishing its task. That
       
    61     is the purpose we put in the \textit{BC} constraint to limit the
       
    62     overall number of thread creations. We slightly augmented the
       
    63     sentence on page 15 by:
       
    64 
       
    65     \begin{quote} 
       
    66     Otherwise our PIP scheduler could be ``swamped'' with
       
    67     \textit{Create}-requests of lower priority threads.
       
    68     \end{quote}
       
    69 
       
    70 
       
    71 \item {\it Why are variables corresponding to resources given the name
       
    72     \textit{cs}. This is confusing. \textit{rsc} or \textit{r} would be
       
    73     better.}
       
    74 
       
    75   \begin{quote}
       
    76     \textit{cs} stands for ``critical section'', which is the original name
       
    77     used by Sha et al to represent ``critical resources''.
       
    78   \end{quote}
       
    79 
       
    80 \item All other comments of the reviewer have been implemented.
       
    81   
       
    82 \end{itemize}  
       
    83 
       
    84 %%%%
       
    85 % Reviever 2.
       
    86 \section*{Comments by Reviewer \#2}
       
    87 
       
    88 \begin{itemize}
       
    89 \item Well-founded comment: We adpated the paragraph where \textit{acyclic}
       
    90   and \textit{well-founded} are used for the first time.
       
    91 
       
    92   \begin{quote}
       
    93     Note that forests can have trees with infinte depth and containing
       
    94     nodes with infinitely many children.  A \emph{finite forest} is a
       
    95     forest whose underlying relation is well-founded and every node
       
    96     has finitely many children (is only finitely branching).
       
    97   \end{quote}
       
    98 
       
    99   We also added a footnote that we are using the standard definition of
       
   100   well-foundedness from Isabelle.
       
   101 
       
   102 \item Comment about graph-library: This point was also raised by
       
   103   Reviewer~\#1 and we gave a better justification on page 8 (see
       
   104   answer to first point of Reviewer~\#1).
       
   105 
       
   106 
       
   107 \item {\it 20.) In the case of "Set th prio:", it is not declared what
       
   108     the cprec (e::s) th should be (presumably it is something like
       
   109     Max((prio,|s|),prec th s) or possibly just prec th (e::s) given
       
   110     the assumptions on Set events listed before).}
       
   111 
       
   112   We note the concern of the reviewer about the effect of the
       
   113   Set-operation on the \textit{cprec} value of a thread. According to
       
   114   equation (6) on page 11, the \textit{cprec} of a thread is
       
   115   determined by the precedence values in its subtree, while the Set
       
   116   operation only changes the precedence of the `Set' thread. If the
       
   117   reviewer thinks we should add this explanation again, then we are
       
   118   happy to do so.
       
   119 
       
   120 \end{itemize}
       
   121 \end{document}