<?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">Design, Modelling and Analysis of a Workflow Reconfiguration</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Manuel</forename><surname>Mazzara</surname></persName>
							<email>manuel.mazzara@ncl.ac.uk</email>
							<affiliation key="aff0">
								<orgName type="institution">Newcastle University</orgName>
								<address>
									<settlement>Newcastle upon Tyne</settlement>
									<country key="GB">UK</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Faisal</forename><surname>Abouzaid</surname></persName>
							<email>m.abouzaid@polymtl.ca</email>
							<affiliation key="aff1">
								<orgName type="institution">École Polytechnique de Montréal</orgName>
								<address>
									<country key="CA">Canada</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Nicola</forename><surname>Dragoni</surname></persName>
							<affiliation key="aff2">
								<orgName type="institution">Technical University of Denmark (DTU)</orgName>
								<address>
									<settlement>Copenhagen</settlement>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Anirban</forename><surname>Bhattacharyya</surname></persName>
							<email>anirban.bhattacharyya@ncl.ac.uk</email>
							<affiliation key="aff0">
								<orgName type="institution">Newcastle University</orgName>
								<address>
									<settlement>Newcastle upon Tyne</settlement>
									<country key="GB">UK</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">Design, Modelling and Analysis of a Workflow Reconfiguration</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">D4564E4B15228C2E24E95B32DCE91A2F</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T00:45+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 describes a case study involving the reconfiguration of an office workflow. We state the requirements on a system implementing the workflow and its reconfiguration, and describe the system's design in BPMN. We then use an asynchronous π-calculus and W ebπ∞ to model the design and to verify whether or not it will meet the requirements. In the process, we evaluate the formalisms for their suitability for the modelling and analysis of dynamic reconfiguration of dependable systems.</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>Competition drives technological development, and the development of dependable systems is no exception. Thus, modern dependable systems are required to be more flexible, available and dependable than their predecessors, and dynamic reconfiguration is one way of achieving these requirements.</p><p>A significant amount of research has been performed on hardware reconfiguration (see <ref type="bibr" target="#b4">[5]</ref> and <ref type="bibr" target="#b8">[9]</ref>), but little has been done for reconfiguration of services, especially regarding computational models, formalisms and methods appropriate to the service domain. Furthermore, much of the current research assumes that reconfiguration can be instantaneous, or that the environment can wait during reconfiguration for a service to become available (see <ref type="bibr" target="#b13">[14]</ref> and <ref type="bibr" target="#b12">[13]</ref>). These assumptions are unrealistic in the service domain. For example, instantaneous mode change in a distributed system is generally not possible, because the system usually has no well-defined global state at a specific instant (due to significant communication delays). Also, waiting for the reconfiguration to complete is not acceptable if (as a result) the environment becomes dangerously unstable or the service provider loses revenue by the environment aborting the service request.</p><p>These observations lead to the conclusion that further research is required on dynamic reconfiguration of dependable services, and especially on its formal foundations, modelling and verification. In a preliminary paper <ref type="bibr" target="#b15">[16]</ref>, we examined a number of well-known formalisms for their suitability for reconfigurable dependable systems. In this paper, we focus on one of the formalisms (W ebπ ∞ ) and compare it to a π-calculus in order to perform a deeper analysis than was possible in <ref type="bibr" target="#b15">[16]</ref>. We use a more complex case study involving the reconfiguration of an office workflow for order processing, define the requirements on a system implementing the workflow and its reconfiguration, and describe the design of a system in BPMN (see section 2). We then use an asynchronous π-calculus with summation (in section 3) and W ebπ ∞ <ref type="bibr" target="#b17">[18]</ref> (in section 4) to model the design and to verify whether or not the design will meet the reconfiguration requirements. We chose process algebras because they are designed to model interaction between concurrent activities. An asynchronous π-calculus was selected because π-calculi are designed to model link reconfiguration, and asynchrony is suitable for modelling communication in distributed systems. W ebπ ∞ was selected because it is designed to model composition of web services.</p><p>Thus, the contribution of this paper is to identify strengths and weaknesses of an asynchronous π-calculus with summation and W ebπ ∞ for modelling dynamic reconfiguration and verifying requirements (discussed in section 5). This evaluation may be useful to system designers intending to use formalisms to design dynamically reconfigurable systems, and also to researchers intending to design better formalisms for the design of dynamically reconfigurable systems.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">Office Workflow: Requirements and Design</head><p>This case study describes dynamic reconfiguration of an office workflow for order processing that is commonly found in large and medium-sized organizations <ref type="bibr" target="#b6">[7]</ref>. These workflows typically handle large numbers of orders. Furthermore, the organizational environment of a workflow can change in structure, procedures, policies and legal obligations in a manner unforseen by the original designers of the workflow. Therefore, it is necessary to support the unplanned change of these workflows. Furthermore, the state of an order in the old configuration may not correspond to any state of the order in the new configuration. These factors, taken in combination, imply that instantaneous reconfiguration of a workflow is not always possible; neither is it practical to delay or abort large numbers of orders because the workflow is being reconfigured. The only other possibility is to allow overlapping modes for the workflow during its reconfiguration.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.1">Requirements</head><p>A given organization handles its orders from existing customers using a number of activities arranged according to the following procedure:</p><p>1. Order Receipt: an order for a product is received from a customer. The order includes customer identity and product identity information. 2. Evaluation: the product identity is used to perform an inventory check on the availability of the product. The customer identity is used to perform a credit check on the customer using an external service. If both the checks are positive, the order is accepted for processing; otherwise the order is rejected.</p><p>3. Rejection: if the order is rejected, a notification of rejection is sent to the customer and the workflow terminates. 4. If the order is to be processed, the following two activities are performed concurrently: (a) Billing: the customer is billed for the total cost of the goods ordered plus shipping costs. (b) Shipping: the goods are shipped to the customer. 5. Archiving: the order is archived for future reference. 6. Confirmation: a notification of successful completion of the order is sent to the customer.</p><p>In addition, for any given order, Order Receipt must precede Evaluation, which must precede Rejection or Billing and Shipping.</p><p>After some time, managers notice that lack of synchronisation between the Billing and Shipping activities is causing delays between the receipt of bills and the receipt of goods that are unacceptable to customers. Therefore, the managers decide to change the order processing procedure, so that Billing is performed before Shipping (instead of performing the two activities concurrently). During the transition interval from one procedure to the other, the following requirements must be met:</p><p>1. The result of the Evaluation activity for any given order should not be affected by the change in procedure. 2. All accepted orders must be billed and shipped exactly once, then archived, then confirmed. 3. All orders accepted after the change in procedure must be processed according to the new procedure.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.2">Design</head><p>We designed the system implementing the office workflow using the Business Process Modeling Notation (BPMN) <ref type="bibr" target="#b3">[4]</ref>. We chose BPMN because it is a widely used graphical tool for designing business processes. In fact, BPMN is a standard for business process modelling, and is maintained by the Object Management Group (see http://www.omg.org/). The system is designed as a collection of eight pools: Office Workflow, Order Generator, Credit Check, Inventory Check, Reconf. Region, Bill&amp;Ship1, Bill&amp;Ship2 and Archive. The different pools represent different functional entities, and each pool can be implemented as a separate concurrent task (see Figure <ref type="figure" target="#fig_0">1</ref>). Office Workflow coordinates the entire workflow: it receives a request from a customer, and makes a synchronous call to Order Generator to create an order. It then calls Credit Check (with the order) to check the creditworthiness of the customer, and tests the returned value using an Exclusive Data-Based Gateway. If the test is positive, Office Workflow calls Inventory Check (with the order) to check the availability of the ordered item, and tests the returned value. If either of the two tests is negative, the customer is notified of the rejected order Reconf. Region calls Bill&amp;Ship1 by default: it makes an asynchronous call to the Main pool within Bill&amp;Ship1, which uses a Parallel Gateway to call Bill and Ship concurrently and merge their respective results, and then returns these results to Office Workflow. The Office Workflow then calls Archive to store the order, then notifies the customer of the successful completion of the order, and then terminates the workflow. However, if Reconf. Region receives a change configuration message, it calls the Main pool within Bill&amp;Ship2 instead, which makes sequential a call to Bill and then to Ship, and then returns the results to Office Workflow.</p><p>Notice that for the sake of simplicity, we assume neither Bill nor Ship produces a negative result. Furthermore, the Bill and Ship pools are identical in both configurations, which suggests their code is replicated (rather than shared) in the two configurations. Finally, we assume the reconfiguration is planned rather than unplanned.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">Asynchronous π-Calculus</head><p>The asynchronous π-calculus ([10], <ref type="bibr" target="#b2">[3]</ref>) is a subset of Milner's π-calculus <ref type="bibr" target="#b19">[20]</ref>, and it is known to be more suitable for distributed implementation. It is considered a rich paradigm for asynchronous communication, although it is not as expressive as Milner's π-calculus in representing mixed-choice constructs, such as a.P +b.P (see <ref type="bibr" target="#b21">[22]</ref>).</p><p>We recall the (monadic) asynchronous π-calculus. Let N be a set of names (e.g. a, b, c, ...) and V be a set of variables (e.g. x, y, z, ...). The set of the asynchronous π-calculus processes is generated by the following grammar:</p><formula xml:id="formula_0">P ::= xz G P |P [a = b]P (νx)P A(x 1 , ..., x n )</formula><p>where guards G are defined as follows:</p><p>G ::= 0 x(y).P τ.P G + G Intuitively, an output xz represents a message z tagged with a name x indicating that it can be received (or consumed) by an input process x(y).P which behaves as P {z/y} upon receiving z. Furthermore, x(y).P binds the name y in P and the restriction (νx)P declares a name x private to P and thus binds x. Outputs are non-blocking.</p><p>The parallel composition P |Q means P and Q running in parallel. G + G is the non-deterministic choice that is restricted to τ and input prefixes.</p><p>[a = b]P behaves like P if a and b are identical. A(y 1 , ..., y n ) is an identifier (also call, or invocation) of arity n. It represents the instantiation of a defined agent. We assume that every such identifier has a unique, possibly recursive, definition A(x 1 , ..., x n ) def = P where the x i s are pairwise distinct, and the intuition is that A(y 1 , ..., y n ) behaves like P with each y i replacing x i .</p><p>Furthermore, for each A(x 1 , ..., x n ) def = P we require: f n(P ) ⊆ {x 1 , ..., x n }, where f n(P ) stands for the set of free names in P , and bn(P ) for the set of bound names in P . The input prefix and the ν operator bind the names. For example, in a process x(y).P , the name y is bound. In (νx)P , x is considered to be bound. Every other occurrences of a name like x in x(y).P and x, y in x y .P are free.</p><p>Due to lack of space we omit to give details on structural congruence and operational semantics for the asynchronous π-calculus. They can be found in <ref type="bibr" target="#b0">[1]</ref> for the version of the calculus we use in this paper.</p><p>The Model in Asynchronous π-Calculus The model in asynchronous πcalculus needs to keep the synchronization between actions in sequence coherent with the workflow definition. So sequence is implemented by using parallel composition with prefix and postfix on the same channel. Channel names are not restricted since the full system is not described here and has to be put in parallel with the detailed implementation of the environment process described (that will be omitted here).</p><p>The entire model is expressed in asynchronous π-calculus as follows:</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Entire Model</head><p>Let params = {customer, item, Archive, ArchiveReply, Bill, BillReply, BillShip, Conf irm, CreditCheck, CreditOk, CreditReject, InventoryCheck, InventoryOk, InventoryReject, OrderGenerator, OrderGeneratorReply, OrderReceipt, Reject, Ship, ShipReply, reco, recn}</p><p>We can define the W orkf low process as follows:</p><p>W orkf low(params) (ν order) (OrderReceipt(customer, item).OrderGenerator customer, item | OrderGeneratorReply(order).CreditCheck customer | (creditOk().InventoryCheck item + CreditReject().Reject order) | (InventoryOk().BillShip + InventoryReject().Reject order) | reco().BillShip().(Bill customer, item, order | Ship customer, item, order) | BillReply(order).ShipReply(order).Archive order +recn().BillShip().(Bill customer, item, order | BillReply(order).Ship customer, item, order) | ShipReply(order).Archive order | ArchiveReply(order).Conf irm order) | W orkf low(params)</p><p>In the model, the old region is identified as follows: reco().BillShip().(Bill customer, item, order | Ship customer, item, order) | BillReply(order).ShipReply(order).Archive order And the new region is: recn().BillShip().(Bill customer, item, order | BillReply(order).Ship customer, item, order) | ShipReply(order).Archive order</p><p>In the asynchronous π-calculus, two outputs cannot be in sequence. In order to impose ordering between Bill and Ship, in the new region, it is necessary to put a guard on Ship, which requires enlarging the boundary of the old region to include the processes in the environment of the workflow that synchronize with Bill and Ship. We did not model these processes because they are outside the system being designed, but the limitations of the asynchronous π-calculus imply that we must be able to access the logic of external services for which we know only the interfaces. For a more detailed description of this problem, please see <ref type="bibr" target="#b11">[12]</ref>.</p><p>The entire model represents a specific instance of the workflow that spawn concurrently another instance with fresh customer and item which here are assumed to be fresh names but in reality will be user entered (but it is not relevant to our purposes). We have to assume the existence of a "higher level" process (at the level of the BPEL engine) that activates the entire workflow and bounds the names that are free in the above π-calculus process. In this model channels creditOK, creditReject, InventoryOK and InventoryReject are used to receive the result of the credit check and inventory check, respectively. The old/new region is externally triggered using specific channels rec o and rec n chosen according to the value x received on channel region:</p><formula xml:id="formula_1">(ν x)W orkf low(param) | region(x).([x = new]rec n | [x = old]rec o )</formula><p>In section 4 we show a more efficient solution using Webπ ∞ .</p><p>Analysis in π-logic Logics have long been used to reason about complex systems, because they provide abstract specifications that can be used to describe system properties of concurrent and distributed systems. Verification frameworks can support checking of functional properties of such systems by abstracting away from the computational contexts in which they are operating.</p><p>In the context of π-calculi, one can use the π-logic with the HAL Toolkit model-checker <ref type="bibr" target="#b7">[8]</ref>. The π-logic has been introduced in <ref type="bibr" target="#b7">[8]</ref> to specify the behavior of systems in a formal and unambiguous manner by expressing temporal properties of π-processes.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Syntax of the π-logic</head><p>The logic integrates modalities defined by Milner ( <ref type="bibr" target="#b20">[21]</ref>) with EF φ and EF {χ}φ modalities on possible future. The π-logic syntax is:</p><formula xml:id="formula_2">φ ::= true | ∼ φ | φ ∧ φ | EX{µ}φ | EF φ | EF {χ}φ</formula><p>where µ is a π-calculus action and χ could be µ, ∼ µ, or i∈I µ i and where I is a finite set.</p><p>Semantics of π-formulae is given below: </p><formula xml:id="formula_3">• P |=</formula><formula xml:id="formula_4">• χ = µ for all 1 ≤ j ≤ n, ν j = µ or ν j = τ ; • χ =∼ µ for all 1 ≤ j ≤ n, ν j = µ or ν j = τ ; • χ = i∈I µ i : for all 1 ≤ j ≤ n, ν j = µ i for some i ∈ I or ν j = τ .</formula><p>The meaning of EF {χ}φ is that the truth of φ must be preceded by the occurrence of a sequence of actions χ. Some useful dual operators are defined as usual:</p><formula xml:id="formula_5">f alse, φ ∨ φ, AX{µ}φ (∼ EX{µ} ∼ φ), &lt; µ &gt; φ (weak next), [µ]φ (Dual of weak next), AGφ (AG{χ}) (always).</formula></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Properties of the dynamic reconfiguration model</head><p>We need to verify that during the reconfiguration interval the requirements given in section 2.1 hold. For this purpose, we need to express the requirements formally, if possible, using the π-logic.</p><p>The result of the Evaluation activity for any given order should not be affected by the change in procedure. The following formula means whatever the chosen path (old or new region), an order will be billed, shipped and archived or refused: AG{EF {OrderReceipt()}true} AG{ `EF {Bill customer, item, order}true ∧ EF {Ship customer, item, order}true∧ EF {Archive order}true ´∨ EF {Reject }true} All accepted orders must be billed and shipped exactly once, then archived, then confirmed. The following formula means that after an order is billed and shipped, it is archived and confirmed, and cannot be billed nor shipped again: AG{EF {BillShip()}true} AG{EF {Bill customer, item, order}true ∧ EF {Ship customer, item, order}true∧ EF {Archive order}true} ∧ EF {Conf irm order}true} AG{{Bill customer, item, order}f alse ∧ {Ship customer, item, order}f alse} All orders accepted after the change in procedure must be processed according to the new procedure We can express in the π-logic the following requirement: "after a reception on the channel rec n , no other reception on channel rec 0 will be accepted". This meets the desired requirement since it is obvious from the model that, if a signal is received on channel rec n , the order will be processed according to the new procedure.</p><p>AG{{recn()}true AG{rec0()}f alse} However, since the choice between the old procedure and the new one is nondeterministic, this formula will not be true, although it is an essential requirement for the model. This result illustrates the difficulty of the asynchronous π-calculus to model the dynamic reconfiguration properly. A first attempt to answer this problem is presented in the next section.</p><p>4 Webπ ∞ Webπ ∞ is a conservative extension of the π-calculus developed for modelling and analysis of Web services and Service Oriented Architectures. The basic theory has been developed in <ref type="bibr" target="#b17">[18]</ref> and <ref type="bibr" target="#b14">[15]</ref>, whilst its applicability has been shown in other work: <ref type="bibr" target="#b11">[12]</ref> gives a BPEL semantics in term of Webπ ∞ , <ref type="bibr" target="#b5">[6]</ref> clarifies some aspects of the Recovery Framework of BPEL, and <ref type="bibr" target="#b16">[17]</ref> exploits a web transaction case study (a toy example has also been discussed in <ref type="bibr" target="#b15">[16]</ref>).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Syntax and Semantics</head><p>The syntax of webπ ∞ processes relies on a countable set of names, ranged over by x, y, z, u, • • • . Tuples of names are written u. We intend i ∈ I with I a finite non-empty set of indexes. It is worth noting that the syntax of webπ ∞ simply augments the asynchronous π-calculus with a workunit process. A workunit |P ; Q| x behaves as the body P until an abort x is received, and then it behaves as the event handler Q.</p><p>We give the semantics of webπ ∞ in two steps, following the approach of Milner <ref type="bibr" target="#b18">[19]</ref>, separating the laws that govern the static relations between processes from the laws that rule their interactions. The static relations between processes are governed by the structural congruence ≡, the least congruence satisfying the Abelian monoid laws for parallel and summation (associativity, commutativity and 0 as identity) and closed with respect to α-renaming and the axioms shown in table <ref type="table" target="#tab_1">1</ref>.</p><p>The scope laws are standard while novelties regard workunit and floating laws. The law |0 ; Q| x ≡ 0 defines committed workunit, namely workunit with 0 as body. These ones, being committed, are equivalent to 0 and, therefore, cannot fail anymore.  Rules (com) and (rep) are standard in process calculi and model input-output interaction and lazy replication. Rule (fail) models workunit failures: when a unit abort (a message on a unit name) is emitted, the corresponding body is terminated and the handler activated. On the contrary, aborts are not possible if the transaction is already terminated (namely every thread in the body has completed its own work), for this reason we close the workunit restricting its name.</p><formula xml:id="formula_6">(u)0 ≡ 0, (u)(v)P ≡ (v)(u)P P | (u)Q ≡ (u)(P | Q) , if u ∈ fn(P ) |(z)P ; Q| x ≡ (z) |P ; Q| x , if z ∈ {x} ∪ fn(Q) Workunit laws |0 ; Q| x ≡ 0 | |P ; Q| y | R ; R | x ≡ |P ; Q| y | |R ; R | x |<label>(</label></formula><p>The model in Webπ ∞ For the modelling purposes of this work, the idea of workunit and event handler turn out to be particularly useful. Webπ ∞ uses the mechanism of workunit to bound the identified regions, and event raising is exploited to operate the non immediate change (reconfiguration). The model can be expressed as follows (as a shortcut we will use here process invocation):</p><p>W orkf low(customer, item) (ν order) OrderReceipt(customer, item).OrderGenerator customer, item | OrderGeneratorReply(order).CreditCheck customer | (CreditCheckReplyt(order).InventoryCheck item +CreditCheckReply f (order).Reject order) | (InventoryCheckReplyt(order).BillShip +InventoryCheckReply f (order).Reject order) | |BillShip().(Bill customer, item, order | Ship customer, item, order | (ν customer)(ν item) W orkf low(customer, item)) ; (ν customer)(ν item) W orkf lown(customer, item)| rec | BillReply(order).ShipReply(order).Archive order | ArchiveReply(order).Conf irm order</p><p>Webπ ∞ shows here a subtle feature which is important for modelling reconfigurable systems. Since the floating laws of structural congruence allow the asynchronous outputs in a workunit to freely escape, once the region to reconfigure has been entered and the BillShip has been triggered, Bill customer, item, order and Ship customer, item, order will not be killed by any incoming rec signal. This means that, once the region has been entered by an order, that order will go through without being interrupted by reconfiguration events and the old order will be processed according to the old procedure, not the new one. Future orders will find instead only the new procedure W orkf low n waiting for orders:</p><p>W orkf lown(customer, item) (ν order) OrderReceipt(customer, item).OrderGenerator customer, item | OrderGeneratorReply(order).CreditCheck customer | (CreditCheckReplyt(order).InventoryCheck item + CreditCheckReply f (order).Reject order) | (InventoryCheckReplyt(order).BillShip + InventoryCheckReply f (order).Reject order) | BillShip().(Bill customer, item, order | BillReply(order).Ship customer, item, order) | ShipReply(order).Archive order | ArchiveReply(order).Conf irm order | (ν customer)(ν item) W orkf lown(customer, item)</p><p>As in the π-calculus model, we have to assume the existence of a top level process activating the entire workflow and bounding all the names appearing free in the above π-calculus process. The change in procedure will be activated when the channel t is triggered.</p><p>(ν customer)(ν item)(ν rec) W orkf low(customer, item) | t().rec This process is also responsible for triggering the reconfiguration.</p><p>Analysis in Webπ ∞ Analysis in Webπ ∞ is intended as equational reasoning. At the moment, one severe weakness of Webπ ∞ is its lack of tool support, i.e. automatic system verification. However, it is clearly possible to encode Webπ ∞ into the π-calculus, being the only technical complication the encoding of the workunit and its asynchronous interrupt. Once the compilation into the π-calculus has been done, we can proceed using HAL. From one side, Webπ ∞ simplifies the modelling of dependable systems expressing with its workunit the recovery behavior. On the other side, it makes the verification more difficult. Luckily, there is an optimal solution using Webπ ∞ as modelling language and the π-calculus as intermediate language, i.e. a verification bytecode. We can then offer a practical modelling suite to the designer and still use the tool support for the π-calculus. At the moment our research has not gone so far, so we will just discuss the three requirements here. We will analyse the requirements in terms of equational reasoning (see <ref type="bibr" target="#b17">[18]</ref> and <ref type="bibr" target="#b14">[15]</ref>). The case study of this paper is interesting at showing both the modelling power of Webπ ∞ and the weaknesses of its reasoning system.</p><p>The result of the Evaluation activity for any given order should not be affected by the change in procedure. The acceptability of an order (Evaluation activity) is computed outside the region to be reconfigured, and there is no interaction between Evaluation and the region. That means that the Evaluation in the old procedure workf low is exactly the same as in the new procedure workf low n , i.e. the checks are performed in the same exact order. We can formally express it, in term of equational reasoning, stating that the Evaluation activity in the old procedure workf low is bisimilar to the Evaluation activity in the new procedure workf low n which is trivially true.</p><p>All accepted orders must be billed and shipped exactly once, then archived, then confirmed. The presence of a workunit does not affect how the order itself is processed. The workflow of actions described by the requirement can be formally expressed as follows:</p><p>(ν x)(ν y) (Bill customer, item, order | Ship customer, item, order | BillReply(order).x | ShipReply(order).y | x().y().Archive order | ArchiveReply(order).Conf irm order)</p><p>In plain words this process describes billing and shipping happening in any order but both before archiving and confirming. The channels x and y are there precisely to work as a joint for billing and shipping. If we want to express the requirements in term of equational reasoning, we can require that both the old and the new regions have to be bisimilar with the above process. However, this is too strict since the above process allows a set of traces which is a superset of both the set of traces of the old configuration and the new one. In this case similarity could be considered instead of bisimilarity.</p><p>All orders accepted after the change in procedure must be processed according to the new procedure To show this requirements has been implemented in the model semantic reasoning is not necessary, structural congruence is sufficient. The change in procedure is here modelled by triggering the rec channel and spawning the workunit handler. The handler then activates a new instance of the workflow based on the new procedure scheme which has been called workf low n . The floating laws of structural congruence of Webπ ∞ (definition 1) allow the asynchronous outputs in a workunit to freely escape the workunit itself. Thus, once the region to reconfigure has been already entered and the BillShip has been triggered, Bill customer, item, order and Ship customer, item, order will not be killed by any incoming rec signal. Thus, once the region has been entered by an order, that order will be not interrupted by reconfiguration events so that old order will be processed according to the old procedure and not the new one.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5">Discussion</head><p>In this section, we discuss three issues which arose during design and modelling: how the modelling influenced our design, how the π-calculus and Webπ ∞ compare with respect to modelling, and correctness criteria for verification of the workflow reconfiguration.</p><p>Modelling and Design Different formalisms have different biases on design because of their different perspectives. In one of the alternative designs we considered, the Bill and Ship pools were outside the reconfiguration region, so that their code was shared between the two configurations. Thus, the boundary of the reconfiguration region was different. We chose the design in section 2.2 because it is easier to model. It is the job of a formalist to model what the system designers produce, and ask them to change the design if it cannot be modelled or is unverifiable. Our experience with asynchronous π-calculi and Webπ ∞ suggested that extending the boundary of the reconfiguration region to include billing and shipping was a practical choice. This is because in the asynchronous π-calculus (and consequently in Webπ ∞ ), two outputs cannot be in sequence. So, in order to impose ordering between Bill and Ship, we had to enlarge the boundary of the reconfiguration region to include the processes in the environment of the workflow that synchronize with them. The negative side of this solution is that we have been forced to include in the region parts of the system that were not intended to be changed. Here the asynchronous π-calculus shows its weakness in terms of reconfiguring processes dynamically.</p><p>Comparison of π-calculus and Webπ ∞ This paper has shown the Webπ ∞ workunit as being able to offer a more efficient solution to the problem of modelling the case study. In particular, by means of the Webπ ∞ floating laws, reconfiguration activities can be better handled. However, at the moment, one weakness of Webπ ∞ is its lack of tool support, whereas the π-calculus is supported by verification tools (e.g. TyPiCal <ref type="bibr" target="#b10">[11]</ref> and HAL <ref type="bibr" target="#b7">[8]</ref>). Therefore, Webπ ∞ has to be intended as a a front end for modelling with the the π-calculus as the verification bytecode. As mentioned above, neither the asynchronous π-calculus nor Webπ ∞ can have two outputs in sequence, and this leads to the specific design choice.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Correctness Criteria</head><p>The standard notion of correctness used in process algebras is congruence based on bisimulation. However, our requirements are not all expressible as congruences between processes. The first and third requirements can be expressed as congruences, and so bisimulation can be used in the reasoning. The second requirement cannot be expressed as a congruence because the old and new configurations are not behaviourally congruent. So, we have used reasoning based on simulation instead. Thus, we found that congruence as it has been used in section 4 is not always applicable for verifying the correctness of our models. Therefore, in section 3 we have investigated model checking.</p><p>The discussion leads us to the following:</p><p>1. It is easier to model workflow reconfiguration in Webπ ∞ than in the asynchronous π-calculus. However, modelling would be even easier in a synchronous version of Webπ ∞ . 2. Model checking is more widely applicable than equational reasoning based on congruences for verifying workflow reconfiguration.</p><p>These two conclusions seem to have wider applicability than just reconfiguration of workflows; but this needs to be verified.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Future Work</head><p>We intend to proceed with a deeper analysis of alternative designs for this case study, and evaluate other formalisms, such as VDM <ref type="bibr" target="#b1">[2]</ref> and Petri nets <ref type="bibr" target="#b22">[23]</ref>. We are also working on a BPEL implementation of the system. We also need larger industrial case studies to help us to design and evaluate formalisms for the modelling and analysis of dynamic reconfiguration.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Fig. 1 .</head><label>1</label><figDesc>Fig. 1. Office workflow -BPMN diagram of the reconfiguration</figDesc><graphic coords="4,161.92,120.17,294.61,413.44" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>P</head><label></label><figDesc>::= 0 | x e u | X i∈I xi( e ui).Pi | (x)P | P |P | !x(e u).P | |P ; P | x</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head></head><label></label><figDesc>The law | |P ; Q| y | R ; R | x ≡ |P ; Q| y | |R ; R | x moves workunit outside parents, thus flattening the nesting. Notwithstanding this flattening, parent workunits may still affect the children by means of names. The law |z u | P ; Q| x ≡ z u | |P ; Q| x floats messages outside workunit boundaries. By this law, messages are particles that independently move towards their Scope laws</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_0"><head></head><label></label><figDesc>|= EF φ iff there exists P 0 , ..., P n and µ 1 , ..., µ n , with n ≥ 0, such as P = P 0 P n and P n |= φ. The meaning of EF φ is that φ must be true sometimes in a possible future.• P |= EF {χ}φ if and only if there exists P 0 , ..., P n and ν 1 , ..., ν n , with n ≥ 0, such that P = P 0</figDesc><table /><note>true for any process P ; • P |=∼ φ iff P |= φ; • P |= φ ∧ φ iff P |= φ and P |= φ ; • P |= EX{µ}φ iff there exists P such as P µ −→ P and P |= φ (strong next); • P µ1 −→ P 1 ... µn −→ ν1 −→ P 1 ... νn −→ P n and P n |= φ with:</note></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_1"><head>Table 1 .</head><label>1</label><figDesc>z)P ; Q| x ≡ (z) |P ; Q| x , if z ∈ {x} ∪ fn(Q) webπ∞ Structural Congruence inputs. The intended semantics is the following: if a process emits a message, this message traverses the surrounding workunit boundaries until it reaches the corresponding input. In case an outer workunit fails, recoveries for this message may be detailed inside the handler processes.The dynamic behavior of processes is instead defined by the reduction relation → which is the least relation satisfying the axioms and rules shown in table2and closed with respect to ≡, (x)_ , _ | _, and | _ ; Q| z . In the table we use the shortcut: |P ; Q|</figDesc><table><row><cell cols="2">Floating law</cell><cell>|z e u | P ; Q| x ≡ z e u | |P ; Q| x</cell></row><row><cell>COM</cell><cell>xi e v |</cell><cell>P</cell></row></table><note>def = (z) |P ; Q| z where z ∈ fn(P ) ∪ fn(Q) i∈I xi( e ui).Pi → Pi ˘e v / e ui REP x e v | !x(e u).P → P ˘e v /e u ¯| !x(e u).P FAIL x | | Q i∈I P s∈S xis( f uis).Pis | Q j∈J !xj( e uj).Pj ; Q| x → |Q ; 0| where J = ∅ ∨ (I = ∅ ∧ S = ∅)</note></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_2"><head>Table 2 .</head><label>2</label><figDesc>webπ∞ Reduction Semantics</figDesc><table /></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" xml:id="foot_0">The invited speaker is Manuel Mazzara.</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" xml:id="foot_1">PNSE'11 -Petri Nets and Software Engineering</note>
		</body>
		<back>

			<div type="acknowledgement">
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Acknowledgments</head><p>This work is partly funded by the EPSRC under the terms of a graduate studentship. The paper has been improved by conversations with John Fitzgerald, Cliff Jones, Alexander Romanovsky, Jeremy Bryans, Gudmund Grov, Mario Bravetti, Massimo Strano, Michele Mazzucco, Paolo Missier and Mu Zhou. We also want to thank members of the Reconfiguration Interest Group (in particular, Kamarul Abdul Basit, Carl Gamble and Richard Payne), the Dependability Group (at Newcastle University) and the EU FP7 DEPLOY Project (Industrial deployment of system engineering methods providing high dependability and productivity).</p></div>
			</div>

			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">On bisimulations for the asynchronous π-calculus</title>
		<author>
			<persName><forename type="first">R</forename><forename type="middle">M</forename><surname>Amadio</surname></persName>
		</author>
		<author>
			<persName><forename type="first">I</forename><surname>Castellani</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Sangiorgi</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Theoretical Computer Science</title>
		<imprint>
			<biblScope unit="volume">195</biblScope>
			<biblScope unit="issue">2</biblScope>
			<biblScope unit="page" from="291" to="324" />
			<date type="published" when="1998">1998</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">The Vienna Development Method: The Meta-Language</title>
	</analytic>
	<monogr>
		<title level="s">Lecture Notes in Computer Science</title>
		<editor>D. Bjorner and C. B. Jones</editor>
		<imprint>
			<biblScope unit="volume">61</biblScope>
			<date type="published" when="1978">1978</date>
			<publisher>Springer</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<monogr>
		<title level="m" type="main">Asynchrony and the π-calculus</title>
		<author>
			<persName><forename type="first">G</forename><surname>Boudol</surname></persName>
		</author>
		<imprint>
			<date type="published" when="1992">1992</date>
		</imprint>
		<respStmt>
			<orgName>INRIA, Sophia-Antipolis</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">Technical report</note>
</biblStruct>

<biblStruct xml:id="b3">
	<monogr>
		<ptr target="http://www.bpmn.org/" />
		<title level="m">Bpmn -business process modeling notation</title>
				<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<monogr>
		<title level="m" type="main">Using dynamically reconfigurable hardware in real-time communications systems: Literature survey</title>
		<author>
			<persName><forename type="first">A</forename><surname>Carter</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2001-11">November 2001</date>
		</imprint>
		<respStmt>
			<orgName>Computer Laboratory, University of Cambridge</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">Technical report</note>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">A formal semantics for the ws-bpel recovery framework -the pi-calculus way</title>
		<author>
			<persName><forename type="first">N</forename><surname>Dragoni</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Mazzara</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">WS-FM&apos;09</title>
				<imprint>
			<publisher>Springer Verlag</publisher>
			<date type="published" when="2009">2009</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Dynamic change within workflow systems</title>
		<author>
			<persName><forename type="first">C</forename><surname>Ellis</surname></persName>
		</author>
		<author>
			<persName><forename type="first">K</forename><surname>Keddara</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Rozenberg</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the Conference on Organizational Computing Systems</title>
				<meeting>the Conference on Organizational Computing Systems<address><addrLine>COOCS</addrLine></address></meeting>
		<imprint>
			<publisher>ACM</publisher>
			<date type="published" when="1995">1995. 1995</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">A model-checking verification environment for mobile processes</title>
		<author>
			<persName><forename type="first">G</forename><forename type="middle">L</forename><surname>Ferrari</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Gnesi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">U</forename><surname>Montanari</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Pistore</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">ACM Transactions on Software Engineering and Methodology</title>
		<imprint>
			<biblScope unit="volume">12</biblScope>
			<biblScope unit="issue">4</biblScope>
			<biblScope unit="page" from="440" to="473" />
			<date type="published" when="2003">2003</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">An overview of reconfigurable hardware in embedded systems</title>
		<author>
			<persName><forename type="first">P</forename><surname>Garcia</surname></persName>
		</author>
		<author>
			<persName><forename type="first">K</forename><surname>Compton</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Schulte</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Blem</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><surname>Fu</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">EURASIP J. Embedded Syst</title>
		<imprint>
			<date type="published" when="2006-01">2006. January 2006</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<analytic>
		<title level="a" type="main">An object calculus for asynchronous communication</title>
		<author>
			<persName><forename type="first">K</forename><surname>Honda</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Tokoro</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">European Conference on Object-Oriented Programming (ECOOP)</title>
		<title level="s">Lecture Notes in Computer Science</title>
		<editor>
			<persName><forename type="first">P</forename><surname>America</surname></persName>
		</editor>
		<imprint>
			<date type="published" when="1991">1991</date>
			<biblScope unit="volume">512</biblScope>
			<biblScope unit="page" from="133" to="147" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b10">
	<monogr>
		<author>
			<persName><forename type="first">N</forename><surname>Kobayashi</surname></persName>
		</author>
		<ptr target="http://www.kb.ecei.tohoku.ac.jp/koba/typical/" />
		<title level="m">Typical: Type-based static analyzer for the pi-calculus</title>
				<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<analytic>
		<title level="a" type="main">A pi-calculus based semantics for ws-bpel</title>
		<author>
			<persName><forename type="first">R</forename><surname>Lucchi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Mazzara</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Journal of Logic and Algebraic Programming</title>
		<imprint>
			<biblScope unit="volume">70</biblScope>
			<biblScope unit="issue">1</biblScope>
			<biblScope unit="page" from="96" to="118" />
			<date type="published" when="2007">2007</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<analytic>
		<title level="a" type="main">Structuring parallel and distributed programs</title>
		<author>
			<persName><forename type="first">J</forename><surname>Magee</surname></persName>
		</author>
		<author>
			<persName><forename type="first">N</forename><surname>Dulay</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Kramer</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Software Engineering Journal (Special Issue)</title>
		<imprint>
			<biblScope unit="volume">8</biblScope>
			<biblScope unit="issue">2</biblScope>
			<biblScope unit="page" from="73" to="82" />
			<date type="published" when="1993">1993</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b13">
	<analytic>
		<title level="a" type="main">Constructing distributed systems in conic</title>
		<author>
			<persName><forename type="first">J</forename><surname>Magee</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Kramer</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Sloman</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">IEEE Transactions on Software Engineering</title>
		<imprint>
			<biblScope unit="volume">15</biblScope>
			<biblScope unit="issue">6</biblScope>
			<biblScope unit="page" from="663" to="675" />
			<date type="published" when="1989">1989</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b14">
	<monogr>
		<title level="m" type="main">Towards Abstractions for Web Services Composition</title>
		<author>
			<persName><forename type="first">M</forename><surname>Mazzara</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2006">2006</date>
		</imprint>
		<respStmt>
			<orgName>Department of Computer Science, University of Bologna</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">PhD thesis</note>
</biblStruct>

<biblStruct xml:id="b15">
	<analytic>
		<title level="a" type="main">On modelling and analysis of dynamic reconfiguration of dependable real-time systems</title>
		<author>
			<persName><forename type="first">M</forename><surname>Mazzara</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Bhattacharyya</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">DEPEND, International Conference on Dependability</title>
				<imprint>
			<date type="published" when="2010">2010</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b16">
	<analytic>
		<title level="a" type="main">A case study of web services orchestration</title>
		<author>
			<persName><forename type="first">M</forename><surname>Mazzara</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Govoni</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">COOR-DINATION</title>
				<imprint>
			<date type="published" when="2005">2005</date>
			<biblScope unit="page" from="1" to="16" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b17">
	<analytic>
		<title level="a" type="main">Towards a unifying theory for web services composition</title>
		<author>
			<persName><forename type="first">M</forename><surname>Mazzara</surname></persName>
		</author>
		<author>
			<persName><forename type="first">I</forename><surname>Lanese</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">WS-FM</title>
				<imprint>
			<date type="published" when="2006">2006</date>
			<biblScope unit="page" from="257" to="272" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b18">
	<analytic>
		<title level="a" type="main">Functions as processes</title>
		<author>
			<persName><forename type="first">R</forename><surname>Milner</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Mathematical Structures in Computer Science</title>
		<imprint>
			<biblScope unit="volume">2</biblScope>
			<biblScope unit="issue">2</biblScope>
			<biblScope unit="page" from="119" to="141" />
			<date type="published" when="1992">1992</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b19">
	<monogr>
		<title level="m" type="main">Communicating and Mobile Systems: the Pi-Calculus</title>
		<author>
			<persName><forename type="first">R</forename><surname>Milner</surname></persName>
		</author>
		<imprint>
			<date type="published" when="1999">1999</date>
			<publisher>Cambridge University Press</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b20">
	<analytic>
		<title level="a" type="main">Modal logics for mobile processes</title>
		<author>
			<persName><forename type="first">R</forename><surname>Milner</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Parrow</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Walker</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Theoretical Computer Science</title>
		<imprint>
			<date type="published" when="1993">1993</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b21">
	<analytic>
		<title level="a" type="main">Comparing the expressive power of the synchronous and the asynchronous pi-calculus</title>
		<author>
			<persName><forename type="first">C</forename><surname>Palamidessi</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Mathematical Structures in Computer Science</title>
				<imprint>
			<publisher>ACM</publisher>
			<date type="published" when="1997">1997</date>
			<biblScope unit="page" from="256" to="265" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b22">
	<monogr>
		<title level="m" type="main">Kommunikation mit Automaten</title>
		<author>
			<persName><forename type="first">C</forename><forename type="middle">A</forename><surname>Petri</surname></persName>
		</author>
		<imprint>
			<date type="published" when="1962">1962</date>
		</imprint>
		<respStmt>
			<orgName>Fakultät Matematik und Physik, Technische Universität Darmstadt</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">PhD thesis</note>
</biblStruct>

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