Granular computing neural-fuzzy modelling: A neutrosophic approach Granular computing is a computational paradigm that mimics human cognition in terms of grouping similar information together. Compatibility operators such as cardinality, orientation, density, and multidimensional length act on both in raw data and information granules which are formed from raw data providing a framework for human-like information processing where information granulation is intrinsic. Granular computing, as a computational concept, is not new, however it is only relatively recent when this concept has been formalised computationally via the use of Computational Intelligence methods such as Fuzzy Logic and Rough Sets. Neutrosophy is a unifying field in logics that extents the concept of fuzzy sets into a three-valued logic that uses an indeterminacy value, and it is the basis of neutrosophic logic, neutrosophic probability, neutrosophic statistics and interval valued neutrosophic theory. In this paper we present a new framework for creating Granular Computing Neural-Fuzzy modelling structures via the use of Neutrosophic Logic to address the issue of uncertainty during the data granulation process. The theoretical and computational aspects of the approach are presented and discussed in this paper, as well as a case study using real industrial data. The case study under investigation is the predictive modelling of the Charpy Toughness of heat-treated steel; a process that exhibits very high uncertainty in the measurements due to the thermomechanical complexity of the Charpy test itself. The results show that the proposed approach leads to more meaningful and simpler granular models, with a better generalisation performance as compared to other recent modelling attempts on the same data set. Extracting information and converting it to 'easy to interpret' knowledge is a very important but not a trivial task in Systems Engineering, in particular in the case of very complex and non-linear processes [1] . Within this context, Soft Computing techniques can be utilised to offer their transparency and interpretability potential. Transparency plays a significant role as a measure of interpretability and distinguishability, i.e. the more interpretable information of a system under study, the better its understanding. Unlike popular clustering approaches such as Fuzzy C-Means, Granular Computing (GrC) [2, 3] groups data not only based on similar mathematical properties such as proximity but also it considers the raw data as conceptual entities that are captured in a compact and transparent manner [4] . Therefore, such individual entities are merged into dense information granules whose similarity [3] can be evaluated in a variety of ways depending on the application at hand. In GrC all operators act on the information granules and raw data, which can embed useful (for the data mining process) granular knowledge such as the proximity to other information granules, cardinality, density, function similarity, orientation, overlap, etc.. In literature a number of granular frameworks appeared [5] [6] [7] [8] via the use of Rough Sets, Fuzzy Logic and Neural Networks.. Even though granulation process [8] groups similar entities, there is not any measure which leads how much a granule must grow. This phenomenon produces a grade of inclusion uncertainty among the new granules as a consequence of a ravenous behaviour. Usually, in fuzzy systems a parsimony model is related to its interpretability as a consequence of a good distinguishability. However, as it is mentioned in [9] when adaptive learning algorithm is introduced into a fuzzy inference system, there might be a loss in the interpretability. We believe a distinguishable and initial granular framework can aid in the estimation of the fuzzy inference parameters. To exemplify a case study model used in this paper is based on a real industry dataset related to the measurement of Charpy Toughness in heat-treatment steel and it suffers from sparsely data set [10, 11] . The use of Neutrosophic domain provides an extra dimension which measures the entropy produced by the creation of a new granule. And it persuades the compatibility search in eliminating potential granules to be merged. In this paper we present a systematic approach for the construction of granular objects by means of a Neural-Fuzzy modelling structure based on Radial Basis Functions (RBF) and Neutrosophy. A Neural Fuzzy system combines the learning capabilities of Neural-Networks (NN) and the advantages of system transparency as offered by FuzzyLogic (FL) systems. Furthermore, a large number of NF approaches have been proposed in the past, just to name a few [12] [13] [14] [15] [16] [17] [18] .. In spite of the functional equivalence between RBF neural networks and fuzzy systems (FS) [12, 19] , fuzzy capabilities such as transparency and interpretability loss their real power as a consequence of black-box properties in RBF neural structures. Therefore, one of the major objectives in Soft Computing (SC) systems and modelling, the development of transparent knowledge and rulebases is crucial for the interpretation of real world systems. The motivation behind the research work presented in this paper is to propose a systematic methodology by using granulation that is capable of identifying the data uncertainty produced by merging two different information granules in a data space. In particular, those granules which are quite similar, and how their orientation can be influenced in order to produce better distinguishability in the creation of fuzzy partitions.. In this paper, the hesitation produced during information granulation particularly due to the lack of distinguishability in the initial fuzzy partition is measured by the use of a neutrosophic index [20] , which is a generalization of the Intuitionistic Fuzzy Sets [21] . In intuititionistic theory the uncertainty of an element A is produced by A = A + v A ≤ 1, and A : X → [0,1] and v A : X → [0,1]. In neutrosophic sets the tuple <t, i, f> represents the truth, falsehood, and indeterminacy, with the latter often used in literature as uncertainty, hesitation, ignorance, etc. From a mathematical point of view, neutrosophic sets and the set-theoretic operators should be defined according to the problem at hand. In this paper we define the set-theoretic operators based on the entropy (uncertainty) produced by the distribution of membership functions in the initial clustering stage. The neutrosophic components <t, i, f> define the domain in which an element belongs (t = true = membership) or not (f = false = non-membership) to a certain fuzzy set and if the compatibility criterion in granulation produces a high indeterminate value (uncertainty). In Fuzzy Logic theory, entropy has been employed as a measure of Fuzzy information about a Fuzzy set or system in the universe of discourse. Shannon considered the logarithmic behaviour of the entropy due to its addition property [22] , and as an information gain from an event that is inversely related to its occurrence [23] .. For example in [24] an ensemble NN was presented to predict mineral prospectivity into deposit or barren cell. In that work, two Neural Networks were employed to estimate the degree of truth and false membership values, and finally calculate the degree of indeterminacy by a using an interpolation method. In this paper, the Neutrosophic scheme is utilised to influence the compatibility measure between granules by evaluating the uncertainty produced by the merging of the information granules. This paper is organised as follows: in the next section, Section 2, a systematic modelling approach is presented based on Granular Computing and an RBF Neural-Fuzzy structure. Section 3 presents a Neutrosophic scheme based on a version of Shannon's entropy definition for the formulation of uncertainty to account for any uncertainty produced during the merging of the information granules. In Section 4, a case study is presented based on a real industry dataset related to the measurement of Charpy Toughness in heat-treated steel. This process is known in the steel industry for the uncertainty induced in the measurements due to complex thermomechanical phenomena during the mechanical testing of the material. Finally, Section 5 concludes this paper and suggests possible future research directions. In this paper, a systematic modelling framework based on Granular Computing, Neural-Fuzzy modelling and Neutrosophic Logic is proposed. The presented approach mimics the human cognition in terms of grouping similar information (granules) together based on a number of similarity measures (in the computational case: proximity, cardinality, length). Furthermore, the proposed approach uses a Neutrosophic Logic concept to estimate inherent information uncertainty/indeterminacy due to the merging operation during the information granulation process. The uncertainty/indeterminacy index, calculated via a Shannon entropy criterion, is iteratively calculated during the granulation process and this results in a final GrC-NF inference system with a more robust rule-base with better representation of the raw data/information. This approach is applied to a real industrial dataset, based on the measurement of the Charpy Toughness of heat-treated steel, a process that is particularly known for the production of sparse and uncertain data. The proposed methodology is successfully applied to the industrial dataset and the results show an improved generalisation and model interpretability performance as compared with similar previous modelling attempts based on the exact same dataset. However, further investigations need to be performed with different datasets and synthetic benchmarks to establish the overall performance of the proposed approach under different information granulation conditions. It would also be interesting to use this new framework presented in this paper and try to introduce different levels and measures of information uncertainty, for instance that uncertainty caused by conflict, congruency, discord, and ambiguity in terms of nonspecificity, particularly variety and diversity in the creation of granules.

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 O O O O O 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 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 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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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 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 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 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 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 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 B I 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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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


Multiple TFRC Connections Based Rate Control for Wireless Networks Abstract-Rate control is an important issue in video streaming applications for both wired and wireless networks. A widely accepted rate control method in wired networks is equation based rate control [1], in which the TCP friendly rate is determined as a function of packet loss rate, round trip time and packet size. This approach, also known as TCP friendly rate control (TFRC), assumes that packet loss in wired networks is primarily due to congestion, and as such is not applicable to wireless networks in which the bulk of packet loss is due to error at the physical layer. In this paper, we propose multiple TFRC connections as an end-to-end rate control solution for wireless video streaming. We show that this approach not only avoids modifications to the network infrastructure or network protocol, but also results in full utilization of the wireless channel. NS-2 simulations, actual experiments over 1 RTT CDMA wireless data network, and and video streaming simulations using traces from the actual experiments, are carried out to validate, and characterize the performance of our proposed approach.Index Terms-All-In-One TFRC, MULTFRC, parallel connections, streaming rate control, TFRC, video transmission, video streaming, video over wireless, wireless communications.

O B 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 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 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 B I O O O O O O O O O O O O O O O O O O O O O B B B I B I I B B I B I B I I B I


New algorithms for binary jumbled pattern matching Abstract. Given a pattern P and a text T , both strings over a binary alphabet, the binary jumbled string matching problem consists in telling whether any permutation of P occurs in T . The indexed version of this problem, i.e., preprocessing a string to efficiently answer such permutation queries, is hard and has been studied in the last few years. Currently the best bounds for this problem are O(n 2 / log 2 n) (with O(n) space and O(1) query time) [10] and O(r 2 log r) (with O(|L|) space and O(log |L|) query time) [3] , where r is the length of the run-length encoding of T and |L| = O(n) is the size of the index. In this paper we present new results for this problem. Our first result is an alternative construction of the index by Badkobeh et al. [3] that obtains a trade-off between the space and the time complexity. It has O(r 2 log k + n/k) complexity to build the index, O(log k) query time, and uses O(n/k + |L|) space, where k is a parameter. The second result is an O(n 2 log 2 w/w) algorithm (with O(n) space and O(1) query time), based on word-level parallelism where w is the word size in bits. The umbrella term "approximate string matching" comprises a plethora of matching models; one of them, the so-called jumbled string matching [5, 6] , does not distinguish between permutations of the pattern string. This problem, in its decision version, consists in telling if any permutation of a pattern P occurs in a text T , both strings over a finite alphabet. In the literature, the binary version of this problem, i.e., the one in which the alphabet for P and T is binary, has been given most attention, and the present article is also restricted to this case. More formally, the binary jumbled string matching problem can be stated as follows: We are given a text T of length n over the alphabet Σ = {0, 1}, the length m of a pattern over the same alphabet, and the number k of symbols 1 in the pattern. The task is to answer efficiently if there exists a substring of T of length m containing exactly k 1's. The pattern is usually represented as the pair (m − k, k), called a Parikh vector.. The online version of this problem can be trivially solved with a O(n) time algorithm for a single pattern. It is more interesting, however, to build an index for T making it possible to answer queries much faster, even in constant time. The query pattern lengths are arbitrary (can be any values from 1 up to n). Each index-based algorithm can be described by a triple (f (n), h(n)), g(n) , where f (n) is the preprocessing time, h(n) is the preprocessing space (which is usually also the size of the resulting index), and g(n) is the query time. We assume the word-RAM model of computation.. A fundamental observation concerning the binary jumbled string matching is an interval property:. Lemma 1 ( [6] ) If, for a given text T and a pattern length m, the answer is positive for some (m − k 1 , k 1 ) and (m − k 2 , k 2 ), where. A practical consequence of this lemma is that it is enough to find the minimum and the maximum number of 1's for a given pattern length m, to be able to give the answers for all k for this m. To avoid a complex notation, we shall identify these values simply as minOne and maxOne, respectively.. The first index for binary jumbled string matching, which exploits a connection with the (min, +) convolution and whose complexity is (O(n 2 / log n), O(n)), O(1) , has been independently discovered by two different groups of researchers [9, 4] . Currently the best results for this problem are (O(n 2 / log 2 n), O(n)), O(1) by Moosa and Rahman [10] and (O(r 2 log r), O(|L|)), O(log |L|) by Badkobeh et al. [3] , where r is the length of the run-length encoding of T and |L| = O(n) is the size of their index structure. Recently, an interesting result was presented by Cicalese et al. [7] . They showed how to build an index for all Parikh vectors of a binary string in O(n 1+η ) time, for any η > 0, which leaves a chance for false positives, i.e., may report a Parikh vector not occurring in the string.. In this article we present two novel results. First, we show that the index from [3] can be easily modified to become an (O(r 2 log k + n/k), O(n/k + |L|)), O(log k) solution, where k is a trade-off parameter. In particular, for k = O(1) we obtain an index with (O(r 2 + n), O(n)), O(1) complexity. While the index space is increased, we think that such a trade-off is often preferable (a more detailed comparison of the results is given in the corresponding section). Our result improves over the Moosa-Rahman solution if r = o(n/ log 1+ε n), for any ε > 0, and over the solution by Badkobeh et al. if n/k = o(r √ log r) and k = r O(1) . The second result is an algorithm, based on word-level parallelism, with (O(n 2 log 2 w/w), O(n)), O(1) complexity, where w is the word size in bits. It dominates over the O(n 2 / log 2 n) algorithm from [10] if, roughly speaking, w = Ω(log 2+ε n), for any ε > 0. Although this bound does not hold in practice on current architectures with 64-bit word, we believe that it is relevant theoretically. In particular, occurrences of the so-called wide word assumption date back to 1995 [1] .. Our algorithms, like all the others for this problem, are based on the interval property. We note that for each interval size it is enough to present a procedure only for finding maxOne, since minOne is equal to maxOne on negated input, i.e., where 0's become 1's and vice versa. Throughout the paper we assume that all logarithms are in base 2.

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 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 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 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 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 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


PSPACE-Completeness of Sliding-Block Puzzles and Other Problems through the Nondeterministic Constraint Logic Model of Computation We present a nondeterministic model of computation based on reversing edge directions in weighted directed graphs with minimum in-flow constraints on vertices. Deciding whether this simple graph model can be manipulated in order to reverse the direction of a particular edge is shown to be PSPACEcomplete by a reduction from Quantified Boolean Formulas. We prove this result in a variety of special cases including planar graphs and highly restricted vertex configurations, some of which correspond to a kind of passive constraint logic. Our framework is inspired by (and indeed a generalization of) the "Generalized Rush Hour Logic" developed by Flake and Baum [4] .We illustrate the importance of our model of computation by giving simple reductions to show that several motion-planning problems are PSPACE-hard. Our main result along these lines is that classic unrestricted sliding-block puzzles are PSPACE-hard, even if the pieces are restricted to be all dominoes (1 × 2 blocks) and the goal is simply to move a particular piece. No prior complexity results were known about these puzzles. This result can be seen as a strengthening of the existing result that the restricted Rush Hour TM puzzles are PSPACE-complete [4], of which we also give a simpler proof. We also greatly strengthen the conditions for the PSPACE-hardness of the Warehouseman's Problem [6], a classic motion-planning problem. Finally, we strengthen the existing result that the pushing-blocks puzzle Sokoban is PSPACE-complete [2], by showing that it is PSPACE-complete even if no barriers are allowed. Motivating Application: Sliding Blocks. Motion planning of rigid objects is concerned with whether a collection of objects can be moved (translated and rotated), without intersection among the objects, to reach a goal configuration with certain properties. Typically, one object is distinguished, the remaining objects serving as obstacles, and the goal is for that object to reach a particular position. This general problem arises in a variety of applied contexts such as robotics and graphics. In addition, this problem arises in the recreational context of sliding-block puzzles [7] , where the pieces are typically integral rectangles, L shapes, etc., and the goal is simply to move a particular piece to a specified target position. See Figure 1 for an example.. The Warehouseman's Problem [6] is a particular formulation of this problem in which the objects are rectangles of arbitrary side lengths, packed inside a rectangular box. In 1984, Hopcroft, Schwartz, and Sharir [6] proved that deciding whether the rectangular objects can be moved so that each object is at its specified final position is PSPACE-hard. Their construction critically requires that some rectangular objects have dimensions that are proportional to the box dimensions.. Although not mentioned in [6] , the Warehouseman's Problem captures a particular form of sliding-block puzzles in which all pieces are rectangles. However, two differences between the two problems are that slidingblock puzzles typically require only a particular piece to reach a position, instead of the entire configuration, and that sliding-block puzzles involve blocks of only constant size. More generally, it is natural to ask for the complexity of the problem as determined by the goal specification and the set of allowed block types.. In this paper, we prove that the Warehouseman's Problem and sliding-block puzzles are PSPACE-hard even for 1 × 2 rectangles (dominoes) packed in a rectangle. In contrast, there is a simple polynomial-time algorithm for 1 × 1 rectangles packed in a rectangle. Thus our results are in some sense tight.. Hardness Framework. To prove that sliding blocks and other problems are PSPACE-hard, this paper builds a general framework for proving PSPACE-hardness which simply requires the construction of a couple of gadgets that can be connected together in a planar graph. Our framework is inspired by the one developed by Flake and Baum [4] , but is simpler and more powerful. We prove that several different models of increasing simplicity are equivalent, permitting simple constructions of PSPACE-hardness. In particular, we derive simple constructions for sliding blocks, Rush Hour [4] , and a restricted form of Sokoban [2] .. Nondeterministic Constraint Logic Model of Computation. Our framework can also be viewed as a model of computation in its own right. We show that a Nondeterministic Constraint Logic (NCL) machine has the same computational power as a space-bounded Turing machine. Yet, it has a more concise formal description, and has a natural interpretation as a kind of logic network. Thus, it is reasonable to view NCL as a simple computational model that corresponds to the class PSPACE, just as, for example, deterministic finite automata correspond to regular languages.. Roadmap. Section 2 describes our model of computation in more detail. Section 3 proves increasingly simple formulations of NCL to be PSPACE-complete. Section 4 proves various puzzles and motion-planning problems to be PSPACE-hard using the restricted forms of our model of computation. Section 5 presents an alternative formulation of the NCL problem. We proved that one of the simplest possible forms of motion planning, sliding 1× 2 blocks (dominoes) around in a box, is PSPACE-hard. This result is a major strengthening of previous results. The problem has no artificial constraints, such as the movement restrictions of Rush Hour; it has object size constraints which are tightly bounded, unlike the unbounded object sizes in the Warehouseman's Problem. Also compared to the Warehouseman's Problem, the task is simply to move a block at all, rather than to reach a total configuration. Along the way, we presented a model of computation of interest in its own right, and which can be used to prove several motion-planning problems to be PSPACE-hard. Our hope is to apply this approach to several other motion-planning problems whose complexity remain open, for example:. 1. 1 × 1 Rush Hour. While 1 × 1 sliding blocks can be solved in polynomial time, if we enforce horizontal or vertical motion constraints as in Rush Hour, does the problem become PSPACE-complete [12] ? Deciding whether a block may move at all is in P, so a straightforward application of our technique will not work, but what is the complexity of moving a given block to a given position?. 2. Retrograde Chess. Given two configurations of chess pieces in a generalized n × n board, is it possible to play from one configuration to the other if the players cooperate? This problem is known to be NP-hard [1] ; is it PSPACE-complete?

O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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 B 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 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 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


Optimal Communication Complexity of Generic Multicast Key Distribution Abstract-We prove a tight lower bound on the communication complexity of secure multicast key distribution protocols in which rekey messages are built using symmetric-key encryption, pseudorandom generators, and secret sharing schemes. Our lower bound shows that the amortized cost of updating the group key for each group membership change (as a function of the current group size) is at least log 2 ( E NSURING privacy of communication over broadcast channels is a security task of considerable practical importance. At a high level, the problem involves a source of information (say, a PayTV broadcast station), which wants to transmit data privately to a privileged subset of users of a broadcast channel (say, the subscribers to the PayTV service), while ensuring that users outside this privileged group cannot decipher what is being sent. Furthermore, membership of the privileged group changes dynamically (in an arbitrary a priori unknown manner) and the source desires to keep its data hidden from unprivileged recipients at each point in time. The challenge lies in devising secure solutions for this problem in such a way that the communication and storage overhead is minimized.. Two distinct models have been used in the literature to study this problem. The first, commonly referred to as broadcast encryption [13] , assumes that all receivers are stateless, and so current data must be decipherable independently of past transmissions. This model has the advantage that it does not require users to be "attentive" to all broadcasts in order to be able to decipher the material sent at a fixed instant. However, the advantage comes at a price: solutions to broadcast encryption are often quite intensive, either in terms of user storage and computation requirements or in terms of communication complexity. The second model, studied under the title of multicast key distribution or multicast encryption [36] , [35] , is more general in that it allows users to maintain state and use previously learned keys for decrypting current transmissions. This model is better suited to multicast-based applications on the Internet (like online gaming and Internet-based pay-per-view services) where users are stateful, and, more importantly, conserving bandwidth is an important design goal. In this paper, our focus is on multicast key distribution protocols and, specifically, those that are designed using efficient symmetric-key cryptographic techniques. Quite commonly, key distribution in multicast is implemented using a central distribution authority, called the group center, responsible for establishing a shared key among all privileged group members and for "rekeying" the group (that is, changing the shared key) every time a new member joins and/or an existing member leaves the group. The shared key can subsequently be used for various purposes, and, in particular, it can be used to guarantee privacy of group data (by encrypting all such data under the said key using a symmetric-key encryption scheme). We are interested in studying the communication complexity (the cost of transmitting rekey messages) of protocols that fall within this class.. One simple way in which rekey operations can be handled is to have the center share individual long-lived secret keys with every user of the channel and, after any membership change, transmit a fresh group key encrypted under the individual keys of only the new set of members (as advocated in [20] and [19] ). This, however, is not a scalable solution since the amount of communication required for the rekey operation is linear in the size of the current group. The question is: how much better than the linear-cost solution can we do? The Logical Key Hierarchy (LKH) approach (proposed by Wong et al. [36] and Wallner et al. [35] ) provides a framework for building protocols in which the average communication cost is reduced to logarithmic in the size of the group. The original LKH protocol [36] , [35] , which makes use of symmetric-key encryption as the only cryptographic primitive, requires the transmission of messages 1 each time a user leaves and another one joins the group, where is the size of the group. 2 Subsequent work [5] , [22] provides improvements over the original protocol, reducing the 1 By a "message," we refer to a fixed-size packet of sufficiently large size to allow for the transmission of a single (possibly encrypted) key or key share. 2 For simplicity, we consider groups of fixed size in analyzing protocols, that is, we assume that each time a user leaves, another one is immediately added.. Thus, the size of the group is always equal to n. We refer to each simultaneous execution of a leave and a join as a "group update operation" above. Section V provides a discussion on groups with separate leave and join operations.. 1558-2566/$25.00 © 2008 IEEE number of transmissions to exactly messages per update. Although these solutions are exponentially more efficient than the linear-cost solution, it would be desirable to have protocols with even smaller communication complexity. We are interested in investigating whether this is possible or not using standard symmetric-key cryptography techniques.

O O O O O B B I O O O O O O O O O O O O B B I 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 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 B B I 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 B I O O O O O O O O O O O O O O B I 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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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 constrained finite element method satisfying the discrete maximum principle for anisotropic diffusion problems Nonlinear constrained finite element approximations to anisotropic diffusion problems are considered. Starting with a standard (linear or bilinear) Galerkin discretization, the entries of the stiffness matrix are adjusted so as to enforce sufficient conditions of the discrete maximum principle (DMP). An algebraic splitting is employed to separate the contributions of negative and positive off-diagonal coefficients which are associated with diffusive and antidiffusive numerical fluxes, respectively. In order to prevent the formation of spurious undershoots and overshoots, a symmetric slope limiter is designed for the antidiffusive part. The corresponding upper and lower bounds are defined using an estimate of the steepest gradient in terms of the maximum and minimum solution values at surrounding nodes. The recovery of nodal gradients is performed by means of a lumped-mass L 2 projection. The proposed slope limiting strategy preserves the consistency of the underlying discrete problem and the structure of the stiffness matrix (symmetry, zero row and column sums). A positivity-preserving defect correction scheme is devised for the nonlinear algebraic system to be solved. Numerical results and a grid convergence study are presented for a number of anisotropic diffusion problems in two space dimensions. Some partial differential equations of elliptic type are known to possess a remarkable property: if the source term is nonpositive, then the solution attains its maximum on the boundary. This statement is known as the maximum principle and provides a useful criterion for the analysis of numerical approximations. A finite element scheme that does not generate spurious extrema in the interior of the domain is said to satisfy the discrete maximum principle (DMP) which makes it possible to prove uniform convergence of an approximate solution to the exact one [4] . Sufficient conditions of the DMP can be formulated using the concept of monotone operators and, in particular, M-matrices which play an important role in numerical linear algebra [3, 23] . The inverse of a monotone matrix is nonnegative, and so is the solution of the algebraic system for any nonnegative right-hand side. A numerical scheme that enjoys this property is called positivity-preserving. The DMP criterion is more stringent since it requires that the row sums of the stiffness matrix be zero for all interior nodes.. Monotonicity constraints are difficult to satisfy at the discrete level. In many cases, the above sufficient conditions impose severe restrictions on the choice of basis functions and on the geometric properties of the mesh. For a triangulation of acute or nonobtuse type (all angles smaller than or equal to π/2) the piecewise-linear finite element approximation of the Poisson equation produces a discrete operator that proves to be an M-matrix [4, 12, 13] . In the case of bilinear finite elements, it is sufficient to require that all quadrilaterals be of nonnarrow type (aspect ratios smaller than or equal to √ 2 [6] ). However, the geometric approach to DMP verification fails in the case of higherorder finite elements [9] , singularly perturbed convection-diffusion equations [15] , and anisotropic diffusion problems [17] . As a consequence, nonphysical local extrema can and do occur when a steep gradient cannot be resolved properly on a given mesh.. An ideal discretization must be conservative, consistent, and more than first-order accurate for smooth data. Moreover, it must satisfy the DMP on arbitrary meshes, even if convective effects are strong and/or the diffusion tensor is heterogeneous/anisotropic [17] . Unfortunately, no linear scheme can meet all of these requirements. A possible remedy is to adjust the coefficients of the discrete problem in an adaptive way. In the case of hyperbolic conservation laws, this can be accomplished using flux/slope limiters to achieve monotonicity. Many nonlinear high-resolution schemes are based on this design principle. However, the idea of blending linear approximations of high and low order cannot be directly transferred to the case of anisotropic diffusion problems since the structure of numerical fluxes is different from the hyperbolic case.. Flux limiting for diffusion operators was addressed in a number of recent publications [2, 10, 24] but many open questions remain. Monotone finite volume schemes for anisotropic diffusion problems are available [16, 17] but they are merely positivitypreserving and, generally, do not satisfy the DMP. Moreover, their derivation is based on a design philosophy which is not applicable to finite element approximations. The method proposed in [18] is based on constrained optimization and requires a priori knowledge of the solution bounds. The solution of this constrained optimization problem can be very expensive as the number of unknowns increases.. The algebraic flux correction paradigm described in [14, 15] provides a general framework for the design of monotone discretizations on unstructured meshes. In the present paper, we extend this methodology to anisotropic diffusion problems and enforce the DMP using a combination of algebraic and geometric criteria. The new algorithm constrains an antidiffusive flux using the coefficients of a discrete gradient to derive the upper and lower bounds. The structure of these bounds resembles that for fluxcorrected transport (FCT) algorithms [15, 25] but the limiting process is intended to control a local slope, as in the case of symmetric limited positive (SLIP) schemes [11] .. The outline of this paper is as follows. In Section 2, we formulate the continuous maximum principle to be emulated at the discrete level. The Galerkin finite element discretization and the discrete maximum principle are dealt with in Sections 3 and 4, respectively. The algebraic splitting described in Section 5 leads to the new slope limiting technique introduced in Section 6. A positivity-preserving defect correction scheme for the iterative treatment of nonlinear antidiffusive terms is proposed in Section 7. Numerical experiments and grid convergence studies for several 2D test problems are performed in Section 8 which is followed by a summary and conclusions. The objective of the present paper was to review some important qualitative properties of exact solutions to elliptic problems and preserve these properties at the discrete level. After a brief overview of continuous maximum principles, linear and bilinear finite element discretizations of the stationary diffusion equation were considered. Sufficient conditions of the discrete maximum principle were formulated. The residual of the algebraic system was decomposed into internodal fluxes associated with positive and negative coefficients of the global stiffness matrix. Flux correction was performed using a new slope limiter based on gradient reconstruction. The resulting nonlinear problem was solved by an iterative defect correction scheme equipped with a positivity-preserving preconditioner. A numerical study was performed for several 2D test problems with anisotropic diffusion tensors and discontinuous coefficients.. The presented computational results demonstrate that the new approach to slope limiting rules out the formation of spurious undershoots and overshoots, while preserving the accuracy and consistency of the underlying discretization in the case of sufficiently smooth data. The same algorithm can be used to enforce the DMP in three-dimensional applications. An extension to mixed finite elements is feasible and will be addressed in future work. Further research is required to accelerate the slowly converging defect correction scheme and reduce the significant overhead cost incurred by the nonlinearity of the constrained approximation. In the case of unsteady anisotropic diffusion problems, multidimensional flux-corrected transport (FCT) algorithms [15, 25] offer a cost-effective alternative to gradient-based slope limiting.

O O B I I O O B I I 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 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 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 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 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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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 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 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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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 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 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 B I 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 B I O O O O O O O O O O O O O O B I


Upper and lower bound limit analysis of plates using FEM and second-order cone programming Le, C.V., Nguyen-Xuan, H. and Nguyen-Dang, H. (2010) in which the pressure is equilibrated by corner loads only, ensuring that exact equilibrium relations associated with a uniform pressure can be obtained. Once the displacement or moment fields are approximated and the bound theorems applied, limit analysis becomes a problem of optimization. In this paper, the optimization problems are formulated in the form of a standard second-order cone programming which can be solved using highly efficient interior point solvers.The procedures are tested by applying it to several benchmark plate problems and are found good agreement between the present upper and lower bound solutions and results in the literature.Key words: Limit analysis, upper and lower bounds, displacement and equilibrium models, criterion of mean, second order cone programming The yield line theory has been proved to be an effective method to perform plastic analysis of slabs and plates [1, 2] . This well-known method can predict very good upper-bound of the actual collapse multiplier for many practical engineering problems. However, this hand-based analysis method encounters difficulties in problems of arbitrary geometry, especially in the problems involving columns or holes. Consequently, over last few decades various numerical approaches based on bound theorems and mathematical programming have been developed [3, 4, 5, 6, 7, 8, 9, 10] . Numerical limit analysis generally involves two steps: (i) numerical discretization; and (ii) mathematical programming to enable a solution to be obtained. The finite element method, which is one of the most popular numerical methods, is often employed to discrete velocity or stress fields. Of several displacement and equilibrium elements that have been developed for Krichhoff plates in bending, the conforming Hsieh-Clough-Tocher (HCT) [11] and equilibrium Morley elements [12] are commonly utilized in practical engineering. The original HCT element will be used in the paper without any modification while the Morley element will be modified by adding a complementary field. Once the stress or displacement fields are approximated and the bound theorems applied, limit analysis becomes a problem of optimization involving either linear or nonlinear programming. Problems involving piecewise linear yield functions or nonlinear yield functions can respectively be solved using linear or non-linear programming techniques [13, 14, 5, 15, 16] . However, difficulty exists in the upper-bound optimization problem is that the objective function is convex, but not everywhere differentiable. One of the most efficient algorithms to overcome this singularity is the primal-dual interior-point method presented in [17, 18] and implemented in commercial codes such as the Mosek software package [19] , such as second-order cone programming. The algorithm is also suitable for solving lower-bound limit analysis since most of yield conditions can be cast as a conic constraint [20] . These limit analysis problems can then be solved by this efficient algorithm [21, 22, 23] . The performance of the two novel numerical limit analysis procedures using finite element method in conjunction with second-order cone programming has been investigated. It has been shown that when limit analysis problems are cast in the form of a SOCP, the resulting optimization problems can be solved rapidly by such a efficient interior point algorithm, even though for cases when a very large number of variables involves. The proposed procedures are enable to mesh, particularly in the region of stress or displacement singularities. An au-. tomatically adaptive mesh refinement scheme can be performed to increase the accuracy of solutions. A well-known benefit from dual structure of limit analysis is that both the stress and velocity fields of the upper and lower bound problem can be determined. It is, therefore, relevant to investigate the performance of an adaptive scheme based on a posteriori error estimate using elemental and edge contributions to the bound gap [22, 23] .

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 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 B I B I I I B I I I B I I B I 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 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 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 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 B I 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 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


Bounds on the Sum Capacity of Synchronous Binary CDMA Channels In this paper, we obtain a family of lower bounds for the sum capacity of Code Division Multiple Access (CDMA) channels assuming binary inputs and binary signature codes in the presence of additive noise with an arbitrary distribution. The envelope of this family gives a relatively tight lower bound in terms of the number of users, spreading gain and the noise distribution. The derivation methods for the noiseless and the noisy channels are different but when the noise variance goes to zero, the noisy channel bound approaches the noiseless case. The behavior of the lower bound shows that for small noise power, the number of users can be much more than the spreading gain without any significant loss of information (overloaded CDMA). A conjectured upper bound is also derived under the usual assumption that the users send out equally likely binary bits in the presence of additive noise with an arbitrary distribution. As the noise level increases, and/or, the ratio of the number of users and the spreading gain increases, the conjectured upper bound approaches the lower bound. We have also derived asymptotic limits of our bounds that can be compared to a formula that Tanaka obtained using techniques from statistical physics; his bound is close to that of our conjectured upper bound for large scale systems. Multiple Access Channels (MAC) with many users and Multi-User Detection (MUD) at the receiver give rise to information theoretic problems and concepts much more complicated than the classical situation of single user channels. Although comprehensive theorems for capacity regions have been developed for MAC, an explicit computation of the capacity region is not known in terms of specific model parameters.. In this paper, we intend to derive a relatively tight family of lower bounds and a conjectured upper bound for a binary Multi-User CDMA with binary signatures; we assume synchronous CDMA and additive Independent and Identically Distributed (i.i.d.) noise with any distribution. Below we will give a brief historical development of this area:. The capacity region consists of a set of information rates such that simultaneous reliable communication is possible for each user. This problem was developed by Ahlswede [l] - [2] and Liao [3] on the two-user discrete memoryless channel. An explicit expression for the capacity region of the Gaussian discrete memoryless MAC was given by Cover [4] and Wyner [5] and discussed in [6] .. Verdu in [7] found the capacity region of the CDMA channel as a function of the cross-correlations between the assigned signature waveforms and their signal-to-noise ratios for the symbol synchronous case and for inputs with power constraints. The same author [8] found the capacity region for symbol asynchronous case for Gaussian distributed inputs with power constraints; in these two papers, Verdu showed that the achievable rates depend only on the correlation matrix of the spreading coefficients.. These issues and complexity of MUD receivers were discussed by the same author in his book [9] . In [10] , the authors considered random spreading and analyzed the spectral efficiency, (defined as bits per chip that can be transmitted reliably) for linear detectors. In the limit, when the number of users and the signature length go to infinity (the ratio is kept constant), they obtained nice analytical formulas for the spectral efficiency and showed from concentration theorems that the spectral efficiency of a typical random selection of signature matrices and its average are the same with high probability. These formulas follow from the known spectrum of large covariance matrices.. For finite number of users with real-valued inputs and real valued signatures, an upper bound for the sum capacity has been defined in [18] . The extension of the sum capacity bounds for asymmetric user power constraint is given in [19] ; they have also identified the sequences that achieve the sum capacity. The authors of reference [20] have found upper and lower bounds for the spectral efficiency (defined as the sum capacity by the authors) under quasi-static fading environments, channel estimation, and training sequences; the bound evaluations are based on the works of [21] - [22] .. For the binary input values, not much is known except the asymptotic behavior for the spectral efficiency in the limiting case where the number of users ( ) and the spreading gain ( ) go to infinity when the ratio / is kept constant and SNR values are large [11] . The random matrix techniques used for Gaussian inputs do not apply here because the spectral efficiency cannot be written in terms of just the covariance matrix of the spreading sequences. Tanaka [12] applied a technique from statistical mechanics to this problem and derived a formula for the normalized sum capacity. Tanaka evaluated the performance of a class of CDMA multiuser detectors in the large-system limit analytically. These results were later extended in [13] to include unequal powers and fading channels. This method is non-rigorous but later, Montanari and Tse [14] have made progress towards a rigorous derivation of Tanaka's capacity formula.. The authors of reference [15] have shown that, for large systems, the capacity concentrates around its mean, i.e. a random signature matrix results in a capacity very close to the "mean capacity" 3 with high probability. The same authors in [16] claimed that Tanaka's formula is an upper bound to the capacity for all values of the parameters and derived various concentration theorems for the large-system limit.. For binary inputs and random binary CDMA channels, we have derived a relatively tight lower bound for the sum capacity of the noiseless case [17] and [30] . In these references, we have shown that interference 3 The mean is with respect to the randomness of the signature matrix.. free overloaded CDMA is possible. In what follows, we will derive the sum capacity for the noiseless and noisy scenarios. Our closed form derivations, unlike the previous works, do not depend on the limiting cases but rather on the number of users, spreading gain (signature length), and the noise distribution. The derivation of the noisy case is for a general i.i.d. distribution and special cases such as Gaussian and uniform distributions are also derived in closed forms.. In the next section, the preliminaries and some propositions are discussed. Section 3 is the main part of the paper where the supremum of a family of lower bounds for noisy channels is derived. The sum capacity lower bounds for Gaussian and uniformly distributed additive noise are derived as special cases.. Section 4 covers a derivation of a conjectured upper bound for the sum capacity that is close to the lower bounds, and hence the adjective of "relatively tight" bounds. Section 5 gives the asymptotic derivation of the normalized sum-capacity when the number of users ( ) and the spreading gain ( ) go to infinity while the ratio / is kept constant; a comparison of our results with that of Tanaka is also included.. Simulation results are discussed in Section 6, and finally the concluding remarks are in Section 7. In the last expression and hence are random and the probability is computed according to this Substituting in the previous inequality, we obtain log 2 2. And since there are always values not less than the expected value, we have , max max. And thus equation (2) is derived. In this paper, for binary input and binary CDMA signatures, we have derived a family of lower bounds for additive i.i.d. noise of any distribution with respect to the number of users, , the spreading gain, , and the pdf of the noise. The envelope of this family gives a lower bound. Special case of AWGN has also been derived and simulated. The bound and simulations show that when the noise variance goes to zero, the noisy and the noiseless lower bounds become identical. We have also derived a conjectured upper bound for a general i.i.d. symmetric noise distribution; special cases of Gaussian and uniform distribution are also obtained.. Simulations also show that for a given noise level ( / ) and spreading gain, , the number of users, , can be greater than with almost no interference, i.e., overloaded CDMA is possible and thus we can improve the throughput of a CDMA system by designing structured CDMA codes. In general, for a given / and , from Figs. 1, 3, and 4, the sum capacity bounds are very tight and increase almost linearly with ( 1 bit/user) up to a point (this point increases with increasing and / ) and then, abruptly, the interferenece of users dominates as is increased. Beyond this point the upper and lower bounds are no longer as tight. However, the higher and / , the tighter are the bounds in this region.. We have also simulated Tanaka's bound and showed that it is a tight upper bound in the limiting case for 1. As increases, we have shown analytically as well as by simulations that this bound approaches our conjectured upper bound for a wide range of / .. For future work, we intend to generalize our bounds to nonbinary user signals and nonbinary CDMA signature matrices. The proof of the conjecture is also another interesting problem to solve. Also, we would like to extend our results to the asynchronous case with near/far effects and imperfect channel estimations and training. Extension to fading channels is another issue to be investigated. Thus, we get (9).

O O O B I 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 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 B I 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 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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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 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 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 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 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 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


High-level synthesis under multi-cycle interconnect delay Abstract -As process technology goes into deep submicron range, interconnect delay becomes dominant among overall system delay, occupying most of the system clock cycle time. Interconnect delay is now a crucial factor that needs to be considered even during high-level synthesis. In this paper, we propose a concurrent scheduling and binding algorithm that takes interconnect delay into account. We first define our distributed target architecture, which minimizes the effect of interconnect delay on clock cycle time. We no longer assume that interconnect delay between functional units is a part of one clock cycle. Interconnect delay can span over multiple clock cycles. We incorporate the concept of multi-cycle interconnect delay into scheduling and binding process, to reduce the critical path length and therefore the system latency. We show that by introducing interconnect delay, we can obtain latency improvement of up to 54 % and of 37% on the average. A number of researchers have independently reported that interconnect delay dominates logic delay in current deep sub-micron (DSM) process technology [1, 2] . In deeper submicron geometry in the future, which will be still with the continuous scaling of process technology and thereby generate longer interconnect delay due to RC delay, coupling noise, inductance, etc. [3, 4] , the situation will be worse and worse. The interconnect delay is expected to occupy 80% or more of the overall critical path delay in the near future [5] .. In conventional target architecture based on centralized register files, functional units (FU's) read their operands from centralized register files (and write their results to centralized register files) through relatively long buses [6] . Fig. 1 shows a simple centralized architecture model. In such architecture, total clock cycle time is bounded by

O O O O B B O O B O O O O O O B B O O O O O B O O O O O B O O B B O O O O B O O O O O O O O O O O B O O O O B O B B O O B B O B O O O O B O B O O O B O B B O B O O O O O O O B B O B O O O O O O B O B B O O O O B O O O O B O O B B O B O B B O O O O O O O O O O B O O O O O B 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 B B 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 B O O O O O B B O O O B O 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 B 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 B O O O B O B O O O O O


A dynamic core based multicast routing protocol for ad hoc wireless networks Ad hoc wireless networks are self-organizing, dynamic topology networks formed by a collection of mobile nodes through radio links. Minimal configuration, absence of infrastructure, and quick deployment, make them convenient for emergency situations other than military applications. Multicasting plays a very crucial role in the application of Ad hoc networks. As the number of participants increases, scalability of the multicast protocol becomes an important issue. Among the existing multicast protocols, On Demand Multicast Routing Protocol (ODMRP) [1], exhibits a high packet delivery ratio even at high mobility. But, ODMRP suffers from higher control overhead as the network size and the number of sources increase. In this paper, we propose an efficient multicast routing protocol for Ad hoc wireless networks. This protocol reduces the control overhead by dynamically classifying the sources into Active and Passive categories. The control overhead is significantly reduced by about 30% compared to ODMRP, which contributes to the scalability of the protocol. We study the effectiveness of the proposed multicast routing protocol by simulation studies and the results show that the multicast efficiency is increased by 10-15% and packet delivery ratio is also improved at high network load. Due to the rapid development in the mobile devices technology, wireless networks are becoming more popular. Wireless networks can be broadly classified into two typesinfrastructure-based networks (for e.g., cellular networks) and Ad hoc networks. The former one uses fixed base stations, which are responsible for co-ordinating the communication between the mobile hosts (nodes). These base stations are interconnected by wired backbones, whereas, mobile nodes communicate with the base stations through the wireless medium. The latter one consists of mobile nodes that communicate with each other through the wireless medium, without any fixed infrastructure. Hence, there is no centralized mechanism to control the communication among the group of mobile nodes. As bandwidth is a scarce resource, efficient utilization of bandwidth is the most important issue in the Ad hoc environment. Since host mobility causes frequent and unpredictable topological changes, finding and maintaining routes in Ad hoc networks is a nontrivial task. Other issues such as the hidden terminal(s) effect [2] and the broadcast nature of the radio channel make routing in Ad hoc networks much more complex compared to that in wired networks.. Many routing protocols have been proposed for Ad hoc networks. They can be broadly classified into table-driven and source-initiated on-demand routing protocols. In tabledriven routing protocols, each node maintains the routing information, and updates the same at regular intervals. Some existing table-driven routing protocols are Destination-Sequenced Distance-Vector (DSDV) routing [3] , Clusterhead Gateway Switch Routing (CGSR) [4] , and Wireless Routing Protocol (WRP) [5] . For updating routing tables, each node transmits control packets periodically, which constitute an inefficient use of network capacity. On the other hand, in source-initiated on-demand routing protocols, routes are obtained only when desired by the source. These protocols save bandwidth by avoiding periodic transmissions of control packets, but at the cost of augmented connection setup time. Some existing source-initiated on-demand routing protocols are Ad hoc On demand Distance Vector (AODV) routing [6] , Dynamic Source Routing (DSR) [7] , Tempo-rally Ordered Routing Algorithm (TORA) [8] , Associativity Based Routing (ABR) [9] , and Signal Stability based Adaptive (SSA) [10] routing. Although most of the routing protocols are based on either the table-driven approach or the source-initiated on-demand approach, an attempt is made to combine the best of both in [11] . In Zone Routing Protocol (ZRP) [11] , each node is associated with a routing zone. Within its routing zone, the node maintains the topology information by using a table-driven routing protocol, and out of its routing zone, a source-initiated on-demand routing protocol is used.. Ad hoc wireless networks find applications in civilian operations (collaborative and distributed computing), emergency search-and-rescue, law enforcement, and warfare situations, where setting up and maintaining a communication infrastructure is very difficult. In all these applications, communication and co-ordination among a given set of nodes is necessary. Multicast routing protocols play an important role in Ad hoc wireless networks to provide this communication. It is always advantageous to use multicast rather than multiple unicast, especially in Ad hoc environment, where bandwidth comes at a premium. Many multicast routing protocols for Ad hoc networks exist in the literature. Their fundamental differences lie in the approach used for initializing and maintaining the multicast group.. The rest of the paper is organized as follows. In Section 2, we review some commonly used terms, and give a brief survey of the related work. In Section 3, we provide the motivation for our work. In Section 4, we describe our multicast routing protocol. We present numerical results from the simulation studies of our multicast routing protocol in Section 5. Finally, we make some concluding remarks in Section 6. We have proposed an efficient, mesh based, on-demand multicast protocol, DCMP, for Ad hoc networks, where the multicast topology is shared mesh. The key concept in this protocol is to make some sources Passive, which then forward data packets through their core nodes. The major advantage of this protocol is its increased scalablity. This can be mainly attributed to the reduced control overhead. We implemented DCMP using GlomoSim and the simulation results show that there is a 30% reduction in control overhead, while the multicast efficiency is increased by 10-15%, at the cost of a small (2%) reduction in packet delivery ratio for light network loads. We also find that packet delivery ratio is improved at high load. Multicasting consists of concurrently sending the same message from one source to multiple destinations. It plays an important role in video-conferencing, distance education, co-operative work, video on demand, replicated database updating and querying, etc. Several multicast routing protocols have been proposed for Ad hoc networks, which are classified as either mesh based or tree based. In a mesh based multicast protocol, there may be more than one path between a pair of source and receiver, thus providing more robustness compared to tree based multicast protocols. In a tree based multicast protocol, there is only a single path between a pair of source and receiver, thus leading to higher multicast efficiency. The construction of a multicast tree can be done either from the source (source-initiated) or from a receiver (receiver-initiated).. The Ad hoc environment suffers from frequent path breaks due to mobility of nodes, hence an efficient multicast group maintenance is necessary. Maintaining the multicast group can be done by either soft state approach or hard state approach. In the soft state approach, the multicast group membership and associated routes are refreshed periodically which necessitate flooding of control packets. But, in the hard state approach, the routes are reconfigured only when a link breaks, thus making it a reactive scheme.. Some examples of tree based multicast protocols are Ad hoc Multicast Routing (AMRoute) [12] , Ad hoc Multicast Routing protocol utilizing Increasing id-numberS (AMRIS) [13] , Bandwidth Efficient Multicast Protocol [14] , Multicast operation of the Ad hoc On demand Distance Vector (MAODV) routing protocol [15] , and Multicast CoreExtraction Distributed Ad hoc Routing (MCEDAR) protocol [16] .. AMRoute [12] assumes the existence of a unicast routing protocol in the network environment but it is independent of a specific unicast routing protocol. This protocol has two main phases -mesh creation and tree creation. After formation of mesh by the logical core, it periodically creates a virtual multicast tree over the mesh. This multicast tree uses unicast tunnels to connect group members. Due to the underlying mesh, there is no need for frequent tree readjustments, thus providing robustness in a high mobility environment.. AMRIS [13] is an on-demand, source-initiated, shared tree based multicast protocol. In this protocol, each node in a multicast session generates session-specific multicast session member id (msm-id), after receiving the NEW-SESSION message from its parent node. The NEW-SESSION message transmission is initiated by a special node called Sid, at which the shared tree is rooted. The msm-id increases from the root towards leaf nodes radially, which indicates the flow of multicast data. The protocol uses periodic, short broadcast beacon packets to determine whether a link has been broken. Upon link break, it executes a branch reconstruction process to maintain the multicast tree.. Unlike soft state multicast protocols, the Bandwidth Efficient Multicast routing protocol [14] uses a hard state approach i.e., there is no periodic transmission of control messages. Nodes join the multicast group through the nearest forwarding node, thus minimizing the number of added forwarding nodes and eventually leading to a high multicast efficiency. In [15] , an on-demand multicast protocol has been proposed, which is the multicast extension of AODV [6] . MCEDAR [16] is the multicast extension of the CoreExtraction Distributed Ad hoc Routing [17] protocol. To provide robustness and efficiency, it uses an underlying mesh over which it constructs a forwarding tree.. Some of the existing mesh based multicast protocols are On Demand Multicast Routing Protocol (ODMRP) [18] , Forwarded Group Multicast Protocol (FGMP) [19, 20] , CoreAssisted Mesh Protocol (CAMP) [21] , Neighbor Supporting Ad hoc Multicast routing Protocol (NSMP) [22] , and Location-Based Multicast Protocols [23] .. In contrast to the tree based concept, mesh based multicast protocols may have multiple paths between any source and receiver pairs, thus providing richer connectivity among the multicast members. The ODMRP [18] protocol is a mesh based protocol which uses a forwarding group concept for multicast packet delivery. Only the members of forwarding group forward data packets. For maintaining the multicast mesh it uses soft state approach.. Like ODMRP, FGMP [20] is also based on the forwarding group concept. But the major difference between them is that the former one is a source-initiated multicast protocol, while the latter one is receiver-initiated multicast protocol. Both FGMP and ODMRP protocols use control packets flooding to form the multicast mesh, thus resulting in considerable control overhead.. To eliminate flooding of control packets, CAMP [21] uses core nodes in the mesh. This protocol expands the idea of core based tree, [24] to form the mesh. But unlike the core based tree protocol, it contains more than one core. When any node wants to join the multicast group, it sends a join Request to a core node if none of its neighbor nodes are present in that particular multicast group. If all core nodes are unreachable, it uses an expanded ring search method to reach any group member. In contrast to ODMRP and FGMP, CAMP depends on the underlying unicast routing protocol.. In NSMP [22] protocol, maintenance of the mesh is done by local route discovery i.e., when a source floods control information to refresh the route, it is forwarded only by mesh nodes and neighboring nodes (which are one hop away from any mesh node).. In Location-Based Multicast protocol [23] , location information is used to reduce the control overhead. To deliver the data packets to all of the nodes in the same geographical region (it is called as member region), a limited flooding approach is used in this protocol. Before forwarding the data packets, a source defines a forwarding zone. A node forwards the data packets if it belongs to the forwarding zone. We have mentioned various multicast routing protocols for Ad hoc environment in the previous section. Of these, ODMRP exhibits a high packet delivery ratio even at high mobility. In ODMRP [18] , a source node which wants to initiate a multicast session, floods the JoinReq control packets to discover routes. When the receiver node (which wants to join the multicast group) receives this JoinReq packet, it builds a JoinReply packet and broadcasts it. The JoinReply packets are subsequently forwarded by the intermediate nodes along the reverse path to the source, thus establishing the route. A soft state approach is used to maintain the multicast group. This is done by periodically flooding the JoinReq control packets. Hence it provides robustness at the expense of increased control overhead, especially when the number of sources is large, as shown in [1] . In this paper, we propose an on-demand multicast routing protocol called Dynamic Core based Multicast routing Protocol (DCMP), which builds and maintains a shared mesh, i.e., a mesh which is formed by a group of core based trees [24] . By exploiting the advantage of core based trees, it improves the scalability of the protocol. This is the motivation for our work.. Another existing multicast protocol is CAMP [21] which also builds and maintains a shared mesh. But the major difference is that DCMP is a source-initiated multicast protocol, whereas CAMP is a receiver-initiated multicast protocol. Unlike CAMP, our proposed multicast protocol, DCMP, is independent of any unicast routing protocol.

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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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