34 research outputs found
Framed vertex operator algebras, codes and the moonshine module
For a simple vertex operator algebra whose Virasoro element is a sum of
commutative Virasoro elements of central charge 1/2, two codes are introduced
and studied. It is proved that such vertex operator algebras are rational. For
lattice vertex operator algebras and related ones, decompositions into direct
sums of irreducible modules for the product of the Virasoro algebras of central
charge 1/2 are explicitly described. As an application, the decomposition of
the moonshine vertex operator algebra is obtained for a distinguished system of
48 Virasoro algebras.Comment: Latex, 54 page
Effective algorithms and protocols for wireless networking: a topological approach
Much research has been done on wireless sensor networks. However, most protocols
and algorithms for such networks are based on the ideal model Unit Disk Graph
(UDG) model or do not assume any model. Furthermore, many results assume the
knowledge of location information of the network. In practice, sensor networks often
deviate from the UDG model significantly. It is not uncommon to observe stable long
links that are more than five times longer than unstable short links in real wireless
networks. A more general network model, the quasi unit-disk graph (quasi-UDG)
model, captures much better the characteristics of wireless networks. However, the
understanding of the properties of general quasi-UDGs has been very limited, which
is impeding the design of key network protocols and algorithms.
In this dissertation we study the properties for general wireless sensor networks
and develop new topological/geometrical techniques for wireless sensor networking.
We assume neither the ideal UDG model nor the location information of the nodes.
Instead we work on the more general quasi-UDG model and focus on figuring out
the relationship between the geometrical properties and the topological properties of
wireless sensor networks. Based on such relationships we develop algorithms that can
compute useful substructures (planar subnetworks, boundaries, etc.). We also present direct applications of the properties and substructures we constructed including routing,
data storage, topology discovery, etc.
We prove that wireless networks based on quasi-UDG model exhibit nice properties
like separabilities, existences of constant stretch backbones, etc. We develop
efficient algorithms that can obtain relatively dense planar subnetworks for wireless
sensor networks. We also present efficient routing protocols and balanced data storage
scheme that supports ranged queries.
We present algorithmic results that can also be applied to other fields (e.g., information
management). Based on divide and conquer and improved color coding
technique, we develop algorithms for path, matching and packing problem that significantly
improve previous best algorithms. We prove that it is unlikely for certain
problems in operation science and information management to have any relatively
effective algorithm or approximation algorithm for them
Implementation and Evaluation of Algorithmic Skeletons: Parallelisation of Computer Algebra Algorithms
This thesis presents design and implementation approaches for the parallel algorithms of computer algebra. We use algorithmic skeletons and also further approaches, like data parallel arithmetic and actors. We have implemented skeletons for divide and conquer algorithms and some special parallel loops, that we call ‘repeated computation with a possibility of premature termination’. We introduce in this thesis a rational data parallel arithmetic. We focus on parallel symbolic computation algorithms, for these algorithms our arithmetic provides a generic parallelisation approach.
The implementation is carried out in Eden, a parallel functional programming language based on Haskell. This choice enables us to encode both the skeletons and the programs in the same language. Moreover, it allows us to refrain from using two different languages—one for the implementation and one for the interface—for our implementation of computer algebra algorithms.
Further, this thesis presents methods for evaluation and estimation of parallel execution times. We partition the parallel execution time into two components. One of them accounts for the quality of the parallelisation, we call it the ‘parallel penalty’. The other is the sequential execution time. For the estimation, we predict both components separately, using statistical methods. This enables very confident estimations, although using drastically less measurement points than other methods. We have applied both our evaluation and estimation approaches to the parallel programs presented in this thesis. We haven also used existing estimation methods.
We developed divide and conquer skeletons for the implementation of fast parallel multiplication. We have implemented the Karatsuba algorithm, Strassen’s matrix multiplication algorithm and the fast Fourier transform. The latter was used to implement polynomial convolution that leads to a further fast multiplication algorithm. Specially for our implementation of Strassen algorithm we have designed and implemented a divide and conquer skeleton basing on actors. We have implemented the parallel fast Fourier transform, and not only did we use new divide and conquer skeletons, but also developed a map-and-transpose skeleton. It enables good parallelisation of the Fourier transform. The parallelisation of Karatsuba multiplication shows a very good performance. We have analysed the parallel penalty of our programs and compared it to the serial fraction—an approach, known from literature. We also performed execution time estimations of our divide and conquer programs.
This thesis presents a parallel map+reduce skeleton scheme. It allows us to combine the usual parallel map skeletons, like parMap, farm, workpool, with a premature termination property. We use this to implement the so-called ‘parallel repeated computation’, a special form of a speculative parallel loop. We have implemented two probabilistic primality tests: the Rabin–Miller test and the Jacobi sum test. We parallelised both with our approach. We analysed the task distribution and stated the fitting configurations of the Jacobi sum test. We have shown formally that the Jacobi sum test can be implemented in parallel. Subsequently, we parallelised it, analysed the load balancing issues, and produced an optimisation. The latter enabled a good implementation, as verified using the parallel penalty. We have also estimated the performance of the tests for further input sizes and numbers of processing elements. Parallelisation of the Jacobi sum test and our generic parallelisation scheme for the repeated computation is our original contribution.
The data parallel arithmetic was defined not only for integers, which is already known, but also for rationals. We handled the common factors of the numerator or denominator of the fraction with the modulus in a novel manner. This is required to obtain a true multiple-residue arithmetic, a novel result of our research. Using these mathematical advances, we have parallelised the determinant computation using the Gauß elimination. As always, we have performed task distribution analysis and estimation of the parallel execution time of our implementation. A similar computation in Maple emphasised the potential of our approach. Data parallel arithmetic enables parallelisation of entire classes of computer algebra algorithms.
Summarising, this thesis presents and thoroughly evaluates new and existing design decisions for high-level parallelisations of computer algebra algorithms