Journal/JAR-response
author Christian Urban <christian dot urban at kcl dot ac dot uk>
Fri, 27 Sep 2013 09:20:58 +0100
changeset 389 796de251332c
parent 384 60bcf13adb77
permissions -rw-r--r--
added paper by Tobias
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
381
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     1
We thank the reviewers for their time and insightful comments.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     2
We have incorporated most comments and if not, then answered them 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     3
below. We also spell-checked the paper. Thanks again for all the 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     4
comments.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     5
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     6
Reviewer #1
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     7
===========
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     8
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     9
> Indeed, one of the premise of the paper is that representing automata
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    10
> in a theorem prover requires to fight against the theorem prover or
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    11
> requires painful amount of details. Therefore, the authors define the
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    12
> notion of regular languages as a language generated by a regular
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    13
> expression. (This is not an unusual choice from a formalization point
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    14
> of view, provided complemented by a proof of Kleene's theorem that
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    15
> states such regular languages are exactly the one that are recognized
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    16
> by finite automata.)
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    17
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    18
We concur with the reviewer that our definition of regular languages 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    19
as the ones generated by regular expressions is usual, but the paper is 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    20
unusual in that we do not need to provide a version of Kleene's theorem. 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    21
All results are obtained without formally needing a definition for automata. 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    22
If we would need Kleene's theorem as part of our arguments, then we would
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    23
need such a definition. 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    24
384
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
    25
To make our intention with the paper clearer, we moved the quote 
381
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    26
by Gasarch from the Conclusion to the Introduction. In this quote he asks 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    27
whether the complementation of regular-expression languages can be proved 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    28
without using automata. In this way we sharpen our motivation by being 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    29
theorem prover related, but also of general interest. See quotations and 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    30
changes right after Definition 2, p. 3. 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    31
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    32
> Second, the premise of this article is that formalizing automata
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    33
> theory require some fight with the theorem prover, and that several
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    34
> other (longer) formalizations from the related work substantiate this
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    35
> claim. I am under the impression that this comparison is misleading
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    36
> since some of the related work deals not only with regular language
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    37
> \emph{theory}, but also regular language \emph{algorithms}: e.g.,
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    38
> automata constructions, conversion from NFA to DFA, minimization,
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    39
> decision procedures for language equivalence. These algorithms may be
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    40
> proved correct, complete, or terminating; and may be more or less
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    41
> efficient. Then, these properties dictate some choices of
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    42
> representation of the objects of the formalization (and hence have
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    43
> consequences on its intricacies). 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    44
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    45
Yes, we agree with the reviewer that *if* one is in the business of
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    46
proving the correctness of, for example, Hopcroft's algorithm or the
384
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
    47
NFA-to-DFA conversion, which are all based on "concrete" notions of 
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
    48
automata, then yes one clearly has to use the usual notion of the 
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
    49
automata somewhere, even might have to start from it. 
381
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    50
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    51
However, we disagree with the interpretation that our comparison is 
384
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
    52
misleading.  Our claim that usual 'paper' definitions do not translate 
381
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    53
smoothly into formalised definitions is not a claim just by us and
384
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
    54
independent of any numbers: We referenced in the paper a concrete 
381
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    55
problem pointed out already in Slind's email cited on the bottom of 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    56
p. 2. In the context of HOL4, he made the observation 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    57
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    58
 | A student who is attempting to prove the pumping lemma for regular
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    59
 | languages came across the following problem. Suppose a DFA is
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    60
 | represented by a record  <| init ; trans ; accept |> where
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    61
 |
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    62
 |         init : 'state
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    63
 |         trans : 'state -> 'symbol -> 'state
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    64
 |         accept : 'state -> bool
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    65
 |
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    66
 | Execution of a DFA on a string:
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    67
 |
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    68
 |    (Execute machine [] s = s)
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    69
 |    (Execute machine (h::t) s = Execute machine t (machine.trans s h))
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    70
 |
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    71
 | Language recognized by a machine  D:
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    72
 |
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    73
 |   Lang(D) = {x | D.accept (Execute D x D.init)}
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    74
 |
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    75
 | These are all accepted by HOL with no problem. In then trying to define 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    76
 | the set of regular languages, namely those accepted by some DFA, the 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    77
 | following is natural to try
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    78
 |
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    79
 |    Regular (L:'symbol list -> bool) =  ?D. L = Lang(D)
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    80
 |
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    81
 | But this fails, since D has two type variables ('state and 'symbol) but
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    82
 | Regular is a predicate on 'symbol lists. So the principle of definition
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    83
 | rejects.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    84
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    85
We also pointed to comments by Tobias Nipkow which clearly show that
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    86
he had to fight the theorem prover. Many formalisations we cited for 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    87
comparison contain statements about having to fight their respective 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    88
theorem prover. 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    89
 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    90
The conclusion we want the reader to draw from our comparisons is 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    91
that if one is just interested in formalising results from regular language 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    92
theory, not results from automata theory, then regular expressions are 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    93
easier to work with formally. If you look at the numbers (especially the 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    94
ones for Isabelle/HOL), then we hope you agree with us that the startup 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    95
costs are much higher with automata in comparison with regular
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    96
expressions. We carefully commented on the examples we have cited in
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    97
the Conclusion. Nowhere did we claim that they are one-to-one comparisons with 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    98
our development. We did, for example, say that Braibant agreed with us that 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    99
*if* he had done just Myhill-Nerode using his library, he estimates our 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   100
development is more concise (see his comment in the Conclusion, p. 25).  
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   101
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   102
> In this article, the authors choose
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   103
> to do the converse: avoid the notion of automata altogether, and see
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   104
> how far it goes. I find this choice a bit peculiar.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   105
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   106
At first sight, our choice/approach might seem peculiar, since
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   107
we are not primarily verifying an algorithm. However, we are not
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   108
the only ones who pondered about this approach (we mentioned Gasarch). 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   109
We showed that this is indeed a choice that can lead you quite far 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   110
with regular language theory and lead to a relatively smooth
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   111
formalisation. We did not make the claim that regular expressions are 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   112
a substitute for automata in all situations. See our paragraph
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   113
in the Conclusion starting with "While regular expressions are 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   114
convenient, they have some limitations."
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   115
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   116
> Third, I wonder to what extent some of the proofs presented in this
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   117
> article are a rephrasing of standard proofs (that go through
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   118
> automata), inlining the notion of automata, e.g., the construction
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   119
> depicted in Section 3. Also, the notions of derivatives and partial
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   120
> derivatives underly some automata constructions: for instance, from my
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   121
> point of view, Section 5 is actually building a DFA (with transition
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   122
> relation $\delta$ and initial state ${r}$)from a regular expression
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   123
> without saying so; and it suffices to take as a tag function the
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   124
> expression $\lambda x.\delta({r},x)$ (which is a right invariant
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   125
> equivalence relation between strings, and of finite index since there
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   126
> finitely many states in the automaton). The authors take care to note
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   127
> the proximity of their arguments with existing ones when due (that
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   128
> often rely on automata), but they seem very close to the existing one
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   129
> in any case, with enough inlining. (Yet, I found the proof based on
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   130
> tagging functions quite elegant: it avoids the explicit construction
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   131
> of an automata--because automata are difficult to formalize in
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   132
> HOL--while being close to the intuitive automata constructions, even
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   133
> if they are not mentionned.)
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   134
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   135
We agree "that underlying our arguments are automata proofs", but 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   136
we argued without constructing automata explicitly. This is the very point 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   137
and contribution of the paper. If we construct automata explicitly, the 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   138
formalised proof of Myhill-Nerode theorem will become much larger as  
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   139
can be seen in existing work. By abandoning automata and relying only on 
384
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
   140
regular expressions, we get a much smoother formalised proof of MN theorem.
381
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   141
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   142
> To sum up, I think there is a significant value to come up with fresh
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   143
> arguments that makes it easier to formalize existing pen-and-paper
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   144
> proofs and textbooks. Yet, the arguments presented in this paper are
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   145
> not really new (they look like inlinings, even if the authors chose
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   146
> not to see it). And I am not convinced by the idea of side stepping an
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   147
> elegant tool, the notion of automata, because it is hard to
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   148
> formalize. I would rather improve on the underlying tools, or develop
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   149
> new ways to formalize this notion.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   150
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   151
We disagree in that we should not take the opportunity of using 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   152
regular expressions when they lead to simpler formalisations
384
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
   153
in regular language theory. We have already found as one successful 
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
   154
"application" that many structural inductions over regular expressions 
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
   155
are good learning tools for students in order to come to grips with formal 
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
   156
reasoning. 
381
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   157
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   158
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   159
> - Lemma 21 already appears in Brzozowski (1964) who attributes it to
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   160
>  Arden. I think there is little value in distinguishing the two
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   161
>  versions of Arden's lemma, since their proofs and statement are parallel.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   162
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   163
We agree that Brzozowski (1964) gives the statement of Arden's lemma, but 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   164
no proof, for which he refers to Arden (1960). Unfortunately, we do not have 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   165
access to this book and guess that this applies to many contemporary readers.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   166
Our reference to Sakarovitch is motivated by the fact that he gives 
384
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
   167
explicitly a proof and his book is fairly recent. 
381
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   168
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   169
> - I am puzzled by the one-character transition relation between
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   170
>   equivalence classes (p. 6). The $X_i$ correspond to the states of
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   171
>   the minimal automaton that recognizes $L$ (and you even agree with
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   172
>   that in the Related Work section!). Therefore, I disagree with your
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   173
>   sentence stating that this construction does not build an
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   174
>   automaton. 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   175
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   176
We deleted this comment since it also confused the second reviewer. 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   177
What we wanted to express is that we have not defined a transition 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   178
relation between states in the usual automata sense.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   179
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   180
>  Then, it would follow that the initial system would be better
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   181
>  presented as a DFA (that is, associating to each equivalence class,
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   182
>  a mapping from atoms to equivalence classes with the atoms being
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   183
>  disjoint), even if you do not want to introduce the notion of
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   184
>  automaton. I fail to see the advantages of the current presentation
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   185
>  of the initial system. Then, I think that it would be easier to
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   186
>  understand your presentation if you used a more involved language
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   187
>  (like (ab + a)) as a running example. This would produce the
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   188
>  equivalence classes
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   189
>
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   190
>  X1 = {[]}
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   191
>  X2 = {[a]}
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   192
>  X3 = {[ab]}
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   193
>  X4 = {univ - {[], [a], [ab]}}
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   194
>
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   195
>  and the equational system
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   196
>
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   197
>  X1 = LAMBDA(ONE)
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   198
>  X2 = (X1,a)
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   199
>  X3 = (X2,b)
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   200
>  X4 = (X1,b) + (X2,a) + (X3,a) + (X3,b) 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   201
> 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   202
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   203
We have modified the example as you suggest. But note that assuming
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   204
we only have characters a and b in an alphabet, the equation for
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   205
X4 must be
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   206
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   207
    X4 = (X1,b) + (X2,a) + (X3,a) + (X3,b) + (X4,a) + (X4,b)
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   208
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   209
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   210
>  (It could be worth saying that it is a left-linear context free
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   211
>  grammar in any case). Having built this example, I wonder why you
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   212
>  chose to set up the equationnal system the way you did. In the RW
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   213
>  section, you argue that the differences with Brzozowski's are subtle
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   214
>  and impact the presentation of , but I fail to see what would go
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   215
>  wrong if you chose this presentation too. 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   216
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   217
The difference is from where we start: In Brzozowski's algebraic 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   218
method, the start is an automaton from which this method calculates
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   219
a regular expression. Therefore Brzozowski annotates the final
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   220
states with lambdas and `propagates' them to the single initial
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   221
state. From there he can read off a (single) regular expression recognising
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   222
the same language as the automaton. We, on the other hand, start with a 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   223
set of equivalence classes, for all of which we want to calculate a 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   224
regular expression. In this way we have to annotate the lambda to the 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   225
initial state (containing only []) and `propagate' it to all other 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   226
equivalence classes. Once there, we can read off the regular expressions
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   227
for each equivalence class. There seems to be no convenient way to set 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   228
up the equational system the original Brzozowski-way. However, it does 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   229
mean that we have to use the reversed version of Arden's lemma in order to 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   230
solve our equational systems. 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   231
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   232
> - p. 11 "There exists a regular expression" this is not clear, unless
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   233
>   one has a look at your formal proof: it should be made clear that
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   234
>  the definition "regular A" is defined as exists r, A = lang r. 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   235
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   236
We clarified this sentence according to your suggestion. 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   237
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   238
> - Top of p. 12: it is stated that this algorithm provides a method to
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   239
>  compute a regexp for the complement of a language and that this
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   240
>  construction is similar to the construction of the complement
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   241
>  automaton. I agree with this statement, because I am under the
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   242
>  impression (maybe wrongly) that the construction in this section
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   243
>  boils down to "automata with states indexed by the equivalences
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   244
>  classes" to "regular expression". What I am uncertain of is, under
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   245
>  what conditions I could use your formalization to compute this
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   246
>  regular expression. (Note that I am not speaking about complexity
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   247
>  issues here.)
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   248
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   249
We are not 100% sure whether we are correctly interpreting your
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   250
question: If you are after an informal "black board" calculation method 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   251
of this regular expression in front of students, then you can use our
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   252
algorithm. We have done this already. If you are asking whether 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   253
our formalisation is "constructive" enough in order to directly
384
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
   254
extract an algorithm, then no, we cannot do this. We use a theorem
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
   255
prover based on classical logic. We did not make, for example,
381
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   256
explicit how a single regular expression can be constructed from
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   257
a set of regular expressions, still recognising the same language.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   258
However, we do not like to open the "can-of-worms" about constructive
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   259
and unconstructive arguments and how to extract explicit algorithms.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   260
In theory we can, in practice we cannot. Unfortunately, we do not have
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   261
a better answer for this at the moment and think this is besides
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   262
the main point of the paper. 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   263
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   264
> - p. 13 In the definition of the tagging function for the plus case,
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   265
>  isn't there a typo (replacing the \cdot by a comma) ? 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   266
384
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
   267
No. Our formalisation uses this definition generating a pair. 
381
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   268
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   269
> - p. 14 There is an "x" missing on the left-hand side of the definition of
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   270
>   x tag A B. 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   271
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   272
Yes. Corrected.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   273
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   274
> - The structure of section 4 is a bit difficult to follow, because the
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   275
>   proof of Theorem 31 is interleaved with the statement of many
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   276
>   intermediate lemmas. Could you separate the definition of the
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   277
>   tagging functions from the proof? 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   278
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   279
We have added a figure at the beginning of the proof and included
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   280
appropriate references.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   281
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   282
>   I think it would also be
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   283
>   interesting to point out that the type of the codomain the tag
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   284
>   functions are not the same through the section.  Again, I am under
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   285
>   the impression that the tagging functions defined in this section
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   286
>   define states of an automaton that is not built explicitly, with the
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   287
>   result of the tag function being a particular state in a suitably
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   288
>   built automaton.  
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   289
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   290
We added a relatively lengthy remark after the proof about 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   291
how the tagging functions can be seen as constructing particular
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   292
automata - see p. 17.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   293
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   294
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   295
>   Yet, it could be worth pointing out that this use
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   296
>   of polymorphism for the tag functions does not have the same
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   297
>   problems as the one encountered when one try to formalize
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   298
>   automata. This is in a sense contradiction with your statement
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   299
>   p. 24 that you sidestep the composition of automata (this automaton
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   300
>   is not explicitly built). 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   301
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   302
We have modified the statement on p. 24.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   303
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   304
> - p. 18: you mention the fact that it is painful to formalize
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   305
>   Brzozowski's argument stating that there are only finitely many
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   306
>   dissimilar derivatives. Is this because it requires to build part of
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   307
>   the equationnal theory of regular expressions that you avoided so
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   308
>   far? Could you comment on what Coquand and Siles did in the paper
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   309
>   you cite?  
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   310
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   311
Coquand and Siles first spend 3 pages of their 16-pages paper
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   312
developing a theory of inductively finite sets in type theory.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   313
This theory uses "discrete sets" where the equality needs to 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   314
be decidable. They then view the ACI-properties as rewrite rules 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   315
leading to a decidable equality over regular expressions. This 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   316
shows (although they left out the details in their paper) that the 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   317
set of derivatives is inductively finite. 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   318
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   319
In our opinion, Coquand and Siles' development strongly justifies our 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   320
comment about formalisation of Brzozowski's argument being painful.
382
29915abff9c2 polished
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   321
If you like to have this reference added in the paper, we are happy
381
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   322
to do so. 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   323
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   324
> - Section 6, p20, previous to last paragraph: you say that the
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   325
>   construction of the complement regular expression involves several
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   326
>   transformations: you could shave off the construction of the
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   327
>   non-deterministic automaton, since it can be avoided using
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   328
>   Antimirov's construction of a DFA (as you do).
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   329
382
29915abff9c2 polished
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   330
We feel that our sequence adequately represents the procedure
381
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   331
that is used by informed outsiders and that is usually 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   332
taught to students. Antimirov's construction using partial
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   333
derivatives is unfortunately not widely known, which we hope
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   334
we can help to change with this paper.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   335
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   336
> - (27) are properties, not definitions, isn't it? 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   337
384
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
   338
Yes, corrected. 
381
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   339
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   340
> - A question. On the one hand, Isabelle/HOL features a classical
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   341
>   logic, with the law of the excluded middle and the Hilbert's epsilon
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   342
>   operator. On the other hand, in Coq, it is often involved to prove
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   343
>   decidability results, which may make it more difficult to formalize
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   344
>   some of the arguments you are using. Is it possible in Isabelle/HOL
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   345
>   to track what are the uses of classical logic that you use? 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   346
382
29915abff9c2 polished
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   347
In theory there is a way to track all classical uses in Isabelle/HOL,
381
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   348
but this can be practically unfeasible, since proof terms can be 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   349
gigantic (therefore the Isabelle/HOL follows the LCF approach 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   350
where only theorems need to be recorded for correctness). Having 
382
29915abff9c2 polished
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   351
said that, there is one obvious place in our proof where we used 
381
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   352
a "classical" shortcut by using + for generating a single regular 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   353
expression from a finite set of expressions. This would need better 
384
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
   354
"explanation" in a constructive proof. We also leave out an explicit 
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
   355
choice for selecting an equation in the euqational system. But that
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
   356
can be easily patched if wanted. To sum up, there are no inherent 
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
   357
classical shortcuts in the proof. But as said before, we think opening  
382
29915abff9c2 polished
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   358
this can-of-worms is beside the focus of the paper.
381
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   359
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   360
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   361
>  In particular, I am worried about the last sentence on page 24: how do
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   362
>  you make these sets computational? 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   363
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   364
We wrote:
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   365
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   366
 However, since partial derivatives use sets of regular expressions, one 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   367
 needs to carefully analyse whether the resulting algorithm is still 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   368
 executable. Given the infrastructure for executable sets introduced by 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   369
 Haftmann (2009) in Isabelle/HOL, it should.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   370
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   371
Does this allay your fears?
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   372
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   373
> - I think a word of caution should be added to the comparison with
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   374
>   related works in terms of formalization size: there is a huge gap in
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   375
>   the scope of these formalizations efforts, especially when one
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   376
>   defines algorithms. For instance, an usual corollary of the
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   377
>   Myhill-Nerode theorem is an algorithm that minimize automata: could
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   378
>   you provide, for instance, an algorithm that compute the number of
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   379
>   equivalences classes of your Myhill-Nerode relation?  
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   380
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   381
We have attempted to be very careful with our comments about the
382
29915abff9c2 polished
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   382
formalisation sizes from other works. Our point is to draw
384
60bcf13adb77 comment by Chunhan
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 382
diff changeset
   383
attention to the somewhat surprising fact that formalisation
381
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   384
using automata (either out of choice or being forced) led to 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   385
formalisations where the people in question had to fight their
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   386
theorem prover. On the other hand, our formalisation could rely
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   387
on the fact that regular expressions are inductive datatypes which
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   388
are generally well-supported by theorem prover reasoning. We hope
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   389
to have "balanced the picture" by saying that regular expressions
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   390
are not good for everything (see paragraph in the Conclusion
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   391
"While regular expressions are convenient, they have some 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   392
limitations...").
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   393
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   394
We have not thought about an algorithm to compute the number of
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   395
equivalence classes. 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   396
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   397
> - There has been several work that uses matrices in Coq, in the
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   398
>   context of the ssreflect dialect. For instance, you may have a look
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   399
>   at Dénès M, Mörtberg A, Siles V.  2012.  A refinement-based approach
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   400
>   to computational algebra in COQ. ITP 2012. It does not seem that
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   401
>   there is a particular problem with the use of matrices. 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   402
382
29915abff9c2 polished
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   403
We relied completely on the comment by (we assume expert formaliser in Coq) 
29915abff9c2 polished
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   404
Braibant from his thesis which explicitly states: 
381
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   405
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   406
  | Note that while they [Wu, Zhang, Urban] justify their work by the fact  
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   407
  | that formalising automata ``can be a real hassle in HOL-based provers'', 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   408
  | and that neither Isabelle/HOL nor HOL4 nor HOL-light support matrices and 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   409
  | graphs with libraries, we did not encounter such difficulties in Coq 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   410
  | (omitting the **intrinsic difficulty** of working with **rectangular matrices** 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   411
  | at some points).
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   412
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   413
The emphasis added by us. As far as we know Braibant also uses ssreflect.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   414
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   415
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   416
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   417
Reviewer #2
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   418
=========== 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   419
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   420
> This is a very nice paper, at least in terms of its content, and it
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   421
> should certainly be published in some shape or form.  It's based on an
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   422
> ITP conference paper from 2011, but seems to me to include sufficient
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   423
> new content to justify republication in a journal.  To be specific,
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   424
> the new material is: the second of the two proofs showing the
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   425
> implication that if a language is regular it has a finite number of
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   426
> Myhill-Nerode equivalence classes (using partial derivatives), and all
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   427
> of the closure properties.  Both new contributions are very appealing.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   428
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   429
We agree with your observations.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   430
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   431
> Really, I have only a slew of minor criticisms about the paper, and
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   432
> these almost all have to do with minor presentation issues.  I started
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   433
> to list some of these in the "Minor things" section below, but I
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   434
> eventually decided that I should simply say that 1. the English is
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   435
> sometimes less than perfect; 2. a spell-checker should be used; 3. the
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   436
> typography is occasionally dubious; and that 4. it all needs to be
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   437
> re-read with more care.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   438
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   439
We have improved the paper. Please let us know if we
382
29915abff9c2 polished
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   440
overlooked any other errors.
381
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   441
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   442
> Finally, the conclusion and related work sections are reasonable.  I
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   443
> think the conclusion could usefully discuss the executability of the
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   444
> algorithm in the first half of the M-N proof.  
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   445
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   446
Informally, the algorithm is clearly executable. But we have not 
382
29915abff9c2 polished
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   447
attempted this with our formalisation or modified the formalisation
29915abff9c2 polished
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   448
so that it becomes executable by Isabelle/HOL.
381
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   449
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   450
> Also, the conclusion discusses the Brzozowski's algebraic method in 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   451
> this context, and argues that the equational constraints that appear 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   452
> in this paper are not quite the same as a minimal automaton. It's 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   453
> clear that, yes, they are a little different, but it still seems to 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   454
> me that the initial state of the constraint set is isomorphic to the 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   455
> automaton.  Given that, I was very surprised to read (on p6) that 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   456
> "Note that we do not define an automaton here".  
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   457
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   458
Yes, we agree, behind our equational system lurks a minimal automaton. What 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   459
we wanted to clear up is that we have not defined a transition relation 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   460
between states in the usual automata sense. Despite best intentions, we 
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   461
have deleted this remark, as it clearly misled the reviewers.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   462
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   463
> Appendix: this seems unnecessary. If it's interesting enough to be in
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   464
> the main text, it should be there. Otherwise refer the reader to the
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   465
> online formalisation. In this case, the appendix is so small that it
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   466
> seems particularly silly to have one.
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   467
99161cd17c0f added modified version adn answer to the reviewers
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   468
We deleted the appendix.