<?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">Implementation of Propagation-Based Constraint Solver in IMS</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author role="corresp">
							<persName><forename type="first">Igor</forename><forename type="middle">Ol</forename><surname>Blinov</surname></persName>
							<email>anubis.igor@gmail.com</email>
							<affiliation key="aff0">
								<orgName type="institution">Kherson State University</orgName>
								<address>
									<addrLine>27, 40 rokiv Zhovtnya St</addrLine>
									<postCode>73000</postCode>
									<settlement>Kherson</settlement>
									<country key="UA">Ukraine</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">Implementation of Propagation-Based Constraint Solver in IMS</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">2BB3C1A60E8DC225179248565C40D062</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T16:37+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>IMS</term>
					<term>constraint programming</term>
					<term>solvers</term>
				</keywords>
			</textClass>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Article compiling the main ideas of creating propagation-based constraint solver, theoretical basis of constraint programming its implementation in IMS (Insertion Modeling System) and creating prototype of IMS constraint solver.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Introduction</head><p>In today's world, computing problems are becoming more and more applicable in real life. Some problems arise from the real problem of production requirements of science, etc.</p><p>The challenge of creating a real-life computational equivalent of the human mind requires that we had better understand at a computational level how natural intelligent systems develop their cognitive and learning functions. The narrow focus of science on this challenge brings together four schools of thought: 1. Computational neuroscience, that tries to understand how the brain works in terms of connectionist models; 2. Cognitive modeling, pursuing higher-level computational description of human cognition; 3. Human-level artificial intelligence, aiming at generally intelligent artifacts that can replace humans at work; 4. Human-like learners: artificial minds that can be understood by humans intuitively, that can learn like humans, from humans and for human needs.</p><p>A solution to the problems of this type consists of several parts. The main parts are the tools and methodology. Tools provided at this time to address them varied. We consider the approach of cognitive modeling and cognitive architectures.</p><p>Important part of cognitive architecture -solvers. For creating solvers, we use the constraint programming method.</p><p>Let's consider this method with its application area and specification.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1.1">Basic Сoncepts</head><p>Constraint programming is a powerful method for solving combinatorial (optimization) problems, which has proven effective and efficient in a wide range of application areas. Constraint programming is an embedding of constraints in a host language. The first host languages used were logic programming languages, so the field was initially called constraint logic programming. The two paradigms share many important features, like logical variables and backtracking. Today most Prolog (for example) implementations include one or more libraries for constraint logic programming.</p><p>The difference between the two is largely in their styles and approaches to modeling the world. Some problems are more natural (and thus, simpler) to write as logic programs, while some are more natural to write as constraint programs.</p><p>The constraint programming approach is to search for a state of the world in which a large number of constraints are satisfied at the same time. A problem is typically stated as a state of the world containing a number of unknown variables. The constraint program searches for values for all the variables.</p><p>Application areas. Many hard, real-world combinatorial problems lend themselves to modeling as constraint satisfaction or optimization problems. The Handbook of Constraint Programming (Rossi et al., 2006) lists example applications in the areas of scheduling and planning, vehicle routing, configuration, networks (such as power or pipeline networks), and bioinformatics. Further application areas include computational linguistics (for example Duchier, 1999), as well as verification <ref type="bibr">(Yuan et al., 2006)</ref> and optimization (van Beek and Wilken, 2001) of computer programs.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Constraint Satisfaction Problems.</head><p>A combinatorial problem is modeled as a set of variables, representing the objects the problem deals with, and a set of constraints, representing the relationships among the objects. Such a combinatorial problem is called a Constraint Satisfaction Problem (CSP). The common case where the variables can only take values from a finite universe is called a finite domain constraint satisfaction problem. A constraint programming system implements variables and constraints and provides a solution procedure for CSPs, which tries to find an assignment to the variables that satisfies all of the constraints. Clearly, solving CSPs is NPhard in general, as the satisfiability of Boolean formulas (SAT) is one instance.</p><p>As we use the constraint programming approach, solvers are called constraint solvers.</p><p>Constraint solvers. The success of constraint programming as a field is due to the availability of effective and efficient solution procedures that can solve these practical problems. This paper concentrates on finite-domain constraint programming, implemented in a propagation-based constraint solver, based on exhaustive search. This class of solvers has been successful because of its best-of-several worlds approach. They combine classic AI search methods with advanced implementation techniques from the Programming Languages community and efficient algorithms from Operations Research. Furthermore, the Constraint Programming community has identified global constraints as an important tool to make the structure of constraint problems explicit and achieve strong propagation. Dedicated propagation algorithms for many different global constraints are available.</p><p>We consider the variety of solvers, which are called propagation-based constraint solvers.</p><p>Propagation-based constraint solving. At the heart of a propagation-based constraint solver, propagators realize the constraints of a CSP by pruning the variable domains. A propagator removes values from variable domains that cannot be part of any solution of its constraint. Propagators for particular constraints are usually implemented as specialized algorithms. The constraint solver computes a fixed point of all propagators, maximizing the amount of inference they can contribute. It then splits the problem and solves the resulting smaller problems recursively.</p><p>This process of inference is called constraint propagation. As the main inference method in constraint programming systems, constraint propagation infers that certain values cannot be part of certain variable domains any more because they violate some constraint. The entities that perform constraint propagation are called propagators.</p><p>Constraint satisfaction problems are modeled with respect to a finite set of variables X and a finite set of values V. We typically write variables as X z y, x,  , and refer to values as v, w V.</p><p>For article example CSP, we choose the problem of scheduler generation. The atom of schedule system is one record of type {teacher, group, subject, room}. Let's take this simple set for example. We will describe each part of article using this example, specifying and describing a detail.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1.2">Assignments and Сonstraints</head><p>Constraint satisfaction problem solution should provide a unique correspondence between the values and the variables. A constraint restricts which assignments of values to variables are allowed. Next definition captures assignments and constraints. Definition 1 An assignment a is a function mapping variables to values. The set of all assignments is Asn := X → V. A constraint c is a set of assignments, c Con := P (Asn) = P (X → V) (we write P (S) for the power set of S). It corresponds to a relation over the variables in X. Any assignment a Є c is a solution of c.</p><p>In basic works of Guido Tack <ref type="bibr" target="#b0">[1]</ref>, researchers base constraints on full assignments, defined for all variables in X. However, for typical constraints, only a subset vars(c) of the variables is significant; the constraint is the full relation for all x vars(c). More formally, a constraint c is the full relation for a variable x if and only:</p><formula xml:id="formula_0">c x] a[v c a V, v      / : ,<label>(1)</label></formula><p>where a[v/x] is the assignment a′ where a′(x) = v and a′(y) = a(y) for all variables y ≠ x.</p><p>Consequently, the significant variables of c can be defined as</p><formula xml:id="formula_1">  c x] a[v c a V; v | X x = s(c)       / : : var</formula><p>(2) Constraints are either written as sets of assignments, or just stated as mathematical expressions with the usual meaning. We use the notation [[•]] when we want to stress that we mean the constraint; for example, we write [[x &lt; y]] to denote the constraint {a ∈ Asn a(x) &lt; a(y)} .</p><p>Using IMS we will define our constraints as a part of function that preceded the insertion function, as we see later. It should done its work before insertion will, or return the forbiddance for insertion. Alternatively, like a part of insertion function, with one more conditional expression.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1.3">Domains and Constraint Satisfaction Problems. Propagators</head><p>Constraints represent one half of the Constraint Satisfaction Problem solutions. The other part is the initial set of values that each variable can take. For example in a Golf Club schedule, each variable must take a value from the set of golf-players. In our example, variables will take the value from the set of triples &lt;Teacher, Group, Sub-ject&gt;. A mapping from variables to sets of possible values is a domain. Some popular domains for constraint programming are:  Boolean domains, where only true/false constraints apply (SAT problem)  Integer domains, rational domains  Linear domains, where only linear functions are described and analyzed (although approaches to non-linear problems do exist)  Finite domains, where constraints are defined over finite sets  Mixed domains, involving two or more of the above Finite domains are one of the most successful domains of constraint programming. In some areas (like operation research), constraint programming is often identified with constraint programming over finite domains.</p><p>Definition 2 A domain d is a function mapping variables to sets of values, such that d(x) V. The set of all domains is Dom: = X → P (V). The set of values in d for a particular variable x, d(x), is called the variable domain of x. A domain d represents a set of assignments, a constraint, defined as</p><formula xml:id="formula_2">  d(x) a(x) X x | Asn a = con(d)     : :</formula><p>(3) Said that an assignment con(d) a  is licensed by d. In our example, we can implement two types of domain realization. Each domain can be realized as a state of an agent, and be (or not) omitted by propagator during insertion, or other way -store all sets of domain in environment' state.</p><p>Definition 3 A constraint satisfaction problem (CSP) is a pair &lt;d, C&gt; of a domain d and a set of constraints C. The constraints C are interpreted as a conjunction of all c Є C and are thus equivalent to the constraint  </p><formula xml:id="formula_3">c a C c | Asn a     :</formula><p>. The solutions of a CSP &lt;d, C&gt; are the assignments licensed by d that satisfy all constraints in C, defined as</p><formula xml:id="formula_4">  c a C c | con(d) a = &gt;) C d, sol(&lt;     : : )</formula></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">Propagators</head><p>The basis of a propagation-based constraint solver is a search procedure, which systematically enumerates the assignments licensed by the domain d of a CSP &lt;d, C&gt;.</p><p>For each assignment, the solver uses a decision procedure for each constraint to determine whether the assignment is a solution of the CSP. Enumerating all assignments would be infeasible in practice, so in addition to the decision procedure, the solver employs a pruning procedure for each constraint, which may rule out assignments that are not solutions of the constraint.</p><p>Two problems, decision, and pruning procedure for constraints implemented by propagators. Each propagator induces particular constraint. Propagator decides for a given assignment, whether it satisfies the induced constraint, and it can cut off (prune) these tasks from the domain that do not satisfy the constraint. Interleaving propagation and search yield sound and complete procedure for solving CSP. It is complete, because only the assignments that are not solutions are pruned by propagators, and all other assignments are in enum. This is sound, because for each of these tasks, the propagators to decide whether it's the definition of solution. The formal definition of propagators author (see <ref type="bibr" target="#b0">[1]</ref>), reflects the minimum properties that are needed in order to get a sound and complete solver. Thus, this model differs from the one commonly found in the literature. Furthermore, knowledge of the unique characteristics of the propagators induced constraints is new. The authors define the propagators in terms domains.</p><p>A propagator is a function p that takes a domain as its argument and returns a stronger domain, it may only prune assignments. If the original domain was an assigned domain {a}, the propagator either accepts it (p({a}) = {a}) or rejects it (p({a}) = 0), realizing the decision procedure for its constraint. In fact, each propagator induces a unique constraint, the set of assignments that it accepts. To make this setup work, we need one additional restriction. The decision procedure and the pruning procedure must be consistent: if the decision procedure accepts an assignment, the pruning procedure must never remove this assignment from any domain-this property is called soundness. </p><formula xml:id="formula_5">, if   d a  , then   p(d) ) a p( </formula><p>The set of all propagators is Prop. If a propagator p returns a strictly stronger domain d) (p(d)  , we say that p prunes the domain d. The propagator p induces the constraint p c defined by the set of assignments accepted by p:</p><formula xml:id="formula_6">      a = ) a p( | Asn a = c p  :<label>(5)</label></formula><p>Soundness expresses exactly that the decision and the pruning procedure realized by a propagator are consistent. A direct consequence is that a propagator never removes assignments that satisfy its induced constraint.</p><p>Focusing on our problem, we implement the idea of propagators in additional functions that will proceed the domains (as agent state or environment state) before insertion. Then after the insertion call other propagators to prune from their induced domain unnecessary values to decreasing with each step the search field.</p><p>For abstracting the solution of the problem we should give the definition and describing of propagation problem, as a higher model of solution of problems of given type.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.1">Propagation Problem</head><p>Propagators were defined as a refinement of constraints -each propagator induces one particular constraint, but in addition has an operational meaning, its pruning procedure. It is possible to define the operational equivalent of a CSP, a propagation problem. Propagation problems realize all constraints of a CSP using propagators. .</p><p>The set of solutions of a PP d, P can be defined equivalently as</p><formula xml:id="formula_7">      a = ) a p( P p | Asn a = &gt;) P d, sol(&lt; : :   </formula><p>, just applying the definitions of induced constraints and solutions of CSPs.</p><p>Solution of propagation problem make by using propagators, at each step of inserting an agent into environment. For this, as we mentioned earlier, we will inspect by propagator each domain that is stored in the attributes of the agent. Before each insertion, a domain stored in the attributes of the agent will checked by parameters gained while working. Let's we look at insertion machine architecture The calculation of a insertion function can be tested for the ability to insert the propagator of the agent, which is inserted. If propagator exhausted domain that store in the agent, inserting step will rejected.</p><p>Existence of strongest and weakest propagators. Propagators combine a decision procedure with a pruning procedure. While the decision procedure determines the constraint a propagator induces, there is some liberty in the definition of the prun-ing, as long as it is sound. Thus, there are different propagators for the same constraint, and they can be arranged in a partial order according to their strength: Definition 6 Let p1 and p2 be two propagators that induce the same constraint. Then p1 is stronger than p2 (written if there is a sequence of transitions that transforms d into a stable domain d′. This sequence is empty, d d  , if d is stable. The transition system of a propagation problem is non-deterministic, as there are many possible chains of propagation that result in a stable domain.</p><p>Fixed points. The important theorem that ensures that constraint propagation is useful in practice is that, given a propagation problem &lt;d,P&gt;, its transition system is finite and terminating. No matter in what order the propagators are applied, we reach a stable propagation problem after a finite number of steps.</p><p>The naive approach to solving a propagation problem &lt;d,P&gt; is to generate all assignments d a  , and then use the propagators P p  to check whether a satisfies all constraints. This approach makes use of the fact that propagators realize decision procedures for their induced constraints, but does not use their pruning capabilities. A solver that proceeds naively in this fashion is said to follow the generate-and-test approach.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">Conclusion</head><p>In conclusion, it can be said that the search for solutions by the generate-and-test approach is inefficient, so we will consider other options. Nevertheless, this option works well for prototyping, because of ease of implementation. In the future, we plan to create a working prototype of the university schedule, which plans to make a universal, independent of the input parameters, the types of activities and a list of lessons. The most effective solution to this problem now is supposed to use multi-layer environments, for pruning each of input domains by few environments and few propagators.</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. Insertion machine architecture</figDesc><graphic coords="6,151.14,432.36,292.92,139.80" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_1"><head></head><label></label><figDesc>Definition 5 A propagation problem (PP) is a pair &lt;d, P&gt; of a domain d and a set of propagators P. The induced constraint satisfaction problem of a propagation problem &lt;d, P&gt; is the CSP</figDesc><table><row><cell> tions of the induced CSP,</cell><cell> c d, p  p | P d, sol(&lt;</cell><cell>&gt; P = . The solutions of a PP &lt;d, P&gt; are the solu- &gt;) P p | c d, sol(&lt; &gt;)</cell></row></table><note>p  :</note></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_2"><head></head><label></label><figDesc>Transition System. A propagation-based solver interleaves constraint propagation and search, where constraint propagation means to prune the domain as much as possible using propagators, before search resorts to enumerating the assignments in the domain. Propagating as much as possible means, in the context of propagation problems, to compute a mutual fixed point of all propagators. Transitions. Let &lt;d, P&gt; be a propagation problem. If there is a propagator P p  that can prune the domain d, that is, if d p(d)  , then applying p yields a new, simpler propagation problem, &lt;p(d), P&gt; . Soundness of p makes sure that the new problem has the same set of solutions as the original problem,</figDesc><table><row><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell>1 p </cell><cell>p</cell><cell>2</cell><cell>) if and only if for all domains</cell></row><row><cell>d,</cell><cell cols="2">(d) 1 p</cell><cell></cell><cell>p</cell><cell>2</cell><cell>(d)</cell><cell>.</cell><cell></cell></row><row><cell cols="2">2.2</cell><cell cols="8">Propagation as a Transition System</cell></row><row><cell cols="10">Propagation as a &gt;) P p(d), sol(&lt; = &gt;) P d, sol(&lt;</cell><cell>.</cell></row><row><cell></cell><cell cols="9">A propagation problem thus induces a transition system, where a transition is pos-</cell></row><row><cell cols="10">sible from a domain d to a domain</cell><cell>d d'  if there is a propagator</cell><cell>P p  such that p(d)</cell></row><row><cell cols="10">= d′ . Written such a transition</cell></row><row><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell>d</cell><cell>|</cell><cell></cell><cell>p</cell><cell></cell><cell>d'</cell><cell>(6)</cell></row><row><cell></cell><cell cols="9">Definition 7 Let d be a domain. A transition</cell><cell>d</cell><cell>|</cell><cell></cell><cell>p</cell><cell></cell><cell>d'</cell><cell>with a propagator p to a</cell></row><row><cell cols="10">domain d′ is possible if and only if d′ = p(d) and</cell><cell>d d'  . The transition system of a</cell></row><row><cell cols="10">propagation problem &lt;d, P&gt; consists of all the transitions that are possible with</cell></row><row><cell cols="5">propagators</cell><cell></cell><cell cols="4">P p  , starting from d. A terminal domain, that is, a domain d such that</cell></row><row><cell cols="8">there is no transition</cell><cell>d</cell><cell>|</cell><cell></cell><cell>p</cell><cell></cell><cell>p(d)</cell><cell>for any propagator</cell><cell>P p  , is called stable.</cell></row><row><cell></cell><cell cols="3">Written</cell><cell cols="3">d </cell><cell>d'</cell><cell></cell></row></table></figure>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<monogr>
		<author>
			<persName><forename type="first">G</forename><surname>Tack</surname></persName>
		</author>
		<title level="m">Constraint Propagation. Models, Techniques, Implementation</title>
				<meeting><address><addrLine>Saarbrucken</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2009">2009</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">Insertion Modeling System and Constraint Programming</title>
		<author>
			<persName><forename type="first">A</forename><surname>Letichevsky</surname></persName>
		</author>
		<author>
			<persName><forename type="first">O</forename><surname>Letichevskyi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Peschanenko</surname></persName>
		</author>
		<author>
			<persName><forename type="first">I</forename><surname>Blinov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Klionov</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. 7th Int. Conf. ICTERI 2011</title>
		<title level="s">CEUR-WS</title>
		<editor>
			<persName><forename type="first">V</forename><surname>Ermolayev</surname></persName>
		</editor>
		<meeting>7th Int. Conf. ICTERI 2011<address><addrLine>Kherson, Ukraine</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2011">2011</date>
			<biblScope unit="volume">716</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<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>
				<imprint>
			<date type="published" when="1996">1996</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">A General Theory of Action languages</title>
		<author>
			<persName><forename type="first">A</forename><surname>Letichevsky</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Gilbert</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Cybernetics and System Analyses</title>
		<imprint>
			<biblScope unit="issue">1</biblScope>
			<biblScope unit="page" from="16" to="36" />
			<date type="published" when="1998">1998</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">A Model for Interaction of Agents and Environments</title>
		<author>
			<persName><forename type="first">A</forename><surname>Letichevsky</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</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>
		<meeting><address><addrLine>Berlin Heidelberg</addrLine></address></meeting>
		<imprint>
			<publisher>Springer Verlag</publisher>
			<date type="published" when="1999">1999</date>
			<biblScope unit="volume">1827</biblScope>
			<biblScope unit="page" from="311" to="328" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">Algebra of Behavior Transformations and its Applications</title>
		<author>
			<persName><forename type="first">A</forename><surname>Letichevsky</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Structural theory of Automata, Semigroups, and Universal Algebra</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>
			<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="b6">
	<monogr>
		<title level="m" type="main">UML for Real: Design of Embedded Real-Time Systems</title>
		<editor>Martin, G., Selic, B.</editor>
		<imprint>
			<date type="published" when="2003">2003</date>
			<publisher>Kluwer Academic Publishers</publisher>
			<pubPlace>Amsterdam</pubPlace>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<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="b8">
	<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="b9">
	<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><genName>Jr</genName></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>

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