<?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">Combinatorial Strand Algebra in Insertion Modeling System</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author role="corresp">
							<persName><forename type="first">Dmitriy</forename><forename type="middle">M</forename><surname>Klionov</surname></persName>
							<email>soulslayermaster@gmail.com</email>
							<affiliation key="aff0">
								<orgName type="institution">Kherson State University</orgName>
								<address>
									<addrLine>40 rokiv Zhovtnya st. 27</addrLine>
									<settlement>Kherson</settlement>
									<country key="UA">Ukraine</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">Combinatorial Strand Algebra in Insertion Modeling System</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">890AE75A1717AAFCD9A263D8DF75DF0D</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T01:36+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>
			<textClass>
				<keywords>
					<term>insertion modeling</term>
					<term>system biology</term>
					<term>strand algebras Computation</term>
					<term>Model</term>
					<term>InsertionModeling</term>
					<term>Algebra</term>
				</keywords>
			</textClass>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>This article is focused on the Insertion Modeling System developed by A.A. Letichevsky of the department 100/105 of the Glushkov Institute of Cybernetics, National Academy of Science of Ukraine, Kyiv, Ukraine Insertion Modeling System (IMS)[1] is buit on the Algebraic Programming System (APS) that also was developed by A.A. Letichevsky in 1987. and on the way of implementation of strand algebras -a process algebra for DNA computing devised by Luca Cardelli in order to compile other formal systems into the algebra, and compilation of this algebra into DNA structures. We focus on the basic strand algebra -combinatorial strand algebra, which is equivalent to the place-transition Petri nets, and on the version of the model driver of the Insertion Modeling System, based on the Petri nets.</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>DNA technology is reaching the point where one can envision automatically compiling high-level formalisms to DNA computational structures <ref type="bibr" target="#b10">[11]</ref>. There are three compilation processes for concurrent languages, described by Cardelli in paper <ref type="bibr" target="#b9">[10]</ref>. First, is the compilation of a low-level combinatorial algebra to a certain class of composable DNA structures <ref type="bibr" target="#b11">[12]</ref>: this is intended to be a direct (but not quite trivial) mapping, which provides an algebraic notation for writing concurrent molecular programs. Second, is the compilation of a higher-level expression-based algebra to the lower-level combinatorial algebra, as a paradigm for compiling expressions of arbitrary complexity to `assembly language' DNA combinators. Third is translating concurrent interacting automata <ref type="bibr" target="#b12">[13]</ref> to molecular structures. There is no clear way to implement such system, because one must decompose concurrent communication patterns into a form suitable for molecular interactions (a quadratic process that is described in <ref type="bibr" target="#b12">[13]</ref>), and then one must find some suitable `general programmable matter' as a physical substrate. Some solution of this problem, based on the combinatorial DNA algebra, was given by Cardelli in paper <ref type="bibr" target="#b9">[10]</ref>.</p><p>Process algebras are formal languages designed to describe and analyze the concurrent activities of multiple processes. The standard technical presentation of process algebras was initially inspired by a chemical metaphor <ref type="bibr" target="#b13">[14]</ref>, and it is therefore natural, as a tutorial, to see how the chemistry of diluted well-mixed solutions can itself be presented as a process algebra. Having chemistry in this form also facilitates relating it to other process algebras.</p><p>Take a set C of chemical solutions denoted by P,Q,R. Two binary relations are defined on this set. The first relation, mixing,</p><formula xml:id="formula_0">Q P </formula><p>is an equivalence relation: its purpose is to describe reversible events that amount to `chemical mixing'; that is, to bringing components close to each other (syntactically) so that they can conveniently react by the second relation. Its basic algebraic laws are the commutative monoid laws of + and 0, where + is the chemical combination symbol and 0 represents the empty solution. The second relation, reaction, Q P  , describes how a (sub-) solution P becomes a different solution Q. A reaction</p><formula xml:id="formula_1">Q P </formula><p>operates under a dilution assumption; namely, that adding some R to P does not make it then impossible for P to become Q (although R may enable additional reactions that overall quantitatively repress by interfering with P). The two relations of mixing and reaction are connected by a rule that says that the solution is well mixed: for any reaction to happen it is sufficient to mix the solution so that the reagents can interact. In first instance, the reaction relation does not have chemical rates. However, from the initial solution, from the rates of the base reactions, and from the relation  describing whole- system transitions, one can generate a continuous time Markov chain representing the kinetics of the system. In terms of system evolution, it is also useful to consider the symmetric and transitive closure,   , representing sequences of reactions.</p><p>As process algebra, chemistry therefore obeys the following general laws, shown lower:</p><formula xml:id="formula_2">R P R Q Q P P Q Q P P P         , ; ; (1) Equivalence R Q R P Q P      (2) Congruence P P R Q P R Q P P Q Q P           0 ; ) ( ) ( ; (3) Diffusion R Q R P Q P      (4) Dilusion Q P Q Q Q P P P      ' , ' ' , '<label>(5)</label></formula><p>well mixing Algebra is about equations, but in process algebra equations are usually a derived concept. Instead of axiomatizing a set of equations, we can use the reaction relation to study the equations that hold in a given algebra, meaning that Q P  holds if P and Q produce the same reactions <ref type="bibr" target="#b14">[15]</ref>. The complexity of these derived equational theories varies with the algebra. A simple instance here is the equation P + 0 = P, whose validity requires verifying that in definition of  there is no reaction for 0, nor for 0 combined with something else.</p><p>This way, chemistry can be presented as process algebra. But the algebra of chemical `+' is one among many: there are other process algebras that can suit biochemistry more directly <ref type="bibr" target="#b15">[16,</ref><ref type="bibr" target="#b16">17]</ref> or, that can suit DNA computing. In the same way the strand algebra represent DNA strands, DNA gates and operations among them allowing the higher-level formalisms to be compiled to the DNA structures. I this paper we will show the way to represent the simplest strand algebra -combinatorial strand algebra as insertion model for the Insertion Modeling System <ref type="bibr" target="#b0">[1]</ref>, using the fact that combinatorial strand algebra is equivalent to place transition Petri nets. There is a representation of Petri nets, given by A.A. Letichevsky in form of insertion machines. We use this representation in order to build a specified analytical model driver for the combinatorial strand algebra.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">Insertion Modeling System</head></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.1">The Architecture of Insertion Modeling System</head><p>Insertion Modeling System(IMS) <ref type="bibr" target="#b0">[1]</ref> developed by A.A. Letichevsky of the Glushkov Institute of Cybernetics, National Academy of Science of Ukraine, Kyiv, Ukraine. Insertion modeling is the technology of system design founded on the theory of interaction of agents and environments. It is based on process algebra and is intended for the unification of different models of interaction and computation (such as CCS, CSP, π-calculus, mobile ambients etc.).</p><p>Insertion model of a system represent this system as a composition of environment and agents inserted into it. The insertion function is usually denoted as E[u] were E is the state of environment and u is the state of an agent. E[u] is a new environment state after insertion an agent u. All agents and environments are labeled or attributed transition systems (labeled systems with states labeled by attribute labels <ref type="bibr" target="#b8">[9]</ref>). The states of transition systems are considered up to bisimilarity. The main invariant of bisimilarity is the behavior ] [E beh of transition system in the state E (an oriented tree with edges labeled by actions and nodes labeled by attribute labels). Behaviors themselves can be considered as states of transition systems.</p><p>The general architecture of insertion machine is represented on the fig. <ref type="figure" target="#fig_0">1</ref>.</p><p>The main component of insertion machine is model driver, the component which controls the machine movement along the behavior tree of a model. The state of a model is represented as a text in the input language of insertion machine and is considered as an algebraic expression. The input language include the recursive definitions of agent behaviors, the notation for insertion function, and possibly some compositions for environment states. The state of a system must be reduced to the form</p><formula xml:id="formula_3">,...] , [ 2 1 u u E</formula><p>. This functionality is performed by the module called agent behavior unfolder. Two kinds of insertion machines are considered: real type or interactive and analytical insertion machines. The first ones exist in the real or virtual environment, interacting with it in the real or virtual time. Analytical machines intended for model analyses, investigation of its properties, solving problems etc. The drivers for two kinds of machines correspondingly are also divided on interactive and analytical drivers.</p><p>Insertion machine with interactive driver operates as an agent inserted into external environment with insertion function defining the laws of functioning of this environment.</p><p>Interactive driver can be organized in a rather complex way. If it has criteria of successful functioning in external environment intellectual driver can accumulate the information about its past, develop the models of external environment, improve the algorithms of selecting actions to increase the level of successful functioning.</p><p>Analytical insertion machine as opposed to interactive one can consider different variants of making decision about performed actions, returning to choice points (as in logic programming) and consider different paths in the behavior tree of a model. The model of a system can include the model of external environment of this system, and the driver performance depends on the goals of insertion machine. In the general case analytical machine solves the problems by search of states, having the corresponding properties(goal states) or states in which given safety properties are violated.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.2">The Decomposition of Petri Nets into the Composition of Agents and Environments</head><p>Petri net (place/transition net) is one of several mathematical modeling languages for the description of distributed systems. A Petri net is a directed bipartite graph, in which the nodes represent transitions (i.e. events that may occur, signified by bars), and places (i.e. conditions, signified by circles). The directed arcs describe which places are pre/and/or postconditions for which transitions (signified by arrows). Like the industry standards such as UML activity diagrams, BPMN and EPCs, Petri nets offer graphical notation for stepwise processes that include choice, iteration, and concurrent execution. Unlike these standards, Petri nets have an exact mathematical definition of their execution semantics, with a well-developed theory for process analysis.</p><p>A Petri net consists of places, transitions, and arcs. Arcs run from a place to transition or vice versa, newer between places or between transitions. The places from which an arc runs to a transition are called the input places of the transition; the places to which arcs run from a transition are called the output places of the transition. Places in a Petri net may contain a discrete number of marks called tokens. Any distribution of tokens over the places will represent a configuration of the net called a marking. In abstract sense relating to Petri nets diagram, a transition of a Petri net may fire whenever there are sufficient tokens at the start of all input arcs; when it fires, it consumes this tokens, and places them at the end of all output arcs. A firing is atomic, i.e., a single non-interruptible step.</p><p>Execution of Petri nets s nondeterministic: when multiple transitions are enabled at the same time, any of them may fire, so multiple tokens may be represented anywhere in the net (even in the same place). Petri nets are well suited for modeling the concurrent behavior of distributed systems.</p><p>Petri nets are formally defined as a state-transition systems that extend a class of nets called elementary nets. Formal definition is represented lower.  Petri net is bipartite graph, where P is one partition and T is the other. Moreover, for every t in T there exist p and q in P so that (p, t) and (t, q) are in F, and for every p and q in P, if (p, t) and (t, q) are in F then p≠q.</p><p>The set are the new elements. The set of places define the local states of a net, however, the global state of a net can be defined by place subsets.</p><p>In order to represent Petri nets as a composition of agents and environments, we represent transitions T as actions, tokens as agents, and places as states. The behavior of tokens located in the enabled place s is written as:</p><formula xml:id="formula_4">    0 ) , ( . ) ( t s W t s u (6)</formula><p>The states of Petri environment are equal to the marks (configurations) of the net.</p><formula xml:id="formula_5">} | | ) ( { || ) ( : ) ( S s s u M E Nat S M s M     (7)</formula><p>The insertion function is defined as:</p><formula xml:id="formula_6">u M E u M E || ) ( ] )[ ( <label>(8)</label></formula><p>The environment transitions are defined as:</p><formula xml:id="formula_7">] ' [ ] [ ' u E u E u u t t     (9)</formula></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">Combinatorial Strand Algebra</head><p>Strand algebra is a process algebra <ref type="bibr" target="#b17">[18]</ref> where the main components represent DNA strands, DNA gates, and their interactions. The basic algebra is non-deterministic algebra, and the further extension is a stochastic variant <ref type="bibr" target="#b9">[10]</ref>. Strand algebras may look very similar to either chemical reactions, or Petri nets, or multiset-rewriting systems. The difference here is that the equivalent of, respectively, reactions, transitions, and rewrites, do not live outside the system, but rather are part of the system itself and are consumed by their own activity, reflecting their DNA implementation. A process algebra formulation is particularly appropriate for such an internal representation of active elements.</p><p>The Combinatorial Strand Algebra, P -basic strand algebra has some atomic elements (signals and gates), and only two combinators: parallel (concurrent) composition ; that is, there is always one more P that can be taken from the population. The set P is formally the set of finite trees P generated by the syntax shown below; we freely use parentheses when representing these trees linearly as strings. Up to the algebraic equations described below, each P is a multiset, i.e., a solution. The signals x,y,... are taken from a countable set. , called mixing, is the smallest relation satisfying the following properties; it is a substitutive equivalence relation axiomatizing a wellmixed solution <ref type="bibr" target="#b2">[3]</ref>given lower:</p><formula xml:id="formula_8">P P  (17) Equivalence R Q R P Q P | |    (18) Congruence P Q Q P    (19)      Q P Q P (20) R P R Q Q P     , (<label>21</label></formula><formula xml:id="formula_9">) P P P |   <label>(22)</label></formula><p>population </p><formula xml:id="formula_10">P P  0 | (23) Diffusion 0 0 *  (24) P Q Q P | |  (25) * * | ) | ( Q P Q P   (26) R Q P R Q P | ) | ( ) | ( | <label>(27)</label></formula><formula xml:id="formula_11"> gate 0 , 1   m n (29) R Q R P Q P | |    (30) Dilution Q P Q Q Q P P P      ' , ' ' , '<label>(31)</label></formula><p>well mixing The first reaction (gate) forms the core of the semantics: the other rules allow reactions to happen in context. Note that the special case of the gate rule for m = 0 is</p><formula xml:id="formula_12">0 ].[] ,..., [ | | .. | 1 1  n n x x x x</formula><p>. And, in particular, x.[] annihilates an x signal. We can choose any association of operators in the formal gate rule: because of the associativity of parallel composition under the exact choice is not important. Since is a relation, reactions are in general nondeterministic.</p><p>Note that signals can interact with gates but signals cannot interact with signals, nor gates with gates. As we shall see, in the DNA implementation the input part of a gate is the Watson-Crick dual of the corresponding signal strand, so that the inputs are always `negative' and the outputs are always `positive'. This Watson-Crick duality need not be exposed in the syntax: it is implicit in the separation between signals and gates, so we use the same x1 both for the `positive' signal strand and for the complementary `negative' gate input in a reaction like </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">Insertion Machine for Combinatorial Strand Algebra</head><p>The representation of Petri nets as a composition of agents and environments was discussed in section 2.2. This will allow us to build a model driver based on the Petri nets. Consider a place-transition Petri Net with places xi; then, a transition with incoming arcs from places  as a transition with an additional marked `one-shot' place on the input that makes it fire only once; then,  P can be represented by connecting the transitions of P to refresh the one-shot places (this was suggested by Cosimo Laneve). Therefore, the combinatorial strand algebra is equivalent to place-transition Petri nets, and can be easily implemented into the Insertion Modeling System, by using the model driver based on the Petri nets.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Conclusions</head><p>Strand algebras in general would allow the compilation of a high-level formalism into the DNA structures, using the methods advised by Cardelli in <ref type="bibr" target="#b9">[10]</ref>. We have shown the way of implementation of the basic strand algebra -combinatorial strand algebra, in the Insertion Modeling System, by constructing the model driver for the system, based on the Petri nets. Combinatorial strand algebra deals with countable sets of signals/gates and so on(as well as Petri nets), we can extend it in future, to make it able to handle infinite sets, using the possibilities of insertion modeling, that works with infinite models. Implementation of combinatorial strand algebra to the insertion modeling system can be considered as the first step for building the insertion models of biological systems. However the further extensions of combinatorial strand algebra: Nested strand algebra <ref type="bibr" target="#b5">[6]</ref>, and Stochastic strand algebra, require a constructing of a probabilistic model driver, in order to implement them in the Insertion Modeling System. The stochastic semantics can be taken for example from the Stochastic Petri nets, which are just nets with rates on transitions and with an induced Continuous Time Markov Chain semantics.</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. Architecture of Insertion Machine</figDesc><graphic coords="4,144.60,196.74,306.06,117.06" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Fig 2 .</head><label>2</label><figDesc>Fig 2. Formal definition of Petri net.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_3"><head></head><label></label><figDesc>, is the smallest relation satisfying the following properties. In addition,   , reaction sequence, is the symmetric and transitive closure of  . Reaction is shown lower:</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_6"><head>1 , 1 .</head><label>11</label><figDesc>unbounded population of gates ensures that the transition can fire repeatedly. The initial token marking Conversely, a signal in strand algebra can be represented as a marked place in a Petri net, and a gate</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_1"><head></head><label></label><figDesc>, and is consumed in the process. We say that this gate joins n signals and then forks m signals; some special cases are shown on the fig 4. An inert component is indicated by 0. Signals and gates can be combined into a `soup' by parallel composition</figDesc><table><row><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell cols="3">x</cell><cell></cell><cell></cell><cell></cell><cell></cell><cell>(11)</cell></row><row><cell>Signal</cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell></row><row><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell cols="3">0</cell><cell></cell><cell></cell><cell></cell><cell></cell><cell>(12)</cell></row><row><cell>Inert</cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell></row><row><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell cols="4">2 1 .x x</cell><cell></cell><cell>≜</cell><cell></cell><cell></cell><cell></cell><cell>[</cell><cell cols="5">].[ 1 x 2 x</cell><cell>]</cell><cell>(13)</cell></row><row><cell cols="2">transduser gate</cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell></row><row><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell cols="7">2 1 | P P</cell><cell></cell><cell></cell><cell>(14)</cell></row><row><cell>Composition</cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell></row><row><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell cols="4">.[ 1 x x</cell><cell cols="3">,...,</cell><cell cols="3">m x</cell><cell>]</cell><cell cols="2">≜</cell><cell></cell><cell cols="2">[</cell><cell>x</cell><cell cols="3">].[</cell><cell>1 x</cell><cell>,...,</cell><cell>x</cell><cell>m</cell><cell>]</cell><cell>(15)</cell></row><row><cell>fork gate</cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell></row><row><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell cols="2">P</cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell>(16)</cell></row><row><cell>Population</cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell></row><row><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell cols="2">x [ 1</cell><cell cols="4">,...,</cell><cell cols="3">x m ].</cell><cell cols="2">x</cell><cell cols="3">≜</cell><cell cols="4">[ 1 x</cell><cell cols="2">,...,</cell><cell>x</cell><cell>m</cell><cell>].[</cell><cell>x</cell><cell>]</cell></row><row><cell cols="2">The relation</cell><cell cols="4"></cell><cell cols="3">P </cell><cell>P</cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell></row><row><cell></cell><cell>P</cell><cell>:: </cell><cell cols="2">; x</cell><cell cols="2">[</cell><cell>1 x</cell><cell cols="2">,...,</cell><cell>x</cell><cell cols="2">n</cell><cell cols="2">].[</cell><cell>1 y</cell><cell cols="4">,...,</cell><cell>y</cell><cell cols="2">m</cell><cell cols="4">; 0 ];</cell><cell>1 P</cell><cell>|</cell><cell>2 P</cell><cell>;</cell><cell>P</cell><cell></cell><cell>n</cell><cell></cell><cell>, 1</cell><cell>m</cell><cell></cell><cell>0</cell><cell>(10)</cell></row><row><cell cols="28">A gate is an operator from signals to signals:</cell><cell>[</cell><cell>1 x</cell><cell>,...,</cell><cell>n x</cell><cell>].[</cell><cell>1 y</cell><cell>,...,</cell><cell>y</cell><cell>m</cell><cell>]</cell><cell>is a gate that</cell></row><row><cell>binds signals</cell><cell cols="2">x ,..., 1</cell><cell>x</cell><cell>n</cell><cell></cell><cell cols="19">, produces signals</cell><cell cols="3">y ,...,</cell><cell>y</cell><cell>m</cell></row><row><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell>2 1 | P P</cell><cell>(a commutative and associative</cell></row><row><cell cols="28">operator, similar to chemical `+'), and can also be assembled into inexhaustible</cell></row><row><cell cols="28">populations,  P . Square brackets are omitted for single inputs or outputs.</cell></row><row><cell cols="28">Explanation of the Syntax and Abbreviations:</cell></row></table><note>1</note></figure>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">Insertion Modeling System And Constraint Programming</title>
		<author>
			<persName><forename type="first">Alexander</forename><surname>Letichevsky</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Olexander</forename><surname>Letichevskyi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Vladimir</forename><surname>Peschanenko</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Igor</forename><surname>Blinov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Dmitriy</forename><surname>Klionov</surname></persName>
		</author>
		<ptr target="http://ceur-ws.org/Vol-716" />
	</analytic>
	<monogr>
		<title level="m">Proc. 7-th Int. Conf. ICTERI 2011</title>
				<editor>
			<persName><forename type="first">V</forename><surname>Ermolayev</surname></persName>
		</editor>
		<meeting>7-th Int. Conf. ICTERI 2011<address><addrLine>Kherson, Ukraine</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2011">May 4-7, 2011. 2011</date>
			<biblScope unit="volume">716</biblScope>
			<biblScope unit="page" from="51" to="64" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">A universal interpreter for nondeterministic concurrent programming languages</title>
		<author>
			<persName><forename type="first">D</forename><forename type="middle">R</forename><surname>Gilbert</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">A</forename><surname>Letichevsky</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Fifth Compulog network area meeting on language design and semantic analysis methods</title>
				<editor>
			<persName><forename type="first">M</forename><surname>Gabbrielli</surname></persName>
		</editor>
		<imprint>
			<date type="published" when="1996">1996</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">A general theory of action languages</title>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">A</forename><surname>Letichevsky</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><forename type="middle">R</forename><surname>Gilbert</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Cybernetics and System Analyses</title>
		<imprint>
			<biblScope unit="volume">1</biblScope>
			<biblScope unit="page" from="16" to="36" />
			<date type="published" when="1998">1998</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">A Model for Interaction of Agents and Environments</title>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">A</forename><surname>Letichevsky</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><forename type="middle">R</forename><surname>Gilbert</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Recent Trends in Algebraic Development Techniques</title>
				<editor>
			<persName><forename type="first">D</forename><surname>Bert</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">C</forename><surname>Choppy</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">P</forename><surname>Moses</surname></persName>
		</editor>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="1999">1999</date>
			<biblScope unit="volume">1827</biblScope>
			<biblScope unit="page" from="11" to="58" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">Algebra of behavior transformations and its applications</title>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">A</forename><surname>Letichevsky</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Structural theory of Automata, Semigroups, and Universal Algebra</title>
		<title level="s">NATO Science Series II. Mathematics, Physics and Chemistry</title>
		<editor>
			<persName><forename type="first">V</forename><forename type="middle">B</forename><surname>Kudryavtsev</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">I</forename><forename type="middle">G</forename><surname>Rosenberg</surname></persName>
		</editor>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2005">2005</date>
			<biblScope unit="volume">207</biblScope>
			<biblScope unit="page" from="241" to="272" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">Leveraging UML to Deliver Correct Telecom Applications</title>
		<author>
			<persName><forename type="first">S</forename><surname>Baranov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><surname>Jervis</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Kotlyarov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Letichevsky</surname></persName>
		</author>
		<author>
			<persName><forename type="first">T</forename><surname>Weigert</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">UML for Real: Design of Embedded Real-Time Systems</title>
				<editor>
			<persName><forename type="first">L</forename><surname>Lavagno</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">G</forename><surname>Martin</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">B</forename><surname>Selic</surname></persName>
		</editor>
		<meeting><address><addrLine>Amsterdam</addrLine></address></meeting>
		<imprint>
			<publisher>Kluwer Academic Publishers</publisher>
			<date type="published" when="2003">2003</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Basic Protocols, Message Sequence Charts, and the Verification of Requirements Specifications</title>
		<author>
			<persName><forename type="first">A</forename><surname>Letichevsky</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Kapitonova</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Letichevsky</surname><genName>Jr</genName></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Volkov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Baranov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Kotlyarov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">T</forename><surname>Weigert</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Computer Networks</title>
		<imprint>
			<biblScope unit="volume">47</biblScope>
			<biblScope unit="page" from="662" to="675" />
			<date type="published" when="2005">2005</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">Validation of Embedded Systems</title>
		<author>
			<persName><forename type="first">J</forename><surname>Kapitonova</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Letichevsky</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Volkov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">T</forename><surname>Weigert</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">The Embedded Systems Handbook</title>
				<editor>
			<persName><forename type="first">R</forename><surname>Zurawski</surname></persName>
		</editor>
		<meeting><address><addrLine>Miami</addrLine></address></meeting>
		<imprint>
			<publisher>CRC Press</publisher>
			<date type="published" when="2005">2005</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">System Specification with Basic Protocols</title>
		<author>
			<persName><forename type="first">A</forename><surname>Letichevsky</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Kapitonova</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Volkov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Letichevsky</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Baranov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Kotlyarov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">T</forename><surname>Weigert</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Cybernetics and System Analyses</title>
		<imprint>
			<biblScope unit="volume">4</biblScope>
			<biblScope unit="page" from="479" to="493" />
			<date type="published" when="2005">2005</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<analytic>
		<title level="a" type="main">Strand Algebras for DNA Computing (Preliminary version). DNA Computing and Molecular Programming</title>
		<author>
			<persName><forename type="first">L</forename><surname>Cardelli</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">15th International Conference, DNA 15</title>
				<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2009">2009</date>
			<biblScope unit="volume">5877</biblScope>
			<biblScope unit="page" from="12" to="24" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b10">
	<analytic>
		<title level="a" type="main">Programming Biomolecular Selfassembly Pathways</title>
		<author>
			<persName><forename type="first">P</forename><surname>Yin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><forename type="middle">M T</forename><surname>Choi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><forename type="middle">R</forename><surname>Calvert</surname></persName>
		</author>
		<author>
			<persName><forename type="first">N</forename><forename type="middle">A</forename><surname>Pierce</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Nature</title>
		<imprint>
			<biblScope unit="volume">451</biblScope>
			<biblScope unit="page" from="318" to="322" />
			<date type="published" when="2008">2008</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<analytic>
		<title level="a" type="main">DNA as a Universal Substrate for Chemical Kinetics</title>
		<author>
			<persName><forename type="first">D</forename><surname>Soloveichik</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Seelig</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Winfree</surname></persName>
		</author>
		<idno type="DOI">10.1073/pnas.0909380107</idno>
	</analytic>
	<monogr>
		<title level="j">PNAS</title>
		<imprint>
			<date type="published" when="2010-03-04">March 4, 2010</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<analytic>
		<title level="a" type="main">On Process Rate Semantics</title>
		<author>
			<persName><forename type="first">L</forename><surname>Cardelli</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Theoretical Computer Science</title>
		<imprint>
			<biblScope unit="volume">391</biblScope>
			<biblScope unit="issue">3</biblScope>
			<biblScope unit="page" from="190" to="215" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b13">
	<analytic>
		<title level="a" type="main">Corn. On Combinatorial DNA Word Design</title>
		<author>
			<persName><forename type="first">A</forename><surname>Marathe</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">E</forename><surname>Condon</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><forename type="middle">M</forename></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">J. Comp. Biology</title>
		<imprint>
			<biblScope unit="volume">8</biblScope>
			<biblScope unit="issue">3</biblScope>
			<biblScope unit="page" from="201" to="219" />
			<date type="published" when="2001">2001</date>
		</imprint>
	</monogr>
</biblStruct>

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

<biblStruct xml:id="b15">
	<analytic>
		<title level="a" type="main">Formal molecular biology</title>
		<author>
			<persName><forename type="first">V</forename><surname>Danos</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><surname>Laneve</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Theoretical Computer Science</title>
		<imprint>
			<biblScope unit="volume">325</biblScope>
			<biblScope unit="issue">1</biblScope>
			<biblScope unit="page" from="69" to="110" />
			<date type="published" when="2004">2004</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b16">
	<analytic>
		<title level="a" type="main">BioAmbients: An Abstraction for Biological Compartments</title>
		<author>
			<persName><forename type="first">A</forename><surname>Regev</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><forename type="middle">M</forename><surname>Panina</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><surname>Silverman</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Cardelli</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Shapiro</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Theoretical Computer Science</title>
		<imprint>
			<biblScope unit="volume">325</biblScope>
			<biblScope unit="issue">1</biblScope>
			<biblScope unit="page" from="141" to="167" />
			<date type="published" when="2004">2004</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b17">
	<analytic>
		<title level="a" type="main">Artificial Biochemistry</title>
		<author>
			<persName><forename type="first">L</forename><surname>Cardelli</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Algorithmic Bioprocesses</title>
				<editor>
			<persName><forename type="first">A</forename><surname>Condon</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">D</forename><surname>Harel</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">J</forename><forename type="middle">N</forename><surname>Kok</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">A</forename><surname>Salomaa</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">E</forename><surname>Winfree</surname></persName>
		</editor>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2009">2009</date>
		</imprint>
	</monogr>
</biblStruct>

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