AP05_2.vp 1 Introduction Binary logical circuits designed with respect to Boolean symmetrical, particularly majority, output functions are certainly worth attention. The article, therefore, makes an evaluation both by controlling binary one-digit adders and by using functions interpreted by arithmetic polynomials. It also demonstrates how effectively the Shannon decomposition of the output functions can be used in designing a circuit with majority elements. 2 Boolean function Let a Boolean function f x x xm m:{ , } { , } : , , ,0 1 0 1 1 2� � and y be given. If we denote the set { }xi i m �1 of arguments x1 by the symbol X, we can briefly write f (X) instead of f (x1, x2, …, xm). In addition, instead of f (x1, x2, …, xi�1, �i, xi�1, …, xm), in which � i �{ , }0 1 , let us simply write f (x� i s i). Let x x x� � � � � � ��� � �( 0 1 ; any Boolean function f (x1, x2, …, xm) can be expressed, without loss of generality, by the Shan- non extension development f X x x x f x n n n n n ( ) ( , , , , , , , , , � � � � � � � � � � � � � 1 2 1 2 1 2 1 2 1 � � � � xm) where n m esp. f X x f x x f x x f x i i i i i i i( ) ( ) ( ) ( )� � � � � � � � � �1 1 0 1 the functions f x xn n m( , , , , , , )� � �1 2 1� �� will be called remainder functions. By the Hamming weight w f XH ( ) of the function f X( ) we understand the value of the arithmetic formula w f X fH m m ( ) ( , , , ) , , , � � � � � � � 1 2 1 2 � � The partial derivation � � f X xi ( ) [1] of function f X( ) by the argument x will be termed the Boolean function � � f X x f x x x x x f x x x i i i m i ( ) ( , , , , , , , ) ( , , , � � � � �1 2 1 1 1 2 0� � � � �1 11, , , , )x xi m� defining the conditions under which f X( ) changes its value while the value of the argument x is changed. For example, for y x x x x x� �2 3 1 2 3 , when � w y x w x x x x w x xH i H H � � � � � � �2 3 2 3 2 3 1( ) ( ) the function y changes its value while the value of the argu- ment x1 is changed under one condition for w y xH i � � �1, which is: x x2 3 1� � . 3 Boolean formulae and arithmetic polynomials Let us have f x x x x x xm i k i i ik i i ik( , , , ) , 1 2 1 2 1 2� �� � � � � where k � 1, 2, … , m and i � 0,1, …, 2m� 1, the function f (X ) is represented by a normal disjunctive formula (ndf f (X )). If there holds x x x x x xi i ik j j jl i i ikj j j jl 1 2 1 2 1 2 1 2� � � � � � � � � � � � � � � � � � � � � 0, where k � 1, 2, … , m and j � 0,1, …, 2m� 1, the conjuncts presented are termed orthogonal, i.e., all conjuncts of a complete normal disjunctive formula of the symmetrical Boolean function (see Paragraph 4) are mutually orthogonal. If all conjuncts ndf f (X ) are mutually orthogonal, we can also write f x x x x x xm i k i i ik i i ik( , , , ) , 1 2 1 2 1 2� �� � � � � . Note that the function f (X ) can also be conveniently ex- pressed by the Boolean (Zegalkin) polynomial [4]. Since, as can easily be confirmed, the following equality holds: x y x y xy� � � � (probability addition) xy xy� x x� �1 and also (x and xy are orthogonal) x y x xy x x y� � � � � �( )1 , 14 © Czech Technical University Publishing House http://ctn.cvut.cz/ap/ Acta Polytechnica Vol. 45 No. 2/2005 Czech Technical University in Prague Realization of Logical Circuits with Majority Logical Function as Symmetrical Function J. Bokr, V. Jáneš The paper deals with the “production” and design of symmetrical functions, particularly aimed at the design of circuits with majority elements, which lead to interesting solutions of logical structures. The solutions are presented in several examples, which show the applicability of the procedures to the design of FPGA morphology on chips. Keywords: Shannon extension development, Hamming weight, derivation of Boolean function, symmetrical and majority function. each ndf f (X ) can be expressed by an arithmetic polynomial f x x x a a x a x a x a x x a x x m m m m m ( , , , )1 2 0 1 1 2 2 1 1 2 2 1 � �� � � � � � � � � 2 2 1 1 2 1 1 2 1 2 � � � � � � � � � � � a x x a x x x A x x x m m m m m ( , , , ) where a N ii m� � �( , , , )0 1 2 1� , this can be done either by applying the equality x y x y xy� � � � , or orthogonalizing all conjuncts ndf f (X ) and applying the absorption x xy� � � � �x x y( )1 . Note that if the Boolean function f X( ) is ex- pressed by the arithmetic polynomial A X( ), then f X sign A X( ) ( )� . Example 1.: Let ndf f x x x x x( , , ) ( )1 2 3 1 2� � . x x x3 1 2� be given. Express the given formula by means of the arithmetic polynomial A x x x( , , )1 2 3 , which is xx x x� � 2 : � ( ) ( )( ) ( x x x x x x x x x x x x x x x x x 1 2 3 1 2 1 2 1 2 3 1 2 3 1 2 1 � � � � � � � � � � 2 1 2 3 1 2 3 1 2 1 3 2 3 1 2 32 � � � � � � � x x x x x x x x x x x x x x x )( ) � ( ) ( ) ( )( x x x x x x x x x x x x x x x x x 1 2 3 1 2 1 2 1 2 1 1 2 3 1 2 1 2 � � � � � � � � � x x x x x x x x x x x x x x x x 1 1 2 3 1 2 1 2 1 2 3 1 2 1 21 1 � � � � � � � � � � ) ( ) ( ( ) ( 1 2 3 1 2 1 3 2 3 1 2 32 ) )x x x x x x x x x x x � � � � � 4 Symmetrical Boolean function Let the bijection X � X: x x x x x xm i i im1 2 1 2, , , , , ,� �� be a set of all permutations of arguments from X; the function f X( ) is called sym- metrical if f x x x f x x xm i i im( , , , ) ( , , , )1 2 1 2� �� ; i.e. 0, x y� , xy xz yz� � is a symmetrical function. Let � �Pj j k �1 be a set of integers Pj (called operational or characteristic numbers) such that 0 Pj m. It can be demonstrated [2] that f X( ) is symmetrical just if f m( , , , )� � �1 2 1� � for w PH m j( , , , )� � �1 2 � � . The symmetrical function with char- acteristic numbers Pj will be denoted � � S P m j j k �1 ; obviously, S m� � 0 and � �S m m 0 1 1, , ,� � . For example: � �S x y1 2 � � , � �S xy xz yz2 3 3 , � � � . The symmetrical function � �S P m is elementary; for the length � �cndf S P m of the completely normal disjunctive for- mula � �S P m – there holds � �C ndf S m m PP m � � � �� � � �� , since � �C ndf S x x xP m w P m m H n m� � � � � � � � � � � � 1 2 1 2 1 2 1 2, , , ( ) � � � . There also holds [2] � � � � � �� �� �Q Q m i m m m S m i� � � �� �� � �� � � �� � 2 0 1 1 0 1 1 2 , , , as well as � � � �S SP m P m i j � � 0 for Pi � Pj. Any symmetrical function � � S P m j j k �1 can be written in the form of � � cndf S P m j j k �1 : � � S x x P m w P P P j j k m H m k � � � �1 1 2 1 2 1 2 1 2 1 2 � � � � � � � � , , , ( ) , , , � � � � xmm � since [2] � � � � S S P m j k P m j j k j � � � � 1 1 . We can also write � � �� S S P m j m i i m j j k � � � � 1 0 � where �i j j i P i P � � � � � � 1 0 for for . Denote the elementary symmetrical Boolean functions the representation of which in the form of normal disjunctive formulae (ndf ) does not contain negated variables with the symbol � �S n m (n � 0, 1, …, m). For example � �S 0 1 m � , � �S 1 1 2 m mx x x� � �, , � �S m m m mx x x x x x� �� � � �1 1 2 1 3 1� , � �S m m mx x x� � � �1 2 � . Every function � �S n m in which n � m ( � �S x x xn m m� 1 2� ), can be expressed by the composition � � � � � �S n m n m m n m� �S S . For example: � � � � � �S x x x x x x x x x x x x x x x 2 3 2 3 1 3 1 2 1 3 2 3 1 2 3 1 2 3 1 2 3 � � � � � � � � � S S ( ) � � � � � � x x x S x x x x x x x x x x x 1 2 3 2 3 1 3 2 3 1 2 3 1 2 1 3 2 3 1 2 , resp. � � � � � � � S S � x x x x x x x x x x x x x x x x3 1 2 1 3 2 3 1 2 3 1 2 3 1 2 3� � � � � . Symmetrical functions are discussed in greater detail, e.g., in [2, 3, 4].The majority function � �Maj M m refers to the sym- metrical function � � � �� �� � �i m M i m M M m mS S 0 1, , ,� . For the three-variable majority function � �Maj x x x x x x2 3 1 2 1 3 2 3� � � an infix notation x x x1 1 3# # # can be used. There obviously holds x x x x1 1 3 1# # � and x x x x1 1 3 3# # � . 5 Numerical representation of symmetrical functions We might construct a minimal normal disjunctive formula to a given symmetrical function [4] or decompose the given © Czech Technical University Publishing House http://ctn.cvut.cz/ap/ 15 Czech Technical University in Prague Acta Polytechnica Vol. 45 No. 2/2005 function ( � � � � � �S n m n m m n m� �S S ) and design, according to the constructed formulae, a structural model of the given func- tion in one of the structurally complete systems of statistical elements [5]. Further, consider a one-digit binary half-adder or an ad- der (Fig. 1) with which ai, bi are binary augmenters, �i is the sum in i position, and Ci �and Ci � denote the transfer from the position i � 1 to the position i � 1, respectively. The half- -adder can be modeled by a system of output functions � � i i ia b S� � 1 2 and � �C a b Si i i � � � 2 2 ; by analogy for the adder we obtain � � i i i ia b C S� � � � � 1 3 3 , and � �C a b C a b C a b C a b C Si i i i i i i i i i i i i � � � � �� � � � � 2 3 3 , . It is therefore sufficient to provide the half-adder with an inverse disjunctor (Fig.1a) and the adder with a decoder (Fig. 1b) and we obtain the products � �S 0 2 , � �S 1 2 , � �S 2 2 , since � � � � � � � � � �S S S S S1 2 2 2 0 2 2 0 1 2 0 2� �, , and � �S 0 3 , � �S 1 3 , � �S 2 3 , � �S 3 3 , since � � � � � � � � � �S S S S S1 3 3 2 3 3 0 2 3 0 1 3 0 3 , , , ,� � � � , � � � � � � � � � �S S S S S1 3 3 2 3 3 1 3 3 0 1 3 1 3 , , , ,� � � � , � � � � � � � � � �S S S S S1 3 3 2 3 3 0 2 3 2 3 3 2 3 , , , ,� � � � , � � � � � �S S S1 3 3 2 3 3 3 3 , ,� � . Example 2.: Design a structural model with adders or half- -adders modeled with a system of output symmetrical func- tions S – Fig. 2. Indeed, � � 1 1 2 3 1 2 3 1 2 3 1 3 3� � � � � � � �x x x x x x x x x S( ) ( ) , , � �C S1 2 3 3� , , � � � � � � � � � � � � 2 4 1 3 3 4 1 3 3 4 1 3 3 1 3 4 4 0 2 3 1 3 4 � � � � � � � � � x S x S x S S x S S S , , , , , , � � � �1 3 4 1 3 4 , , ,� S � � � �C x S S2 4 1 3 3 2 4 4� �, , , � � � � � � � � � � � � 3 2 4 4 2 3 3 4 4 0 1 3 4 1 3 3 2 4 4 0 1 3 � � � � � � �� � � S S x x S S S S , , , , , , , ( ) � � � � � � � � � � � � � � � � � � � � � ( ) , , , , , , , , x x S S S S S S S 4 4 0 1 3 4 2 3 4 2 4 4 0 1 4 0 1 3 4 3 4 4 � � � � � � � � � � 2 4 4 1 2 4 3 4 2 4 2 3 4 , , , , S S S S � � � � � � � � � � � � � � � � � � � � C S S x x S S S S S S 3 2 4 4 2 3 3 4 4 2 4 4 2 3 4 2 4 4 3 4 4 2 4 4 � � � � � � � , , , , , ,( ) � � 4 2 4 4� S , . It is easy to obtain � � � �S S1 3 4 0 2 4 4 , , ,� , � � � �S S2 3 4 0 1 4 4 , , ,� and � � � �S S2 4 4 0 1 3 4 , , ,� ; hence for the decoder: � � � � � �S S S0 4 1 3 4 2 4 4� , , , � � � � � �S S S2 4 2 3 4 2 4 4� , , , � � � � � �S S S3 4 1 3 4 2 3 4� , , , � � � � � � � � � � � � � �S S S S S S S1 4 0 1 3 4 0 1 4 4 1 3 4 2 4 4 2 3 4 1 3 4� �, , , , , , , , , � � � � � � � � � � � � � �S S S S S S S4 4 0 1 4 4 0 2 4 4 2 4 4 2 3 4 1 3 4 2 4 4� �, , , , , , , , . If the Boolean function f X( ) is symmetrical, it can be suit- ably expressed by an arithmetic polynomial in the form f x x x b b x x x b x x x x x m m m ( , , , ) ( ) ( 1 2 0 1 1 2 2 1 2 2 3 � � � � � � � � � � � � � � � � � � � � � � � � � 1 3 1 2 3 1 2 4 2 1 1 1 2 x b x x x x x x x x x b x x m m m m m ) ( )� � �� � � � � � � � � x b b X b X b X b X m m m i i i m 0 1 1 2 2 0 6� [ ]; for example for � �S x x x x x x x x x x x x x x1 2 3 1 2 1 2 1 2 1 2 1 2 1 2 1 21, ( )� � � � � � � � � we obtain b0 0� , b1 1� , b2 1� � and X 0 1� , X x x1 1 2� � , X x x 2 1 2� . The parametric notation � � cndf S P m j j k �1 being � � S X X m m P X P m P P m P jj j k j j j � � � � � � � � � � � � � ! ! " # $ $ � � 1 1 ( ) (X Pj ) m P P j j � 16 © Czech Technical University Publishing House http://ctn.cvut.cz/ap/ Acta Polytechnica Vol. 45 No. 2/2005 Czech Technical University in Prague a) b) Fig. 1: a) Half-adder , b) Adder Hence b X m m P Xi i i m j m P P j j� � � � � � � � � � � � ! ! " # $ $ � 0 1X Pj ( ) we can easily (!) determine the values of coefficients b, pro- vided the structure of polynomials X i is known. Example 3.: Construct an arithmetic polynomial of the sym- metrical function � �S 1 2 3 , . Since � �S x x x x x x x x x wH 1 2 3 1 2 3 1 2 3 1 2 1 2 3 1 2 3 1 2 3 , , , ( ) � � � � � � � � � � � � � 3 1 2 3 1 2 3 1 2 3 1 2 3 3 3 � � � � � � � � � �� � � �� � ! " # $ x x x x x x x x x x x x j X j ( ) ( ) , 1 3 3 1 1 3 3 2 3 1 2 2 � � � � � �� � � �� � ! " # $ � � � � �� � � � X X X j j � �� � ! " # $ � � � � � � � � X X X X b b X b X b X 2 2 0 1 1 2 2 3 3 1( ) . Hence b b0 3 0� � , b2 1� , b3 1� � provided that X x x x1 1 2 3� � � and X x x x x x x2 1 2 1 3 2 3� � � ; because � �S x x x x x x x x x x x 1 2 3 1 2 3 1 2 3 1 2 3 1 1 1 1 1 1 , ( ) ( ) ( ) ( )( � � � � � � � � � � 2 3 1 2 3 1 2 3 1 2 3 1 1 1 1 2 ) ( ) ( ) ( )( ) ( ) ( x x x x x x x x x x x � � � � � � � � � � � 1 2 1 3 2 3 1 2 3 1 2 3 1 2 1 3 2 3 3x x x x x x x x x x x x x x x x x � � � � � � � � � � ) ( ) ( ) .� 3 1 2 3x x x . 5 Circuits with majority elements Let us limit ourselves to majority elements modeled with the function � �Maj 2 3 . Since, as can be easily confirmed, there holds x y x y� � # #1 , xy x y� # #0 , the ndf of the given function f X( ) can be rewritten according to the above quoted equities and we can design the respective static structural model. © Czech Technical University Publishing House http://ctn.cvut.cz/ap/ 17 Czech Technical University in Prague Acta Polytechnica Vol. 45 No. 2/2005 Fig. 2: Production of symmetrical functions � �S ii 4 0 1 2 3 4( , , , , )� from Example 2 Fig. 3: Structural model from Example 4 Example 4.: Construct a structural model given by the output function y x x x x x� �( )1 2 3 4 5 hence � � y x x x x x� ( # # )# ( # # ) # # #1 2 3 4 50 0 1 0, and thus Fig. 3. It is also helpful to use the Shannon extension develop- ment of the given Boolean output function y f X� ( ) � � y x f x x f x x f x x f x i i i i i i i i � � � � � � � � ( ) ( ) # ( )# # # ( )# # 0 1 0 0 1 0 1, and it remains only to decide according to which argument to start and according to which arguments to continue the repeated application of the development. We, therefore, heuristically develop f X( ), first according to the arguments whose change of values leads to the change of values f X( ) un- der the highest number of conditions, i.e., at the highest. Hamming weights pertaining to the derivation of the function f X( ) according to the respective arguments. Example 5.: Design a structural model given by the output function y x x x x x x x x x x x x x x x x x x� � � � � �1 2 3 1 3 4 1 3 5 1 2 4 2 3 5 3 4 5 with majority elements. According to the map of the given output function, the ndf of the remainder functions of its Shannon extension development can easily be constructed (Fig. 4.). Hence � � w y x w y x y x w x x x x x x x H H H � � 1 1 1 2 5 3 4 3 5 2 0 1� � � � � � � � � � ( ) ( ) ( ) ( x x x x x x x x x3 5 2 4 3 4 5 3 5 7� � � �) When stating the formula which expresses the derivation of the function we will preferably use a map, to each field of which we will write the value in the form of a fraction: y x y xi i( ) ( )� �0 1 ; the resulting value of the remainder function formula as well as the weight of its derivation is evident (Fig. 5). There also holds � � w y x w y x y x w x x x x x x x x x H H H � � 2 2 2 1 3 4 1 3 3 5 4 0 1� � � � � � � � � ( ) ( ) ( 5 1 4 1 3 5 3 4 3 5 5 ) ( ) , � � � � � �x x x x x x x x x � � w y x w y x y x w x x x x x x x H H H � � 3 3 3 1 4 2 4 4 5 1 0 1� � � � � � � � � � ( ) ( ) ( ) ( x x x x x x5 1 4 5 2 5 8� � �) , � w y x w y x y x w x x x x x x x x x H H H � � 4 4 4 1 2 5 1 3 5 1 4 5 0 1� � � � � � � � ( ) ( ) (� ) ( ) , � � � � �x x x x x x1 3 1 3 2 3 5 � � w y x w y x y x w x x x x x x x x H H H � � 5 5 5 1 3 1 3 4 2 3 4 0 1� � � � � � � � � ( ) ( ) ( ) � � � � � �( ) .x x x x x x x x x x x1 3 2 3 2 3 3 4 1 3 4 7 Since max i H i Hw y x w y x � � � � � � � % & ' � � 3 8, we write y x y x x y x� � � �3 3 3 30 1( ) ( ) , where y x x x x x x x( )3 1 4 2 4 4 50� � � � and y x x x x x x x( )3 1 4 1 5 2 51� � � � (Fig. 6). And, further, there is � w y x x w y x x y x x w x x H H H � � ( ) ( , ) ( , ) ( 3 1 1 3 1 3 4 0 0 0 1 0 � � � � � � � � � �� 5 2 4 4 5 2) ( ) ,� � �x x x x 18 © Czech Technical University Publishing House http://ctn.cvut.cz/ap/ Acta Polytechnica Vol. 45 No. 2/2005 Czech Technical University in Prague Fig. 4: The Karnaugh map of the output function from Exam- ple 5 Fig. 5: Recording of remainder functions � � y x1 from Example 5 � w y x x w y x x y x x w x x H H H � � ( ) ( , ) ( , ) ( 3 2 2 3 2 3 1 4 0 0 0 1 0 � � � � � � � � � � � � � �x x x x4 5 4 5 2) ( ) , � w y x x w y x x y x x w x x H H H � � ( ) ( , ) ( , ) ( 3 4 3 4 3 4 5 0 0 0 0 1 � � � � � � � � � �� 1 2 4� �x ) , � w y x x w y x x y x x w x x H H H � � ( ) ( , ) ( , ) ( 3 5 3 5 3 5 1 4 0 0 0 0 1 � � � � � � � � � � � � � � �x x x x x2 4 1 2 4 4) ( ) , � w y x x w y x x y x x w x x H H H � � ( ) ( , ) ( , )3 1 1 3 1 3 2 5 1 0 1 1 1 � � � � � � � � � �� ( ) ,x x x2 4 5 5� � � . � w y x x w y x x y x x w x x H H H � � ( ) ( , ) ( , ) ( 3 2 2 3 2 3 1 1 0 1 1 1 � � � � � � � � � �� 5 1 4 1 5 3) ( ) ,� � �x x x x � w y x x w y x x y x x w x x H H H � � ( ) ( , ) ( , ) ( 3 4 3 4 3 4 1 5 1 1 0 1 1 � � � � � � � � � � � � � �x x x x x2 5 1 2 5 1) ( ) , � w y x x w y x x y x x w x x H H H � � ( ) ( , ) ( , ) ( 3 5 3 5 3 5 1 1 1 0 1 1 � � � � � � � � � �� 2 1 4 3� �x x ) . Since max ( ) ( ) i i H i Hw y x x w y x x � �� � � % & ' � � � 3 3 3 4 0 0 4 � � � � and max ( ) ( ) i i H i Hw y x x w y x x � �� � � % & ' � � � 3 3 3 1 1 1 5 � � � � we write y x x y x x x y x x x x y x x � � � � � � � � 3 4 3 4 4 3 4 3 1 1 3 0 0 0 1 0 ( ( , ) ( , )) ( ( , � � � �1 1 11 1 3) ( , )),x y x x where y x x x y x x x x( , ) , ( , ) ,3 4 5 3 4 1 20 0 0 1� � � � � � � y x x x x( , )1 3 2 50 1� � � and © Czech Technical University Publishing House http://ctn.cvut.cz/ap/ 19 Czech Technical University in Prague Acta Polytechnica Vol. 45 No. 2/2005 a) b) Fig. 6: Map entries of a) y x( )3 0� , b) y x( )3 1� from Example 5 Fig. 7: Structural model with majority elements from Example 5 y x x x x x( , )1 3 2 4 51 1� � � � � , or y x x x x x x x x x x x x x x� � � � � � �3 4 5 4 1 2 3 1 2 5 1 2 4 5( ( )) ( ( )). In other words ( )� �y x x x x x x x x x � 3 4 5 4 1 2 3 1 2 0 1 0 1 0 0 # ( # # )# ( # ( # # )# )# # # # # (( # # )(� ) � # # )# # ( # (( # # ) # )# )# # # . x x x x x 5 1 2 4 5 0 1 1 0 1 0 1 and hence also the structural model (Fig. 7) Obviously, there is also � � x x x x x x x x x x x x x S x x 1 2 3 1 2 3 1 2 1 2 3 1 2 2 3 3 1 # # ( ) ( ) ( ,, � � � � � � � � 2 3 1 2 1 3 2 3 1 2 32, ) .x x x x x x x x x x� � � � 7 Conclusion It appears that it is feasible to produce symmetrical Boolean functions in a sufficiently simple way by a suitable control of one-digit binary adders or by numerical represen- tation of values of the respective arithmetic polynomials, and to design logical circuits with majority elements by applying the Shannon decomposition of the given output function through effective selection of the arguments by which the decomposition is carried. References [1] Bochman, D., Posthoff, Ch.: Binare dynamische Systeme. Berlin: Akademie – Verlag, 1981. [2] Harrison, M. A.: Introduction to Switching and Automata Theory. New York – Sydney: Mc Graw-Hill Book Co., 1965. [3] Frištacký, N. aj.: Logické systémy. Bratislava – Praha: ALFA – SNTL, 1986. [4] Bokr, J., Jáneš, V.: “Some Interesting Applications of the Karnaugh Map.” Acta Electrotechnica et Informatica, Vol. 3 (2003), No. 3, p. 22–27. [5] Bokr, J., Jáneš, V.: Logické systémy. Praha: Vydavatelství ČVUT, 1999. [6] Šalyto, A. A.: Metody apparatnoj i programnoj relizacii algo- ritmov. Sankt – Peterburk: Nauka, 2000. Doc. Ing. Josef Bokr, CSc. e-mail: bokr@kiv.zcu.cz Department of Information and Computer Science University of West Bohemia Faculty of Applied Sciences Universitní 22 306 14 Pilsen, Czech Republic Doc. Ing. Vlastimil Jáneš, CSc. phone: +420 224 357 289 e-mail: janes@fel.cvut.cz Department of Computer Science and Engineering Czech Technical University in Prague Faculty of Electrical Engineering Karlovo nám.13 121 35 Praha 2, Czech Republic 20 © Czech Technical University Publishing House http://ctn.cvut.cz/ap/ Acta Polytechnica Vol. 45 No. 2/2005 Czech Technical University in Prague