The shrinking property for NP and coNP We study the shrinking and separation properties (two notions well-known in descriptive set theory) for NP and coNP and show that under reasonable complexity-theoretic assumptions, both properties do not hold for NP and the shrinking property does not hold for coNP. In particular we obtain the following results.1. NP and coNP do not have the shrinking property, unless PH is finite. In general, Σ 4. The shrinking property does not hold for NP, unless there exist complete disjoint NP-pairs.Moreover, we prove that the assumption NP = coNP is too weak to refute the shrinking property for NP in a relativizable way. For this we construct an oracle relative to which P = NP ∩ coNP, NP = coNP, and NP has the shrinking property. This solves an open question by Blass and Gurevich [BG84] who explicitly ask for such an oracle. The shrinking property and the separation property are well-known notions ¿from descriptive set theory. In this paper we study these notions with respect to complexity classes like NP. Definition 1.1 1. A class C has the shrinking property, if for all A, B ∈ C there exist disjoint sets A , B ∈ C such that A ⊆ A, B ⊆ B, and A ∪ B = A ∪ B.. 2. A class C has the separation property, if for all disjoint A, B ∈ C there exists an S ∈ C ∩ coC that separates A and B.. Since there is an analogy between NP and RE, complexity theorists started to study the separation and shrinking properties for NP and coNP. While the separation property was investigated rather comprehensively (see e.g. [GSSZ04, GSS05] ), the shrinking property was not considered systematically so far. In this respect, Blass and Gurevich [BG84] and Selivanov [Sel94a] show some first results and identify open questions. As one might expect, the status of both properties in the context of complexity theory is not as clear as in computability theory or descriptive set theory: they turn out to be closely related to some well-known conjectures.. In this paper we continue the study of the separation and shrinking properties in complexity theory, and we give evidence that NP does not have these properties. We show that under reasonable complexity-theoretic assumptions (like an infinite PH and UP ⊆ coNP) both properties do not hold for NP and the shrinking property does not hold for coNP. Moreover, Σ P n and Π P n do not have the shrinking property, unless the PH is finite. This solves an open question from [Sel94a] . We also relate the shrinking and separation properties for NP to other well-known notions. For example, we show that the shrinking property does not hold, unless there exist NPhard disjoint NP-pairs. The existence of such pairs contradicts a conjecture that is related to security aspects of public-key cryptosystems [ESY84, GS88] . Moreover, the shrinking property does not hold for NP, unless there exist complete disjoint NP-pairs. Such complete pairs are studied because of their relations to the theory of propositional proof systems [Raz94, Pud01] . Finally, we will see that the shrinking property for NP is closely related to selectivity, nondeterministic function classes and inverting polynomial-time computable functions (cf. Corollary 3.2) [HNOS96] .. Along with the above-mentioned oracle-independent results, we establish some oracle separations for the discussed notions. In particular, we prove that the assumption NP = coNP is too weak to refute the shrinking property for NP in a relativizable way. For this we construct an oracle relative to which NP has the shrinking property and (NP ∩ coNP) = P = NP. It follows that relative to this oracle, NP ⊆ NPSV-sel and NP = coNP. Moreover, with our construction we solve an open problem by Blass and Gurevich [BG84] who explicitly ask for the existence of such an oracle.. In Section 2 we give the background on disjoint NP-pairs and function classes that is needed for our investigations. In Section 3 we establish implication relationships between the discussed notions, while in Section 4 we discuss oracle separations for some of these notions. We conclude in Section 5 by mentioning the remaining open questions.

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


Quantitative Analysis of a Certified E-mail Protocol in Mobile Environments: A Probabilistic Model Checking Approach Formal analysis techniques, such as probabilistic model checking, offer an effective mechanism for model-based performance and verification studies of communication systems' behavior that can be abstractly described by a set of rules i.e., a protocol. This article presents an integrated approach for the quantitative analysis of the Certified E-mail Message Delivery (CEMD) protocol that provides security properties to electronic mail services. The proposed scheme employs a probabilistic model checking analysis and provides for the first time insights on the impact of CEMD's error tolerance on computational and transmission cost. It exploits an efficient combination of quantitative analysis and specific computational and communication parameters, i.e., the widely used Texas Instruments TMS320C55x Family operating in an High Speed Downlink Packet Access (HSDPA) mobile environment, where multiple CEMD participants execute parallel sessions with high bit error rates (BERs). Furthermore, it offers a tool-assistant approach for the protocol designers and analysts towards the verification of their products under varying parameters. Finally, this analysis can be also utilized towards reliably addressing cost-related issues of certain communication protocols and deciding on their cost-dependent viability, taking into account limitations that are introduced by hardware specifications of mobile devices and noisy mobile environments. During the last decades, the fact that a number of communication protocols have been published with security flaws [1, 2, 3] urges the protocol designers the CEMD protocol can assure security guaranties for low-cost participants involved in multiple protocol sessions and operating in error-prone environments, and if so, at what cost. Thus, the next two circles of Fig. 1 represent the last contribution of our analysis which takes into consideration that CEMD protocol operates in noisy environments such those of mobile communications and involves multiple participants executing parallel protocol sessions. The outer circle of Fig. 1 represents the proposed quantitative analysis incorporating all the above components. compared to those in wired networks and, thus, they should be taken into account. Even in cases where protocols such as HSDPA are adopted the values of BER vary from 10 −6 to 10 −3 [10] . Thus, the contribution of the current analysis is that it combines computational and communication parameters, met at current mobile devices and networks, in order to put them into a quantitative analysis which studies an e-mail protocol offering security services. Results derived from this analysis can be exploited by hardware designers who aim to support provision of CEMD protocol services. Given the environment where their products will operate as well as their hardware specifications, they can launch a similar analysis with specific parameters in order to obtain an estimate of the anticipated computational and transmission cost. This information in conjunction with the time that protocol's sessions require to be completed will provide answers about the feasibility of executing the CEMD protocol in hardware with specific characteristics. But, besides this restrictive perspective, the described analysis can be adopted in whatever combination of software and hardware. Thus, the perspective of this work is to provide a methodology for protocol designers and analysts towards the verification of their products under varying parameters.. The remainder of this paper is organized as follows. Section 2 provides a review of related studies, in order to point out the novelty of the proposed analysis approach. Section 3 is a brief introduction to the probabilistic model checking principles based on CTMC models and CSL logic. The CEMD protocol and the PRISM CTMC model along with the assumptions introduced for the proposed quantitative analysis are presented in Section 4. Section 5 discusses the results derived from the analysis as well as the overall usability and potential impact of them. Conclusions and future work insights are given in Section 6. As it has been mentioned, the proposed analysis aims at providing quantitative results for the cost-related properties of the CEMD protocol, i.e., computational and transmission cost. These results consider multiple sessions among sender A and a set of recipients B = {B 1 , . . . , B n }, n = 7. The aforementioned entities are considered to belong to the widely used Texas Instruments TMS320C55x Family and operate at 200M Hz [19, 20] inside a HSDPA mobile environment, where BER varies from 10 −6 to 10 −3 [10, 11, 35, 36] . The developed CTMC-CEMD model is designed in respect to the security characteristics delivered by the CEMD protocol. CEMD is designed in this way as to guarantee security properties such as fairness and confidentiality for the involved participants. The authors in [14] propose the use of the RSA cryptosystem for message exchanges that will preserve fairness of the participants. In this way, even if the protocol fails in one of its steps, sender A or recipient B i , i = 1, . . . , 7, will not gain additional knowledge against each other. Moreover, in the developed model there is no intruder entity involved in the communication between the CEMD participants. Such an assumption offers, by default, confidentiality for all of the protocol participants.. For the quantitative analysis of the proposed CEMD-CTMC model, cumulative reward properties of the form R r [C ≤t ], are employed as mentioned in Section 3.3. Cumulative reward properties associate a reward with each path of the model, but only up to a given time bound. The property [C ≤t ] corresponds to the reward cumulated along a path until t time units have elapsed. Timeliness, as a security property that an e-mail protocol should provide, can be verified through a user defined time boundary. Thus, the first CSL query Q 1 is defined as a cumulative type query as follows:. whose interpretation is: "which is the overall Computational Cost for completing all protocol's sessions in a finite amount of time C 0 ?". Fig. 4 provides results for CEMD's computational cost as a function of time (expressed in time units) for n = 1, . . . , 7 recipients, i.e., {B 1 , . . . , B 7 }.. More specifically, in the Q 1 structure R{"Computational Cost"} composes the reward structure ( , ι) which is defined inside the CEMD-CTMC model according to the cost parameters of CEMD specifications shown in Table 3 (column CPU cycles). C 0 is a constant representing the time boundary t and varies from 0 to 75 with step 2, as shown in Fig. 4 .. Apart from timeliness and successful completion of protocol, T T P invisibility should also be studied. Given that T T P ought to be used in cases of network failures or participant's misbehavior, it would be useful to study the CEMD's computational cost with respect to T T P invisibility scenarios. Thus, for the analysis purpose, three different cases and the results are shown in Fig. 4 . Firstly, in Fig. 4(a) , the probability of T T P being visible is defined P T T P 1 indicating that T T P will be involved in all participants' sessions, secondly, in Fig. 4(b) the T T P 's visibility is selected with P T T P = 0.5 and finally, in Fig. 4(c) , the CEMD protocol completes its sessions with T T P being invisible and, thus, P T T P 0.. As it is expected the higher the probability of T T P visibility the greater the computational cost of the protocol. This is confirmed by the y-axis of Fig. 4(a)-Fig. 4(c) which depicts the number of CPU Mcycles required by the corresponding mobile devices operating at 200M Hz to complete the CEMD protocol. As it is mentioned in Section 4.2.2, these results are derived based on the calculation that the encryption and decryption cost are 8.84 × 10 6 and 36.36 × 10 6 CPU cycles, respectively, when the corresponding action takes place at the sender A or the recipients B i , i = 1, . . . , 7. When the encryption process is executed by the T T P , i.e., during the protocol's step R 1 , then the CPU cycles are 8.84 × 10. 5 CPU cycles, since T T P is considered to operate at 2GHz. At the same time, as the probability of T T P being visible increases, the overall protocol completion time increases as well. For example, for n = 4 recipients, i.e., B = {B 1 , B 2 , B 3 , B 4 }, the protocol's computational cost for P T T P 0 (Fig. 4(c) ) is 1009 CPU Mcycles and all the sessions require about 54 time units to be completed. When P T T P = 0.5 (Fig. 4(b) ) the respective cost is 1044 CPU Mcycles and time rises to 56 units and, finally, for P T T P 1 (Fig. 4(a) ) the cost is 1080 CPU Mcycles and time units are 58. The interpretation for the above observations lies on the definition of the computational cost, which is a straight function of the CPU cycles required for verifying E 1 − E 4 and R 1 , R 2 messages. Since messages R 1 and R 2 are associated with the T T P visibility, it is obvious the probability of T T P 's visibility has a positive relationship with the overall computational cost, as well as with the amount of time for the successful completion of the protocol's session.. A second observation is that the more the protocol's recipients the greater the computational cost of the protocol, as indicated by the level of each curve in Fig. 4(a)-Fig. 4(c) . Obviously, the same stands for the relationship between the number of recipients and the protocol's completion time. Indicatively, when P T T P 0 (Fig. 4(c) ), for n = 2, i.e., B = {B 1 , B 2 }, the protocol's computational cost is 504 CPU Mcycles and all the sessions require about 40 time units to be completed. These observations are lower than the ones for n = 4. For P T T P = 0.5 (Fig. 4(b) ) the cost for n = 2 recipients is 522 CPU Mcycles and time rises to 44 units, while for P T T P 1 (Fig. 4(a) ) the cost is 540 CPU Mcycles and time units are 48. The explanation in this case is that more protocol's recipients entail more messages to be exchanged and thus more exponentiations to be computed.. Then, two separate scenarios are launched for transmission cost analysis. In the first one we study the impact of varying the verification rate of sender A, while in the second scenario the verification rate of the recipients {B 1 , . . . , B 7 } is changed.. More specifically, the cumulative query Q 2 is defined in order to obtain the protocol's transmission cost under the assumption that the verification rate of sender A varies:. , and a = 0.7, 0.8, 0.9. The interpretation of this query is: "which is the overall T ransmission Cost for completing all protocol's sessions in a finite amount of time C 0 for different verification rates of sender A?". The answer is graphically presented in Fig. 5 , which depicts the CEMD's transmission cost as a function of time (expressed in time units) for n = 1, . . . , 7 recipients, i.e., {B 1 , . . . , B 7 }, and for a = 0.7, 0.8, 0.9 verification rates of sender A. The verification rates of sender A are defined to be close to 1, since the entity A initiates the protocol and thus it is considered to be more reliable to complete it successfully.. The above values of a have been chosen to be at a high rate level, since the entity A is the protocol's initiator and, thus, it is considered to have a low probability for negative verifications (e.g., it initiates a session only when it has the required bandwidth). Fig. 5(a)-5(c) show the protocol's transmission cost for 1 up to 7 parallel sessions when ber = 10 −3 and for a = 0.7, 0.8, 0.9, respectively. The effect of A's verification rate is that the higher the value of a the lower the protocol's cost. This is because positive verifications reduce retransmissions. Indicatively, for n = 4 recipients, i.e., B = {B 1 , B 2 , B 3 , B 4 }, the protocol's transmission cost for a = 0.7 ( Fig. 5(a) ) is 2.95 and all sessions require about 42 time units to be completed. These values are lower than the respective cost of 1.84 and time of 34 units when a = 0.8 ( Fig. 5(b) ). Finally, for a = 0.9 ( Fig. 5(c) ) the cost is further decreased at 0.88 and time units drop to 32.. Similarly to the results derived by query Q 1 , the increase in the number of recipients entails greater transmission cost, while timeliness property is preserved. This is also natural in case of query Q 2 , since more recipients B i , i = 1, . . . , 7, trigger the exchange of more messages. More messages not only increase the transmission cost but also cause delay in sessions completion. Thus, all curves in each sub-figure "move up" in line with the increase in the number of recipients. At the same time, curves in Fig. 5(a) are "shifted" to the right compared those in Fig. 5(b) , which are "shifted" to the right compared to those in Fig. 5(c) .. The next cumulative query Q 3 also concerns the protocol's transmission cost but under different verification rates of recipients of set B:. The interpretation of Q 3 is: "which is the overall T ransmission Cost for completing all protocol's sessions in a finite amount of time C 0 for different verification rates of all the recipients of set B?". Fig. 6 provides the answer, since it presents CEMD's transmission cost as a function of time (expressed in time units) for {B 1 , . . . , B 7 } recipients.. In this scenario, low rates of b correspond to high probability of negative verifications, since recipients B i , i = 1, . . . , 7, are the protocol's responders (e.g., they may be prone to errors due to hardware limitations or device misbehavior). Fig. 6 (a)-6(c) depicts the protocol's aggregated transmission cost for b = 0.3, 0.5, 0.7, respectively, and for 1 up to 7 parallel sessions when ber = 10 −3 . The effect of Bs' verification rate is that the higher the value of b the lower the protocol's cost and the earlier the time for sessions' completion. This is because positive verifications reduce retransmissions. Moreover, in all three sub-figures, the number n of recipients has a straight positive relationship with the protocol's transmission cost, while it also affects the overall time required for successful completion of the CEMD sessions.. In practice, we observe that for n = 4 parallel sessions, if verification rate of recipients is b = 0.3 ( Fig. 6(a) Quantitative analysis results derived from Fig. 4-6 show that all curves are "fixed" after a finite time period indicating that cost is also "fixed", since no more protocols actions either processing or transmission take place (however, the higher verification rates of sender A lead to earlier convergence compared to the lower verification rates of recipients which result in convergence delay, as indicating by the x-axis of Fig. 5 and Fig. 6 ). This behavior is caused because our model has been designed not to fail even if a number of faults occur (e.g., Listing 4) . Such a design feature will eventually allow the successful e-mail message delivery for all the initiated CEMD sessions.. Time convergence, presented in Fig. 4-6 , is also confirmed when different values of ber are employed. The results of Tables 4 and 5 refer to transmission cost and they are derived when the indicative in mobile environments values of ber = 10 −6 and ber = 10 −3 are used [35, 10, 11, 36] . In Table 4 the different values of BER are studied under a = 0.8 verification rate of sender A, whilst in Table 5 we set the verification rate of recipients, i.e., {B 1 , . . . , B 7 } where n = 1, . . . , 7, at b = 0.5. As it is expected higher values of ber result in increasing transmission cost. In fact, the more the parallel sessions the bigger cost overhead. Indicatively, for n = 7 the cost overhead reaches at 4.8% after 60 time units when a = 0.8 and at 5.7% after 80 time units when b = 0.5. The higher values of Table 5 compared to those of Table 4 as well as the later time convergence are due to the low verification rate of the recipients.. An extra confirmation of the above behavior is provided by the results of query Q 4 that follows. We define the PCTL query Q 4 :. where the argument f inish is a boolean formula defined in our model (Listing 3, line 18) to check whether or not the initiated sessions will be completed successfully. The interpretation of Q 4 is: "which will be the computed probability of all CEMD sessions being completed successfully in the time boundary C 0 for different verification rates of all the recipients of set B?". The answer is provided by the Fig. 7 , which shows the probability of B 1 , . . . , B 7 recipients completing their sessions as a function of time.. More specifically, Fig. 7(a) and Fig. 7(b) depict the probability of all CEMD sessions being completed when the verification rate of all the recipients of set B is b = 0.2 and b = 0.9, respectively. These values correspond to a representative range for recipients' verification rate. The different curves in each figure correspond to the different number of recipients, from n = 1 up to n = 7. Obviously, all the curves, in both sub-figures, converge at 1, indicating the successful completion of all protocol sessions. However, time differentiates these curves, i.e., the more the protocol's recipients the later the time of curves' convergence. Moreover, the higher the verification rate of recipients the earlier the convergence, as indicating by the x-axis of Fig. 7(a) and Fig. 7(b) . A low verification rate for recipients B i , i.e., b = 0.2, entails an unstable environment, since it means that recipients succeed in verifying exchanging messages with a low probability. But, a low probability leads to failures and messages' retransmission, thus, in delays in sessions' completion. For example, in Fig. 7 (a) (b = 0.2), we observe that the probability of completing successfully the protocol becomes 1 after 147 time units for n = 7 and almost 75 time units for n = 1. On the other hand, for a higher verification rate, b = 0.9 ( Fig. 7(b) ), all the sessions are completed with probability 1 after a period of 40 time units when n = 7 and after 25 time units when n = 1. Comparing the two graphs we can also observe that, for example, when n = 3, the probability for successful completion of all the three sessions will be 1 in 30 time units for b = 0.9, while for b = 0.2 in 30 time units the probability of all three sessions being completed is 0.13.. Such divergences indicate that the CEMD protocol is prone to the specific hardware characteristics of participants, since, for example, an obsolete or lowcost device produces delays in executing exponentiations. At the same time, the CEMD protocol is prone to the environment it operates, since high BER leads to transmissions errors, which result in negative verifications and retransmissions. Given the widespread use of wireless and mobile communications [4, 5, 6, 7] , it is essential for protocol designers to verify the security properties [24] that they are supposed to provide as well as to quantify their cost-related properties. This fact makes probabilistic model checking a promising approach towards quantitative analysis of protocols [13, 25] . The importance of enabling quantitative analysis for a given cryptographic protocol was first shown in [26] . In that work, the author proposes a formal framework for weighting the cost of the participants, in order to verify the degree of a protocol's resistance against Denial of Service (DoS) attacks, in the context of the resource intensive task of mutual authentication. Recently, the aforementioned approach has formed the basis for the analysis framework of [27] . The latter work [27] allows a more accurate representation of the protocol's computational cost. However, its drawback is that it employs simulation rather than verification for quantitatively analyzing the protocol's computational cost.. Another stochastic modeling approach for quantifying the availability of software systems under attack, is described in [28] . In this work the authors represent the system by a semi-Markov process (SMP). Using the appropriate SMP model, they derive an embedded Discrete-Time Markov Chain (DTMC) [29] , that consists of the necessary state transition probabilities. Once the steadystate DTMC probabilities have been computed, the sojourn time distributions for the model's states are used to compute the SMP's steady-state probabilities. This enables the calculation of the system's availability whilst concurrently, through parametric sensitivity analysis, the sensitivity of system's availability is studied. Stochastic modeling and analysis competence are required, since SMP is not developed by an automated analysis tool, such as PRISM. Furthermore, the system-level analysis does not take into account any resource expenditure for the considered states and, thus, it is not able to evaluate the protocol's messages processing cost.. Another quantitative analysis approach is described in [30] . The authors specify a three-way-handshake of the TCP protocol in probabilistic rewriting logic in order to verify DoS resistance. The described representation generates a model for the VESTA toolset [31] . It is basically a timed probabilistic model that is analyzed by Monte Carlo simulation, upon which a series of interrelated statistical hypothesis tests are applied, in order to check whether the quantitative property of interest is fulfilled. However, such an approach, also known as statistical model checking, does not produce the same accurate results as the ones obtained by probabilistic model checking [32] . Finally, the aforementioned approach is not appropriate for the analysis of communication protocols, since it does not cope with cost-related properties, such as the message generation and processing costs.

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


Feature-based surface parameterization and texture mapping Surface parameterization is necessary for many graphics tasks: texture-preserving simplification, remeshing, surface painting, and precomputation of solid textures. The stretch caused by a given parameterization determines the sampling rate on the surface. In this article, we present an automatic parameterization method for segmenting a surface into patches that are then flattened with little stretch.Many objects consist of regions of relatively simple shapes, each of which has a natural parameterization. Based on this observation, we describe a three-stage feature-based patch creation method for manifold surfaces. The first two stages, genus reduction and feature identification, are performed with the help of distance-based surface functions. In the last stage, we create one or two patches for each feature region based on a covariance matrix of the feature's surface points.To reduce stretch during patch unfolding, we notice that stretch is a 2 × 2 tensor, which in ideal situations is the identity. Therefore, we use the Green-Lagrange tensor to measure and to guide the optimization process. Furthermore, we allow the boundary vertices of a patch to be optimized by adding scaffold triangles. We demonstrate our feature-based patch creation and patch unfolding methods for several textured models.Finally, to evaluate the quality of a given parameterization, we describe an image-based error measure that takes into account stretch, seams, smoothness, packing efficiency, and surface visibility. Surface parameterization is a well-studied problem in computer graphics. In general, surface parameterization refers to segmenting a 3D surface into one or more patches and unfolding them onto a plane without any overlap. Borrowing terminology from mathematics, this is often referred to as creating an atlas of charts for a given surface. Surface parameterization is necessary for many graphics applications in which properties of a 3D surface (colors, normal) are sampled and stored in a texture map. The quality of the parameterization greatly affects the quality of subsequent applications. One of the most important quality measurements is stretch. When unfolding a surface onto a plane, stretching occurs if the surface contains highly spherical or hyperbolic regions. High stretch in a parameterization results in an uneven sampling rate across the surface.. We observe that many objects can be decomposed into a set of "simple" shapes that roughly approximate cylinders, cones, flat disks, and spheres. Cylinders, cones, and planes are developable surfaces, which are Euclidean by nature. Unfolding them results in little stretch, without any overlap. In this article, we make use of some distance-based surface functions to divide a manifold surface into feature regions, each of which is similar to one of the simple shapes. In Figure 1 (left), the bunny surface is decomposed into four feature regions (ears, head, and body) using our segmentation algorithm. These regions are converted into patches and unfolded with little stretch (right, colors are used to encode surface normal).. Existing patch unfolding techniques are often carried out in two stages: an initial patch layout to achieve some objective such as conformal mapping, followed by an interior vertex optimization based on some stretch metric. We observe that an ideal surface parameterization between a patch and its textural image is an isometry, that is, a bijective map that preserves distances. The Green-Lagrange deformation tensor has the property that it measures anisotropic stretch faithfully and penalizes undersampling more severely than oversampling. In addition, it can be seen as a balance between area-preserving mappings and conformal mappings. We use this metric to guide the vertex optimization process for patch unfolding. In addition, we use what we call scaffold triangles to convert the original boundary vertices into "interior" vertices, which can then be freely moved around within the same optimization framework. This is a new way of creating nonconvex patches that may even have holes.. In this article, we present an automatic surface parameterization technique that consists of several new ideas and improves upon existing techniques in the following aspects. For patch creation, instead of relying on local curvature information for feature detection as in the case of most previous parameterization methods, we extract and segment large protrusions based on the topological analysis of some distance-based surface functions that are global in nature. This results in a small number of large patches that can be unfolded with relatively little stretch. For patch unfolding, we use the GreenLagrange tensor to measure stretch and to guide the stretch optimization process. In addition, we create a "virtual boundary" to allow the patch boundaries to be optimized, without the need to check for global self-intersections. Finally, we describe a novel image-based quality metric for surface parameterization that implicitly takes into account stretch, seams, packing efficiency, smoothness, and surface visibility.. The remainder of the article is organized as follows. In Section 2, we review existing surface parameterization techniques. Then, we present our feature-based patch creation method in Section 3, followed by our new balanced stretch metric in Section 4.1, boundary vertex optimization technique in Section 4.2, and our packing algorithm in Section 5. In Section 6, we show the results of applying our technique to various 3D models and describe our image-based quality metric for parameterization techniques. Section 7 provides a summary of our contributions and a discussion of some possible future work. In this article, we present an automatic surface parameterization method in which manifold surfaces are divided into feature regions for patch creation. By performing topological analysis of the average geodesic distance function, we are able to divide the surface into a small number of large patches that can be unfolded with little stretch. For patch unfolding, we use the Green-Lagrange tensor to guide the vertex optimization process. Also, we use scaffold triangles to allow the boundary vertices of a patch to be optimized. Although they were developed with texture mapping in mind, we think our surface segmentation and genus reduction methods might also be useful for other applications. Finally, we describe an image-based quality measure for surface parameterization techniques.. There are several areas for improvement. First, the nonlinear optimization stage of our patch unfolding algorithm is rather slow. Sander et al. [2002] propose a hierarchical optimization framework, which we would like to adapt to our system with scaffold triangles. Second, our feature identification technique sometimes creates more feature regions than necessary. For instance, the horse's legs are divided into two or three regions (Figure 14) . While this does not seem to dramatically affect the quality of final texture maps, we are looking for alternative methods that can determine separating regions more robustly. For instance, we would like to see whether AGD could be used to decide the boundaries of separating regions. Since AGD is less noisy and is intrinsic to the surface, we expect that it contain more useful information.. • E. Zhang et al. Table II . This table compares two stretch metrics for guiding Sander-style vertex optimization. With the exception of the columns labeled "Image Error", the top row in each data cell are the results using Sander's metric, and the bottom rows are the results using the Green-Lagrange tensor (Section 4.1). For a comprehensive comparison, three measurements are provided: average stretch (the first two columns), packing efficiency (third column), and image-based error metric (Section 6.1, the last two columns). The numbers in the "Image Error" columns are the percentage of error difference of the image error caused by Sander's metric to the image error caused by our technique. For all nine test models, optimization with the Green-Lagrange tensor results in lower average stretch (either measured using Sander's metric or the Green-Lagrange tensor). Despite sometimes having lower packing efficiencies, our technique results in less image errors for all the test models. Comparison for patch unfolding with different optimization metrics (top row using Sander's metric [Sander et al. 2001 Many additional topics in this area are interesting to us. First, our algorithm does not directly minimize the amount of seams caused by the segmentation. It would be desirable to have control over seams.. Second, although our image-based quality measure implicitly takes into account stretch, seams, smoothness, packing efficiency and visibility, it may be desirable to understand and control their impact on the quality of a surface parameterization. For instance, while the Green-Lagrange tensor is a good indicator of stretch, how it relates to the image-based quality measure deserves further investigation.. Third, we are still looking for other functions for surface segmentation. Our metric has been chiefly based on surface distance, which is intrinsic to the surface. Are there other functions that combine both intrinsic and extrinsic properties of the surfaces that might result in an even better segmentation? For instance, is there a surface function that helps find a separating cycle for the feline's wing exactly where human would place it?. Finally, surface parameterization is important for many applications, one of which is surface visualization. A complex surface often contains interiors and concavities that are difficult to see from the outside viewpoints. We would like to investigate the use of parameterization for surface exploration, giving the user the ability to navigate, orient, and focus. Fig. 16 . Comparisons between patch unfolding with Sander's metric [Sander et al. 2001 ] (left column) and with Green-Lagrange stretch tensor (right column) for the Buddha using the 3D texture described in Section 6.1 (original signal is shown in the middle of the bottom row). In each column, from top-to-bottom, are the normal map, the map of the 3D texture, and the textured model. Notice in the left column (Sander's metric), the patches created from the base are assigned more space than those from the Buddha's torso. This causes a loss of signal in the textured model (face, body, and feet). On the other hand, optimization using the Green-Lagrange tensor (right column) produces a more even sampling rate and the reconstruction error is less noticeable.. • E. Zhang et al. We have applied our feature-based surface parameterization method to a number of test models. The results for the bunny and the dinosaur are shown in Figure 1 and 2, respectively. In Figure 14 , we show the results of some other 3D models, including three surfaces with nonzero genus (the Buddha, the dragon, and the feline). Notice, in general, the feature regions are intuitive. For example, the horns and legs of animals are segmented from the bodies, and the Buddha's stand is identified as a single feature (a flat ellipsoid). (We wish to emphasize that no real animals were harmed during our research.) Figure 10 (right) and Figure 13 (lower middle) show the normal maps of the Venus and the Buddha, respectively. In a normal map, colors (R, G, B) are used to encode unit surface normals (x, y, z) [Sander et al. 2001] . Because of the many sharp creases on the Venus and the Buddha, patch creation methods based on surface curvature would have split the surfaces into many tiny patches, and such an example can be found in Lévy [2003] . Our method, however, was able to create large patches with little stretch. Figure 15 shows textured models (left column) and the corresponding texture maps (right column) of the Buddha (top), the feline (middle), and the dragon (bottom). Table I gives the average stretch for the patches of the test models and the times for patch creation and unfolding using our method. The texture used for the Buddha is a wood texture from Perlin's noise [1985] . The textures used for the feline and the dragon were created by performing example-based texture synthesis directly on the surfaces [Turk 2001; Wei and Levoy 2001] . Fig. 15 . This figure shows the parameterization of three models using our feature-based algorithm: textured models (left) and texture layouts (right, 512 × 512).. • E. Zhang et al. There has been a considerable amount of recent work in the graphics community on building a surface parameterization by unfolding a polygonal surface into planar patches. Much of the motivation for this is for texture mapping, the mapping of pixels from a rectangular domain (the texture map) onto a surface that is described by a collection of polygons. The surface parameterization problem is to subdivide the given surface into a (hopefully small) number of patches that are then flattened onto a plane and arranged in a texture map. Uses for surface parameterization include surface painting [Hanrahan and Haeberli 1990] , fast rendering of procedural textures [Perlin 1985; Turk 2001; Wei and Levoy 2001; Carr and Hart 2002] , applying photographed color variations onto digitized surfaces [Cignoni et al. 1998 ], and creating normal maps from detailed geometry [Sander et al. 2001] . These same parameterization methods may also be used for remeshing, that is, for creating a new mesh from the original surface . Remeshing can be used to improve the triangle shapes, to vary the triangle size according to curvature details, and to induce semi-regular tessellations. Recently, octrees have been used to store colors in 3D for surface texturing without any parameterization [Benson and Davis 2002; DeBry et al. 2002] . Although octree techniques are supported with programmable GPU's, they are not yet directly supported by graphics hardware.

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


Interference Channels With Rate-Limited Feedback We consider the two-user interference channel with rate-limited feedback. Related prior works focus on the case where feedback links have infinite capacity, while no research has been done for the rate-limited feedback problem. Several new challenges arise due to the capacity limitations of the feedback links, both in deriving inner bounds and outer bounds. We study this problem under three different interference models: the El Gamal-Costa deterministic model, the linear deterministic model, and the Gaussian model. For the first two models, we develop an achievable scheme that employs three techniques: Han-Kobayashi message splitting, quantize-and-binning, and decode-and-forward. We also derive new outer bounds for all three models and we show the optimality of our scheme under the linear deterministic model. In the Gaussian case, we propose a transmission strategy that incorporates lattice codes, inspired by the ideas developed in the first two models. For symmetric channel gains, we prove that the gap between the achievable sum rate of the proposed scheme and our new outer bounds is bounded by a constant number of bits, independent of the channel gains.Gamal-Costa deterministic model, Gaussian interference channel (IC), linear deterministic model, multiuser information theory, rate-limited feedback.

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


Almost Settling the Hardness of Noncommutative Determinant In this paper, we study the complexity of computing the determinant of a matrix over a non-commutative algebra. In particular, we ask the question, "over which algebras, is the determinant easier to compute than the permanent?" Towards resolving this question, we show the following hardness and easiness of noncommutative determinant computation.• [Hardness] Computing the determinant of an n × n matrix whose entries are themselves 2 × 2 matrices over a field is as hard as computing the permanent over the field. This extends the recent result of Arvind and Srinivasan, who proved a similar result which however required the entries to be of linear dimension.• [Easiness] Determinant of an n × n matrix whose entries are themselves d × d upper triangular matrices can be computed in poly(n d ) time.Combining the above with the decomposition theorem of finite dimensional algebras (in particular exploiting the simple structure of 2 × 2 matrix algebras), we can extend the above hardness and easiness statements to more general algebras as follows. Let A be a finite dimensional algebra over a finite field with radical R(A).• [Hardness] If the quotient A/R(A) is non-commutative, then computing the determinant over the algebra A is as hard as computing the permanent.• [Easiness] If the quotient A/R(A) is commutative and furthermore, R(A) has nilpotency index d (i.e., the smallest d such that R(A) d = 0), then there exists a poly(n d )-time algorithm that computes determinants over the algebra A.In particular, for any constant dimensional algebra A over a finite field, since the nilpotency index of R(A) is at most a constant, we have the following dichotomy theorem: if A/R(A) is commutative, then efficient determinant computation is feasible and otherwise determinant is as hard as permanent. Given a matrix M = {m ij }, the determinant of M , denoted by det(M ) is given by the polynomial det(M ) = σ∈Sn sgn(σ) n i=1 m iσi , while the permanent of M , denoted by per(M ) is defined by the polynomial per(M ) = σ∈Sn n i=1 m iσi . Though deceivingly similar in their definitions, the determinant and permanent behave very differently with respect to how efficiently one can compute these quantities. The determinant of a matrix over any field can be efficiently computed using Gaussian elimination. In fact, determinant continues to be easy even when the entries come from some commutative algebra, not necessarily a field [Sam42, Ber84, Chi85, MV97] . Computing the permanent of a matrix over the rationals, on the other hand, as famously shown by Valiant [Val79] , is just as hard as counting the number of satisfying assignments to a Boolean formula or equivalently #P-complete even when the entries are just 0 and 1. Given this state of affairs, it is natural to ask, "what is it that makes the permanent hard while the determinant is easy?" Understanding this distinction in complexity of computing the determinant and permanent of a matrix is a fundamental problem in theoretical computer science.. Nisan first pioneered the study of noncommutative lower bounds in his 1991 groundbreaking paper [Nis91] . In one of that paper's more important results, Nisan proves that any algebraic branching program (ABP) that computes the determinant of a matrix M = {m ij } over the noncommutative free algebra F x 11 , . . . , x nn must have exponential size; this then implies a similar lower bound for arithmetic formulas. This contrasts markedly with the many known efficient algorithms for determinant in commutative settings, which include polynomial-sized ABPs [MV97] .. This problem takes on added significance in light of a connection discovered by Godsil and Gutman [GG81] and developed by Karmarkar et al. [KKL + 93] between computing determinants and exponential time algorithms for approximating the permanent. The promise of this approach was cemented when Chien et al. [CRS03] , expanding on work by Barvinok [Bar99] , showed that if one can efficiently compute determinant of an n × n matrix M whose entries m ij are themselves matrices of O(n 2 ) dimension, then there is a fully polynomial randomized approximation scheme for the permanent of a 0-1 matrix; similar results were later proven by Moore and Russell [MR09] . Thus understanding the complexity of noncommutative determinant is of both algorithmic and complexity-theoretic importance.. Nisan's results are somewhat limited in that they apply only to the free algebra F x i and not to specific finite dimensional algebras (such as those used to approximate the permanent), and because they do not apply outside of ABPs and arithmetic formulas. Addressing the first concern, Chien and Sinclair [CS07] significantly strengthened Nisan's original lower bounds to apply to a wide range of other algebras by analyzing those algebras' polynomial identities. In particular, they show that Nisan's lower bound extends to d × d upper-triangular matrix algebra over a field of characteristic 0 for any d > 1 (and hence over M d (F), the full d × d matrix algebra as well), the quaternion algebra, and several others, albeit only for ABPs.. In a significant advance, Arvind and Srinivasan [AS10] recently broke the ABP barrier and showed noncommutative determinant lower bounds for much stronger models of computation. They show that unless there exist small circuits to compute the permanent, there cannot exist small noncommutative circuits for the noncommutative determinant. More devastatingly from the algorithmic point of view, they show that computing det(M ) where the m ij are linear-sized matrix algebras is at least as hard as (exactly) computing the permanent. Arvind and Srinivasan thus bring into serious doubt whether the determinant-based approaches to approximating the permanent are computationally feasible.. While these collections of results make substantial progress in our understanding of when determinant can be computed over a noncommutative algebra, they are still incomplete in significant ways. First, we do not know whether Arvind and Srinivasan's results rule out algorithms for determinants over constant-dimensional matrix algebras, which are still of use in approximating the permanent. More expansively, we still do not know the answer to what is perhaps the fundamental philosophical question underlying this:. Whether there is any noncommutative algebra over which we can compute determinants efficiently, or whether, as may seem attractive, commutativity is a necessary condition to having such algorithms? Our results show that the basic Godsil-Gutman approach to approximating the permanent, as generalized by Chien et al. [CRS03] runs into many obstacles, since the estimators are not efficiently computable. In the case of the quaternions, the result of Chien et al. shows that a suitable modification of the basic estimator still gives a relatively good approximation to the permanent. Is there such a modification for matrix algebras?. Our dichotomy theorem in Section 5 used crucially the fact that we worked over a finite field. Over the rationals, for example, even the structure of semisimple algebras is fairly complicated, and we don't have an exact characterization of when the determinant over such an algebra is efficiently computable. Extending our dichotomy theorem to these algebras is an interesting problem.. Theorem 5.5 shows that even when given the algebra A as input, the determinant remains efficiently computable as long as A/R(A) is commutative and A has bounded nilpotence index. How close is this to being a characterization of algebras over which the determinant is polynomial-time computable (under reasonable complexity assumptions) when the algebra is part of the input? More generally, can one come up with suitable conditions on the radical R(A) under which computing the determinant over A is hard even when A/R(A) is commutative?. Thus, using the above algorithm, we can obtain in deterministic polynomial time a description of A/R(A), the "semisimple" part of A. Friedl and Ronyai [FR85] and Ronyai [Rón87] showed respectively that semisimple algebras can further be decomposed into simple algebras, and when F is finite, one can find explicit isomorphisms from simple algebras to matrix algebras. We state these two results below. . There is a deterministic algorithm which, when given a finite dimensional semisimple algebra A over a finite field F, computes a decomposition of A = i A i into simple matrix algebras, and explicit isomorphisms from each A i to a matrix algebra over a field extension of F. The algorithms run in time poly(N ), where N is the size of the input.. We say that an algebra A is a semidirect sum of subalgebras B 1 and B 2 if A = B 1 ⊕ B 2 as a vector space. We will denote this as A = B 1 ⊕ B 2 . The Wedderburn-Malcev theorem tells us that any algebra over a finite field or the rationals is a semidirect sum of its radical with a subalgebra. A decomposition of the algebra A as given above is called a Wedderburn-Malcev decomposition of A.. Remark A.4. Note that by definition, given any Wedderburn-Malcev decomposition of A = B ⊕ R(A), the subalgebra B is isomorphic to A/R(A), the "semisimple" part of A.. The result of de Graaf et al. [GIKR97] shows that given an algebra A and the quotient A/R(A), it is possible to obtain a Wedderburn-Malcev decomposition of A = B ⊕ R(A) in deterministic polynomial time. We state the result below.. Theorem A.5 ([GIKR97, Theorem 3.1]). There is a deterministic polynomial-time algorithm which, when given a finite dimensional algebra A over F, computes a Wedderburn-Malcev decomposition A = B ⊕ R(A) of the algebra.

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


Low cost solution for location determination of mobile nodes in a wireless local area network In this research paper we undertook the problem of Location Determination of Mobile nodes in a Wireless Local area network, as finding out the location in a wireless environment is to-date not very easy, cheap and accurate using 802.11b technology. We used the classical method of Triangulation with a little alteration which is later on described in the paper. Another method we used is the methods of calibration by research to produce more accurate results and also to cross verify the results of the method of Triangulation. The work in this paper attempts to illustrate the different aspects of the problem of location determination in WiFi networks. We started with an investigation of the influence that network characteristics have on the ability of middleware location determination protocols to accurately estimate position of mobile nodes. We presented an implementation based study that demonstrated the strong relationship between the two of the location determination methods and their performance. The main objective of this paper is to provide method in which no dedication hardware is required. Only Wireless Lan card is required and can be placed in any suitable location. The significance of this result lies in allowing a network designer to make a suitable tradeoff between QoS of location determination and other application protocols while choosing a network topology. The combination of two methods reduced the error rate of locating a mobile node to a great extent. The results were being plotted on a given map using both the algorithms. Global Positioning Systems (GPS) make use of 24 satellites orbiting the earth in geosynchronous orbit that transmit their position and time of day to any device on the Earth's surface that happen to be listening. A GPS device, through triangulation of multiple signals received and determination of propagation (how long it took the signal to go from the satellite to the GPS device), is able to accurately determine a users location to within a meter. The problem with GPS is that the device must have a clear line of sight between itself and the satellite. This means the technology is unusable in heavily forested areas, urban environments with tall buildings and indoor environments. The popularity of wireless 802.11 networks over the past few years has grown significantly and provides an excellent opportunity to include location based services in indoor environments, where GPS fails. With the wireless networks in place, a user with a laptop or PDA and an 802.11 network card needs no further hardware. The mobile users with PDA or Labtop with 802.11 card donot need addition software to be installed.. There has been a great deal of research done on this topic and most of the research specify the entire area instead of the pin point location at the map means other technique shows that the client is in conference room but in which part? Therefore our aim of this paper is not to illustrate any totally new technique in location determination. Rather, the intent is to demonstrate how one technique can be improved by pin pointing the location of the user at the map and cheaply implemented as we do not use any AP's only simple Wireless Lan Cards are used. Since most of the research really deals with Linux environments due to easily hardware access. We provide location determination solution that is implemented in Windows machine using 802.11b technology.. As Windows continues to be the dominating operating system for laptops and most of the PDAs, most users would benefit from a having location determination system designed for windows platform. For this purpose classical method of triangulation is modified a little to obtain better results and also calibration is being done to improve and cross verify the results obtained. We can use three systems which are least requirement for location determination.. The method of triangulation uses formulas for the finding of the angle of a client in the WLAN(described in sec 2.1) but the second method of calibration uses hard and fast rule to fine user location as described in sec 2.2 We are now planning on extending the available location determination methods for use with directional antennas. A set of three range estimation techniques using directional antennas was developed. Moreover, directional antenna based techniques exhibited less performance degradation under adverse conditions like low sensor density and error in power measurements.. A possible application for the Reduction of Deviation ROD algorithm is the task of optimal wireless access point (AP) placement. Given a pdf of the user's location distribution, the expected deviation of location error could be calculated. An optimal AP location, from the geo-location point of view, could be found by minimizing the expected location error deviation.. Other advances that could be made on this project, while not necessarily dealing with the location determination techniques, could include porting the application to a Pocket PC, including a graphical display of coordinates onto a live map, and updating the radio map file( averaging radio signals) after a search is performed and can be trusted to have provided accurate results. Also this research can be extended to CDMA and GSM based technologies which will be very useful and less effect by multi part due to its frequency range.. As part of future development of this work, we intend to extend the scheme using two anchors with aligned antennas for general deployment of nodes with possibly unaligned antennas. The proposed techniques in their current form use numerical methods for solving systems of nonlinear equations. To avoid this computational expense we intend to explore possible ways of these equations to arrive at a closed form solution. Finally, we want to develop a location determination protocol to exploit the potential advantages of the proposed schemes like less message transmissions and more robustness to low sensor densities and high power measurement errors. We intend to implement such a protocol on a test-bed and experimentally verify the efficacy of the proposed schemes. This will also involve a study of the sensitivity of the schemes to the correlation in the error in power measurements at multiple receiving antennas on a sensor node.. We can also use this system with satellite system for location determination which will be useful in such cases when the object to determine is not in the LOS of the satellite. In this case the object can be in between two buildings where its location can be determined by the Wireless LAN and then that location can be sent to the satellite through the server.

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


Catastrophic senescence of the Pacific salmon without mutation-accumulation We derive catastrophic senescence of the Pacific salmon from an aging model which was recently proposed by Stauffer. The model is based on the postulates of a minimum reproduction age and a maximal genetic lifespan. It allows for self-organization of a typical age of first reproduction and a typical age of death. Our Monte Carlo simulations of the population dynamics show that the model leads to catastrophic senescence for semelparous reproduction as it occurs in the case of salmon, but to a more gradually increase of senescence for iteroparous reproduction. According to the evolutionary theory of aging senescence is ultimately caused by a declining pressure of natural selection as one gets older and older [1] . One manifestation of senescence (which can be most easily handled on the computer) is an increase of mortality with age or, more precisely, a decrease of survivors at age a, from an initial population of newly born offspring at time 0. Senescence is attributed to several factors like environment, metabolism, and, most important, by several genetic mechanisms. Two major genetic mechanisms, which are under discussion and need not necessarily exclude each other, are antagonistic pleitropy and mutationaccumulation. Based on the latter mechanism, i.e. on the hypothesis of an increase of deleterious mutations with age, Penna et al. (1995) proposed a bit-string model [2] , which nowadays is widely used for Monte Carlo simulations of aging, because it predicts many experimentally observed features of senescence (for a recent review see [3] ). One of the successful predicitions is the catastrophic senescence for the Pacific salmon.. Pacific salmon show the most dramatic manifestation of aging. As semelparous individuals they breed only once in their life, all at the same age, with plenty of offspring, and die a few weeks later . In contrast to salmon, iteroparous individuals breed repeatedly and age more gradually. Stauffer's model based on the two postulates of a minimum reproduction age and a maximal genetic lifespan predicts the catastrophic senescence for the Pacific salmon in a qualitative way. The larger the suppression of mutations, the faster die the individuals after reproduction, and the larger is the number of births in one reproduction step which is necessary to sustain the species. The self-organized maximum of the histogram of ages a m is self-consistent with the only allowed age a 0 for reproduction, a restriction that is used as an input. Stauffer's explanation works without mutation-accumulation, whereas mutation-accumulation was an essential ingredient in the Penna model. Therefore, differently from what the success of the Penna model might have suggested, mutation-accumulation does not seem to be essential for explaining gross qualitative features of senescence. Figs.1 and 2 show various histograms of ages a d for genetic death which were obtained for the following choice of parameters. In Fig.1 the carrying capacity N max is chosen as 2 · 10 5 , N initially as N max /2. The number of iterations t is 2 · 10 4 . The actual reproduction age a 0 is fixed to 6, and the number of births n b which an individual can give to offspring at the age of 6 is 12. Mutations of the minimum reproduction age of offspring are suppressed by 80%(+), 95%(x) and 99%(⋆), respectively. The histograms show a clear self-organized maximum of genetic death at an age of 7. In discrete time units this means that death occurs most likely directly after reproduction. The peaks are the sharper the stronger the suppression of mutations. The qualitative shape of the histograms stays the same when N max is varied over several orders of magnitude. Already after ≈ 100 iterations the population dynamics stabilizes in the sense that the population size oscillates regularly between stable minimum and maximum values. These regular oscillations build up randomly during the first 100 iterations and then are reproduced with the period a 0 = 6. The value of n b = 12 is the minimal integer so that the population with 95% suppression of mutations survives as a whole. For smaller n b it dies out after a few iterations. This feature is in qualitative agreement with nature. Pacific salmon produce plenty offspring once they breed to compensate for the restrictive conditions on a m and a 0 independent of i. The maximum of the histogram of ages for the minimal reproduction age lies at an age of 6, consistent with the prescribed value a 0 .. In Fig.2 we compare histograms of ages for genetic death between iteroparous (full line) and semelparous (dashed line) reproduction. The dashed curve was obtained for N max = 2 · 10 5 , t = 2 · 10 4 , a 0 = 6, n b = 12, 1 − p s = 99%. Again it shows a sharp peak at the age of 7. The histogram for iteroparous reproduction was obtained for N max = 2 · 10 7 , t = 2 · 10 4 , reproduction can happen at any age between a m (i) and a d (i), (i.e. i-dependent and possibly several times in one life), n b = 1 and no suppression of mutations of a m (i) and a d (i) for the offspring. The hundred times larger value for N max was chosen for convenience to get comparable numbers for a d in spite of the different reproduction conditions. The maxima of both curves are self-organized, but in the iteroparous case the maximum is much broader, going along with a gradual increase of senescence with time or a less rapid aging than in the case of salmon, compatible with the Penna model [2] .

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


Integrating Cumulative Context into Computer Games In this paper, we describe a cumulative context computer game, where accumulated contextual information of the players" activity levels, obtained through mobile sensors, is used to modify game state. Our implementation used a statistic-based, real-time version of the classic game of chess, where the statistics of the pieces depended on the activity of the users and the environment in which they performed the activity. Users found the game engaging and fun, and almost all of the participants altered their behaviors to enhance their performance in the game. This work provides a platform for further research into meaningful integration of cumulative context in games. With the proliferation of the sensing, wireless access, and data storage capacity of mobile devices, there is an opportunity to gather contextual information. Accumulating user contextual information enables interesting context-aware game design opportunities in mobile and traditional console or computer gaming environments. There has been some recent research into incorporating context into game play; however, most of the examples are based on a user"s location [1] or one aspect of their activity [7] . In our work, we are interested in whether we can design games that incorporate accumulated and generalized context [11] . We aim to create a method of sensing and capturing aspects of an individual"s context and injecting this "personality" into a gaming environment, resulting in a game environment that responds to a player"s context rather than players responding to preconceived gaming challenges.. The goal of the present paper is to investigate how to effectively integrate accumulated context into play environments. We gathered sensor-based activity levels on eight users for one week, and used this information to scale their pieces' behavior in a realtime strategy game (RTChess). We have used the results of this exploratory study to formulate more focused questions for future work. In this paper, we present a study on the design and deployment of cumulative context games, where accumulated contextual information of the players, obtained through sensors, is used to modify the game state. Our implementation used a statistic-based real-time version of the classic game of chess, where the statistics of the pieces depended on the environment and activity of the users. Users found the game engaging and fun, and almost all of the participants changed their behavior to enhance their performance in the game. With the experience gained in this study, future work can focus on designing compelling cumulative context-aware computer games for the next generation of mobile and gaming devices. In the next sections, we discuss several of the main observations from the study. We consider game strategy, the effect the mote settings had on game play, the behavioral changes that occurred as a result of participation in the game, and participants" opinions on different aspects of the game. Integrating personal context into game environments has been explored in the domains of persuasive games, ubigames and exertion interfaces.. Based on the principles of persuasive technology [5] , persuasive games are intended to alter people"s behaviors in healthy ways through game play. Serious games can also educate people, and thus alter their behaviors through an increased awareness about relevant social and cultural issues [16] .. Recently, games intended to increase physical activity have been created and evaluated. Fish'n'Steps is a social computer game that links a player"s daily foot step count to the growth and activity of an animated virtual fish. A social element is introduced by including other players" fish, creating competition and collaboration [7] . In Neat-o-games [6] , players" activity is monitored through an accelerometer, which controls an avatar in a virtual race. Each day a winner is declared, which provides that player with points to use on hints in individual mental games such as Sudoku. In the Ubifit Garden [4] , players" physical activitygathered through a combination of sensing and journalingimproves their virtual garden, showing their progress on a glanceable display.. Another line of research that combines physical activity with computing is exertion interfaces. Although these systems are not always designed from a persuasive perspective, the aim is to increase the physical activity requirements of computing. Exertion interface principles have been explored through games such as Breakout for Two [14] , through everyday fitness applications such as Jogging over a Distance [15] , and by incorporating activity into everyday computing tasks like the StepUI system for reading email [12] and the SuperBreak ergonomic break software [13] .. Ubiquitous games (also called pervasive games or ubigames) are games that are no longer confined to the virtual domain, but integrate the physical and social aspects of the real world [9] . Using the principles of ubiquitous computing [17] , ubigames offer opportunities for new game styles that adapt to a user"s context, support natural interactions, or are persistent in real-time [3] .. One popular class of ubigames is games that respond to a player"s location [1] [2] . Tabletop games that incorporate physical and 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. digital elements have also been explored [8] [10] . For an extensive survey of pervasive games, see [9] .

O O O O 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 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 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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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 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 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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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 microcoded elliptic curve processor using FPGA technology Abstract-The implementation of a microcoded elliptic curve processor using field-programmable gate array technology is described. This processor implements optimal normal basis field operations in 2 . The design is synthesized by a parameterized module generator, which can accommodate arbitrary and also produce field multipliers with different speed/area tradeoffs. The control part of the processor is microcoded, enabling curve operations to be incorporated into the processor and hence reducing the chip's I/O requirements. The microcoded approach also facilitates rapid development and algorithmic optimization: for example, projective and affine coordinates were supported using different microcode. The design was successfully tested on a Xilinx Virtex XCV1000-6 device and could perform an elliptic curve multiplication over the field 2 using affine and projective coordinates for = 113 155 and 173. The feasibility and utility of implementing a microcoded elliptic curve processor over for arbitrary was demonstrated. We believe that a microcoded implementation has a shorter development time and is more flexible than an FSM-based implementation. Moreover, the processor's I/O requirements are simply the inputs and outputs of the elliptic curve multiplication and are hence much lower than that of a processor that only implements field operations. Experiments with the processor showed that projective coordinates are always faster than affine and that field multiplication accounts for approximately 90% of the execution time of a curve multiplication. By increasing the parallelism of the field multiplier unit, significant speed improvements can be gained. The EC processor was successfully tested on a Wildstar board (see Section III-F), the microcode being downloaded to the BlockRAMs by the host PC, and the parameters being downloaded to ROMs by bitstream reconfiguration.

O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O