<?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="uk">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">MATHEMATICAL FOUNDATIONS FOR DESIGNING AND DEVELOPMENT OF INTELLIGENT SYSTEMS OF INFORMATION ANALYSIS</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author role="corresp">
							<persName><forename type="first">D</forename><forename type="middle">O</forename><surname>Terletskyi</surname></persName>
							<email>dmytro.terletskyi@gmail.com</email>
							<affiliation key="aff0">
								<orgName type="institution">Taras Shevchenko National University of Kyiv</orgName>
								<address>
									<addrLine>Cybernetics Faculty 03680, Academician Glushkov Avenu 4d</addrLine>
									<settlement>Kyiv</settlement>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">O</forename><forename type="middle">I</forename><surname>Provotar</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">Taras Shevchenko National University of Kyiv</orgName>
								<address>
									<addrLine>Cybernetics Faculty 03680, Academician Glushkov Avenu 4d</addrLine>
									<settlement>Kyiv</settlement>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">MATHEMATICAL FOUNDATIONS FOR DESIGNING AND DEVELOPMENT OF INTELLIGENT SYSTEMS OF INFORMATION ANALYSIS</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">5C08B4A57E52A5D7631D913B98BB77A1</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T05:17+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 article is an attempt to combine different ways of working with sets of objects and their classes for designing and development of artificial intelligent systems (AIS) of analysis information, using object-oriented programming (OOP). This paper contains analysis of basic concepts of OOP and their relation with set theory and artificial intelligence (AI). Process of sets and multisets creation from different sides, in particular mathematical set theory, OOP and AI is considered. Definition of object and its properties, homogeneous and inhomogeneous classes of objects, set of objects, multiset of objects and constructive methods of their creation and classification are proposed. In addition, necessity of some extension of existing OOP tools for the purpose of practical implementation AIS of analysis information, using proposed approach, is shown.</p><p>Дана стаття є спробою поєднати різні підходи до роботи з множинами об'єктів та їхніми класами задля проектування і розробки систем штучного інтелекту (СШІ) для аналізу інформації, використовуючи об'єктно-орієнтоване програмування (ООП). Робота містить аналіз базових концепцій ООП і їхній зв'язок з теорією множин та штучним інтелектом (ШІ). Розглядається процес створення множин та мультимножин з різних сторін, зокрема з огляду на математичну теорію множин, ООП та ШІ. Запропоновані визначення об'єкту та його властивостей, однорідного та неоднорідного класу об'єктів, множини об'єктів, мультимножини об'єктів і конструктивні методи їх створення та класифікації. Окрім того, показана необхідність в деякому розширенні засобів ООП з метою практичної реалізації СШІ для аналізу інформації, використовуючи запропонований підхід.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="uk">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Introduction</head><p>Modern programming includes many different paradigms, approaches, techniques and programming languages. Object-Oriented Programming (OOP) is one of the famous and useful programming paradigm nowadays. Indeed, according to [1-3] the most popular programming languages are such languages, which support OOP.</p><p>As we know, object and class are the main concepts of OOP. According to <ref type="bibr" target="#b1">[4]</ref>, objects are the building blocks of an object-oriented program. We associate these blocks with the objects of real world, during developing programs. Concerning classes, they are blueprints, which we use as the basis for objects building. Every object is defined by two terms: attributes and behaviors. Attributes are properties of object, which describe it, and behaviors are procedures, functions (methods) which we can apply to this object and change its state, form and so on. According to <ref type="bibr" target="#b2">[5]</ref>, real world is created by objects, and OOP is the approach for description and simulation of this world or some his particular parts.</p><p>It is obvious, if person can develop the programs, which operate with models of objects of real world, their classes and so on, then this person precisely knows how to operate with them using his mind (intellect). Of course, sometimes people do this consciously, sometimes not, but it is important that they do this, and simple proof of this fact is that people have invented OOP. However, real world is very complicated, and consists of huge number of objects of different classes, that is why formalization of objects of real world into OOP objects and classes sometimes is nontrivial. Despite this, programming, in particular OOP, is developing day by day. People are finding more and more new practical applications for programming, and such area as Artificial Intelligence (AI) is not exception.</p><p>Modern AI includes many directions as knowledge representation, automated planning and scheduling, machine learning, robotics, computer vision, artificial creativity, natural language processing, and so on. Nevertheless, all these directions have something common among themselves. One of the main targets for all these directions is development of intelligent information systems (IIS) or artificial intelligent systems (AIS) for solving particular practical problems in these areas. Also very important aspect of AIS is intellectual analysis of information, in particular in real world or in some its parts. Ideologically this is very close to process of development of object-oriented programs. However, software development which is just tool for solving particular tasks, management by some process, etc. is easier then development of software which has some level of individuality and intellectuality and can do something bigger than just some computations. That is why questions about usability of development AIS using OOP approach appear.</p><p>Nowadays very often development of AIS is reduced to heuristic programming <ref type="bibr" target="#b3">[6]</ref>. The advantage is that such approach gives an opportunity to solve corresponding practical problems, but the disadvantage is that partial solution does not guarantees general solution of corresponding problems. However, every AIS is based on some model of knowledge representation (KR). Nowadays, there is a variety of them. The most famous and common are Semantic Nets, Frames <ref type="bibr" target="#b4">[7]</ref><ref type="bibr" target="#b5">[8]</ref><ref type="bibr" target="#b6">[9]</ref><ref type="bibr" target="#b7">[10]</ref><ref type="bibr" target="#b8">[11]</ref><ref type="bibr" target="#b9">[12]</ref><ref type="bibr" target="#b10">[13]</ref> and Logical Models <ref type="bibr" target="#b6">[9]</ref><ref type="bibr" target="#b7">[10]</ref><ref type="bibr" target="#b8">[11]</ref><ref type="bibr" target="#b9">[12]</ref><ref type="bibr" target="#b10">[13]</ref><ref type="bibr" target="#b11">[14]</ref> also Scripts <ref type="bibr" target="#b5">[8]</ref><ref type="bibr" target="#b6">[9]</ref><ref type="bibr" target="#b7">[10]</ref>, Conceptual Dependency <ref type="bibr" target="#b5">[8,</ref><ref type="bibr" target="#b7">10]</ref>, Search Spaces, Search Trees <ref type="bibr" target="#b4">[7]</ref>, Petri Nets <ref type="bibr" target="#b5">[8]</ref>, K-Lines, Memory Organization Packets <ref type="bibr" target="#b6">[9]</ref>, Semantic WEB, Computational Knowl-edge Discovery <ref type="bibr" target="#b8">[11]</ref> are known. Furthermore, there are a few hybrid models of KR, in particular Brooks' Subsumption Architecture and Copycat <ref type="bibr" target="#b7">[10]</ref>.</p><p>Each of these models has own specifics and is useful in the particular domain. However, during developing certain AIS we need to implement a model of KR. Therefore, in this case, we have at least two levels of our AIS, first of them is a level of KR model and second one is a level of its practical implementation. In some cases, implementation of particular KR model can cause additional problems and difficulties. That is why, sometimes it leads to development of new programming paradigms and languages, which are invented for effective implementations of particular KR model. One of such examples is programming language PROLOG, which is logical programming language and it gives us opportunities for implementations of different Logical models of KR.</p><p>One of the main postulates of OOP is that objects create world. Development of OO-programs is formal description of objects from some world and relations between them, etc. That is why we can conclude that OOP can be one of the KR models, which represents (describes) knowledge about objects. Such model is very close to human perception of real world, because a person perceives real world by objects of this world. This fact gives us an opportunity to combine level of KR model and level of its practical implementation, during AIS development. In addition, a person also uses concept of class and set of objects in the process of thinking. Really, we use classes and sets in our mental activity during perception, analysis, comparison, retrieval, classification every day. We create classes and sets consciously or subconsciously, operate with them and apply a variety of operations to them. Moreover, set is the central concept in set theory and one of the most important for mathematics in general. However, questions about the origin of specific sets are emerging while analyzing the definition of this term, which is given in <ref type="bibr" target="#b12">[15]</ref>. We can conclude that the "new" set can be obtained by set-theoretic operations over "existing" sets, analyzing the different systems of set theory <ref type="bibr" target="#b13">[16,</ref><ref type="bibr" target="#b14">17]</ref>, and it is really so. However, the questions about origin of these so-called "existing" sets, their number, their types and so on do not disappear. Our target is development of AIS for intellectual analysis of information, based on operating with sets of objects and their classes, using OOP. However, primarily we need to understand specifics of classes' and sets creation from different sides, i.e. sets in the set theory, sets and classes in OOP and in the process of human thinking.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Objects and Classes</head><p>Objects. We know that each set consists of elements, which form it. Everything, phenomena of our imagination or of our world can be the elements of the set. It is convenient for us to call them objects. Let consider such object as "natural number". It is clear that every natural number must be integer and positive. These are characteristic properties of natural numbers. It is obvious, that 11 is really a natural number, but −16 and 9.52, for example, are not natural numbers. We can conclude that each object has certain properties, which define it as some essence while analyzing this fact. Usually in OOP <ref type="bibr" target="#b1">[4,</ref><ref type="bibr" target="#b2">5]</ref>, we can consider properties of objects separately from objects. Such form of consideration is very close to concept of object-oriented class (OO class). Actually, objects and their properties cannot exist separately, because if we assume the opposite, we will have contradiction. On the one hand, object cannot exists separately from its properties, because without properties we cannot imagine and cannot describe it. On the other hand, object's properties cannot exist separately from object, because without object we cannot see and cannot perceive them. That is why, we cannot consider them separately, and there are few variants of the definitions order. It means that we cannot introduce definition of object without definition of its properties and vice versa. Therefore, we decided to introduce concept of object's properties firstly.</p><p>Globally we can divide properties of objects into two types -quantitative and qualitative. We will define these two types of object's properties formally, but their semantics has intuitive nature.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Definition 1. Quantitative property of object</head><formula xml:id="formula_0">A is a tuple ))) ( ( )), ( ( ( ) ( A p u A p v A p i i i  , where n i , 1  , )) ( ( A p v i is an quantitative value of ) ( A p i ,<label>and</label></formula><formula xml:id="formula_1">)) ( ( A p u i are units of measure of quantitative value of ) ( A p i .</formula><p>Let us consider some examples of quantitative properties of objects. Suppose we have an apple, and one of its properties is weight. We can present this property as follows We can conclude that, such approach gives an opportunity to combine description of property and its verification in the one function, i.e. verification function is a verification function and a description of property at the same time. Therefore, different algorithms can be verifiers and descriptors of property simultaneously.  .</p><formula xml:id="formula_2">))) ( ( )), (<label>( ( )</label></formula></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Classes of Objects.</head><p>In general, we can divide objects on concrete and abstract, and does not matter when or how someone created each particular object. It is material implementation of its abstract imagea prototype. This prototype is essentially an abstract specification for creation the future real objects. Besides properties of objects, we should allocate operations (methods) which we can apply to objects, considering the features of their specifications. Really, we can apply some operations (methods) to objects for their changing and for operating with them. That is why, it will be useful to define concept of object's operation (method).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Definition 9. Operation (method) of object</head><formula xml:id="formula_3">A is a function ) ( A f</formula><p>, which we can apply to object A considering the features of its specification.</p><p>For example, for such objects as natural numbers n , m we can define operations "+" and "*". In OOP <ref type="bibr" target="#b1">[4,</ref><ref type="bibr" target="#b2">5,</ref><ref type="bibr" target="#b16">19,</ref><ref type="bibr" target="#b17">20]</ref>, programmers operate with specifications and methods of objects without objects, and they call it a type or a class of object. It consists of fields and methods. Fields of class, essentially, are specification of class. Methods are functions, which we can apply to objects of this class for their changing and for operating with them. Concept of OO class is similar to universal algebra <ref type="bibr" target="#b18">[21,</ref><ref type="bibr" target="#b19">22]</ref>, where carrier of algebra consists of objects and signature consists of methods of objects. That is why, henceforth sometimes we will use title signature of class for methods of class. Let us define concept of object's signature.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Definition 10. Signature of object</head><formula xml:id="formula_4">A is a vector )) ( ),..., ( ( ) ( 1 A f A f A F m </formula><p>, where</p><formula xml:id="formula_5">) (A f i , m i , 1 </formula><p>is an operation (method) of object A .</p><p>Generally, signature of particular object can consist of different quantity of operations, but in practice, especially in programming, usually we are considering finite signatures of objects.</p><p>According to definition of object, every object has some specification, which defines it as some essence. There are some objects, which have similar specifications. It means that we can apply the same methods to them. Let us define similar objects. Definition 11. Objects A and B are similar objects, if and only if, when they have the same dimension and equivalent specifications.</p><p>If certain two objects are similar, we can conclude that these objects have the same type or class. Now we can introduce concept of object's class.</p><formula xml:id="formula_6">Definition 12. Object's class T is a tuple )) ( ), ( ( T F T P T </formula><p>, where ) (T P is abstract specification of some quantity of objects, and ) (T F is their signature.</p><p>When we talk about class of objects, we mean properties of these objects and methods, which we can apply to them. Class of objects is a generalized form of consideration of objects and operations on them, without these objects.</p><p>As an example, let us describe type Int in programming language C++, using concept of similar objects and object's class. <ref type="bibr">Let</ref>  Considering concept of OO class, we can conclude that class is a prototype for particular objects, and all objects of class are described by class description. It means that every particular object of the class has the same specification and signature. That in turn, imposes some constraints on description of objects from real world. There are many different objects of real world, which belong to different classes, and if we need to work with them, we can describe them, using new class for each new type of objects. Especially, if we work with not very big quantity of different types of objects, we can do it without any fears. However, if we need to work with huge quantity of different types, for example, with a few thousands of different types, just a process of description of such types is very complex and time-consuming not to mention size of code and performance of such programs.</p><p>According to definitions of object and object's class, we can conclude two points. Firstly, every object is a member of at least one class of objects, and secondly, objects and their classes cannot exist separately. Furthermore, some objects are members of few classes simultaneously. For example, such objects as natural numbers </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Universal Operation on Objects and Runtime Class Generation</head><p>One of the most important aspects of OOP is an opportunity to work only with classes, which are described before program execution. Of course, some programs provide us with a possibility to work with new classes, which we can obtained using basic classes. However, we cannot obtain new classes, which are not inheritors of basic classes, during program execution. In modern programming, this process is known as runtime class generation (RCG) or runtime class creation (RCC). Nowadays, there are some approaches for implementation of this task for some OOP-languages, in particular for Java <ref type="bibr">[24]</ref> and C# <ref type="bibr">[25]</ref>. These tools based on manipulating with bytecode and implemented for such platforms of programming as Java and .NET. However, now we will not discuss practical implementations of RCG for concrete platforms of programming, but will focus on specifics of this process.</p><p>It is known, that logic of program provides access and work with some classes of objects, during program execution, depending on particular program scenario. Moreover, it can provide RCG, based on some constructors of classes. According to this, we will propose some constructors of classes, defining some universal operations on objects.</p><p>As it was mentioned before, in OOP, objects have methods. Usually they are functions, which we can execute for these objects. We can divide methods of objects on two types, depending on character of their action. They are modifiers and exploiters. Modifiers are functions, which can change objects, in particular some fields of objects. Exploiters are functions, which use objects as arguments and cannot change them. However, majority of methods of objects are local with respect to objects, and cannot be applied to objects of different types. Of course, there are some methods, which we can apply to objects of different types, but usually we need to use overloading operator for this. Nevertheless, we will define some universal operations for objects, which can be applied to any objects. Let us do it using the concept of object and object's class.</p><formula xml:id="formula_7">Definition 15. Union  of 2  n</formula><p>arbitrary objects is a new set of objects S , which obtain in the following way</p><formula xml:id="formula_8">) ( / } ,..., { ) ( / ... ) ( / 1 1 1 S T A A A T A A T A S n n n    </formula><p>, where n A A ,..., 1 are objects, such that</p><formula xml:id="formula_9">j i A A , </formula><p>, where</p><formula xml:id="formula_10">n j i , 1 , <label>and</label></formula><formula xml:id="formula_11">j i  , 0 ) , (  j i A A Eq , ) ( i A T , n i , 1  is a class of object i A and ) (S T</formula><p>is a class of new set of objects S and n is its cardinality.</p><p>Let us consider such geometrical objects as triangle, square and trapeze. It is obvious that these objects belong to different classes of geometrical figures. Let us denote triangle as A , square as B , trapeze as C , and describe their classes as follows )) ( ),..., ( ( ) ( </p><formula xml:id="formula_12">4 1 A p A p A P  , )) ( ),..., ( ( ) ( 3 1 B p B p B P  , )) ( ),..., ( ( ) ( 4 1 C p C p C P  , )) ( ), ( ( ) ( 2 1 A f A f A F  , )) ( ), ( ( ) ( 2 1 B f B f B F  and )) ( ), ( ( ) ( 2 1 C f C f C F  . Properties ) ( 1 A p , ) ( 1 B p , ) ( 1 C</formula><formula xml:id="formula_13">A f A p A pr  , )) ( ( ) ( 2 2 B f B pr  , )) ( ), ( ( ) ( 2 4 3 C f C p C pr </formula><p>. Essentially, set of objects S is the set of trian- </p><formula xml:id="formula_14">  A f A f Eq A f A F i i i  . Difference</formula><formula xml:id="formula_15">A f A p C A pr  .</formula><p>As in the case of intersection, we have obtained new class of objects, which describes some type of geometric figures, however, unlike the previous case we can say that this new type of geometric figures is a triangle, although it is described using smaller specification.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Definition 18. The symmetrical difference  of two arbitrary objects 1</head><p>A and 2 A is a class of objects )) ( ), ( ( </p><formula xml:id="formula_16">) ( A F A P A T  , where 0 )) ( ), ( ( | )) ( ), ( ( ) ( 2 1 2 1 2 1 2 1   A p A p Eq A p A p A P i i i i  , 0 )) ( ), ( ( | )) ( ), ( ( ) ( 2 1 2 1 2 1 2 1   A f A f Eq A f A f A F i i i i  . Symmetrical difference</formula><formula xml:id="formula_17">C A pr C A pr C A T     , where )) ( ), ( ( ) ( 2 4 1 A f A p C A pr   and )) ( ), ( ( ) ( 2 4 2 C f C p C A pr  </formula><p>. As in the case of difference, we have obtained new class of objects, which describes a type of geometric figures, however, as in the case of intersection, we do not know exactly which type of geometrical figures this class describes. Nevertheless, we can say that this class describes two types of geometrical figures, and one of them is triangle.</p><formula xml:id="formula_18">1 1 1 S T C B A A S T B A C T C A T A S T S C T C A T A S        .</formula><p>As we can see, creation of sets and multisets of objects entails creation of new classes of objects, in particular inhomogeneous, that causes some problems related to description of such classes in OOP. At first glance it may seems, that there is no necessity to work with such classes, and we can use just concept of homogeneous class, that implemented within OOP. However, if we analyze some aspects of human mind, especially mechanisms of its thinking and analysis, we can conclude that concept of set of objects is one of the basic and very important concepts for them. Really, let us consider situation, when you need to find some book among big amount of different books, which lying on the shelves of bookcase. If you know how exactly this book looks, you can imagine this book and you can distinguish it from other books in this bookcase. Finally, during searching for this book, you perform certain exhaustive search, and at the same time, you create set of books, which you have checked. Let us imagine another situation, when you need to count money, which you have in your wallet. During counting, you create at least two sets, set of banknotes and set of coins. In addition, we can consider situation when you want to play chess, and after opening the box with chess, you need to make initial arrangement of figures on the chessboard. During figures placement, you create set of white and set of black figures from set of all figures. These are just a few simple examples from our daily activity. Very often in such situations and similar to them we operate with sets of objects subconsciously, and as the result, we pay little attention to this, but it is happening permanently. That is why we can conclude that creation of sets and classes of objects is normal activity of our mind, and if we want to simulate and reproduce this process, using computer system, we need to have certain opportunities to work with sets of objects and inhomogeneous classes of objects. It means we need appropriate tools within certain OOP-language for working with such abstractions.</p><p>Nowadays, there are a few different implementations of tools for working with sets within some OOP-languages, in particular set in STL for C++ <ref type="bibr" target="#b21">[26]</ref>, HashSet in Java <ref type="bibr" target="#b17">[20]</ref>, HashSet, SortedSet and ISet in C# <ref type="bibr" target="#b22">[27]</ref>, set and frozenset in Python <ref type="bibr" target="#b23">[28]</ref>. These tools allow sets creation, executing set-theoretic operations, membership checking, adding and removing of elements and checking of equivalence between sets, etc. However, we have not opportunities for working with classes of sets and multisets, and this is one of disadvantages of modern OOP.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Conclusions</head><p>In this paper we analyzed such basic concepts of OOP as object and class and their relation with set theory and AI. According to this, definitions of object and its properties, homogeneous and inhomogeneous classes of objects were proposed. We defined such operations on objects as union, intersection, difference, symmetric difference and cloning. Besides, we considered process of runtime class generation and showed that intersection, difference, symmetric difference of objects are examples of classes' generators.</p><p>Process of sets and multisets creation was considered in details from different sides, in particular mathematical set theory, OOP and AI. After that, constructive definition of set of objects, multiset of objects and methods of their creation were proposed. Relation between sets of objects and classes of objects was also shown. The proposed approach allows not only to create (generate) sets and multisets of objects, but also to classify them. It also allows considering the problem of object classification and identification in another way.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_0"><head></head><label></label><figDesc>Let us consider some examples of qualitative properties of objects. Suppose we have an integer number n , and one of its properties is positivity. We can present this property as follows case of verification function -predicate or Boolean-valued function.Let us consider such object as car, and one of its properties is "high speed". Suppose that maximum speed of this car is 200 km /hour. In this case we cannot precisely conclude about</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></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell>p</cell><cell>positivity</cell><cell>(</cell><cell>n</cell><cell>)</cell><cell></cell><cell>vf</cell><cell>positivity</cell><cell>(</cell><cell>n</cell><cell>)</cell><cell>, where</cell></row><row><cell>vf</cell><cell cols="3">) (n</cell><cell cols="22">is verification function of property</cell><cell>) p positivity . In this case, function (n</cell><cell>vf</cell><cell>positivity</cell><cell>(</cell><cell>n</cell><cell>)</cell><cell>:</cell><cell>p</cell><cell>positivity</cell><cell>(</cell><cell>n</cell><cell>)</cell><cell></cell><cell>} 1 , 0 {</cell><cell>, and it</cell></row><row><cell cols="26">is a particular ) (car vf highspeed</cell><cell>, because "high speed" is</cell></row><row><cell cols="26">fuzzy concept [18]. There are many ways to define value of</cell><cell>vf highspeed</cell><cell>(car</cell><cell>)</cell><cell>, and everything depends on definition of</cell></row><row><cell cols="26">high speed. For example if high speed is 150 km/hour, then we can conclude that</cell><cell>vf highspeed</cell><cell>150 ( km</cell><cell>/</cell><cell>hour</cell><cell>)</cell><cell></cell><cell>1</cell><cell>, and</cell></row><row><cell cols="6">vf highspeed</cell><cell>(</cell><cell cols="2">0</cell><cell cols="5">km</cell><cell>/</cell><cell cols="7">hour</cell><cell cols="2">)</cell><cell cols="2"></cell><cell>0</cell><cell>. Based on this and using proportion we can conclude that</cell><cell>vf highspeed</cell><cell>(</cell><cell>75</cell><cell>km</cell><cell>/</cell><cell>hour</cell><cell>)</cell><cell></cell><cell>0</cell><cell>.</cell><cell>5</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></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell>p</cell><cell>weigth</cell><cell>(</cell><cell>Apple</cell><cell></cell><cell>v</cell><cell>p</cell><cell>weigth</cell><cell>Apple</cell><cell>u</cell><cell>p</cell><cell>weigth</cell><cell>Apple</cell><cell>,</cell></row><row><cell cols="26">and if our apple has the weight of 0.2 kg, then property</cell><cell>p weight</cell><cell>) (Apple</cell><cell>will be the following</cell><cell>p weight</cell><cell>(</cell><cell>) Apple</cell><cell></cell><cell>(</cell><cell>, 2 . 0</cell><cell>kg</cell><cell>)</cell><cell>.</cell></row><row><cell cols="26">Suppose we have a phone number, and one of its properties is sequence of odd numbers, which it comprises. We can</cell></row><row><cell cols="26">present this property as follows</cell><cell>p</cell><cell>oddnum</cell><cell>(</cell><cell>r PhoneNumbe</cell><cell>)</cell><cell></cell><cell>(</cell><cell>v</cell><cell>(</cell><cell>p</cell><cell>oddnum</cell><cell>(</cell><cell>r PhoneNumbe</cell><cell>)),</cell><cell>u</cell><cell>(</cell><cell>p</cell><cell>oddnum</cell><cell>(</cell><cell>r PhoneNumbe</cell><cell>)))</cell><cell>,</cell></row><row><cell cols="26">and if your phone number includes following odd numbers 3,7,5, then property</cell><cell>p oddnum</cell><cell>(</cell><cell>r PhoneNumbe</cell><cell>)</cell><cell>will be the</cell></row><row><cell cols="6">following</cell><cell></cell><cell cols="10">p oddnum</cell><cell>(</cell><cell cols="8">r PhoneNumbe</cell><cell>)</cell><cell></cell><cell>, 3 ((</cell><cell>), 5 , 7</cell><cell>numbers</cell><cell>)</cell><cell>.</cell></row><row><cell></cell><cell></cell><cell></cell><cell></cell><cell cols="22">Definition 2. Two quantitative properties</cell><cell>p i</cell><cell>) ( A</cell><cell>and</cell><cell>p j</cell><cell>(B</cell><cell>)</cell><cell>, where</cell><cell>i , 1 </cell><cell>n</cell><cell>,</cell><cell>j , 1 </cell><cell>m</cell><cell>, are equivalent, i.e.</cell></row><row><cell cols="2">Eq</cell><cell>(</cell><cell>p i</cell><cell>(</cell><cell cols="2">), A</cell><cell cols="4">p</cell><cell>j</cell><cell>(</cell><cell cols="2">B</cell><cell cols="2">))</cell><cell cols="3"></cell><cell cols="3">1</cell><cell cols="3">, if and only if</cell><cell>u</cell><cell>(</cell><cell>p i</cell><cell>(</cell><cell>)) A</cell><cell>u</cell><cell>(</cell><cell>p</cell><cell>j</cell><cell>(</cell><cell>B</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></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell>function</cell><cell>p i</cell><cell>(</cell><cell>) A</cell><cell></cell><cell>vf</cell><cell>i</cell><cell>(</cell><cell>) A</cell><cell>, which defines as a</cell></row><row><cell cols="6">mapping</cell><cell cols="2">vf</cell><cell cols="2">i</cell><cell cols="2">(</cell><cell cols="3">) A</cell><cell>:</cell><cell cols="3">p i</cell><cell cols="2">(</cell><cell cols="4">) A</cell><cell></cell><cell>[</cell><cell>] 1 , 0</cell><cell>,</cell><cell>i , 1 </cell><cell>n</cell><cell>.</cell></row></table><note>.Definition 3. Qualitative property of object A is a verification</note></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_1"><head></head><label></label><figDesc>Dimension of object A is number of properties of object A , i.e.</figDesc><table><row><cell></cell><cell></cell><cell></cell><cell></cell><cell cols="19">Definition 4. Two qualitative properties</cell><cell></cell><cell>p i</cell><cell cols="3">) ( A</cell><cell></cell><cell cols="6">and</cell><cell></cell><cell cols="2">p j</cell><cell>(B</cell><cell>)</cell><cell>, where</cell><cell>i , 1 </cell><cell>n</cell><cell>,</cell><cell>j , 1 </cell><cell>m</cell><cell>, are equivalent, i.e.</cell></row><row><cell>Eq</cell><cell>(</cell><cell>vf</cell><cell>i</cell><cell>(</cell><cell>), A</cell><cell>vf</cell><cell>j</cell><cell>(</cell><cell>B</cell><cell>))</cell><cell></cell><cell>1</cell><cell>, if and only if</cell><cell>(</cell><cell cols="2">vf</cell><cell>i</cell><cell>(</cell><cell>) A</cell><cell></cell><cell>vf</cell><cell>j</cell><cell>(</cell><cell cols="2">)) A</cell><cell></cell><cell>(</cell><cell cols="2">vf</cell><cell>i</cell><cell cols="2">(</cell><cell cols="2">B</cell><cell>)</cell><cell></cell><cell cols="2">vf</cell><cell>j</cell><cell>(</cell><cell>B</cell><cell>))</cell><cell>.</cell></row><row><cell></cell><cell></cell><cell></cell><cell></cell><cell cols="25">Definition 5. Specification of object A is a vector</cell><cell cols="3">P</cell><cell cols="2">(</cell><cell cols="2">) A</cell><cell></cell><cell cols="2">(</cell><cell>1 p</cell><cell>(</cell><cell>),..., A</cell><cell>p</cell><cell>n</cell><cell>(</cell><cell>)) A</cell><cell>, where</cell><cell>p i</cell><cell>) ( A</cell><cell>,</cell><cell>i , 1 </cell><cell>n</cell><cell>is quantita-</cell></row><row><cell cols="17">tive or qualitative property of object A .</cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><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 cols="35">Definition 6. ) ( ) ( A P A D </cell><cell>.</cell></row><row><cell></cell><cell></cell><cell></cell><cell></cell><cell cols="10">Definition 7. Object is a pair</cell><cell cols="2">A</cell><cell cols="4">) / A ( P</cell><cell cols="19">, where A is object's identifier and</cell><cell>P</cell><cell>) ( A</cell><cell>-specification of object.</cell></row><row><cell></cell><cell></cell><cell></cell><cell></cell><cell cols="32">Definition 8. Two objects 1 A and 2 A are equivalent, i.e.</cell><cell cols="3">Eq</cell><cell>(</cell><cell>1 A</cell><cell>,</cell><cell>2 A</cell><cell>)</cell><cell></cell><cell>1</cell><cell>, if and only if</cell><cell>P</cell><cell>(</cell><cell>1 A</cell><cell>)</cell><cell>P</cell><cell>(</cell><cell>2 A</cell><cell>)</cell></row></table><note>Now, we can formulate the definition of "object".Essentially, object is a carrier of some properties, which define it as some essence.</note></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_2"><head></head><label></label><figDesc>us set the next specification for class Int Int . Let define the methods of class Int in the following way: Homogeneous class of objects T is a class of objects, which contains only similar objects.</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>P</cell><cell>(</cell><cell>Int</cell><cell>)</cell><cell></cell><cell>(</cell><cell>1 p</cell><cell>(</cell><cell>Int</cell><cell>),</cell><cell>p</cell><cell>2</cell><cell>(</cell><cell>Int</cell><cell>))</cell><cell>,</cell></row><row><cell cols="6">where property</cell><cell cols="2">( 1 Int p</cell><cell>)</cell><cell cols="8">means "integer number", property</cell><cell>p</cell><cell>( 2 Int</cell><cell>)</cell><cell>means "number not bigger then 2147336147 and</cell></row><row><cell cols="17">not smaller then −2147336148". It is obvious, that all numbers which have properties</cell><cell>( 1 Int p</cell><cell>)</cell><cell>and</cell><cell>p</cell><cell>( 2 Int</cell><cell>)</cell><cell>are objects</cell></row><row><cell cols="17">of class )) ( ), ( ( ) ( 2 1 Int f Int f Int F </cell><cell>,</cell></row><row><cell>where</cell><cell>1 f</cell><cell>(</cell><cell>Int</cell><cell>)</cell><cell cols="2">"  " </cell><cell cols="2">and</cell><cell>f</cell><cell>2</cell><cell>(</cell><cell>Int</cell><cell>)</cell><cell>"*" </cell><cell>.</cell></row><row><cell></cell><cell cols="16">Let us define concept of homogeneous class of objects.</cell></row><row><cell></cell><cell cols="7">Definition 13.</cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell></row></table></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_3"><head></head><label></label><figDesc>As we can see, class R has the biggest cardinality in this case; furthermore, it consists of groups of objects of different types. It contradicts concept of OO class, because different objects from one OO class cannot have different specifications and signatures. That is why we cannot describe such class of objects using OO class. It is obvious that they are objects of different types, but all of them are objects of class R . However, if these objects belong to class R , they must conform to the specification It is obvious, that mathematically all these numbers 3, 2.75, −16, 4, −7.48 are objects of the class R , but, as we can see, we really cannot describe them using one OO class. Of course, real numbers implemented for many program languages as one of the primitive types of data, which we can use without any descriptions, because it is built-in. However, it is one of the examples of inhomogeneous class of objects.As we can see, there are two different types of object classes, that is why, let us define concept of inhomogeneous class of objects.</figDesc><table><row><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell cols="30">Definition 14. Inhomogeneous class of objects T is a tuple</cell><cell>T </cell><cell>( Core</cell><cell>( T</cell><cell>),</cell><cell>1 pr</cell><cell>(</cell><cell>1 A</cell><cell>),...,</cell><cell>( n A n pr</cell><cell>))</cell><cell>, where</cell></row><row><cell cols="4">Core</cell><cell cols="2">( T</cell><cell cols="2">)</cell><cell cols="2"></cell><cell cols="3">(</cell><cell cols="2">P</cell><cell cols="3">( T</cell><cell cols="2">),</cell><cell cols="2">F</cell><cell cols="4">( T</cell><cell cols="2">))</cell><cell cols="7">is the core of class T , which includes properties and methods similar to specifications</cell></row><row><cell>P</cell><cell cols="3">( 1 A</cell><cell cols="5">),...,</cell><cell cols="2">P</cell><cell cols="2">(</cell><cell></cell><cell cols="3">n A</cell><cell>)</cell><cell></cell><cell cols="11">and signatures</cell><cell cols="2">F</cell><cell cols="2">( 1 A</cell><cell>),...,</cell><cell>F</cell><cell>(</cell><cell>n A</cell><cell>)</cell><cell>respectively, and where</cell><cell>i pr</cell><cell>(</cell><cell>i A</cell><cell>)</cell><cell></cell><cell>(</cell><cell>P</cell><cell>(</cell><cell>i A</cell><cell>),</cell><cell>F</cell><cell>(</cell><cell>i A</cell><cell>))</cell><cell>,</cell><cell>i , 1 </cell><cell>n</cell><cell>are projec-</cell></row><row><cell cols="18">tions objects</cell><cell cols="7">A ,..., 1</cell><cell></cell><cell cols="2">n A</cell><cell cols="7">, which consist of properties and methods typical only for these objects.</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></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell>n ,..., 1</cell><cell>n n</cell></row><row><cell cols="35">are members of such classes as natural numbers, integer numbers, rational numbers and real numbers, i.e.</cell></row><row><cell>n</cell><cell cols="4">,...,</cell><cell cols="2">n n</cell><cell cols="3"></cell><cell cols="4">N</cell><cell cols="3"></cell><cell cols="2">Z</cell><cell cols="2"></cell><cell cols="3">Q</cell><cell cols="3"></cell><cell cols="2">R</cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell></row><row><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell cols="30">Let consider the class of real numbers R , and describe it by the following specification</cell></row><row><cell>P</cell><cell>(</cell><cell>R</cell><cell cols="2">)</cell><cell></cell><cell></cell><cell>(</cell><cell cols="3">1 p</cell><cell cols="3">(</cell><cell cols="2">R</cell><cell cols="4">),...,</cell><cell cols="3">5 p</cell><cell cols="2">(</cell><cell cols="2">R</cell><cell cols="2">),...)</cell><cell cols="4">, where</cell><cell cols="2">( 1 R p</cell><cell>)</cell><cell>is "integer number",</cell><cell>p</cell><cell>( 2 R</cell><cell>)</cell><cell>is "natural number",</cell><cell>( 3 R p</cell><cell>)</cell><cell>is "fractional num-</cell></row><row><cell cols="4">ber",</cell><cell></cell><cell>p</cell><cell cols="6">( 4 R</cell><cell cols="2">)</cell><cell></cell><cell cols="18">is "negative integer",</cell><cell cols="2">( 5 R p</cell><cell>)</cell><cell>is "even number". Let consider following numbers 3, 2.75, −16, 4, −7.48.</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></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell>P</cell><cell>(R</cell><cell>)</cell><cell>. Clearly that they do so, but in different ways</cell></row><row><cell cols="13">(see Table).</cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><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></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell cols="7">Table. Conformity of objects 3, 2.75, −16, 4, −7.48 to the class R</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></cell><cell></cell><cell></cell><cell>p</cell><cell>j</cell><cell>(</cell><cell>i A</cell><cell>)</cell><cell>/</cell><cell>i A</cell><cell>3</cell><cell>2.75 −16</cell><cell>4</cell><cell>−7.48</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></cell><cell></cell><cell></cell><cell cols="5">Integer number</cell><cell>1</cell><cell>0</cell><cell>1</cell><cell>1</cell><cell>0</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></cell><cell></cell><cell></cell><cell cols="5">Natural number</cell><cell>1</cell><cell>0</cell><cell>0</cell><cell>1</cell><cell>0</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></cell><cell></cell><cell></cell><cell cols="5">Fractional number</cell><cell>0</cell><cell>1</cell><cell>0</cell><cell>0</cell><cell>1</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></cell><cell></cell><cell></cell><cell cols="5">Negative integer</cell><cell>0</cell><cell>0</cell><cell>1</cell><cell>0</cell><cell>1</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></cell><cell></cell><cell></cell><cell></cell><cell cols="4">Even number</cell><cell>0</cell><cell>0</cell><cell>1</cell><cell>1</cell><cell>1</cell></row></table><note>1.</note></figure>
		</body>
		<back>
			<div type="annex">
<div xmlns="http://www.tei-c.org/ns/1.0"><p>i and 2 i .</p><p>Let us calculate intersection of triangle A and square B , which were described above.</p><p>As the result we have obtained new class of objects ) ( B A T  , which does not contain any projections of objects, i.e. ) ( </p><p>, where ) ( A P is specification of object A and i is a number of its clone. This operation is similar to concept of copy constructor in C++ <ref type="bibr" target="#b5">[8]</ref>, and is an example of constructor of objects.</p><p>As we can see, the majority of operations on objects that defined above are similar to set-theoretic operations in classical set theory <ref type="bibr" target="#b20">[23]</ref>. However, in contrast to them, operations on objects give us opportunities to create sets and classes of objects.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Sets of Objects and Inhomogeneous Classes</head><p>Sets of Objects. There are a few ways to create set of objects. Firstly, we can obtain a set of objects using union operation to not less than two arbitrary objects. Secondly, we can do it using set-theoretic operations over sets of objects. Eventually, we can obtain a set of objects combining these two approaches, namely to use union operation to not less than two arbitrary objects and not less than one arbitrary set of objects. Let us define concept of set of objects, using these ideas, concepts of object and class of objects. Definition 20. The set of objects S is a union, which satisfies one of the following schemes: We have defined union operation for scheme 1 S , now let us do this for schemes 2 S and 3 S . As we know, scheme 2 S is defined in classical set theory, and this operation is known as a union of sets <ref type="bibr" target="#b20">[23]</ref>. However, that definition does not consider concept of class of objects, that is why we need to redefine this operation. </p><p>which consist of triangle A , square B and trapeze C , which were described above, and calculate their union.</p><p>).</p><p>As we can see, we have obtained the same result, as in the case of union of objects A , B and C , which we considered before. Now, let us define union operations for scheme 3 S .</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Definition 22. Union</head><p>arbitrary sets of objects is a new set of objects S , which obtains in the following way</p><p>where</p><p>, are such objects that</p><p>, where</p><p>is a class of new set of objects S and k is its cardinality.</p><p>Let us consider objects A , B , C , and sets of objects 1 S , 2 S , which we used in the previous example, and calculate their union.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Multisets of Objects.</head><p>As we know, a multiset is a generalization of the notion of set in which members are allowed to appear more than once <ref type="bibr" target="#b24">[29]</ref><ref type="bibr" target="#b25">[30]</ref><ref type="bibr" target="#b26">[31]</ref>. Formally multiset can be defined as a 2-tuple ) , ( m A , where A is the set, and m is the function that puts a natural number in accordance to each element of the set A , which is called the multiplicity of the element, i.e. N A m  : . However, this definition does not explain how to create the multiset of objects, that is why we are going to define multiset of objects using concept of set of objects. We can obtain multiset of objects in the same way as set of objects. The example will be shown , using objects and sets of objects, which were mentioned previously.</p><p>Union of objects. </p></div>			</div>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<monogr>
		<author>
			<persName><surname>Besides</surname></persName>
		</author>
		<author>
			<persName><surname>That</surname></persName>
		</author>
		<title level="m">we could not operate with inhomogeneous classes of objects, classes of sets and multisets of objects using existing OOP tools</title>
				<imprint/>
	</monogr>
	<note>In addition, we cannot create new classes of object using operations on objects, in particular in runtime. After all, we can conclude that we need some OOP extension for the purpose of design and developing AIS using proposed approach</note>
</biblStruct>

<biblStruct xml:id="b1">
	<monogr>
		<title level="m" type="main">The Object-Oriented Thought Process</title>
		<author>
			<persName><forename type="first">M</forename><surname>Weisfeld</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2008">2008</date>
			<publisher>Addison-Wesley Professional</publisher>
		</imprint>
	</monogr>
	<note>Third Edition</note>
</biblStruct>

<biblStruct xml:id="b2">
	<monogr>
		<title level="m" type="main">OOP -Learn Object Oriented Thinking and Programming</title>
		<author>
			<persName><forename type="first">R</forename><surname>Pecinovský</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2013">2013</date>
			<publisher>Tomáš Bruckner</publisher>
			<pubPlace>Řepín-</pubPlace>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<monogr>
		<title level="m" type="main">Artificial intelligence: The Heuristic Programming Approach</title>
		<author>
			<persName><forename type="first">J</forename><forename type="middle">R</forename><surname>Slagle</surname></persName>
		</author>
		<imprint>
			<date type="published" when="1971">1971</date>
			<publisher>McGRAW-HILL Book Company</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<monogr>
		<title level="m" type="main">Artificial intelligence illuminated</title>
		<author>
			<persName><forename type="first">B</forename><surname>Coppin</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2004">2004</date>
			<publisher>Jones and Bartlett Publishers, Inc</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">Artificial Intelligence and Soft Computing</title>
		<author>
			<persName><forename type="first">A</forename><surname>Konar</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Behavioral and Cognitive Modeling of the Human Brain</title>
				<imprint>
			<publisher>CRC Press LLC</publisher>
			<date type="published" when="2000">2000</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<monogr>
		<title level="m" type="main">Encyclopedia of Artificial Intelligence</title>
		<author>
			<persName><forename type="first">J</forename><forename type="middle">R</forename><surname>Rabunal</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Dorado</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Pazos</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2008">2008</date>
			<publisher>Information Science Reference</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<monogr>
		<author>
			<persName><forename type="first">G</forename><forename type="middle">F</forename><surname>Luger</surname></persName>
		</author>
		<title level="m">Artificial Intelligence. Structures and Strategies for Complex Problem Solving: 6-th edition</title>
				<imprint>
			<publisher>Addison-Wesley</publisher>
			<date type="published" when="2008">2008</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<monogr>
		<title level="m" type="main">Artificial Intelligence: A Systems Approach</title>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">T</forename><surname>Jones</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2008">2008</date>
			<publisher>Infinity Science Press LLC</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<monogr>
		<title level="m">Handbook of Artificial Intelligence Book 2: Models and Methods</title>
				<editor>
			<persName><forename type="first">D</forename><forename type="middle">A</forename><surname>Pospelov</surname></persName>
		</editor>
		<meeting><address><addrLine>Moscow</addrLine></address></meeting>
		<imprint>
			<date type="published" when="1990">1990</date>
		</imprint>
	</monogr>
	<note>Radio i Sviaz</note>
</biblStruct>

<biblStruct xml:id="b10">
	<monogr>
		<title level="m" type="main">Universal Artificial Intelligence and Expert Systems</title>
		<author>
			<persName><forename type="first">V</forename><forename type="middle">N</forename><surname>Ruchkin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><forename type="middle">A</forename><surname>Fulin</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2009">2009</date>
			<publisher>BHV-Petersburg</publisher>
			<pubPlace>St. Petersburg</pubPlace>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<monogr>
		<title level="m" type="main">Essentials of artificial intelligence</title>
		<author>
			<persName><forename type="first">M</forename><surname>Ginsberg</surname></persName>
		</author>
		<imprint>
			<date type="published" when="1993">1993</date>
			<publisher>Morgan Kaufmann Publishers, Inc</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<monogr>
		<title level="m" type="main">Contributions to the Founding of the Theory of Transfinite Numbers</title>
		<author>
			<persName><forename type="first">G</forename><surname>Cantor</surname></persName>
		</author>
		<imprint>
			<date type="published" when="1915">1915</date>
			<publisher>Dover Publications, Inc</publisher>
			<pubPlace>New York</pubPlace>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b13">
	<monogr>
		<title level="m" type="main">Les Systemes Axiomatiques de la Theorie des Ensembles</title>
		<author>
			<persName><forename type="first">H</forename><surname>Wang</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><forename type="middle">M</forename><surname>Naughton</surname></persName>
		</author>
		<imprint>
			<date type="published" when="1953">1953</date>
			<publisher>Gauthier-Villars</publisher>
			<pubPlace>Paris</pubPlace>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b14">
	<monogr>
		<author>
			<persName><forename type="first">P</forename><surname>Vopenka</surname></persName>
		</author>
		<title level="m">Mathematics in the alternative set theory</title>
				<meeting><address><addrLine>Leipzig</addrLine></address></meeting>
		<imprint>
			<publisher>BSB B.G. Teubner</publisher>
			<date type="published" when="1979">1979</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b15">
	<monogr>
		<title level="m" type="main">Information and control</title>
		<author>
			<persName><forename type="first">L</forename><forename type="middle">A</forename><surname>Zadeh</surname></persName>
		</author>
		<imprint>
			<date type="published" when="1965">1965</date>
			<biblScope unit="volume">8</biblScope>
			<biblScope unit="page" from="338" to="353" />
		</imprint>
	</monogr>
	<note>Fuzzy sets</note>
</biblStruct>

<biblStruct xml:id="b16">
	<monogr>
		<title level="m" type="main">The C++ Programming Language: Special Edition</title>
		<author>
			<persName><forename type="first">B</forename><surname>Stroustrup</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2000">2000</date>
			<publisher>Addison-Wesley Professional</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b17">
	<monogr>
		<title level="m" type="main">Thinking in Java: 4-th Edition</title>
		<author>
			<persName><forename type="first">B</forename><surname>Eckel</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2006">2006</date>
			<publisher>Prentice Hall</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b18">
	<monogr>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">G</forename><surname>Kurosh</surname></persName>
		</author>
		<title level="m">Lectures on general algebra: Second Edition</title>
				<meeting><address><addrLine>Moscow</addrLine></address></meeting>
		<imprint>
			<publisher>Nauka</publisher>
			<date type="published" when="1973">1973</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b19">
	<monogr>
		<title level="m" type="main">Algebraic Aspects of Information Technology</title>
		<author>
			<persName><forename type="first">I</forename><forename type="middle">V</forename><surname>Serhienko</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><forename type="middle">L</forename><surname>Kryvyi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">O</forename><forename type="middle">I</forename><surname>Provotar</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2011">2011</date>
			<publisher>Naukova Dumka</publisher>
			<pubPlace>Kyiv</pubPlace>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b20">
	<monogr>
		<author>
			<persName><forename type="first">R</forename><forename type="middle">R</forename><surname>Stoll</surname></persName>
		</author>
		<author>
			<persName><surname>Sets</surname></persName>
		</author>
		<title level="m">Logic and Axiomatic Theories</title>
				<imprint>
			<publisher>W.H. Freeman &amp; Co Ltd</publisher>
			<date type="published" when="1975">1975</date>
		</imprint>
	</monogr>
	<note>2-nd edition</note>
</biblStruct>

<biblStruct xml:id="b21">
	<analytic>
		<title level="a" type="main">STL Tutorial and Reference Guide: 2-nd edition</title>
		<author>
			<persName><forename type="first">D</forename><forename type="middle">R</forename><surname>Musser</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><forename type="middle">J</forename><surname>Derge</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Saini</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">C++ Programming with the Standard Template Library</title>
				<imprint>
			<publisher>Addison-Wesley Professional</publisher>
			<date type="published" when="2001">2001</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b22">
	<monogr>
		<title level="m" type="main">NET 4.0 Generics: Beginner&apos;s Guide</title>
		<author>
			<persName><forename type="first">S</forename><surname>Mukherjee</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2012">2012</date>
			<publisher>Packt Publishing Ltd</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b23">
	<monogr>
		<title level="m" type="main">Programming in Python 3. A Complete Introduction to the Python Language</title>
		<author>
			<persName><forename type="first">M</forename><surname>Summerfield</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2010">2010</date>
			<publisher>Pearson Education, Inc</publisher>
		</imprint>
	</monogr>
	<note>2-nd edition</note>
</biblStruct>

<biblStruct xml:id="b24">
	<monogr>
		<title level="m" type="main">Denumerations of rooted trees and multisets // Discrete Applied Mathematics</title>
		<author>
			<persName><forename type="first">N</forename><forename type="middle">D</forename><surname>Bruijn</surname></persName>
		</author>
		<imprint>
			<date type="published" when="1983">1983</date>
			<biblScope unit="volume">6</biblScope>
			<biblScope unit="page" from="25" to="33" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b25">
	<analytic>
		<title level="a" type="main">Mathematics of multisets</title>
		<author>
			<persName><forename type="first">A</forename><surname>Syropoulos</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the Workshop on Multiset Processing: Multiset Processing, Mathematical, Computer Science, and Molecular Computing Points of View</title>
				<meeting>the Workshop on Multiset Processing: Multiset Processing, Mathematical, Computer Science, and Molecular Computing Points of View<address><addrLine>Berlin Heidelberg</addrLine></address></meeting>
		<imprint>
			<publisher>Springer-Verlag</publisher>
			<date type="published" when="2001">2001</date>
			<biblScope unit="page" from="347" to="358" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b26">
	<monogr>
		<title level="m" type="main">Spaces of sets and multisets</title>
		<author>
			<persName><forename type="first">A</forename><surname>Petrovskyi</surname></persName>
		</author>
		<editor>M.</editor>
		<imprint>
			<date type="published" when="2003">2003</date>
			<publisher>Editorial URSS</publisher>
		</imprint>
	</monogr>
</biblStruct>

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