<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">Designing Domain Specific Languages for Verification: First Steps</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Phillip</forename><surname>James</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">Swansea University</orgName>
								<address>
									<country key="GB">UK</country>
								</address>
							</affiliation>
						</author>
						<author role="corresp">
							<persName><forename type="first">Markus</forename><surname>Roggenbach</surname></persName>
							<email>m.roggenbach@swan.ac.uk</email>
							<affiliation key="aff0">
								<orgName type="institution">Swansea University</orgName>
								<address>
									<country key="GB">UK</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">Designing Domain Specific Languages for Verification: First Steps</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">D97BACDF7AD98FA905682AAD38DE182E</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T09:28+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>This paper introduces a first approach at developing a design methodology for creating domain specific languages focused towards modelling and verification. The work presented is ongoing. The overall aim of the work is to show how capturing domain specific knowledge, and then tailoring proof goals around this domain specific knowledge, can improve automatic verification results, whilst also providing a graphical domain specific language.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>For many years, the application of verification processes such as model checking and interactive theorem proving to varying industrial case studies has been successfully illustrated, e. g. see <ref type="bibr" target="#b21">[22,</ref><ref type="bibr" target="#b18">19,</ref><ref type="bibr" target="#b8">9,</ref><ref type="bibr" target="#b9">10]</ref>. Even though these approaches have been successful, the use of formal methods within industry is often still limited. Without experts in the field of formal verification, the verification process is often complicated and hence simply takes too long for the everyday domain engineer to learn effectively. Domain specific languages <ref type="bibr" target="#b6">[7]</ref> aim to abstract away such technical details from the domain engineer, allowing them to create programs or specifications without having to be an expert programmer or specifier.</p><p>Along with these problems, several research projects within the railway domain have shown that automatic verification can fail when domain models do not contain enough "domain knowledge" <ref type="bibr" target="#b5">[6,</ref><ref type="bibr" target="#b9">10,</ref><ref type="bibr" target="#b10">11]</ref>. For example, in <ref type="bibr" target="#b9">[10,</ref><ref type="bibr" target="#b10">11]</ref>, model checking approaches were applied to verify railway interlockings. The results of the verification were only partially successful, as many of the counter examples produced by the model checking process were later ruled to be impossible by domain experts. The problems encountered were due to underspecified programs created by the domain engineers.</p><p>This work, in co-operation with Invensys Rail, aims to show that following a particular design methodology for creating domain specific languages allows the creation of a graphical domain specific language that not only makes the task of automatic verification possible, but also less complex. Such gains are possible via carefully designing a domain specific language to ensure it captures domain knowledge relevant to the class of properties which one would like to verify.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">The Railway Domain and DSLs</head><p>To illustrate our approach we use the railway domain. Here we review existing work in the area of verification within the railway domain and the area of domain specific language design.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.1">Modelling and Verification in the Railway Domain</head><p>A prominent example of where formal methods have been applied is the railway domain. Approaches that have been taken include algebraic specification, e.g. <ref type="bibr" target="#b3">[4]</ref>, process algebraic modelling and verification, e.g. <ref type="bibr" target="#b21">[22,</ref><ref type="bibr" target="#b17">18]</ref>, and model oriented specification, where, for example the B method has been used in order to verify part of the Paris Metro railway <ref type="bibr" target="#b4">[5]</ref> in terms of both safety and liveness properties. These approaches show the successful application of formal methods to the railway domain, but fail to comment on the applicability of such processes by domain engineers.</p><p>This work is inspired by the work of Bjørner <ref type="bibr" target="#b3">[4]</ref>. To this end, we follow the natural language specification of the railway domain given by Bjørner <ref type="bibr" target="#b3">[4]</ref>. Bjørner has also given a formal version of this natural language specification using the RSL specification language <ref type="bibr" target="#b19">[20]</ref>. In contrast, we focus on using Casl, the Common Algebraic Specification Language <ref type="bibr" target="#b15">[16]</ref> as it provides us with more features than RSL, including established tool support in the form of the Heterogeneous Toolset (Hets) <ref type="bibr" target="#b14">[15]</ref>. The Hets environment not only provides both interactive and automatic theorem proving support, but also allows translation between different logics through institution maps <ref type="bibr" target="#b13">[14]</ref>. Such a translation is shown to be useful in Section 3.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.2">Domain Specific Language Design</head><p>The creation of domain specific languages is often aided by the use of a development framework. There are several examples of such tools including ASF+SDF <ref type="bibr" target="#b20">[21]</ref> a meta-environment based on a combination of the algebraic specification formalism ASF and the syntax defining language SDF. ASF+SDF allows creation of domain specific languages and tools such as parsers, compilers and static analysers for the created domain specific language. Extending ASF+SDF, there is Rascal <ref type="bibr" target="#b11">[12]</ref>, which is currently under development at CWI. Finally, MetaEdit+ <ref type="bibr" target="#b1">[2]</ref> is an industrial tool allowing the creation of visual domain specific languages. Interestingly, MetaEdit+ has been used to create a domain specific modelling for railway layouts, see <ref type="bibr" target="#b1">[2]</ref>.</p><p>With respect to our approach for creating domain specific languages, we make use of the Graphical Modelling Framework, GMF <ref type="bibr" target="#b7">[8]</ref>. GMF is an Eclipse plugin that provides the infrastructure to create, from a UML like model, a Java based graphical editor. This editor can then easily be extended with Java code allowing it to output Casl specifications. The simplicity of this creation process fits well with our design methodology outlined in Section 3.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">Towards a Design Methodology</head><p>In this section, we outline a first proposal for a design methodology for creating domain specific languages for verification. Figure <ref type="figure" target="#fig_0">1</ref> illustrates the proposed design and verification process.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Capturing knowledge:</head><p>The first area that is illustrated in the left of Figure <ref type="figure" target="#fig_0">1</ref> is the capture of domain knowledge. A natural language specification can be formalised using the OWL Ontology language <ref type="bibr" target="#b2">[3]</ref>. OWL has been designed to formalise knowledge about a given domain and thus provides a range of constructs to allow the capture of domain knowledge. It allows specification of concepts within a given domain via classes, specification of attributes of the concepts via data properties and specification of relations between concepts via object properties. It also allows axioms to be stated over such properties. These constructs are very similar to those within UML or any object orientated language. OWL has a well defined formal semantics <ref type="bibr" target="#b16">[17]</ref> meaning that every OWL specification has a precise and unambiguous meaning. As we wish to use only automatic tool support, we make use of a decidable fragment of full OWL known as OWL-DL <ref type="bibr" target="#b2">[3]</ref> Creating the DSL: Given an OWL specification, an automatic translation to a GMF (UML like) meta-model is possible. <ref type="foot" target="#foot_0">1</ref> This meta-model along with a set of graphical elements can be used within the GMF process to create a graphical editing tool for the domain. The production  of this graphical editing tool is outlined in the top branch of Figure <ref type="figure" target="#fig_0">1</ref>. Here we provide an overview of the steps involved in the GMF process and for more details we refer the reader to <ref type="bibr" target="#b7">[8]</ref>. The first step within the GMF creation process is to select the concepts of the domain which should become graphical constructs within the language. These graphical constructs can be split into two main classes essentially representing nodes and edges within the final graphical editor. The next step is to associate with each chosen construct for the language, a graphical image to represent it. Finally, the attributes (or properties for a given concept) which should be attached to each graphical element can be selected. Once these steps have been completed, the GMF tool will automatically produce a Java based graphical editor. This editor consists of a drawing canvas and a palette. Graphical elements from the palette can be dragged and positioned onto the drawing canvas. Along with these features, the Java code base for the editor is readily extensible and we use this fact to extend the editor to produce Casl specifications. Namely, we add a small amount of code for each construct that simple produces a Casl specification for that construct when it is added to the drawing canvas. Obtaining such a Casl specification for each construct is discuss below.</p><p>Semantics: To provide a semantics for the graphical editing tool we propose the use of Casl <ref type="bibr" target="#b15">[16]</ref>. The main motivation for the use of Casl is thanks to the tool support that is available in the form of the Hets environment <ref type="bibr" target="#b14">[15]</ref>. Hets not only provides syntax checking and static analysis of CASL specifications, but also an interface to various interactive and automated theorem provers. The central path of Figure <ref type="figure" target="#fig_0">1</ref> illustrates the addition of Casl to the graphical editing tool as a semantic base. Within Hets, an automatic semantic preserving translation from OWL into Casl has been implemented <ref type="bibr" target="#b12">[13]</ref>. The motivation for using OWL and translating to Casl, rather than directly using Casl, is that OWL provides constructs suited towards capturing domain knowledge in a UML style which can be easily adopted by most domain engineers. Using the resulting Casl domain knowledge specification, the graphical editing tool can be extended to produce Casl specifications for domain models created using the editor.</p><p>Verification: Finally, verification of the Casl specifications produced by the graphical editing tool is possible using the Hets framework. At this point, Figure <ref type="figure" target="#fig_0">1</ref> highlights the advantage of adding domain knowledge to the verification process. That is, there are two possibilities for verification. The first -illustrated by the solid lined box -is simply verifying the given problem without any domain specific theorems on the domain knowledge level. The second -illustrated by the dotted lined box -includes domain specific theorems that have been proven on the domain knowledge level. These theorems provide a potential gain for automated verification:</p><p>(1) They have the potential to remove false counter examples like those experienced in <ref type="bibr" target="#b9">[10]</ref>;</p><p>(2) They allow general domain specific theorems to be added, these in turn improve the speed of the proof process for particular domain specific proof goals.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">A First Example: Domain Knowledge Helps</head><p>To illustrate the advantages that can be gained through adding domain knowledge to the verification process, we study a common installation within the railway domain. Figure <ref type="figure" target="#fig_1">2</ref> shows part of a standard "double lead" junction. Trains can travel from location A to locations E or F , or from locations E or F to location A. The path along which a train will travel is determined by the position of point P . Logically, the junction is segmented into routes. Here there are four possible routes. Route R1 can be set, i.e. trains can travel from A to E when the point is in "reverse" position and there are no trains occupying the point and track segments lu1 and lu2. Route R2 can be set, i.e. trains can travel from A to F when the point is set in "normal" position and there are no trains occupying the point and track segments lu1 and lu3. In a similar manner, routes R3 and R4 can be set to allow trains to travel from E to A and F to A respectively.  As such a junction is a common installation within the railway domain, it would naturally form a concept or class within an OWL specification for the railway domain, e.g see <ref type="bibr" target="#b0">[1]</ref>. Within Casl, it makes sense to capture a junction with parametrisation. Part of the parametrised Casl specification for the junction is given in Figure <ref type="figure" target="#fig_2">3</ref>.</p><p>The junction specification illustrates the use of domain specific theorems. These theorems capture domain knowledge about the junction. Thm1 expresses that there always exists a time in the future where route R1 is enabled, and similarly Thm2, Thm3 and Thm4 expresses this for routes R2, R3 and R4 respectively. Here, due to space constraints, we omit the behaviour of trains and points and assume they behave as expected. These theorems are provable using the Hets toolset in a few seconds. <ref type="foot" target="#foot_1">2</ref> Via instantiation of the junction specification, we can now specify the example train station in Figure <ref type="figure" target="#fig_3">4</ref>. This station consists of six junctions in total. Over this new track plan for a station, we would like to reason about the enabling of routes allowing trains to enter or leave the station. For example we may wish to know that there always exists a time in the future when a train can leave Platform 1 and travel to X. This condition is dependent on the setting of several routes across junctions. This property can be expressed as:</p><formula xml:id="formula_0">∀ n : Time • ∃ t1, t2, t3 : Time • n &lt; t1 ∧ t1 &lt; t2 ∧ t2 &lt; t3 ∧ route3 1 enabledAt t1 ∧ route4 3 enabledAt t2 ∧ route2 5 enabledAt t3</formula><p>Referring to Figure <ref type="figure" target="#fig_0">1</ref>, if we try to verify such a condition without adding domain specific theorems, i.e. Thm1 through to Thm4, to the verification process, then verification with Hets is not possible. <ref type="foot" target="#foot_2">3</ref> When adding the domain specific theorems into the process, the verification is possible within ten seconds. This illustrates that exploiting domain specific knowledge of particular domain constructs can aid the verification process considerably.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5">Summary and Future Work</head><p>In this paper, we have briefly introduced a first attempt at a design methodology for creating domain specific languages focused towards verification. We have also illustrated how the capture and exploitation of domain specific knowledge obtained via this design methodology can provide gains within the automatic verification process. As future work, we wish to explore further examples of how domain specific knowledge can be advantageous. The result will be a classification of types of knowledge and the benefits they can bring to the verification process. We also wish to explore providing useful feedback to domain engineers when a prove attempt is not successful. That is, we wish to explore the production of counter-examples on the level of the graphical editing tool.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Figure 1 :</head><label>1</label><figDesc>Figure 1: A first design methodology for creation of DSLs focusing on verification.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Figure 2 :</head><label>2</label><figDesc>Figure 2: A typical railway junction.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head>Figure 3 :</head><label>3</label><figDesc>Figure 3: A parametrised specification of a junction in Casl.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_3"><head>Figure 4 :</head><label>4</label><figDesc>Figure 4: A track plan for an example station.</figDesc></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="1" xml:id="foot_0">We are currently implementing this XML based translation.</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="2" xml:id="foot_1">Verification times are only rough guidelines and not exact scientific benchmarks.</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="3" xml:id="foot_2">Within fifteen minutes.</note>
		</body>
		<back>

			<div type="acknowledgement">
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Acknowledgements: We would like to thank our industrial partner Invensys Rail for their useful co-operation throughout this work. A special thanks also goes to Erwin R. Catesbeiana (Jr.) for his reflections and comments on our design methodology.</p></div>
			</div>

			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<monogr>
		<title level="m">Invensys Rail Data Model -Version 1A</title>
				<imprint>
			<date type="published" when="2010">2010</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<monogr>
		<title/>
		<author>
			<persName><forename type="first">Webpage</forename><surname>Metaedit+</surname></persName>
		</author>
		<ptr target="http://www.metacase.com/" />
		<imprint>
			<date type="published" when="2011-04">April 2011</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<monogr>
		<title level="m" type="main">Web ontology language: Owl. Handbook on ontologies</title>
		<author>
			<persName><forename type="first">G</forename><surname>Antoniou</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Harmelen</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2009">2009</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<monogr>
		<title level="m" type="main">Domain Engineering -Technology Management</title>
		<author>
			<persName><forename type="first">D</forename><surname>Bjørner</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2009">2009</date>
			<publisher>JAIST Press</publisher>
		</imprint>
		<respStmt>
			<orgName>Research and Engineering</orgName>
		</respStmt>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">Validation and verification of METEOR safety software</title>
		<author>
			<persName><forename type="first">J</forename><surname>Boulanger</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Gallardo</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Computers in Railways VII</title>
				<editor>
			<persName><forename type="first">J</forename><surname>Allen</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">R</forename><forename type="middle">J</forename><surname>Hill</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">C</forename><forename type="middle">A</forename><surname>Brebbia</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">G</forename><surname>Sciutto</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">S</forename><surname>Sone</surname></persName>
		</editor>
		<imprint>
			<publisher>WIT Press</publisher>
			<date type="published" when="2000">2000</date>
			<biblScope unit="volume">7</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">Verification of interlockings: from control tables to ladder logic diagrams</title>
		<author>
			<persName><forename type="first">W</forename><surname>Fokkink</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Hollingshead</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">FMICS&apos;98, Formal Methods for Industrial Critical Systems</title>
				<editor>
			<persName><forename type="first">J</forename><surname>Groote</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">S</forename><surname>Luttik</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">J</forename><forename type="middle">V</forename><surname>Wamel</surname></persName>
		</editor>
		<imprint>
			<publisher>CWI</publisher>
			<date type="published" when="1998">1998</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<monogr>
		<title level="m" type="main">Domain Specific Languages</title>
		<author>
			<persName><forename type="first">M</forename><surname>Fowler</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><surname>Parsons</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2010">2010</date>
			<publisher>Addison-Wesley</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<monogr>
		<title level="m" type="main">Eclipse Modeling Project: A Domain-Specific Language (DSL) Toolkit</title>
		<author>
			<persName><forename type="first">R</forename><forename type="middle">C</forename><surname>Gronback</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2009">2009</date>
			<publisher>Addison-Wesley Professional</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">Towards formal testing of jet engine rolls-royce BR725</title>
		<author>
			<persName><forename type="first">G</forename><surname>Holland</surname></persName>
		</author>
		<author>
			<persName><forename type="first">T</forename><surname>Kahsai</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Roggenbach</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B.-H</forename><surname>Schlingloff</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. 18th Int. Conf on Concurrency, Specification and Programming</title>
				<editor>
			<persName><forename type="first">L</forename><surname>Czaja</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">M</forename><surname>Szczuka</surname></persName>
		</editor>
		<meeting>18th Int. Conf on Concurrency, Specification and Programming<address><addrLine>Krakow, Poland</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2009">2009</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<monogr>
		<title level="m" type="main">SAT-based Model Checking and its applications to Train Control Software</title>
		<author>
			<persName><forename type="first">P</forename><surname>James</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2010">2010</date>
		</imprint>
		<respStmt>
			<orgName>Swansea University</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">Master&apos;s thesis</note>
</biblStruct>

<biblStruct xml:id="b10">
	<monogr>
		<title level="m" type="main">SAT-based Model Checking of Train Control Systems</title>
		<author>
			<persName><forename type="first">P</forename><surname>James</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Roggenbach</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2009">2009</date>
			<biblScope unit="page" from="5" to="2010" />
		</imprint>
		<respStmt>
			<orgName>University of Udine</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">CALCO-jnr&apos;09</note>
</biblStruct>

<biblStruct xml:id="b11">
	<analytic>
		<title level="a" type="main">EASY Meta-programming with Rascal</title>
		<author>
			<persName><forename type="first">P</forename><surname>Klint</surname></persName>
		</author>
		<author>
			<persName><forename type="first">T</forename><surname>Van Der</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Storm</surname></persName>
		</author>
		<author>
			<persName><surname>Vinju</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Generative and Transformational Techniques in Software Engineering III</title>
				<imprint>
			<date type="published" when="2011">2011</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<analytic>
		<title level="a" type="main">The OWL in the CASL -Designing Ontologies Across Logics</title>
		<author>
			<persName><forename type="first">O</forename><surname>Kutz</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Lücke</surname></persName>
		</author>
		<author>
			<persName><forename type="first">T</forename><surname>Mossakowski</surname></persName>
		</author>
		<author>
			<persName><forename type="first">I</forename><surname>Normann</surname></persName>
		</author>
		<ptr target="WS.org" />
	</analytic>
	<monogr>
		<title level="m">OWLED. CEUR</title>
				<editor>
			<persName><forename type="first">C</forename><surname>Dolbear</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">A</forename><surname>Ruttenberg</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">U</forename><surname>Sattler</surname></persName>
		</editor>
		<imprint>
			<date type="published" when="2008">2008</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b13">
	<analytic>
		<title level="a" type="main">Relating CASL with other specification languages: the institution level</title>
		<author>
			<persName><forename type="first">T</forename><surname>Mossakowski</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Theoretical Computer Science</title>
		<imprint>
			<biblScope unit="volume">286</biblScope>
			<biblScope unit="issue">2</biblScope>
			<date type="published" when="2002">2002</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b14">
	<monogr>
		<title level="m" type="main">The Heterogeneous Tool Set, Hets. Tools and Algorithms for the Construction and Analysis of Systems</title>
		<author>
			<persName><forename type="first">T</forename><surname>Mossakowski</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><surname>Maeder</surname></persName>
		</author>
		<author>
			<persName><forename type="first">K</forename><surname>Lüttich</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2007">2007</date>
			<biblScope unit="volume">4424</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b15">
	<monogr>
		<title level="m" type="main">CASL Reference Manual</title>
		<author>
			<persName><forename type="first">P</forename><forename type="middle">D</forename><surname>Mosses</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2004">2960. 2004</date>
			<publisher>Springer</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b16">
	<monogr>
		<title level="m" type="main">Owl web ontology language semantics and abstract syntax</title>
		<author>
			<persName><forename type="first">P</forename><forename type="middle">F</forename><surname>Patel-Schneider</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Hayes</surname></persName>
		</author>
		<author>
			<persName><forename type="first">I</forename><surname>Horrocks</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2004">2004</date>
			<publisher>W3C</publisher>
		</imprint>
	</monogr>
	<note type="report_type">Technical report</note>
</biblStruct>

<biblStruct xml:id="b17">
	<analytic>
		<title level="a" type="main">Automated verification for train control systems</title>
		<author>
			<persName><forename type="first">J</forename><surname>Peleska</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Große</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">E</forename><surname>Haxthausen</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><surname>Drechsler</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of Formal Methods for Automation and Safety in Railway and Automotive Systems</title>
				<editor>
			<persName><forename type="first">E</forename><surname>Schnieder</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">G</forename><surname>Tarnai</surname></persName>
		</editor>
		<meeting>Formal Methods for Automation and Safety in Railway and Automotive Systems</meeting>
		<imprint>
			<date type="published" when="2004">2004</date>
		</imprint>
		<respStmt>
			<orgName>Technical University of Braunschweig</orgName>
		</respStmt>
	</monogr>
</biblStruct>

<biblStruct xml:id="b18">
	<analytic>
		<title level="a" type="main">A formal specification of an automatic train protection system</title>
		<author>
			<persName><forename type="first">A</forename><surname>Simpson</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">FME &apos;94: Proceedings of the Second International Symposium of Formal Methods Europe on Industrial Benefit of Formal Methods</title>
				<editor>
			<persName><forename type="first">G</forename><surname>Goos</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">J</forename><surname>Hartmanis</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">J</forename><forename type="middle">V</forename><surname>Leeuwen</surname></persName>
		</editor>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="1994">1994</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b19">
	<analytic>
		<title level="a" type="main">The RAISE specification language</title>
	</analytic>
	<monogr>
		<title level="m">The RAISE Language Group</title>
				<imprint>
			<publisher>Prentice Hall</publisher>
			<date type="published" when="1993">1993</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b20">
	<analytic>
		<title level="a" type="main">The ASF+SDF Meta-environment: A Component-Based Language Development Environment</title>
		<author>
			<persName><forename type="first">M</forename><surname>Van Den</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Brand</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Van Deursen</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><forename type="middle">De</forename><surname>Heering</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Jong</surname></persName>
		</author>
		<author>
			<persName><forename type="first">T</forename><surname>De Jonge</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Kuipers</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Klint</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Moonen</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Olivier</surname></persName>
		</author>
		<author>
			<persName><surname>Scheerder</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">LNCS</title>
		<imprint>
			<date type="published" when="2001">2027. 2001</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b21">
	<analytic>
		<title level="a" type="main">Model checking railway interlocking systems</title>
		<author>
			<persName><forename type="first">K</forename><surname>Winter</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Australian Computer Science Communications</title>
		<imprint>
			<biblScope unit="volume">24</biblScope>
			<biblScope unit="issue">1</biblScope>
			<date type="published" when="2002">2002</date>
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
