Efficient Boolean division and substitution using redundancy addition and removing Abstract-Boolean division, and hence Boolean substitution, produces better result than algebraic division and substitution. However, due to the lack of an efficient Boolean division algorithm, Boolean substitution has rarely been used. We present an efficient Boolean division and Boolean substitution algorithm. Our technique is based on the philosophy of redundancy addition and removal. By adding multiple wires/gates in a specialized way, we tailor the philosophy onto the Boolean division and substitution problem. From the viewpoint of traditional division/substitution, our algorithm can perform substitution not only in sum-of-product form but also in product-of-sum form. Our algorithm can also naturally take all types of internal don't cares into consideration. As far as substitution is concerned, we also discuss the case where we are allowed to decompose not only the dividend but also the divisor. Experiments are presented and the result is promising. I N multilevel logic synthesis, an important step in minimizing the area of a circuit is substitution [6] (or resubstitution [15] ). Substitution refers to the step where a function is simplified in complexity by using an additional input that was not previously in the function's immediate fanins. Substitution can reduce the complexity of a function because part of the function is replaced by the additional input that represents some existing function in the circuit. The expression of the existing function is, therefore, shared and reused. To perform substitution, the concept of division plays a major role. Given two Boolean functions and , if we can express in the form , where and , respectively, represent the Boolean AND and Boolean OR operators, then we say that can be divided by and that functions and are, respectively, the quotient and the remainder.. Substitution can be algebraic or Boolean, depending on if the underlining division is algebraic or Boolean. In algebraic division [6] , logic expressions are treated as algebraic polynomials, with some restrictions placed on the manipulations of the polynomials. In particular, the product of two functions is algebraic only if no variable appears in both. Manuscript received April 21, 1998; revised October 7, 1998 . This work was supported in part by the Taiwan National Science Council (NSC) under Grant 88-2215-E-194-005. This paper was recommended by Associate Editor A. Saldanha.. S.-C. Chang is with the Department of Computer Science and Information Engineering, National Chung Cheng University, Min-Hsiung, Chia-Yi 621, Taiwan (e-mail: scchang@cs.ccu.edu.tw).. D. I. Cheng is with Ultima Interconnect Technology, San Jose, CA 95136 USA (e-mail: ihsin@guitar.ece.ucsb.edu).. Publisher Item Identifier S 0278-0070(99)05680-8.. and . As a consequence of the restriction, certain Boolean identities such as and do not exist. As an example, given and divisor , through algebraic division we obtain . Through Boolean division, which can exploit all the properties in Boolean algebra [2] , we obtain . Assuming a node with function exists in the circuit, with algebraic substitution we then have , while with Boolean substitution we have . In this example, function has six literals 1 before substitution. Algebraic substitution reduces the number of literals to five, while Boolean substitution reduces it to four. Boolean division and, hence, Boolean substitution, in theory produces better results. However, there does not exist a general and efficient Boolean division algorithm. In terms of the above example, this means that the best result of reducing to four literals is very difficult to achieve.. Although there does not exist a general and efficient algorithm to perform Boolean division, to certain degree a few approaches have been partially successful. The first technique, or actually an ad-hoc setup, is based on a good two-level optimizer. Since a good two-level optimizer, such as Espresso [3] , is able to take don't cares into consideration, we can actually force it to achieve the effect of Boolean division. For example, given a function and a divisor , we can put through Espresso with as the don't cares, and furthermore force Espresso to take literal into the final result, thereby achieving the effect of Boolean division. Another technique that is able to perform Boolean division is proposed in [9] . By adding two Boolean identities, and , onto the traditional algebraic algorithm, the concept of coalgebraic division is introduced. The coalgebraic division algorithm exploits the two Boolean identities for possible modification of the quotient obtained through algebraic operations. For a simple example, if we perform divided by , algebraic algorithm would return the quotient as . Adding the Boolean identities, coalgebraic division modifies the possible quotients to and eventually chooses one of them that produces a good result. Another technique, based on the binary decision diagram (BDD) data structure, is proposed in [14] . Given a function and a divisor , the method is built on the fact that , where the subscripts denote the generalized cofactor operator [6] . From the viewpoint of divided by , this fact means that the quotient is and the remainder is . All the functions in this method are represented in BDD's and the cost function of optimization is also based on some features on BDD's. In this paper, we first present a new technique to perform Boolean division. Our technique is based on the concept of redundancy addition and removal (RAR) discussed in [4] , [5] , [7] , and [12] . The basic philosophy of the RAR technique is to first add some redundancy and then remove other redundancies elsewhere, with the goal that the removed ones reduce the circuit size more than the added one. With a fixed setup that is specially configured, we tailor the RAR philosophy onto the Boolean division problem. Unlike traditional RAR techniques, which require redundancy checking on the potential wire to be added, our algorithm is tailored in a way that we know a priori that our interested potential wire is redundant. Also, although quite effective on adding one redundancy and then removing other redundancies, the traditional RAR techniques have little success on trying to add multiple wires/gates. In our algorithm, the traditional RAR philosophy is tailored to add multiple wires/gates in a specific way particularly for the Boolean division problem.. As far as substitution is concerned, knowing how to perform division is only the first step. The second step is to choose potential divisors. Traditionally, substitution on a function is done by going through the existing nodes in the circuit and treating each of them as a potential divisor of . Division is tried on each potential divisor and substitution is carried out when the trial is favorable. Since it is up to the underlining division algorithm to conclude whether a divisor is good or not, the algorithm may miss some "good" divisors. In the example mentioned earlier, let us say the node with function does not exist and, instead, a node with function exists. Since function does not depend on variable , a traditional division algorithm would quickly conclude that the quotient of function divided by is zero and, therefore, no substitution would occur. However, if we slightly change the circuit structure by decomposing to two nodes and , function can then be substituted with node . We will use the term basic division to refer to the scenario where the given divisor is not allowed to be decomposed, and the term extended division for the scenario where the divisor is allowed to be decomposed, certainly with some purpose in mind. In the above example where function is divided by , we would say that under basic division the quotient is zero. For the same and we would also say that under extended division the subexpression can be extracted out as a new divisor, and with the new divisor the quotient is . From this viewpoint, all the traditional division algorithms perform only basic division, while our algorithm presented in this paper performs extended division.. Traditional substitution approaches operate on each node's internal sum-of-product data structure and, hence, can only perform substitution/division in the sum-of-product form. In contrast, our algorithm operates on circuit structure directly. Given an initial circuit, the first step of our algorithm is to decompose each node's internal sum-of-product form into a two-level AND and OR gates. The circuit then, in general, has a level of AND gates, followed by a level of OR gates, and so on. As a result, in addition to the traditional sum-ofproduct type of substitution, our algorithm can also perform substitution in the flavor of product-of-sum form. In other words, in two-level form, whether the dividend/divisor are a bunch of AND's followed by an OR, or a bunch of OR's followed by an AND are completely symmetric to us. For example, let and be existing nodes. With our algorithm we can quickly substitute into and obtain , i.e., . Performing substitution in such a manner is completely not possible in the traditional approaches because of the strong attachment to the underlining sum-of-product expression, while in our technique performing substitution through sum-of-product form or product-of-sum form are basically the same.. Another feature of our algorithm is the ability to naturally handle don't cares. Traditional techniques either totally cannot handle don't cares or can only handle don't cares in an adhoc way. Since our algorithm is based on the RAR technique, which performs so called implications, we can take any internal don't cares into account naturally. Furthermore, since various types of implication algorithms exist [10] , [11] , [13] , we can in fact adjust the tradeoff between the run time and the amount of don't cares we take into account.. The rest of the paper is organized as follows. Section II reviews the RAR technique. Section III provides a fundamental view of our algorithm focusing on basic division only. Section IV presents our complete algorithm. Section V shows some experimental results and, finally, Section VI concludes this paper. In this paper, we first presented an efficient algorithm, based on the philosophy of RAR, for performing Boolean division. With the concept of SOS and POS, we tailored the RAR philosophy to the Boolean division problem. The tailoring enables us to add multiple wires/gates in a specialized configuration and remove more wires/gates. Applying our Boolean division algorithm, our algorithm can perform substitution not only in the traditional sum-of-product form, but also in productof-sum form. We then generalize our basic division to what we call extended division. Extended division allows us to decompose not only on the dividend but also on the divisor. Furthermore, our technique is able to naturally incorporate all types of internal don't cares into consideration. We also presented some experimental results to verify the effectiveness of our algorithm.

O O B O O O O O O O O B O O O O O O O O O B O O O O O O O O O O O B O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O B O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O B O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O B O O O O O B O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Load-dependent service queues with application to congestion control in broadband networks We analyze D / G /1 and M / G /1 queues where the service time for an arrival depends on the amount of work in the system upon arrival. The models are motivated by the bit dropping methods (e.g., [12] ) as a congestion control in broadband networks. The idea there is to reduce packet (cell) transmission time in case of congestion, while maintaining satisfactory quality of service.To study the load-dependent-service queues, we first derive a functional equation that characterizes the response time for an arbitrary arrival. Then, we employ and extend a technique based on Laguerre functions in [8] to solve the equation. A new recursion is developed in this paper, which significantly simplifies and enhances the applicability of the technique, and makes it easy to program on computers. Numerical examples for packetized voice in a broadband network are included. The enhanced technique is also applicable to other communication and computer systems that can be characterized by similar functional equations. In this paper, we analyze a D / G /1 and an M / G /1 queue with load-dependent service time. Specifically, the service time for an arrival can be selected from a fixed number of probability distribution functions (PDFs) and the choice of PDF for an arrival depends on the amount of unfinished work in the system upon arrival. For example, when the system has a large amount of work backloged, new arrivals are forced to receive low-grade service (i.e., short service time). To our knowledge, the queueing models with such load-dependent service have not been analyzed previously. Let these models be referred to as the D / G /1 and M / G /1 queue in the following. These models are motivated by bit dropping methods (e.g., [6] , [11] , [12] ) used as a congestion control for continuousbit-rate (CBR) traffic in broadband networks. For CBR services such as packetized voice, voice samples of a conversation are taken periodically and transmitted over the communication channel. In case of congestion, the idea of the bit dropping methods is to discard certain portion of the traffic such as the least significant bits of voice samples as a way to "reduce" the transmission time, while maintaining satisfactory quality of service as perceived by end users. An alternative congestion control is to discard certain cells entirely; see e.g., [14] , [3] and [2] . Cell discard is to drop all bits of a cell, and thus can be viewed as a special case of the bit dropping methods.. Bit dropping methods can be classified as input bit dropping (IBD) and output bit dropping (OBD), respectively.. In the IBD, bits may be dropped when the packets are placed in the queue waiting for transmission. In contrast, bits are possibly discarded in the OBD only from a packet being transmitted over the channel. Depending on actual implementation of the bit dropping algorithm, the IBD may be more efficient than the OBD or vice versa. In terms of performance analysis, it is natural to use an M / G /1/ K model with state-dependent service time to study the queue-length distribution and other performance measures for the OBD (e.g., [11] ). This is so because possible bit dropping occurs only on the packet being transmitted. On the other hand, the same model is not appropriate for analyzing the IBD since the queue length of packets with bits possibly dropped does not adequately represent the actual amount of workload for the communication channel. The models under study in this paper can be used to address such shortcoming.. As multimedia traffic including voice, data and video shares common resources in broadband networks, providing low-grade service by discarding less critical portion of traffic as a congestion-control strategy is increasingly useful. The models studied in this paper will help us understand the performance characteristics of such control strategies.. Queueing models with periodical arrivals are applicable to many communications and computer systems [4] . However, except for well-structured service time distributions, previous analysis techniques for the standard D / G /1 queue often resorted to approximations; see e.g., [13] . More recently, an efficient technique has been proposed in [1] for computing the waiting-time distribution for GI / G /1 queue by numerical transform inversion. However, it is not clear how the inversion technique can be extended to study the D / G /1 and. To analyze the queueing models with load-dependent service time, we first derive a functional equation that characterizes the response (waiting plus service) time for an arbitrary arrival. Then, we employ and enhance a numerical technique in [8] to solve the equation. The technique closely approximates the complementary cumulative function (CCF) for the response time for an arbitrary arrival by a weighted sum of Laguerre functions. The functional equation is then transformed into a set of linear equations from which the coefficients of the Laguerre functions are computed. A new recursion is developed in this paper, which significantly simplifies and enhances the applicability of the technique, and makes it easy to program on computers. Numerical examples for packetized voice in a broadband network are included to demonstrate the validity of the enhanced technique.. It is noteworthy that the functional equations for the D / G /1 and M / G /1 queue are similar to the vacation models with time-limited service in [8] and [9] . In addition, with some modeling restrictions, similar functional equations can be obtained for other communication and computer systems where timers are used to allocate service among multiple types of customers. One of such examples is token-passing networks with a token-holding timer to limit packet transmission at each station. Furthermore, one can derive a similar functional equation, and apply the enhanced technique to perform numerical inversion of Laplace transforms (LT). Because of many applications of this analysis approach, we use the generic terminology in the following discussion.. The organization of the rest of this paper is as follows. In Section 2, we first derive a functional equation that characterizes the response time for an arbitrary arrival in the D / G /1 queue. Then, we extend the result to obtain a similar functional equation for the M / G /1 queue in Section 3. By obtaining a new recursion in Section 4, we employ and enhance the Laguerre-function technique to transform the functional equation into a set of of linear equations, thus obtaining the response-time distribution. In Section 5, we also derive the probabilities of different grades of service. Section 6 gives several numerical examples for packetized voice in a broadband network. Finally, Section 7 presents our conclusions and future work on the subject. We have analyzed the D / G /1 and M / G /1 queues where the service time for an arrival can be chosen from a number of distribution functions, depending on the amount of work in the system upon arrival. The models are motivated by the bit dropping methods used as a congestion control algorithm for packetized voice in broadband networks. Functional equations for the queueing models are derived. To solve the equations, we employ and enhance a Laguerre-function technique in [8] to compute the performance measures of interest such as response-time distribution, average response time and probability of different grades of service. In particular, a new recursion for the integrations involving Laguerre functions has been derived, which helps us avoid tedious algebraic manipulation required in the original approach, thus significantly simplifying computer implementation of the technique. Numerical examples have been presented to demonstrate the potential use of the D / G /1 model to study the average packet delay and the probability of bit dropping for packetized voice service in a broadband network. (Certainly, the same approach can also be applied to study effects of bit dropping for video traffic.). With the new recursion for integrations involving Laguerre functions, the enhanced approach is much amenable to computer programming. Thus, in addition to the D / G /1and M / G /1 models, we expect that the technique can be applied to analyze other communication and computer systems that can be characterized by functional equations similar to those derived in this paper. For example, we are exploring to use the technique to analyze the superposition of multiple deterministic arrivals for packetized voice [10] . Furthermore, it is also possible to extend the technique for bursty arrival processes such as the Markov modulated Poisson process (MMPP), which has been commonly used to study traffic and performance issues for B-ISDN. In this case, one distribution function as approximated by a weighted sum of Laguerre functions may be needed for each state of the MMPP. As a step further, since jitter delay for CBR traffic in ATM networks is often studied by a D + MMPP / D /1 queue, the Laguerre approach may also be applicable to provide exact characterization of the jitter.

O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O B I O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


On an Efficient CAD Implementation of the Distance Term in Pelgrom's Mismatch Model In 1989, Pelgrom et al. published a mismatch model for MOS transistors, where the variation of parameter mismatch between two identical transistors is given by two independent terms: a size-dependent term and a distance-dependent term. Some CAD tools based on a nonphysical interpretation of Pelgrom's distance term result in excessive computationally expensive algorithms, which become nonviable even for circuits with a reduced number of transistors. Furthermore, some researchers are reporting new variations on the original nonphysically interpreted algorithms, which may render false results. The purpose of this paper is to clarify the physical interpretation of the distance term of Pelgrom and indicate how to model it efficiently in prospective CAD tools. The mismatch model proposed by Pelgrom et al. [1] models the standard deviation in the mismatch of property P between two identical MOS transistors of width W and length L separated by a distance D (from center to center) in the layout, as. This model was experimentally verified by Pelgrom by measuring the mismatch on many dies, fabricated on many runs, and including many identical transistors per die, as well as many transistor sizes per die (see Fig. 2 in [1] ). The model was verified for different foundries and technologies. Theoretical derivations of this model (see Appendix A) reveal that the two terms originate by two different means. The size-dependent term is caused by random fluctuations of material and technological properties of transistors. For example, dopant concentrations along the wafers and dies can be considered to be modeled by a constant term around which there exist random fluctuations. These random fluctuations are averaged over a transistor area W L contributing to a specific transistor electrical property (like threshold voltage or beta). The larger the area, the smaller the impact of the random fluctuations. Therefore, this random-induced mismatch term decreases with the transistor area. On the other hand, the distance term in (1) , which is size independent (common for all sizes), is originated by gradients along the dies and wafers. For example, dopant concentrations follow smooth systematic surfaces along the wafers. Such surfaces are usually well known by IC manufacturers, although rarely made public. For a particular die, the surface can be approximated many times by a plane. Depending on the die position within the wafer, a different gradient plane will result. Consequently, in practice, this gradient plane has a random nature from die to die. Since Pelgrom measured many dies, his model includes the random characterization of these random gradient planes. Layout techniques, like common centroids, can eliminate the impact of gradient-induced mismatch and consequently eliminate the distance term from (1). However, layout techniques can never eliminate the random-induced size-dependent term because of its purely random nature.. In the next section, we describe how one can model both terms of the Pelgrom model in a circuit simulator. Then, in Section III, we explain another implementation based on nonphysical interpretations. In Section IV, we give some hints on how to further improve gradientinduced mismatch in CAD tools, and finally, in Section V, we give our conclusions. We have shown that the distance-dependent term (S 2 P D 2 ) in Pelgrom's mismatch model is equivalent, to consider for each die a random gradient plane Ax + By, such that σ(A) = σ(B) = S P . We have shown that the solution of the formulation known as sigmaspace analysis for predicting this mismatch term in a CAD tool is precisely this random plane. However, the mathematical formulation used is extremely complex and grows exponentially with the number of transistors, resulting in a nonviable solution for moderate and large circuits. However, the random-plane physical interpretation of this mismatch component results in a very simple mathematical formulation, very easy to implement in a CAD tool, and without almost any computing penalty. Hints on refining gradient-induced mismatch in a CAD tool are also given. APPENDIX A PELGROM MODEL DERIVATION Fig. 3 shows two transistors of size W × L located at coordinates (x 1 , y 1 ) and (x 2 , y 2 ), respectively. Let us define the position of the pair as its middle point x 12 = (x 1 + x 2 )/2, y 12 = (y 1 + y 2 )/2. Let us assume that property P of a transistor can be obtained by averaging a certain density function P over its area. The density function P(x , y ) is assumed to reflect wafer gradients as well as pure random components. Under these assumptions, the mismatch in property P for the transistor pair located at (x 12 , y 12 ) is given by. where G is "1" when (x, y) is inside the area of transistor centered at (x 1 , y 1 ), G is "−1" for the area of transistor centered at (x 2 , y 2 ), and G is "0" elsewhere. In general, G is a geometry function which depends on the specific layout of the transistor pair. Taking the Fourier transform in (8) yields ω y ) is the one of G(x, y), and P (ω x , ω y ) is the one of P(x, y). For the layout of Fig. 3 , it can be shown that If. For a pair of transistors in a common-centroid configuration, as shown in Fig. 4 , it would be. Fig . 5 shows a wafer in which contour lines of constant property P have been drawn. In the wafer, at coordinate (x 12 , y 12 ), a pair of transistors is drawn. Assuming that when averaging ∆P (x 12 , y 12 ) all over the wafer we have ∆P | Wafer ≈ 0, we can write that. where Ω is the area of the wafer. Applying Poisson's theorem to (12) results in. Let us now make the following assumption:. where P o is a constant (frequency independent) representative of white noise and W(ω x , ω y ) is a wafer map component w , where D w is the wafer diameter. Therefore, function W(ω x , ω y ) can be assumed to have a shape of the type shown in Fig. 6 , and consequently, we can assume that. Therefore, (13) can be written as. Assuming a transistor pair as in Fig. 3 , it would be. where. For a common-centroid configuration, by changing the geometry function, it can be shown that the result is. Note that the distance term has been reduced an amount of the order (D y /D w ) 2 , which is very small. Consequently, from a practical point of view, the distance term can be considered to have disappeared. Perfect gradient planes would cancel out exactly this distance term. However, for the model in Fig. 6 , the gradients are not always perfect planes and might have a higher order curvature component. This is why in (19), there results a residual distance term.

O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


An effort and time based measure of usability The hypothesis of this research is that usability relates to the physical effort that is required in order to use software in the accomplishment of interactive tasks.Implications of this hypothesis are significant since effort is an objective quantity that can be measured efficiently in a relatively non-expensive and noninvasive fashion. Based on this hypothesis, this work proposes metrics for measuring operability, learnability, and understandability.Usability testing is an essential element of a robust validation process.Nevertheless, evaluating software usability is an expensive and time consuming activity, frustrating both developers and managers. Developers are frustrated because it is a critical part of their work; yet, they do not have solid information on how to address it. Managerial frustration lies in the fact that correcting usability defects is an iterative process, and the amount of preparation required can significantly delay a project. Hence, wider utilization of usability testing requires reducing the cost and simplifying the approach. This paper proposes a framework for measuring effort and using the effort measurements to assess usability. The framework has two main components: One bases effort on keystrokes and mouse usage; the second uses a model of the eye muscles along with eyemovement tracking to estimate eye effort. The two components are independent, but they could be used in tandem. Tracking time and effort may not be as precise an evaluation of usability. Nevertheless, it can provide a good screening tool to reduce development cost. Anyone who has ever used a computer can provide a "top ten list" of web sites and programs that are not user-friendly. Poor software usability not only causes user dissatisfaction but also can lead to substantial development cost overruns [10] . Software developers can use a wide variety of tools (prototyping, inspection, usability testing, iterative processes, etc. [11] ) to assure the software they produce has good usability. The fact that so many systems present poor usability may point to the conclusion that these techniques do not address the problem efficiently. Furthermore, the challenges presented by usability issues may not lie solely in the tools and techniques used in the development process. Software usability is perceived as a highly subjective attribute of software quality since physiological and psychological characteristics and sociological conditioning heavily influences it. This quality attribute is heavily affected by factors that many software engineers are not familiar with, and can make them uncomfortable with the entire topic. Our work proposes an objective methodology that can lead to efficient and relatively non-expensive assessment of usability.. Because it includes a subjective quality attributes, an evaluation of software usability requires observing a number of human subjects using the system. Interpreting these observations necessitates the need of adding a psychologist to the testing team. Some developers do not view usability testing as productive evaluation because these evaluations usually indicate a general area where the subjects had problems and does not necessarily point to a specific solution. This can make developers and managers extremely frustrated, especially when faced with short project deadlines and no way to determine how much time and effort are required to increase the usability. Because of the uncertainty and expense of usability evaluations, some managers are reluctant to include formal usability testing in the development plan. Instead of using testing, these managers prefer to rely on best practices, templates, and inspections to establish software usability.. The actual challenge of developing usable software may lie in the lack of a clear and concise understanding of what too many software engineers view as a fuzzy concept. Not all authorities on software quality provide a definition of usability. Some authorities recommend usability testing but only provide a checklist of things to investigate [6, 9, 2] ; and these authorities are, for the most part, balancing the line between systems with "card input" and interactive systems. Most quality models [4, 10, 3, 2, 8] provide a relatively consistent and concise definition of usability, but the attributes used to characterize the many facets of usability are not consistent.. This research uses the characterization of usability provided in the ISO/IEC 9126 because it is one of the more recent quality models, it is an Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. industry standard, and it provides a set of measurements and metrics for each quality sub characteristic. Usability in the ISO/IEC 9126 standard is defined as "the capability of the software product to be understood, learned, used, and attractive to the user when used under specified conditions" [4] . The standard also provides the following usability characteristics: Understandability, Learnability, Operability, Attractiveness, and Compliance.. Understandability is the ability of a user to understand the capabilities of the software and if it is suited to accomplish specific goals. It is measured by providing the user with a tutorial or software documentation and then evaluating the users' knowledge to determine the users' level of understanding of the software's functionality, operation, and data input and output [5] . It also recommends using cognitive monitoring techniques to evaluate the user response. Cognitive monitoring techniques are using one-way mirrors or concealed cameras to record the subject's behavior along with evaluation of the findings by a psychology professional.. Learnability describes how easy it is for a user to learn to use the software. For this characteristic, the standard measures how long it takes the user to learn and perform a task, the number of functions used correctly, and the utility of the help facility [5] . In addition to the measurements, the standard proposes cognitive monitoring techniques.. Operability is the capability of a user to use the software to accomplish a specific goal. To assess operability requires measuring the following characteristics: Operational consistency; Error correction; Error correction in use; Default value availability in use; Message understandability; Self-explanatory error messages; Operational error recoverability in use; Time between human error operation in use; Undoability; Customizability; Operation procedure reduction; and, Physical accessibility [5] .. Some of these metrics are objective measurements, but many require cognitive monitoring techniques to evaluate.. As the name implies, attractiveness is the appeal of the software to a user. Attractiveness is possibly the most subjective of all the usability characteristics involving not only sociological and psychological issues but gender and personal taste issues. The ISO/IEC 9126 standard characterizes attractiveness by providing subjects with a questionnaire to evaluate the interface and by observing subjects customizing the appearance to their satisfaction [5] .. Compliance measures how well the software adheres to external and internal rules relating to usability. It is also the most straightforward characteristic to evaluate. Developers compile a list of the required standards, conventions, style guides, and regulations, as well as, through functional testing, verify which standards are meet [5] .. Even from this short description of the metrics necessary to evaluate usability, it is apparent that designing a usability test would be an extremely time consuming and thereby expensive task. This is also a test with potentially very high cost, which may not identify any specific design or implementation defects. Reducing the high cost of usability testing is difficult because each of the measures proposed by the ISO/IEC standard are good and identify specific problems and it is not possible to eliminate the use of human test subjects. Another problem with the number of measurements is how to create objective specifications for so many diverse characteristics. Setting objective measurements for all of these metrics would definitely increase the time necessary to specify requirements. What may be possible is to take a slightly different approach to usability testing using techniques that developers and testers are more comfortable with and could administer without requiring cognitive evaluation techniques.. One possible approach to usability testing might be to set a series of goals and to measure the effort and time necessary for a subject to accomplish each goal. If developers estimate the effort and time necessary to complete each goal, then it would be possible to compare the observed effort with the estimated effort. If the observed effort is greater than the estimated effort, then there is a problem requiring further investigation. After identifying the existence of a problem, developers could trace the observation logs to find where the subjects experienced a problem causing the expenditure of additional effort. Trying to evaluate usability from effort and time to complete a goal may be a bit overreaching, but understandability, operability, and learnability should be within the scope of these measurements. The new equation adds the term representing a weighted value of the eye effort measured according to the second eye effort model described above. In systems with no eyetracking instrumentation, we set to 0.

O O O O O O O B O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O B O O O O O O O O O O O B O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O B O O O O O O O O B O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O B O O O O O O O O O B O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O B O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O B O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O B O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O B O O O O O O O O O O B O O O O O O O O O B O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O B O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O B O B O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O B O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O B B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


A uniform solution to SAT using membrane creation In living cells, new membranes are produced basically through two processes: mitosis and autopoiesis. These two processes have inspired two variants of cell-like membrane systems, namely P systems with active membranes and P systems with membrane creation. In this paper, we provide the first uniform, efficient solution to the SAT problem in the framework of recogniser P systems with membrane creation using dissolution rules. Recently the authors have proved that if the dissolution rules are not allowed to be used, then the polynomial complexity class associated with this variant of P systems is the standard complexity class P. This result, together with the main result of this paper, shows the surprising role of the apparently "innocent" operation of membrane dissolution. The use of this type of rule establishes the difference between efficiency and non-efficiency for P systems with membrane creation, and provides a barrier between P and NP (assuming P = NP). Membrane computing is an emergent branch of natural computing introduced by Pȃun in [12] . Since then, it has received important attention from the scientific community. In fact, membrane computing has been selected by the Institute for Scientific Information, USA, as a Fast Emerging Research Front in Computer Science, and [11] was mentioned in [14] as a highly cited paper in October 2003.. This non-deterministic model of computation starts from the assumption that the processes taking place in the compartmental structures of living cells can be interpreted as computations. The devices of this model are called P systems.. Roughly speaking, a P system consists of a cell-like membrane structure, in the compartments of which one places multisets of objects that evolve according to given rules in a synchronous non-deterministic maximally parallel manner. 1 The representation of data as multisets is an abstraction from the way in which chemical compounds are found in living cells. Membrane computing is a cross-disciplinary field, with contributions by computer scientists, biologists, formal linguists and complexity theoreticians, enriching each others' results and problems, and promising new research lines.. In this paper, we present a contribution from the computational side. We introduce a family of P systems with membrane creation, constructed in a uniform way, that solves the problem of determining, for a given formula in conjunctive normal form, whether it is satisfiable or not (the SAT problem).. The paper is organised as follows: first P systems with membrane creation are introduced in the next section. In Section 3, recogniser P systems (devices that capture the intuitive idea underlying the concept of an algorithm) are presented. The solution in the framework of membrane creation to the SAT problem is given in Section 4. Finally, some formal details and conclusions are given. Membrane computing is a new cross-disciplinary field of natural computing, which has reached an important success in its short life.. This paper deals with the study of efficient solutions to well-known computationally hard problems, and in this sense it is placed between the theoretical results mainly related to computational completeness and computational efficiency, and the real implementation of the devices. It exploits membrane creation (a poorly studied variant) to solve NP-complete problems, giving the first uniform solution to SAT in polynomial time (recently, we have proved that this variant is PSPACE powerful [4] ).. We stress the relevant role played by the rules of dissolution in the framework of recogniser P systems using membrane creation, in order to "separate" their tractability from the (presumable) intractability of decision problems, putting a barrier between the complexity classes P and NP (assuming P = NP).. This paper can be considered as a contribution to the interesting problem of characterising the tractability of hard decision problems in terms of the descriptional resources required in membrane systems.

O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O B I O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O B I O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


On the physical implementation of logical transformations: Generalized L-machines Any account of computation in a physical system, whether an artificial computing device or a natural system considered from a computational point of view, invokes some notion of the relationship between the abstract-logical and concrete-physical aspects of computation. In a recent paper, James Ladyman explored this relationship using a ''hybrid physical-logical entity'' -the L-machine -and the general account of computation that it supports [J. Ladyman, What does it mean to say that a physical system implements a computation?, Theoretical Computer Science 410 (2009) 376-383]. The underlying L-machine of Ladyman's analysis is, however, classical and highly idealized, and cannot capture essential aspects of computation in important classes of physical systems (e.g. emerging nanocomputing devices) where logical states do not have faithful physical representations and where noise and quantum effects prevail. In this work we generalize the L-machine to allow for generally unfaithful and noisy implementations of classical logical transformations in quantum mechanical systems. We provide a formal definition and physical-information-theoretic characterization of generalized quantum L-machines (QLMs), identify important classes of QLMs, and introduce new efficacy measures that quantify the faithfulness and fidelity with which logical transformations are implemented by these machines. Two fundamental issues emphasized by Ladyman -realism about computation and the connection between logical and physical irreversibility -are reconsidered within the more comprehensive account of computation that follows from our generalization of the L-machine. In a recent paper in this journal [1] , James Ladyman considered the question of what it means to say that a physical system implements a computation. He discussed two fundamental issues of contemporary interest that require a clear answer to this question for their proper consideration -realism about computation and the relationship between logical and thermodynamic irreversibility -and analyzed these issues using an account of implementation that is embodied in the notion of an L-machine. The L-machine, introduced in earlier work by Ladyman, Presnell, Short and Groisman [2] (hereafter LPSG), is a ''hybrid physical-logical entity that combines a physical device, a specification of which physical states of that device correspond to various logical states, and an evolution of that device which corresponds to the logical transformation L'' [1] .. In defining their L-machine, Ladyman and co-workers [1] [2] [3] properly associate logical transformations with families of physical processes. Also, they rightly emphasize the significance of faithful representation of logical states in distinguishable physical states. However, because LPSG require faithful representation in distinguishable states, and because they consider only classical devices, their L-machine can describe only idealized noiseless implementations of logical operations in classical physical systems. An account of implementation based on LPSGs L-machine will thus be unable to capture essential features of computing in natural and man-made systems in which noise and quantum effects prevail -including emerging nanocomputing devices -with implications for the generality of foundational analyses that are based on such an account.. In this work, we generalize the L-machine to allow for generally unfaithful and noisy physical implementations of classical logical transformations in generally quantum mechanical systems. This requires that we go beyond the question of whether a particular machine implements a specified computation -a question that is predicated on an ''all or nothing'' view of computation -to ask more generally how well a particular machine implements a specified computation when used in a particular way, and provide meaningful quantitative answers to this question. By allowing for ''shades of grey'' in computational efficacy, captured by statistical measures in our physical-information-theoretic approach, the notion of an L-machine is extended to accommodate a much wider variety of scenarios involving computation in physical systems and thus to provide a more comprehensive basis for the exploration of fundamental issues.. The paper is organized as follows: We begin Section 2 by restating LPSG's definition of their classical L-machine, which we dub the ''ideal classical L-machine'' (ICLM), and discussing its limitations. We then build to our definition of the fully generalized quantum L-machine (QLM), discussing the relevant generalizations and introducing associated formal devices along the way, and identify important classes of QLMs. In Section 3, we reconsider the ''qualified'' computational realism discussed by Ladyman in connection with ideal classical machines, and identify the class of noiseless QLMs for which such a realist conception is tenable. In Section 4, we provide a full physical-information-theoretic characterization of computation in the quantum L-machine that draws from and generalizes Winograd and Cowan's treatment of the noisy classical computation channel [4] and their observations regarding information loss in computation. Here we introduce new quantitative efficacy measures for representational faithfulness and computational fidelity, discuss their interpretation, and consider their connection to information loss in L-machines. Next, in Section 5, we consider the connection between logical irreversibility, physical irreversibility and information loss in the implementation of logical transformations by general quantum L-machines, and obtain information-theoretic lower bounds on entropy generation and energy flow that are expressed in terms of our efficacy measures. Finally, in Section 6, we summarize our work, discuss limitations of L-machines (LPSGs and ours), and briefly consider requirements for more comprehensive physical descriptions of realistic information processing scenarios.. We emphasize that, although the machines we consider in this work are generally quantum mechanical and are analyzed with the help of some ideas familiar from quantum information theory and quantum computation (e.g. [5] ), our focus is decidedly on the physical implementation of classical logical transformations 1 in such machines. Our specific concern is the relationship between the structure of the initial to final physical state transformations that characterize a given quantum L-machine and the structure of the classical logical transformation that the machine is taken to implement, considered independent of the machine's internal architecture and workings. In this work, we have introduced and analyzed the quantum L-machine (QLM). The QLM represents a full quantum generalization of the ideal classical L-machine (ICLM) introduced previously by Ladyman and co-workers [1] [2] [3] . Using our quantum generalization, we reconsidered fundamental issues concerning the physical implementation of logical transformations that were recently analyzed by Ladyman [1] using an account of computation rooted in ICLM. Our formal definition of a quantum L-machine (QLM) (Definition 5) was deliberately constructed so it retains as much of the structure and spirit of Ladyman's ideal classical definition (ICLM) as is possible in the more general context. This highlights the fundamental differences between the two types of machines, particularly those differences that admit unfaithful and noisy implementations of logical transformations into QLM, while preserving much of the clarity with which ICLM describes the relationship between the abstract-logical and concrete-physical aspects of computation.. We began by defining quantum L-machines and identifying relevant classes of these machines, paying particular attention to the physical representation of logical output states in these machines and discussing the fundamental problems that indistinguishability of these states pose for computational realism. We then identified the class of machineslogically irreducible QLMs (Definition 9) -that objectively implement particular ''transformation structures'' and can thus be unambiguously regarded as physical implementations of particular logical transformations. Next, we provided a full physical-information-theoretic characterization of the implementation of logical transformations in QLMs and discussed the underlying ''referential'' approach on which it is based. We identified two quantitative efficacy measures -the representational faithfulness f L (Definition 10) and the computational fidelity F L (Definition 11) -that together capture how well a quantum system, used in a particular way, implements a classical logical transformation L. These measures depend 28 Note that the classical thermodynamic cycle considered by LPSG was used to explore the irreversibility of the specific step that implements L, i.e. the irreversibility of ''single-shot'' implementation of L. Their thermodynamic cycle was not presented as a computational cycle, and does not generally correspond to such a cycle (except, perhaps, for ideal L-machines implementing the single-output transformation RESET). 29 Note that, for simplicity, analyses of computational cycles often assume decomposition of the overwriting step into a RESET operation -which erases the results of the previous computation from D -and a subsequent WRITE operation that prepares D in a new representative input state.. only on classical information-theoretic entropies associated with the logical transformation L and entropic measures that quantify various correlations between the initial and final quantum states of the computing device and physical records of the corresponding logical input and output states for L instantiated in the state of a referent system. The information loss −∆I in a QLM, and thus the physical irreversibility of a QLM implementing logically irreversible operations, is shown to depend on the efficacy measures in a simple and heuristically satisfying way (Eq. (53)). The connection between logical and physical irreversibility was considered within our approach, and a lower bound on entropy generation was obtained for a general QLM that is expressed in terms of the faithfulness and fidelity with which the quantum machine implements a specified L (Eq. (59) ). The entropy generation is lower bounded by the locally irreversible loss of correlations between the state of the computing device and a physical record of the input data encoded in a referent system -the signature of implementation of a logically irreversible transformation in our approach -upholding the qualitative statement of Landauer's principle and taking its standard quantitative form as well. We also obtained a lower bound on the flow of energy into a QLM's environment that is expressed in terms of the efficacy with which a logical transformation L is implemented and the average change in the device entropy resulting from evolution of machine (Eq. (68)). These bounds were compared and contrasted with standard statements of Landauer's Principle and with analyses of logical and physical irreversibility in ICLMs by Ladyman and co-workers.. The quantum L-machine introduced in this work represents a nontrivial generalization of its ideal classical counterpart. This generalization extends the notion of an L-machine to a much wider variety of realistic scenarios involving computation in physical systems, providing a correspondingly more comprehensive basis for the exploration of fundamental issues related to the physical implementation of logical operations in natural and artificial systems. The associated computational efficacy measures together provide a quantitative answer to the question of how well a given QLM implements a specified logical transformation L, even in machines for which a realist conception of computation is not possible, by appropriately capturing ''shades of grey'' in representational faithfulness and computational fidelity associated with physical implementation of logical transformations.. Even with these generalizations, however, the L-machine lacks features that will ultimately be required for comprehensive description of realistic information processing scenarios: It can describe only ''single-shot'' implementation of logical transformations, or, equivalently, only the ''computational stroke'' of a cycle that must be repeated over multiple uses if the machine is to operate on a random sequence of logical inputs. Comprehensive treatment of such scenarios requires a physical description of information processing that goes well beyond that offered by classical or quantum Lmachines: It must be sufficiently rich in structure to include input and output systems among the information-bearing degrees of freedom, interactions between these systems and the computing device and environment in various steps (i.e. the interactions associated with LOAD and READ operations), and multi-component environments if it is to capture all relevant correlations and track all relevant entropy, energy and information flows. Such a description, based on a referential approach and quantitative efficacy measures similar to those used in this work, is currently under development.. In this Appendix, we show that the information loss (Eq. . which, by Eqs. (50) and (52), is Eq. (53). The bounds obtained above apply specifically to the physical costs of ''single-shot'' implementation of a logical transformation L by a QLM, as is the case for LPSGs classical analysis. 28 Realistic information processing scenarios typically involve sequences of computational cycles in which the physical process that implements L is preceded by preparation of the appropriate input state and followed by a readout operation. The preparation step requires that the device state is brought into correlation with an appropriate external referent R in holding (unknown) input data, overwriting whatever configuration of D remains from the previous computational cycle and ''setting'' D to the appropriate representative statê D (in) i for the new cycle. 29 The readout operation is essentially a measurement, which can disturb the final device state in classical or quantum machines and necessarily causes such a disturbance in some noisy quantum machines. These steps generally exact physical costs in addition to those considered here and must be accounted for in comprehensive analysis of machines that perform sequences of computational cycles. We call attention to these issues to emphasize that the bounds obtained here (and in [2] ) apply only to physical costs incurred the ''computational stroke'' of a given cycle -the physical process that implements L -not to complete computational cycles. Evaluation of physical costs associated with full computational cycles will be considered within our referential approach elsewhere (e.g. [37]).

O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O B O O O O O O O O B O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O B O O O O O O O O O O O B O O O O O O O O O O O O O O O O B O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O B O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Optimizing database architecture for the new bottleneck: memory access Abstract. In the past decade, advances in the speed of commodity CPUs have far out-paced advances in memory latency. Main-memory access is therefore increasingly a performance bottleneck for many computer applications, including database systems. In this article, we use a simple scan test to show the severe impact of this bottleneck. The insights gained are translated into guidelines for database architecture, in terms of both data structures and algorithms. We discuss how vertically fragmented data structures optimize cache performance on sequential data access. We then focus on equijoin, typically a random-access operation, and introduce radix algorithms for partitioned hash-join. The performance of these algorithms is quantified using a detailed analytical model that incorporates memory access cost. Experiments that validate this model were performed on the Monet database system. We obtained exact statistics on events such as TLB misses and L1 and L2 cache misses by using hardware performance counters found in modern CPUs. Using our cost model, we show how the carefully tuned memory access pattern of our radix algorithms makes them perform well, which is confirmed by experimental results. Custom hardware -from workstations to PCs -has experienced tremendous improvements in the past decades. Unfortunately, this growth has not been equally distributed over all aspects of hardware performance and capacity. Figure 1 shows that the speed of commercial microprocessors has increased roughly 70% every year, while the speed of commodity DRAM has improved by little more than 50% over the past decade [Mow94] . Part of the reason for this is that there is a A preliminary version of this paper has been published as [BMK99] .. * This work was carried out while the author was at the University of Amsterdam, supported by SION grant 612-23-431. direct tradeoff between capacity and speed in DRAM chips, and the highest priority has been for increasing capacity. The result is that from the perspective of the processor, memory has been getting slower at a dramatic rate. This affects all computer systems, making it increasingly difficult to achieve high processor efficiencies. Three aspects of memory performance are of interest: bandwidth, latency, and address translation. The only way to reduce effective memory latency for applications has been to incorporate cache memories in the memory subsystem. Fast and more expensive SRAM memory chips found their way to computer boards, to be used as L2 caches. Due to the ever-rising CPU clock-speeds, the time to bridge the physical distance between such chips and the CPU became a problem; so modern CPUs come with an on-chip L1 cache (see Fig. 2 ). This physical distance is actually a major complication for designs trying to reduce main-memory latency. The new DRAM standards Rambus [Ram96] and SLDRAM [SLD97] therefore concentrate on fixing the memory bandwidth bottleneck [McC95] , rather than the latency problem.. Cache memories can reduce the memory latency only when the requested data is found in the cache. Their effectiveness depends on the memory access pattern of the application. Thus, unless special care is taken, memory latency becomes an increasing performance bottleneck, preventing applications - including database systems -from fully exploiting the power of modern hardware.. Besides memory latency and memory bandwidth, translation of logical virtual memory addresses to physical page addresses can also have a severe impact on memory access performance. The memory management unit (MMU) of all modern CPUs has a translation lookaside buffer (TLB), a kind of cache that holds the translation for (typically) the 64 most recently used pages. If a logical address is found in the TLB, the translation has no additional cost. Otherwise, a TLB miss occurs. A TLB miss is handled by trapping to a routine in the operating system kernel, which translates the address and places it in the TLB. Depending on the implementation and hardware architecture, TLB misses can be even more costly than a main memory access.. For a more detailed discussion of the hardware background, we refer the interested reader to [MBK00] . In this article we investigate the effect of memory access cost on database performance by looking in detail at the mainmemory cost of typical database applications. Our research group has studied large main-memory database systems for the past 10 years. This research started in the PRISMA project [AvdBF + 92], focusing on massive parallelism, and is now centered around Monet [BQK96, BWK98] , a high-performance system targeted to query-intensive application areas like OLAP and Data Mining. For the research presented here, we use Monet as our experimentation platform.. The rest of this paper is organized as follows. In Sect. 2, we analyze the impact of memory access costs on basic database operations. We show that, unless special care is taken, a database server running even a simple sequential scan on a table will spend 95% of its cycles waiting for memory to be accessed. We present a detailed analytical cost model that describes how hardware characteristics like cache line sizes and cache miss latencies determine the performance of a sequential scan. This memory access bottleneck is even more difficult to avoid in more complex database operations such as sorting, aggregation and join, which exhibit a random access pattern.. In Sect. 3, we discuss the consequences of this bottleneck for data structures and algorithms to be used in database systems. We identify vertical fragmentation as the solution for database data structures that leads to optimal memory cache usage. Concerning query processing algorithms, we focus on equi-join and introduce new radix algorithms for partitioned hash-join.. In Sect. 4, we analyze the properties of these algorithms with detailed analytical cost models that quantify query costs in terms of CPU cycles, TLB misses, and cache misses. These models show how memory access determines the performance of database algorithms, and they enable us to tune the memory access pattern of our algorithms carefully to achieve optimal performance. Exhaustive experiments using the Monet system confirm the significant performance improvement that our memory-conscious algorithms achieve over standard algorithms.. Finally, we evaluate our findings and conclude that the hard data obtained in our experiments justify the basic architectural choices of the Monet system, which back in 1992 were mostly based on intuition. It was shown that memory access cost is increasingly a bottleneck for database performance. We subsequently discussed the consequences of this finding on both the data structures and algorithms employed in database systems. We recommend using vertical fragmentation in order to better use scarce memory bandwidth. We introduced new radix algorithms for use in join processing, and we formulated detailed analytical cost models that explain why these algorithms make optimal use of hierarchical memory systems found in modern computer hardware. Further, our cost models enabled us to identify the hash-bucket size as a performance bottleneck for hash-joins in the main memory. We showed that using perfect hashing solves the problem and achieves the best performance, up to twice as fast as our previous results [BMK99] . Finally, we placed our results in a broader context of database architecture, and made recommendations for future systems.. We only used one sample architecture (an SGI Origin2000) in this study; however, our on-going work is to investigate how both our optimization techniques and our cost models perform on other hardware platforms. In [MBK00] , we present a calibration tool to automatically extract relevant characteristics of the (cache-) memory system (such as cache sizes, cache line sizes, and cache miss latencies) of any computer hardware. We show that feeding these parameters into the cost models presented here is sufficient to accurately predict the performance of database algorithms on different popular computer systems, such as a Sun Ultra workstation, an Intel PentiumIII PC, and an AMD Athlon PC. This in turn enables us to automatically tune our memory-conscious algorithms to their optimal settings on any hardware they run on. The detailed analysis and the models derived show how hardware specific parameters such as cache line sizes, cache miss penalties, and degree of CPU-inherent parallelism determine the performance of our scan experiment. We will now discuss the experiment in a broader context. While all machines in Fig. 3 exhibit the same pattern of performance degradation with decreasing data locality, Fig. 3 clearly shows that the penalty for poor memory cache usage has dramatically increased in the last six years. The CPU speed has improved by almost an order of magnitude, both through higher clock frequencies and through increased CPUinherent parallelism. However, the memory access latencies have hardly changed. In fact, we must draw the sad conclusion that if no attention is paid in query processing to data locality all advances in CPU power are neutralized due to the memory access bottleneck caused by memory latency. The considerable growth of memory bandwidth -reflected in the growing cache line sizes 2 -does not solve the latency problem if data locality is low.. This trend of improvement in bandwidth but standstill in latency [Ram96, SLD97] is expected to continue, with no real solutions in sight. The work in [Mow94] has proposed to hide memory latency behind CPU work by issuing prefetch instructions, before data is accessed. The effectiveness of this technique for database applications is, however, limited due to the fact that the amount of CPU work per memory access tends to be small in database operations (e.g., the CPU work in our select-experiment requires only 4 cycles on the Origin2000). Another proposal [MKW + 98] has been to make the caching system of a computer configurable, allowing the programmer to give a "cache-hint" by specifying the memory-access stride that is going to be used on a region. Only the specified data would then be fetched, hence optimizing bandwidth usage. Such a proposal has not yet been considered for custom hardware, however, let alone in OS and compiler tools that would need to provide the possibility to incorporate such hints for user programs. In our experiments, we use binary relations (BATs) of 8-byteswide tuples and varying cardinalities, consisting of uniformly distributed unique random numbers. In the join experiments, the join hit rate is one, and the result of a join is a BAT that contains the [OID,OID] combinations of matching tuples (i.e., a join-index [Val87] ). Subsequent tuple reconstruction is cheap in Monet, and equal for all algorithms, so as in [SKN94] we do not include it in our comparison.. The experiments were carried out with an Origin2000 machine on one 250 MHz MIPS R10000 processor. This system has 32 KB of L1 cache, consisting of 1024 lines of 32 bytes, 4 MB of L2 cache, consisting of 32 768 lines of 128 bytes, and sufficient main memory to hold all data structures. Further, this system uses a page size of 16 KB and has 64 TLB entries. We used the hardware event counters of the MIPS R10000 CPU [Sil97] to get exact data on the number of cycles, TLB misses, L1 misses and L2 misses during these experiments. 4 Using the data from the experiments, we formulate an analytical main-memory cost model that quantifies query cost in terms of these hardware events.

O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Value-at-Risk for Country Risk Ratings The country risk literature argues that country risk ratings have a direct impact on the cost of borrowings as they reflect the probability of debt default by a country. An improvement in country risk ratings, or country creditworthiness, will lower a country's cost of borrowing and debt servicing obligations, and vice-versa. In this context, it is useful to analyse country risk ratings data, much like financial data, in terms of the time series patterns, as such an analysis would provide policy makers and the industry stakeholders with a more accurate method of forecasting future changes in the risks and returns of country risk ratings. This paper considered an extension of the Value-at-Risk (VaR) framework where both the upper and lower thresholds are considered. The purpose of the paper was to forecast the conditional variance and Country Risk Bounds (CRBs) for the rate of change of risk ratings for ten countries. The conditional variance of composite risk returns for the ten countries were forecasted using the Single Index (SI) and Portfolio Methods (PM) of McAleer and da Veiga [10, 11] . The results suggested that the country risk ratings of Switzerland, Japan and Australia are much mode likely to remain close to current levels than the country risk ratings of Argentina, Brazil and Mexico. This type of analysis would be useful to lenders/investors evaluating the attractiveness of lending/investing in alternative countries. A variety of univariate and multivariate conditional volatility models was used in Hoti and McAleer [6] to analyse the dynamics of the conditional volatility associated with country risk returns for 120 countries across eight geographical regions. This extensive analysis classified the countries according the persistence of shocks to risk returns and the correlation coefficients of the conditional shocks to risk returns.. Similarly, Hoti [4] provided an analysis of economic, financial, political and composite risk ratings using univariate and multivariate volatility models for nine Eastern European countries. The empirical results enabled a comparative assessment of the conditional means and volatilities associated with country risk returns, defined as the rate of change in country risk ratings, across the countries. Moreover the estimated constant conditional correlation coefficients provided useful information as to whether these countries are similar in terms of shocks to the four risk returns.. Hoti and McAleer estimated and tested the constant conditional correlation asymmetric VARMA-GARCH models for four countries. The paper analysed the conditional means and volatilities of economic, financial, political and composite risk returns and evaluated the multivariate spillover effects of the four risk returns for a country. Indeed, significant multivariate spillover effects were found in the rate of change of country risk ratings (or risk returns) across economic, financial, political and composite risk returns. Moreover, Hoti [5] was the first attempt to model spillover effects for risk returns across different countries. The paper provided a novel analysis of four risk returns using multivariate conditional volatility models for six countries situated in the Balkan Peninsula. The empirical results showed that these models are able to capture the existence of country spillover effects in the country risk returns.. The purpose of this paper is to adapt the popular Value-at-Risk (VaR) approach in forecasting the conditional variance and Country Risk Bounds (CRBs) for the rate of change of risk ratings for ten representative countries. This paper demonstrates how this approach can be used not only by the countries wishing to attract foreign investments (or borrowing money), but also by the parties considering making such investments (or loans).. Empirical results suggest that the country risk ratings of Switzerland, Japan and Australia are much more likely to remain close to current levels than the country risk ratings of Argentina, Brazil and Mexico. This type of analysis would be useful to lenders/investors in evaluating the attractiveness of lending/investing in alternative countries.. The plan of the remainder of the paper is as follows. Section 2 describes country risk and country risk ratings. Section 3 extends the traditional VaR framework and introduces a new risk measure called Country Risk Bounds that is more useful in analysing country risk ratings. The models used are discussed in Section 4, while the data is described in Section 5. Section 6 presents the forecasting exercise and discusses the policy implications. Finally, some concluding remarks are given in Section 7. This paper considered an extension of the Value-at-Risk (VaR) framework where both the upper and lower thresholds are considered. The purpose of the paper was to forecast the conditional variance and Country Risk Bounds (CRBs) for the rate of change of risk ratings for ten countries. The conditional variance of composite risk returns for the ten countries were forecasted using the Single Index (SI) and Portfolio Methods (PM) of McAleer and da Veiga [10, 11] .. Both models led to very similar conditional variance forecasts, with PM having a tendency to yield slightly higher variance forecasts for all countries, except the USA.. The CRBs for each country were calculated using a 90%, 95%, 98% and 99% level of confidence. As would be expected, PM in general gave slightly wider bounds than the SI approach. An interesting result was that the number of violations in the upper and lower tails was often different, suggesting that the country risk returns may follow an asymmetric distribution. Therefore, future research might improve the accuracy of risk returns threshold forecasts by considering asymmetric distributions.

B O B I O O B I O O O B I O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O B O O O O O O O O B I O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O B I O O O O O O O O O O O O O O O B I O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O