<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Rule Formats for Nominal Modal Transition Systems ?</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Anke Stüber</string-name>
          <email>anke.stuber@it.uu.se</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Universitet Uppsala</institution>
          ,
          <addr-line>Uppsala</addr-line>
          ,
          <country country="SE">Sweden</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Modal transition systems are specification languages that allow the expression of loose specifications. They can model a development process where an initially partial specification is stepwise refined until an implementation is obtained. We propose to generalize modal transition systems to a nominal setting to facilitate the handling of names and binders as encountered in name-passing process calculi. We need to show compositionality of the refinement relation. Beyond that we want to further generalize this idea by compiling SOS rule formats that ensure compositionality. The results of this research should give a general specification language where proofs of the theory carry over to other process calculi expressible in our framework.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        In the networked world of today, concurrent communicating systems are
ubiquitous. As such systems are complex, we need formal methods to reason about
their properties. When developing software we want to start with a specification
of the intended behavior of the system that we can later use to check whether our
implementation meets the requirements. Process calculi [
        <xref ref-type="bibr" rid="ref6 ref7">6, 7</xref>
        ] based on labelled
transition systems can be used for specification and modeling of concurrent
communicating systems.
      </p>
      <p>With process calculi, the languages for specification and implementation of a
system are the same. Bisimulation is used to check the correctness of an
implementation according to a specification. As bisimulation is an equivalence, this
limits the set of possible implementations to a single equivalence class. This
means that contrary to a real-world development process all behavior must
already be defined in the initial specification. Furthermore for the specification of
a system composed of several components it is necessary to specify all behavior
of the components, even the behavior that is only internally visible. We want to
describe a development process where it is possible to refine the specification of
a system by refining the specification of one of its components, as illustrated in
Figure 1.
? Initial stage of research, supervised by Joachim Parrow</p>
      <p>
        Modal transition systems [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] are labelled transition systems that have both
may and must transitions, which can be used to describe the necessary and
admissible behavior of a system. This allows for coarser partial specifications
that can be refined by either changing a may into a must transition or removing
a may transition from the system. When no more may transitions are present an
implementation is reached. For checking the correctness of a refined specification
a refinement relation is used. In contrast to the bisimulation equivalence this
relation is not an equivalence but a preorder. This makes the correctness check
easier in practice.
      </p>
      <p>
        Name-passing process calculi such as the Pi calculus [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] make use of name
generation and scope opening. Names can be scoped to represent local resources.
A locally bound name b that is exported over a channel a in the transition
P a( b!) P 0 can undergo -conversion. This leads to the the transition P a( c!)
P 0fc=bg which we want to regard as -equivalent for each fresh name c. In manual
proofs this kind of problem is often treated only informally. Nominal logic [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]
strictly formalizes notions of renaming via name-swapping and freshness. We
want to generalize the concept of modal transition systems to a name-passing
setting, using nominal logic to simplify the handling of names, binders and
equivalence.
      </p>
      <p>
        An important property of a specification language is compositionality: The
problem of checking the correctness of a complete system according to a
specification should be decomposable into the simpler problems of checking correctness
of the components. For process calculi, bisimulation preserved by the process
operators fulfills compositionality [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. For our proposed nominal modal
transition systems we therefore need to investigate whether our refinement relation
is preserved by operators such as the parallel composition operator. For modal
transition systems, when there are no may transitions, refinement coincides with
strong bisimilarity. When there are no must transitions, it coincides with
simulation. This brings up the question of whether we can find similar relations in
the nominal setting.
      </p>
      <p>
        The area of specification languages is large and there are many papers
introducing new languages. Each time the underlying theory such as compositionality
has to be proved again. Rule formats [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] are syntactic restrictions on rules for
operational semantics that guarantee some desirable properties of the semantics
induced by any transition system following the formats. We propose research on
rule formats for a general specification language based on nominal modal
transition systems that ensure compositionality. Such rule formats would eliminate
the need to prove repeatedly the theory for all specification languages that can
be expressed through an instance of the rules.
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>Related Work</title>
      <p>
        The process calculus concept was first introduced by Milner in his work on the
Calculus of Communicating Systems [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Process calculi provide a formal model
for reasoning about the behavior and communication of processes. Equivalences
between processes can be described in terms of bisimulation. Milner, Parrow
and Walker generalize this concept with their Pi-calculus [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] in which processes
are allowed to communicate channel names over the communication channels,
making it possible to describe dynamic network structures.
      </p>
      <p>
        In [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] and [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] Larsen and Thomsen argue that process calculi are ill-suited as
specification languages, since they limit the set of possible implementations for a
specification to a single equivalence class. They propose a specification language
in the form of a labelled transition system with may and must transitions and
a refinement relation between specifications.
      </p>
      <p>
        Process calculi and specification languages rely on the concepts of names and
binders. Pitts introduced nominal logic [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] to facilitate the reasoning about
conversion, freshness and permutation of names. This theory was incorporated
into the interactive theorem prover Isabelle [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] with the definitional extension
Nominal Isabelle [
        <xref ref-type="bibr" rid="ref3">3, 15</xref>
        ] which supports binding multiple names at once. Other
frameworks for reasoning about formal semantics such as Twelf [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] and
Beluga [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] make use of higher-order abstract syntax to handle names and binders
formally.
      </p>
      <p>
        For process calculi where terms are elements of arbitrary nominal sets Parrow
et al. [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] define nominal transition systems and introduce a modal logic that can
be used to express bisimulation equivalence by testing whether two processes
satisfy the same set of formulas. We will use this paper and its formalization in
Nominal Isabelle as a starting point for our research, but unlike this approach
start with modal transition systems and generalize them to a nominal setting.
      </p>
      <p>
        Structural operational semantics (SOS) was first presented by Plotkin in [14]
as a structured method to define rules for operational semantics. The idea was
widely adopted and extended by the concept of rule formats [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] that guarantee
semantic properties by imposing restrictions on the syntax of such rules. Rule
formats for name-passing process calculi ensuring that open bisimilarity is a
congruence have been studied in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] by means of category theory and in [16]
using the higher-order proof system fold-nabla. Cimini et al. define a framework
based on nominal logic for handling names in SOS in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>Proposed Solution</title>
      <p>We propose to combine the concepts of modal transition systems and nominal
logic to define a specification language that improves the handling of names and
binders as used in name-passing process calculi. This will give us the flexibility of
modal transition systems on top of a rigorous theory for reasoning about objects
depending on names. It will allow the expression of the behavior of a system
in the style of name-passing process algebras while facilitating the refinement
of its specification through the use of may and must transitions as found in
modal transition systems. We need to define a refinement relation and prove
compositionality with the parallel and other process operators. Furthermore we
propose to generalize our specification language by finding SOS rule formats such
that compositionality holds. We will find encodings of existing process algebras
into instances of our rules, eliminating the need to repeat the proofs in each
expressible instance.</p>
      <p>To increase the confidence in our proofs we will formalize part of our theory
in the interactive theorem prover Isabelle. In particular, we will rely on the
definitional extension Nominal Isabelle, providing convenient measures of handling
names and binders.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Preliminary Work</title>
      <p>My research on this topic is still in the initial stage. I have conducted a literature
survey on process calculi and modal transition systems. In earlier work I gained
experience with proofs on properties of bisimulation, notably in a nominal
setting. Furthermore, I have had some practice in formalizing proofs in Nominal
Isabelle.
5</p>
    </sec>
    <sec id="sec-5">
      <title>Expected Contributions</title>
      <p>The expected contributions of this research are as follows:
– definition of a specification language using nominal transition systems with
modal may and must transitions, a satisfaction relation and a notion of
refinement that allows composition with logical and process operators,
– proofs that our specification language fulfills compositionality with operators
such as the parallel operator and comparisons of our refinement relation with
existing forms of bisimulation,
– methods for checking refinement of specifications,
– generalization of the concept through rule formats that ensure
compositionality,
– applications of our framework by means of encodings of existing process
algebras1,
– formalization of some of the proofs in the interactive theorem prover Isabelle.</p>
      <p>This research will generalize nominal process algebras to allow the expression
of loose specifications that can be refined stepwise. Our specification language
will simplify the task of verification for systems that are composed of several
1 exactly which process algebras is not set yet
components because of compositionality: It will permit to check the correctness
of a refinement step by reducing the test to a correctness check of the refined
component. Furthermore, by describing a set of rule formats that ensure
compositionality this research will be applicable to various existing process algebras
while the desired properties need to be proved only once in the general
framework. The proofs written in the theorem prover Isabelle can be reused for process
algebras that can be expressed as instances of our rule formats.
6</p>
    </sec>
    <sec id="sec-6">
      <title>Plan for Validation and Evaluation</title>
      <p>A large part of this research will deal with the theoretical reasoning about
features of our proposed rule formats for nominal modal transition systems. To
validate that our framework meets the requirements, we will give proofs for the
desired properties such as compositionality. We will formalize part of our proofs
in Nominal Isabelle to achieve a high confidence in their correctness. Furthermore
we will investigate how our specification language can be used in combination
with existing tools for model checking.</p>
      <p>The advantage of our modal specification language with refinement over
approaches using bisimulation can be assessed through performance tests of tools
that verify the correctness of an implementation according to a specification
when components of a partial implementation are refined. As for the general
framework of rule formats we will evaluate its usefulness by encoding existing
process calculi in it. For the process calculi we can encode this way the
theoretical results will carry over, eliminating the need for new proofs for every
expressible calculus.
7</p>
    </sec>
    <sec id="sec-7">
      <title>Current Status</title>
      <p>Currently I am taking a course on interactive theorem proving in Isabelle to
increase my knowledge in that area. Moreover, I am taking a course on
category theory that is expected to help with the understanding of papers that use
category theory as a means of reasoning about rule formats. As a next step I
will conduct a literature survey on structural operational semantics for nominal
process algebras. In Swedish universities it is common to write a thesis for a
Licentiate degree after completion of half of the studies for a PhD. In this thesis
I plan to include the definition of a nominal modal specification language, proofs
of its properties such as compositionality, methods for refinement checking and
the formalization of the definitions in Nominal Isabelle, due by fall 2018.
Subsequently I will work on generalizing the results through rule formats, applications
and further formal proofs in Nominal Isabelle for inclusion into the PhD thesis.
I expect to finish in 2021.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>M.</given-names>
            <surname>Cimini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. R.</given-names>
            <surname>Mousavi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. A.</given-names>
            <surname>Reniers</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M. J.</given-names>
            <surname>Gabbay</surname>
          </string-name>
          . “
          <string-name>
            <surname>Nominal</surname>
            <given-names>SOS</given-names>
          </string-name>
          ”.
          <source>In: Electronic Notes in Theoretical Computer Science</source>
          <volume>286</volume>
          (
          <year>2012</year>
          ), pp.
          <fpage>103</fpage>
          -
          <lpage>116</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>M.</given-names>
            <surname>Fiore</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Staton</surname>
          </string-name>
          . “
          <article-title>A congruence rule format for name-passing process calculi”</article-title>
          .
          <source>In: Information and Computation</source>
          <volume>207</volume>
          .2 (
          <issue>2009</issue>
          ), pp.
          <fpage>209</fpage>
          -
          <lpage>236</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>B.</given-names>
            <surname>Huffman</surname>
          </string-name>
          and
          <string-name>
            <given-names>C.</given-names>
            <surname>Urban</surname>
          </string-name>
          .
          <article-title>“A New Foundation for Nominal Isabelle”</article-title>
          .
          <source>In: 1st International Conference on Interactive Theorem Proving - ITP '10</source>
          . Ed. by M. Kaufmann and Paulson L. C. Vol.
          <volume>6172</volume>
          . Lecture Notes in Computer Science. Berlin a.o.: Springer,
          <year>2010</year>
          , pp.
          <fpage>35</fpage>
          -
          <lpage>50</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>K. G. Larsen.</surname>
          </string-name>
          “
          <article-title>Modal Specifications”</article-title>
          .
          <source>In: Automatic Verification Methods for Finite State Systems. Ed. by J. Sifakis</source>
          . Vol.
          <volume>407</volume>
          . Lecture Notes in Computer Science. Berlin a.o.: Springer,
          <year>1989</year>
          , pp.
          <fpage>232</fpage>
          -
          <lpage>246</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>K. G.</given-names>
            <surname>Larsen</surname>
          </string-name>
          and
          <string-name>
            <given-names>B.</given-names>
            <surname>Thomsen</surname>
          </string-name>
          . “
          <string-name>
            <given-names>A Modal</given-names>
            <surname>Process</surname>
          </string-name>
          <article-title>Logic”</article-title>
          .
          <source>In: 3rd Annual Symposium on Logic in Computer Science - LICS '88</source>
          . Washington a.o.
          <source>: IEEE Computer Society</source>
          ,
          <year>1988</year>
          , pp.
          <fpage>203</fpage>
          -
          <lpage>210</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>R.</given-names>
            <surname>Milner</surname>
          </string-name>
          .
          <article-title>“A Calculus of Communicating Systems”</article-title>
          . In: vol.
          <volume>92</volume>
          . Lecture Notes in Computer Science. Berlin a.o.: Springer,
          <year>1980</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>R.</given-names>
            <surname>Milner</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Parrow</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Walker</surname>
          </string-name>
          .
          <article-title>“A Calculus of Mobile Processes, I”</article-title>
          .
          <source>In: Information and Computation</source>
          <volume>100</volume>
          .1 (
          <issue>1992</issue>
          ), pp.
          <fpage>1</fpage>
          -
          <lpage>40</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>M. R.</given-names>
            <surname>Mousavi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. A.</given-names>
            <surname>Reniers</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J. F.</given-names>
            <surname>Groote</surname>
          </string-name>
          . “
          <article-title>SOS formats and metatheory: 20 years after”</article-title>
          .
          <source>In: Theoretical Computer Science 373.3</source>
          (
          <issue>2007</issue>
          ), pp.
          <fpage>238</fpage>
          -
          <lpage>272</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>J.</given-names>
            <surname>Parrow</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Borgström</surname>
          </string-name>
          , L.
          <string-name>
            <surname>-H. Eriksson</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Gutkovas</surname>
            , and
            <given-names>T.</given-names>
          </string-name>
          <string-name>
            <surname>Weber</surname>
          </string-name>
          . “
          <article-title>Modal Logics for Nominal Transition Systems”</article-title>
          .
          <source>In: 26th International Conference on Concurrency Theory - CONCUR</source>
          '15. Ed. by
          <string-name>
            <given-names>L.</given-names>
            <surname>Aceto</surname>
          </string-name>
          and
          <string-name>
            <surname>D. de Frutos Escrig</surname>
          </string-name>
          . Vol.
          <volume>42</volume>
          . Leibniz International Proceedings in Informatics.
          <source>Wadern: Leibniz-Zentrum für Informatik</source>
          ,
          <year>2015</year>
          , pp.
          <fpage>198</fpage>
          -
          <lpage>211</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>L. C.</given-names>
            <surname>Paulson. Isabelle - A Generic Theorem</surname>
          </string-name>
          <article-title>Prover</article-title>
          . Vol.
          <volume>828</volume>
          . Lecture Notes in Computer Science. Berlin a.o.: Springer,
          <year>1994</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>F.</given-names>
            <surname>Pfenning</surname>
          </string-name>
          and
          <string-name>
            <given-names>C.</given-names>
            <surname>Schürmann</surname>
          </string-name>
          . “System Description:
          <article-title>Twelf - A MetaLogical Framework for Deductive Systems”</article-title>
          .
          <source>In: Proceedings of the 16th International Conference on Automated Deduction - CADE-16</source>
          . Ed. by
          <string-name>
            <given-names>H.</given-names>
            <surname>Ganzinger</surname>
          </string-name>
          . Vol.
          <volume>1632</volume>
          .
          <source>Lecture Notes in Artificial Intelligence</source>
          . Berlin a.o.: Springer,
          <year>1999</year>
          , pp.
          <fpage>202</fpage>
          -
          <lpage>206</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>B.</given-names>
            <surname>Pientka</surname>
          </string-name>
          and
          <string-name>
            <given-names>J.</given-names>
            <surname>Dunfield</surname>
          </string-name>
          . “
          <article-title>Beluga: A Framework for Programming and Reasoning with Deductive Systems (System Description)”</article-title>
          .
          <source>In: Proceedings of the 5th International Conference on Automated Reasoning - IJCAR '10</source>
          . Ed. by
          <string-name>
            <given-names>J.</given-names>
            <surname>Giesl</surname>
          </string-name>
          and
          <string-name>
            <given-names>R.</given-names>
            <surname>Hähnle</surname>
          </string-name>
          . Vol.
          <volume>6173</volume>
          . Lecture Notes in Computer Science. Berlin a.o.: Springer,
          <year>2010</year>
          , pp.
          <fpage>15</fpage>
          -
          <lpage>21</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>A. M.</given-names>
            <surname>Pitts</surname>
          </string-name>
          . “
          <article-title>Nominal Logic: A First Order Theory of Names and Binding”</article-title>
          .
          <source>In: Theoretical Aspects of Computer Software: 4th International Symposium</source>
          . Ed. by
          <string-name>
            <given-names>N.</given-names>
            <surname>Kobayashi</surname>
          </string-name>
          and
          <string-name>
            <given-names>B. C.</given-names>
            <surname>Pierce</surname>
          </string-name>
          . Vol.
          <volume>2215</volume>
          . Lecture Notes in Computer Science. Berlin a.o.: Springer,
          <year>2001</year>
          , pp.
          <fpage>219</fpage>
          -
          <lpage>242</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          <string-name>
            <given-names>G. D.</given-names>
            <surname>Plotkin</surname>
          </string-name>
          .
          <article-title>A Structural Approach to Operational Semantics</article-title>
          .
          <source>Technical Report DAIMI FN-19</source>
          . Aarhus: Computer Science Department, Aarhus University,
          <year>1981</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          <string-name>
            <given-names>C.</given-names>
            <surname>Urban</surname>
          </string-name>
          and
          <string-name>
            <given-names>C.</given-names>
            <surname>Kaliszyk</surname>
          </string-name>
          . “
          <article-title>General Bindings and Alpha-Equivalence in Nominal Isabelle”</article-title>
          .
          <source>In: Logical Methods in Computer Science 8.2</source>
          (
          <issue>2012</issue>
          ), pp.
          <fpage>1</fpage>
          -
          <lpage>35</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          <string-name>
            <given-names>A.</given-names>
            <surname>Ziegler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Miller</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Palamidessi</surname>
          </string-name>
          .
          <article-title>“A Congruence Format for Namepassing Calculi”</article-title>
          .
          <source>In: Electronic Notes in Theoretical Computer Science 156.1</source>
          (
          <issue>2006</issue>
          ), pp.
          <fpage>169</fpage>
          -
          <lpage>189</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>