Accelerated focused crawling through online relevance feedback The organization of HTML into a tag tree structure, which is rendered by browsers as roughly rectangular regions with embedded text and HREF links, greatly helps surfers locate and click on links that best satisfy their information need. Can an automatic program emulate this human behavior and thereby learn to predict the relevance of an unseen HREF target page w.r.t. an information need, based on information limited to the HREF source page? Such a capability would be of great interest in focused crawling and resource discovery, because it can fine-tune the priority of unvisited URLs in the crawl frontier, and reduce the number of irrelevant pages which are fetched and discarded.We show that there is indeed a great deal of usable information on a HREF source page about the relevance of the target page. This information, encoded suitably, can be exploited by a supervised apprentice which takes online lessons from a traditional focused crawler by observing a carefully designed set of features and events associated with the crawler. Once the apprentice gets a sufficient number of examples, the crawler starts consulting it to better prioritize URLs in the crawl frontier. Experiments on a dozen topics using a 482-topic taxonomy from the Open Directory (Dmoz) show that online relevance feedback can reduce false positives by 30% to 90%. Keyword search and clicking on links are the dominant modes of accessing hypertext on the Web. Support for keyword search through crawlers and search engines is very mature, but the surfing paradigm is not modeled or assisted as well. Support for surfing is limited to the basic interface provided by Web browsers, except for a few notable research prototypes.. While surfing, the user typically has a topic-specific information need, and explores out from a few known relevant starting points in the Web graph (which may be query responses) to seek new pages relevant to the chosen topic/s. While deciding for or against clicking on a specific link (u, v), humans use a variety of clues on the source page u to estimate the worth of the (unseen) target page v, including the tag tree structure of u, text embedded in various regions of that tag tree, and whether the link is relative or remote. "Every click on a link is a leap of faith" [19] , but humans are very good at discriminating between links based on these clues.. Making an educated guess about the worth of clicking on a link (u, v) without knowledge of the target v is central to the surfing activity. Automatic programs which can learn this capability would be valuable for a number of applications which can be broadly characterized as personalized, topic-specific information foragers.. Large-scale, topic-specific information gatherers are called focused crawlers [1, 9, 14, 28, 30] . In contrast to giant, all-purpose crawlers which must process large portions of the Web in a centralized manner, a distributed federation of focused crawlers can cover specialized topics in more depth and keep the crawl more fresh, because there is less to cover for each crawler.. In its simplest form, a focused crawler consists of a supervised topic classifier (also called a 'learner') controlling the priority of the unvisited frontier of a crawler (see Figure 1 ). The classifier is trained a priori on document samples embedded in a topic taxonomy such as Yahoo! or Dmoz. It thereby learns to label new documents as belonging to topics in the given taxonomy [2, 5, 21] . The goal of the focused crawler is to start from nodes relevant to a focus topic c * in the Web graph and explore links to selectively collect pages about c * , while avoiding fetching pages not about c * . Suppose the crawler has collected a page u and encountered in u an unvisited link to v. A simple crawler (which we call the baseline) will use the relevance of u to topic c * (which, in a Bayesian setting, we can denote Pr(c * |u)) as the estimated relevance of the unvisited page v. This reflects our belief that pages across a hyperlink are more similar than two randomly chosen pages on the Web, or, in other words, topics appear clustered in the Web graph [11, 23] . Node v will be added to the crawler's priority queue with priority Pr(c * |u). This is essentially a "best-first" crawling strategy. When v comes to the head of the queue and is actually fetched, we can verify if the gamble paid off, by evaluating Pr(c * |v). The fraction of relevant pages collected is called the harvest rate. If V is the set of nodes collected, the harvest rate is defined as (1/|V |) v∈V Pr(c * |v). Alternatively, we can measure the loss rate, which is one minus the harvest rate, i.e., the (expected) fraction of fetched pages that must be thrown away. Since the effort on relevant pages is well-spent, reduction in loss rate is the primary goal and the most appropriate figure of merit.. For focused crawling applications to succeed, the "leap of faith" from u to v must pay off frequently. In other words, if Pr(c * |v) is often much less than the preliminary estimate Pr(c * |u), a great deal of network traffic and CPU cycles are being wasted eliminating bad pages. Experience with random walks on the Web show that as one walks away from a fixed page u0 relevant to topic c0, the relevance of successive nodes u1, u2, . . . to c0 drops dramatically within a few hops [9, 23] . This means that only a fraction of outlinks from a page is typically worth following. The average out-degree of the Web graph is about 7 [29] . Therefore, a large number of page fetches may result in disappointment, especially if we wish to push the utility of focused crawling to topic communities which are not very densely linked.. Even w.r.t. topics that are not very narrow, the number of distracting outlinks emerging from even fairly relevant pages has grown substantially since the early days of Web authoring [4] . Template-based authoring, dynamic page generation from semi-structured databases, ad links, navigation panels, and Web rings contribute many irrelevant links which reduce the harvest rate of focused crawlers. Topic-based link discrimination will also reduce these problems. Optimizing the priority of unvisited URLs on the crawl frontier for specific crawling goals is not new. FishSearch by De Bra et al. [12, 13] and SharkSearch by Hersovici et al. [16] were some of the earliest systems for localized searches in the Web graph for pages with specified keywords.. In another early paper, Cho et al. [10] experimented with a variety of strategies for prioritizing how to fetch unvisited URLs. They used the anchor text as a bag of words to guide link expansion to crawl for pages matching a specified keyword query, which led to some extent of differentiation among out-links, but no trainer-apprentice combination was involved. No notion of supervised topics had emerged at that point, and simple properties like the in-degree or the presence of specified keywords in pages were used to guide the crawler.. Topical locality on the Web has been studied for a few years. Davison made early measurements on a 100000-node Web subgraph [11] collected by the DiscoWeb system. Using the standard notion of vector space TFIDF similarity [31] , he found that the endpoints of a hyperlink are much more similar to each other than two random pages, and that HREFs close together on a page link to documents which are more similar than targets which are far apart. Menczer has made similar observations [23] . The HyperClass hypertext classifier also uses such locality patterns for better semisupervised learning of topics [7] , as does IBM's Automatic Resource Compilation (ARC) and Clever topic distillation systems [6, 8] .. Two important advances have been made beyond the baseline best-first focused crawler: the use of context graphs by Diligenti et al. [14] and the use of reinforcement learning by Rennie and McCallum [30] . Both techniques trained a learner with features collected from paths leading up to relevant nodes rather than relevant nodes alone. Such paths may be collected by following backlinks.. Diligenti et al. used a classifier (learner) that regressed from the text of u to the estimated link distance from u to some relevant page w, rather than the relevance of u or an outlink (u, v), as was the case with the baseline crawler. This lets their system continue expanding u even if the reward for following a link is not immediate, but several links away. However, they do favor links whose payoffs are closest. Our work is specifically useful in conjunction with the use of context graphs: when the context graph learner predicts that a goal is several links away, it is crucial to offer additional guidance to the crawler based on local structure in pages, because the fan-out at that radius could be enormous.. Rennie and McCallum [30] also collected paths leading to relevant nodes, but they trained a slightly different classifier, for which:. • An instance was a single HREF link like (u, v).. • The features were terms from the title and headers (<h1>...</h1> etc.) of u, together with the text in and 'near' the anchor (u, v). Directories and pathnames were also used. (We do not know the precise definition of 'near', or how these features were encoded and combined.). • The prediction was a discretized estimate of the number of relevant nodes reachable by following (u, v), where the reward from goals distant from v was geometrically discounted by some factor γ < 1/2 per hop.. Rennie and McCallum obtained impressive harvests of research papers from four Computer Science department sites, and of pages about officers and directors from 26 company Websites.. Lexical proximity and contextual features have been used extensively in natural language processing for disambiguating word sense [15] . Compared to plain text, DOM trees and hyperlinks give us a richer set of potential features.. Aggarwal et al. have proposed an "intelligent crawling" framework [1] in which only one classifier is used, but similar to our system, that classifier trains as the crawl progresses. They do not use our apprentice-critic approach, and do not exploit features derived from tag-trees to guide the crawler.. The "intelligent agents" literature has brought forth several systems for resource discovery and assistance to browsing [19] . They range between client-and site-level tools. Letizia [18] , Powerscout, and WebWatcher [17] are such systems. Menczer and Belew proposed InfoSpiders [24] , a collection of autonomous goal-driven crawlers without global control or state, in the style of genetic algorithms. A recent extensive study [25] comparing several topic-driven crawlers including the best-first crawler and InfoSpiders found the best-first approach to show the highest harvest rate (which our new system outperforms).. In all the systems mentioned above, improving the chances of a successful "leap of faith" will clearly reduce the overheads of fetching, filtering, and analyzing pages. Furthermore, whereas we use an automatic first-generation focused crawler to generate the input to train the apprentice, one can envisage specially instrumented browsers being used to monitor users as they seek out information.. We distinguish our work from prior art in the following important ways:. Two classifiers: We use two classifiers. The first one is used to obtain 'enriched' training data for the second one. (A breadth-first or random crawl would have a negligible fraction of positive instances.) The apprentice is a simplified reinforcement learner. It improves the harvest rate, thereby 'enriching' the data collected and labeled by the first learner in turn.. No manual path collection: Our two-classifier framework essentially eliminates the manual effort needed to create reinforcement paths or context graphs. The input needed to start off a focused crawl is just a pre-trained topic taxonomy (easily available from the Web) and a few focus topics.. Online training: Our apprentice trains continually, acquiring ever-larger vocabularies and improving its accuracy as the crawl progresses. This property holds also for the "intelligent crawler" proposed by Aggarwal et al., but they have a single learner, whose drift is controlled by precise relevance predicates provided by the user.. No manual feature tuning: Rather than tune ad-hoc notions of proximity between text and hyperlinks, we encode the features of link (u, v) using the DOM-tree of u, and automatically learn a robust definition of 'nearness' of a textual feature to (u, v). In contrast, Aggarwal et al use many tuned constants combining the strength of textand link-based predictors, and Rennie et al. use domain knowledge to select the paths to goal nodes and the word bags that are submitted to their learner.

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


Robust acquisition of 3D informations from short image sequences Abstract We aim at acquiring 3D information from image sequences such as a short video segment. Our goal is to use this information to add realistic details in virtual environments. For instance, we want to populate a street with passer-bys, post-boxes and other urban elements. These are not the focus of interest of the scene, but rather the small add-on that makes the whole street "alive". Therefore it is not important if the objects are not "complete" for we do not need to look at them very closely nor to see what is behind a post-box. The important point is the realistic look of the result. Moreover we do not want to be restricted to a very specific kind of image sequences -for instance, there may be an interesting object in a movie and then we have no other choice than to deal with that given video segment. Therefore we must cope:. Ý iMAGIS is a joint research project of CNRS, INPG, INRIA, UJF.. Sylvain.Paris Francois.Sillion @imag.fr -With viewpoints that are spatially close (we are in the case of short baseline) and almost aligned because we cannot assume the image sequence is long nor that it goes all around the object, -With ordinary images for they can be noisy and we cannot assume there is a "blue screen" in the background,. -And with occlusions because there can be another object that hides the one we are interested in.. We assume that we know all the camera parameters because acquiring them from the images is a full separate problem [20] , and that there is no movement in the sequence (acquiring 3D information and movement is a much more complex problem). So we can work from two different types of sequence: either the scene is static and the camera is moving (e.g. for acquiring a statue or post-box), or we have a set of synchronized cameras which shoot simultaneous images [29] . Finally we consider that the only user input is a bounding volume around the objects of interest.. Having defined our goals and the input, we can have an overview of the algorithm we propose. The main structuring point is a multi-pass strategy : we reconstruct the object information in a front to back order [23, 31] . During a pass, only the closest object still not reconstructed is taken into account. This guarantees all the occluders are known before we try to reconstruct an hidden object.. We need also to choose the 3D structure we use to represent the objects during the process. One way to do this is to use their contours as in [5, 18, 27, 32] , but these methods are very dependent on the contour extraction algorithm that does not give satisfying results with noisy images and real background. We can also optimize a surface so it fits to the image contents using shading information as Fua [10] . This approach deals well with untextured objects but cannot cope with occlusions in the general case. Faugeras and Keriven [9] also use a surface-based approach driven by the level set technique, it works well even with occlusions and topologically complex objects but it requires textured surfaces. Since the working volume is bounded, we prefer a voxel-based approach as described in [3, 5, 13, 22, 23, 24, 25, 28] : we discretize the volume into small cubes (the voxels) and the goal then is to select the voxels that belong to the object volume. Thus we are not bound to a contour detection algorithm and we show in section 4 that we can work without texture. We explain quickly how this voxel space is built in section 2.. Using this voxel space, we can split each pass of the algorithm into three steps. We begin in section 3 with the selection of the consistent voxels as defined by Seitz [23] : we keep the only voxels that have the "same" color in all the images. This first step is quite similar to the space carving algorithm [13] during which we take special care to be robust to noise. Kutulakos [13] explains that there may be too many voxels left. In our specific configuration of short sequences, we show that this remark is crucial and that there is a very high number of useless consistent voxels and then, as a second step, we introduce in section 4 an original approach to solve this ambiguity. The third and last step of a pass consists in blocking the lines of sight intersecting the object we have just reconstructed. Section 5 explains this step and how to deal with occlusions.. When all passes are done, we have a voxel representation of the objects that we call draft surface. This discretized form is not suitable for further use because real objects are not composed of small cubes. Therefore we propose in section 6 a new technique based on morphological treatments and differential geometry to transform this representation into a smooth surface. Figure 1 gives an overview of the whole algorithm. This algorithm gives satisfying results but we believe it can be still improved. We will continue to work on the voxel consistency estimation to get some more precise and more powerful expression on which we can base the process. Then we want to find a more efficient way to find the surface inside the set of the consistent voxels.. From a more global point of view, we aim at characterizing the arbitrary thresholds that appear during the process. Obviously almost all thresholds depend more or less directly on the resolution and on the scale of the reconstruction. And the most challenging work is to extend the algorithm to deal with specular surfaces and any set of cameras.

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


Quantitative Robust Uncertainty Principles and Optimally Sparse Decompositions In this paper, we develop a robust uncertainty principle for finite signals in C N which states that for almost all choices T, Ω ⊂ {0, . . . , N − 1} such thatthere is no signal f supported on T whose discrete Fourier transformf is supported on Ω. In fact, we can make the above uncertainty principle quantitative in the sense that if f is supported on T , then only a small percentage of the energy (less than half, say) off is concentrated on Ω.As an application of this robust uncertainty principle (QRUP), we consider the problem of decomposing a signal into a sparse superposition of spikes and complex sinusoidsWe show that if a generic signal f has a decomposition (α 1 , α 2 ) using spike and frequency locations in T and Ω respectively, and obeyingthen (α 1 , α 2 ) is the unique sparsest possible decomposition (all other decompositions have more non-zero terms). In addition, ifthen the sparsest (α 1 , α 2 ) can be found by solving a convex optimization problem. Underlying our results is a new probabilistic approach which insists on finding the correct uncertainty relation or the optimally sparse solution for nearly all subsets but not necessarily all of them, and allows to considerably sharpen previously known results [9, 10] . In fact, we show that the fraction of sets (T, Ω) for which the above properties do not hold can be upper bounded by quantities like N −α for large values of α. The QRUP (and the application to sparse approximation) can be extended to general pairs of orthogonal bases Φ 1 , Φ 2 of C N . For almost all choices Γ 1 , Γ 2 ⊂ {0, . . . , N − 1} obeyingthere is no signal f such that Φ 1 f is supported on Γ 1 and Φ 2 f is supported on Γ 2 where µ(Φ 1 , Φ 2 ) is the mutual incoherence between Φ 1 and Φ 2 .1 In this paper, we have demonstrated that except for a negligible fraction of pairs (T, Ω), the behavior of the discrete uncertainty relation is very different from what worst case scenarios-which have been the focus of the literature thus far-suggest. We introduced probability models and a robust uncertainty principle showing that for for nearly all pairs (T, Ω), it is actually impossible to concentrate a discrete signal on T and Ω simultaneously unless the size of the joint support |T | + |Ω| be at least of the order of N/ √ log N . We derived significant consequences of this new uncertainty principle, showing how one can recover sparse decompositions by solving simple convex programs.. Our sampling models were selected in perhaps the most natural way, giving to each time point and to each frequency point the same chance of being sampled, independently of the others. Now there is little doubt that conclusions similar to those derived in this paper would hold for other probability models. In fact, our analysis develops a machinery amenable to other setups. The centerpiece is the study of the singular values of partial Fourier transforms. For other sampling models such as models biased toward low or high ferequencies for example, one would need to develop analogues of Lemma 3.1. Our machinery would then nearly automatically transforms these new estimates into corresponding claims.. In conclusion, we would like to mention areas for possible improvement and refinement. First, although we have made an effort to obtain explicit constants in all our statements (with the exception of section 5), there is little doubt that a much more sophisticated analysis would yield better estimates for the singular values of partial Fourier transforms, and thus provide better constants. Another important question we shall leave for future research, is whether the 1/ √ log N factor in the QRUP (Theorem 3.1) and the 1/ log N for the exact ℓ 1 -reconstruction (Theorem 4.2) are necessary. Finally, we already argued that one really needs to randomly sample the support to derive our results but we wonder whether one needs to assume that the signs of the coefficients α (in f = Φα) need to be randomized as well. Or would it be possible to show analogs of Theorem 4.2 (ℓ 1 recovers the sparsest decomposition) for all α, provided that the support of α may not be too large (and randomly selected)? Recent work [5, 6] suggests that this might be possible-at the expense of additional logarithmic factors.

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


Linear Kernelizations for Restricted 3-Hitting Set Problems Abstract. The 3-Hitting Set problem is also called the Vertex Cover problem on 3-uniform hypergraphs. In this paper, we address kernelizations of the Vertex Cover problem on 3-uniform hypergraphs. We show that this problem admits a linear kernel in three classes of 3-uniform hypergraphs. We also obtain lower and upper bounds on the kernel size for them by the parametric duality. Let C be a collection of subsets of a finite set S. A hitting set is a subset of S that has a nonempty intersection with every element of C. The Hitting Set problem is to decide whether there is a hitting set with cardinality at most k for a given (S, C). If the cardinality of every element of C is upper-bounded by a fixed natural number d, then the corresponding problem would be a dHitting Set problem. In the parameterized complexity [13, 23, 15] , it is known that the d-Hitting Set problem is fixed-parameter tractable, i.e., solvable in time O(f (k) · n c ) for some constant c independent of k. The 3-Hitting Set problem, a special case of the d-Hitting Set problem, is a focal point of researches in the parameterized complexity. Formally, it is defined as follows: Buss [7] has given a kernelization with kernel size O(k 2 ) for the Vertex Cover problem on graphs by putting "high degree elements" into the cover. Similar to Buss' reduction, Niedermeier and Rossmanith [24] have proposed a cubic-size kernelization for the Vertex Cover problem on 3-uniform hypergraphs.. Fellows et al. [2, 12, 14] have introduced the crown reduction and obtained a 3k-kernelization for the Vertex Cover problem on graphs. Recently, AbuKhzam [1] has reduced further the kernel of this problem on 3-uniform hypergraphs to quadratic size by employing the crown reduction.. It is known that an optimal solution to the linear programming for the Vertex Cover problem on graphs can be transformed into the half-integral form, i.e., the variables take one of three possible values {0, 1 2 , 1}. Based on this form, Nemhauser and Trotter's Theorem [22, 5, 2, 18] guarantees the Vertex Cover problem has a 2k-kernelization on graphs. We also wish to follow the above idea to get a linear kernelization of the Vertex Cover problem on 3-uniform hypergraphs. However, it seems impossible to achieve the goal because Lovász [20] and Chung et al. [11] have shown that the optimal solution to the linear programming has no such half-integral form.. Very recently, Fellows et al. [6] propose a new method which allows us to show that many problems do not have polynomial size kernels under reasonable complexity-theoretic assumptions.

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


On improved bounds on the decoding error probability of block codes over interleaved fading channels, with applications to turbo-like codes We derive here improved upper bounds on the error probability of block codes which are transmitted over fully interleaved Rician fading channels, coherently detected and maximum likelihood decoded. We assume that the fading coefficients during each symbol are statistically independent (due to a perfect channel interleaver), and that perfect estimates of these fading coefficients are provided to the receiver. The improved upper bounds on the block and bit error probabilities are derived for fully interleaved fading channels with various orders of space diversity, and are found by generalizing some recently introduced upper bounds for the binary-input AWGN channel. The advantage of these bounds over the ubiquitous union bound is demonstrated for some ensembles of turbo codes and low-density parity check codes, and it is especially pronounced in a portion of the rate region exceeding the cutoff rate. Our generalization of the Duman and Salehi bound which is based on certain variations of Gallager's bounding technique, is demonstrated to be the tightest reported upper bound. We therefore apply it to calculate numerically upper bounds on the thresholds of some ensembles of turbo-like codes, referring to the optimal maximum likelihood decoding. For certain ensembles of uniformly interleaved turbo codes, the upper bounds derived here also indicate good match with computer simulation results of efficient iterative decoding algorithms. Channel coding is a necessary tool for designing reliable wireless communication systems over fading channels (see [4] and references therein). As the error performance of efficiently coded communication systems rarely admit exact expressions, tight analytical bounds emerge as a useful theoretical and engineering tool for assessing performance and to gain insight into the effect of the main system parameters. Since the advent of information theory, the search for efficient coding systems has motivated the introduction of efficient bounding techniques tailored to specific codes or some carefully chosen ensembles of codes. The motivation for introducing and applying such bounds has increased with the recent introduction of turbo codes [3] and the rediscovery of the low density parity check (LDPC) codes [19] . Clearly, the sought for bounds must not be subject to the union bound limitation, as for long block length these families of codes perform reliably at rates above the cutoff rate (R 0 ) of the channel. Although the maximum likelihood (ML) decoding is mostly prohibitively complex for long enough codes, the derivation of upper bounds on the ML decoding error probability is of interest, providing an ultimate indication on the system performance. Further, the fine structure of efficient coding families is usually not available, necessitating efficient bounds to rely only on basic features, such as the distance spectrum or the input-output weight distribution of the codes, which can usually be found by some analytical methods (e.g, [20] ).. Improved upper bounds on the ML decoding error probability for a binary-input additive white Gaussian noise (AWGN) channel were reported in the literature (e.g, [7] , [9] , [11] , [16] , [22] , [23] , [24] ) with a variety of applications to efficient coding techniques. However, most of the bounds on the ML decoding error probability that have been reported so far for interleaved fading channels were mainly based on the union bound (e.g, [1] , [10] , [15] ).. In this paper, we derive new rigorous analytical upper bounds on the ML decoding error probability of binary linear block codes, operating over fully interleaved (memoryless) Rician fading channels.. These bounds are applied in several ensembles of turbo-like codes, demonstrating their signifcant advantage over the ubiquitous union bounds in a portion of the rate region above R 0 . Throughout the paper, we assume a perfect side information on the channel i.i.d fading coefficients which are available to the receiver. The theoretical implications of this assumption are discussed in [18] .. Two bounding techniques are proposed here: The first upper bound is a modified and generalized version of the Duman and Salehi bounds for a binary-input AWGN channel ( [9] , [11] ), which are based on modifying the classical Gallager bound [14] . We undertake this generalization and modify the derivation of the Duman and Salehi upper bound on the bit error probability, as to tighten the bound further. The second version of Duman and Salehi bounds [11] for a binary-input AWGN channel is generalized for fully interleaved fading channels, and that generalization yields the tightest reported upper bound on the ML decoding error probability for coded communications over interleaved fading channels (see also [28] ). This bounding technique is also amenable for calculations of upper bounds on the thresholds for ensembles of efficient codes, such as the regular LDPC codes ( [13] ) and the regular 'repeat and accumulate' (RA) codes ( [6] ). The second upper bound derived here is a generalization of the Engdahl and Zigangirov bound [12] for fully interleaved fading channels, where this bound was originally derived for a binary-input AWGN channel.. In parallel to our study here, upper bounds for coded communications over fully interleaved fading channel were derived by Divsalar and Biglieri ([8] ), and also by Sason, Shamai and Divsalar ([27] ).. It is demonstrated in our paper that the bounds proposed here (especially, the bound that stems from the generalization of the Duman and Salehi bounds) compete favorably with the other reported upper bounds (see also [28] , [29] ). For long enough block codes, the tightness of the upper bounds proposed here is especially pronounced in a portion of the rate region exceeding the cutoff rate.. By generalizing the framework of the Duman and Salehi bounding technique, upper bounds on the decoding error probability are studied for the mismatched case, where inaccurate estimates of the independent fading coefficients are provided to the receiver (see [26] and [28] ).. The paper is organized as follows: The model of the considered coded communication system and further details which makes the presentation self-contained are introduced in section II. The improved upper bounds on the ML decoding error probability and the approach for calculating upper bounds on the thresholds of block codes which are transmitted over fully interleaved fading channels is introduced in section III. In section IV, these bounds are applied to several ensembles of turbo-like codes and for various orders of space diversity. These bounds are also compared to computer simulation results of efficient iterative decoding algorithms, and a good match is demonstrated in our examples. Section V concludes the paper. We examine here improved upper bounds on the ML decoding error probability for fully interleaved fading channels with perfect CSI. These bounds are evaluated for certain ensembles of turbo-like codes, and they are also compared with computer simulation results of suboptimal and practical iterative decoding algorithms. As is demonstrated in the following, the tightness of these bounds is especially pronounced in the rate region exceeding the cutoff rate, where the performance of turbo-like codes is most appealing.. The first ensemble of codes which is considered here is the ensemble of the regular RA codes [6] (see Fig. 1a ). We examine here the case where the information block length is N = 1000 and the number of repetitions of the outer code is q = 4, which yields a rate −1/4 turbo-like code. For the calculations of the improved upper bounds on the bit error probability which were derived in section III, the sequence {S d } n d=1 in (13) (where n = qN is the block length of these RA codes) is calculated, based on the prior calculation of the input-output weight distribution of this ensemble of codes in [6] (see Fig. 1b ). The two bounds derived in section III and also the upper bound of Divsalar and Biglieri in [8] are depicted in Fig. 2 for a fully interleaved Rayleigh fading channel. The union bound is regarded here as a benchmark, to assess the usefulness of all the improved bounding techniques at rates beyond the cutoff rate. It is demonstrated here that the generalization of the second version of Duman and Salehi bound ( [9] , [11] ) yields the tightest reported bound. It is also reflected in Fig. 2 that the generalization of the Engdahl & Zigangirov bound [12] , results in an upper bound which falls very close to the bound evaluated by Divsalar and Biglieri in [8] . Based on the results depicted in Fig. 2 , we get an upper bound on the bit error probability of 10 −5 at energy per bit to spectral noise density ratios In order to assess the performance of ensembles of rate-1/3 turbo codes, rate-distortion curves are depicted in Fig. 3 , corresponding to rate-1/3 random block codes which operate over fully interleaved Rayleigh fading channels with several orders of MRC space diversity (L). These curves serve for estimating the closeness of the performance of the examined rate-1/3 ensemble of turbo codes to the theoretical rate-distortion limits. By examining also the rate-distortion curves which corresponds to fully interleaved Rician fading channels with perfect CSI at the receiver, we have chosen to examine the value of K = 2.33 dB, as the rate-distortion curve for this channel falls exactly between the rate-distortion curves for the two extreme cases (which refer to the fully interleaved Rayleigh fading channel where K = 0 and the Gaussian channel, where K → ∞).. We examine here upper bounds on the ML decoding error probability of the ensemble of rate-1/3 uniformly interleaved turbo codes depicted in Fig. 4a , when these codes operate over fully interleaved fading channels with perfect CSI. That ensemble of the turbo codes consists of two identical recursive systematic convolutional (RSC) codes whose generators are. 1+D+D 2 +D 3 +D 4 and a uniform interleaver of length N = 1000. As in Fig. 1a , the components of that ensemble of codes are fixed and the interleaving is uniformly weighted over all possible permutations of length N . For the calculation of the upper bounds on the bit error probability in section III and the upper bound of Divsalar and Biglieri in [8] , we first need to calculate the sequence {S d } n d=1 in (13) (where n = 3008 is the block length of the terminated turbo code to the all-zero state). To that end, we first calculated the input-output weight distribution of the two identical RSC component codes above (based on the general technique which was proposed by McEliece in [20] ), then we calculated the input-output for the considered ensemble of uniformly interleaved turbo codes (based on the relation between the input-output weight distribution of uniformly interleaved turbo codes and the input-output weight distributions of its component codes [2] ) and finally applied (13) to the calculation of the sequence {S d } n d=1 (see Fig. 4b ).. The improved upper bounds on the bit error probability which were derived in section III are presented in Fig. 5a for the ensemble of the uniformly interleaved turbo codes depicted in Fig. 4a , when the transmission takes place over a fully interleaved Rayleigh fading channel with perfect CSI.. These bounds on the ML decoding error probability are also compared in Fig. 7 ). Based on the rate distortion theory, for an acceptable bit error probability of 10 −4 , the theoretical limit for a rate-1/3 code operating over the considered fully interleaved Rician fading channel with perfect CSI at the receiver corresponds to value which corresponds to the channel's cutoff rate (2.65 dB, as can be verified from (7), (8)). These results also demonstrate the uselessness of the union bound for long enough codes at rates above the cutoff rate of the channel.. In Fig. 8 , we compare Gallager's upper bound on the exponent of the distance spectrum of two ensembles of (n, j, k) LDPC codes (which is r δ ln 2 with r δ in (49)) with the exact exponent of the distance spectrum for the ensemble of uniformly interleaved turbo codes which is depicted in Fig. 4a .. The exponent of the ensemble distance spectrum of these turbo codes (see curve 1) is based on the numerical calculation of the distance spectrum of the uniformly interleaved turbo codes (with the aid of the technique introduced in [2] and [20] , which was explained above while referring to ) and the same block length (3000). As was noted in [13] , (49) is the exact asymptotic exponent of the ensemble distance spectrum of (n, j, k) LDPC codes when the block length n tends to infinity. For any pair of (j, k), the minimal Hamming weight is typically increased linearly with n. This observation is also reflected in curves 2, 3 of Fig. 8 , as the exponent r δ gets negative values for δ < δ j,k (where δ j,k depends on j, k [13] ), and therefore the number of codewords which possess a Hamming weight below nδ j,k tends asymptotically to zero as n → ∞). Moreover, it is demonstrated in Fig. 8 that for relatively small values of j, k , the increase in the values of j and k such that the ratio j k is kept fixed (which implies that the lower bound on the code rate (1 − j k ) stays constant [13] ) reduces the number of codewords characterized by low Hamming weights and therefore also reduces the error floor which is theoretically associated with the ML decoding for these ensembles of LDPC codes. That phenomenon is demonstrated in Figs. 9(a),(b) for some fully interleaved fading channels with several orders of space diversity (L = 1, 4). Increasing the value of j and k (as above) for a fixed block length n, affects therefore the upper bound on the distance spectrum of the ensemble of (n, j, k) LDPC codes in a similar manner to the "spectral thinning" effect [21] , which characterizes the influence of increasing the interleaver length on the distance spectrum of turbo codes. It is also demonstrated in Fig. 8 that the "spectral thinning" for the considered ensembles of regular LDPC codes (see curves 2, 3) is more pronounced than for the ensemble of turbo codes depicted in Fig. 4a (see curve 1) . That justifies the superiority of the ML bounds for the ensembles of (3000, 4, 6) and (3000, 6, 9) LDPC codes over the ML bounds for the uniformly interleaved turbo code depicted in Fig. 4a , which is also evidenced in Fig. 9 (a), 9(b) for fully interleaved Rayleigh fading channels with or without diversity. These upper bounds on the block error probability which are associated with the ML decoding relies on the generalization of the second version of the Duman and Salehi bounds in section III.. The generalization of the second version of Duman & Salehi bounds was also applied to uniformly interleaved turbo codes with interleavers of length not exceeding 1024 uncoded (information) bits, because of inherent overflow limitations associated with the numerical calculation of the distance spectrum of these ensembles of codes. However, this difficulty is circumvented by employing the existing exponential upper bound on the ensemble distance spectrum of the (n, j, k) binary LDPC codes [13] . Hence, for these ensembles of LDPC codes, we combine here the Gallager's upper bound on the distance spectrum with the generalization of the second version of Duman & Salehi bounds, which yields a tight upper bound on the block error probability for these ensembles of codes, coherently detected and ML decoded. Pursuing that approach, upper bounds on the block error probability for regular LDPC codes of block length 3000-40000 are depicted in Figs. 10(a) ,(b) for some fully interleaved Rayleigh fading channels with or without space diversity (based on the MRC principle). These upper bounds on the ML decoding error probability indicate the unprecedented performance of LDPC codes of length 5000-40000 coded bits as reflected by their closeness to the ultimate Shannon capacity limit. That conclusion also conforms with the results depicted in [24] referring to the tangential sphere upper bounds on the ensemble performance of ML decoded LDPC codes in the binary-input AWGN channel. The ML bounds on the block error probability of regular LDPC codes (see Fig. 10(a), 10(b) ) substantiate the conclusion that like turbo codes, LDPC codes are strong alternatives for high performance communication systems, striving to approach the ultimate limit of channel capacity.. Upper bounds on thresholds for ensembles of RA and regular LDPC codes (where the block length tends to infinity) are depicted in Figs. 11(a),(b) . These thresholds (which refer to the optimal ML decoding) are calculated based on the approach discussed in section III (which relies on the generalization of the second version of Duman & Salehi bounds). It is demonstrated that (n, j, k) LDPC codes (with a sufficiently large value of n) nearly achieve the channel capacity for some fully interleaved Rayleigh fading channels with or without space diversity (based on the MRC principle).. It is also demonstrated that by increasing the value of j and k (where the ratio j k is kept constant), the resulting upper bounds on the threshold values for long enough (n, j, k) LDPC codes approach remarkably the channel capacity. These observations, demonstrated in Figs. 11(a),(b) for some fully interleaved fading channels, conform with similar conclusion made by Gallager for the BSC case [13] .. As expected, the upper bounds on the thresholds which are numerically calculated for the ensemble of the regular RA codes (based on the approach in section IIIc) are considerably away from the Shannon capacity limit as compared to the corresponding upper bounds on the thresholds which were calculated by the same approach for regular LDPC codes (see Figs. 11(a),(b) ). Obviously, the degradation in performance of the RA codes as compared to LDPC codes (of the same rate) is attributed to the extremely simple structure of the RA codes. On the other hand, RA codes are demonstrated as efficient codes at rates considerably beyond the channel cutoff rate and since they possess a simple and efficient iterative decoding algorithm, they constitute an attractive alternative for ensuring reliable communication in a portion of the rates exceeding the channel cutoff rate. It is also indicated in Figs. 11(a),(b) , that for zero approaching rates, RA codes closely approach the channel capacity, as was established in [17] .

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


Normal Edge-Transitive Cayley Graphs of Frobenius Groups Abstract. A Cayley Graph for a group G is called normal edge-transitive if it admits an edge-transitive action of some subgroup of the Holomorph of G (the normaliser of a regular copy of G in Sym(G)). We complete the classification of normal edge-transitive Cayley graphs of order a product of two primes by dealing with Cayley graphs for Frobenius groups of such orders. We determine the automorphism groups of these graphs, proving in particular that there is a unique vertex-primitive example, namely the flag graph of the Fano plane. Normal edge-transitive Cayley graphs were identified by the second author [12] in 1999 as a family of central importance for understanding Cayley graphs in general. Such graphs have a subgroup of automorphisms which is transitive on edges and which normalises a copy of the group used to construct the Cayley graph. Moreover each normal edge-transitive Cayley graph was shown to have, as a 'normal quotient', a normal edge-transitive Cayley graph for a characteristically simple group. This raised the question of reconstructing normal edge-transitive Cayley graphs from a given normal quotient. In this paper we answer the question in the smallest case, where the normal quotient has prime order q and the group G of interest has order pq, where p also is prime.. The case of abelian groups G was treated in the MSc thesis of Houlis [8] , and in this paper we complete the nonabelian case. That is to say, we classify normal edge-transitive Cayley graphs for Frobenius groups of order a product of two primes, and investigate the automorphism groups of these graphs. Theorem 1.1. Let G pq be a Frobenius group of order pq, where p and q are primes and q < p, and let Γ be a connected normal edge-transitive Cayley graph for G pq and Y = Aut Γ. Then one of the following holds:. , with Y ∼ = S p wr D 2q if q is odd and Y ∼ = S p wr S 2 if q = 2; (ii) Γ ∼ = K p × C q , with Y ∼ = S p × D 2q if q is odd; or K p × K 2 with Y = S p × Z 2 if q = 2; or (iii) Γ = Γ(pq, ℓ, i) as defined in Construction 2, for some proper divisor ℓ of p − 1 with ℓ > 1, and either (q, i) = (2, 1) or 1 ≤ i ≤ (q − 1)/2, and Y ∼ = G pq .Z ℓ when q = 2 or q ∤ ℓ, G pq .Z ℓ .Z 2 when q ≥ 3, q | ℓ, or Y is one of the four exceptions listed in Table 1 . The restriction to connected graphs is allowable as discussed in Section 2.1.1.

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


A method to take account of inhomogeneity in mechanical component reliability calculations Abstract-This paper proposes a method by which material inhomogeneity may be taken into account in a reliability calculation. The method employs Monte-Carlo simulation; and introduces a material strength index, and a standard deviation of material strength to model the variation in the strength of a component throughout its volume. The method is compared to conventional load-strength interference theory. The results are identical for the case of homogeneous material, but reliability is shown to reduce for the same load as the component volume increases. The case of a tensile bar is used to explore the variation of reliability with component volume.

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


Composable code generation for distributed giotto Abstract. We present a compositional approach to the implementation of hard real-time software running on a distributed platform. We explain how several code suppliers, coordinated by a system integrator, can independently generate different parts of the distributed software. The task structure, interaction, and timing is specified as a Giotto program. Each supplier is given a part of the Giotto program and a timing interface, from which the supplier generates task and scheduling code. The integrator then checks, individually for each supplier, in pseudo-polynomial time, if the supplied code meets its timing specification. If all checks succeed, then the supplied software parts are guaranteed to work together and implement the original Giotto program. The feasibility of the approach is demonstrated by a prototype implementation. The distributed implementation of hard real-time systems is a key challenge in modern control systems, especially in automobile (drive-by-wire) and aircraft (fly-by-wire) control. Much of the work in this area has been devoted to hardware-focused solutions, such as the time-triggered architecture [1] , which guarantees hard real-time constraints across a distributed system by strict adherence to clock-synchronized networking protocols. The cost of such a solution is paid in terms of flexibility, and even recent efforts in the automotive industry (FlexRay, Autosar [2] ) require that all component processes, their dependencies, and their timing profiles be known in advance. We suggest that the competing goals of timely execution and composable design can be achieved together by adopting a software solution that requires only basic hardware services such as clock synchronization and redundancy management. We have previously proposed the LET (logical execution time) paradigm, and the LET-based language Giotto, as a software model that guarantees predictable real-time execution and at the same time supports portable, composable code [3] . In this paper, we demonstrate how Giotto can be implemented on a distributed platform by distributed compilation with little global coordination. In this way, Giotto offers a framework for the compositional design of hard real-time systems.. Giotto. Giotto is a domain-specific language for control applications [3] . A Giotto program executes a periodic set of LET tasks, and the set of tasks, or their periods, may change whenever a Giotto mode switch occurs. Instead of just a deadline, a LET task has a release and a termination time: the release time specifies the exact time at which the task inputs are made available to the task; the termination time specifies when the task outputs become available to other tasks. The task must start running, may be preempted, and must complete execution during its LET, which is the time from release to termination. Thus the times when a LET task reads and writes data are decoupled from the task execution. LET avoids race conditions, and thus ensures the predictable, deterministic execution of a set of real-time tasks. LET tasks can be replaced and composed without modifying their behavior or timing. Since LET is an abstract programming model, the compiler must ensure that the generated code satisfies the LET assumption. This can be achieved by compiling Giotto into schedule-carrying code (SCC) [4] for a pair of virtual machines: the E (embedded) machine mediates between tasks and the physical environment [5] ; the S (scheduling) machine mediates between tasks and the CPU [4] . E code specifies when sensors and task inputs are read, and when actuators and task outputs are written; S code specifies when a task is executed on the CPU. We have implemented the E and S machine as part of a highperformance microkernel for real-time systems [6] and used Giotto to implement the flight-control system for a model helicopter [7] .. Distributed hard real-time code. A Giotto program specifies the functional and timing behavior of a dynamic set of tasks, for example, the tasks of an automotive control system. Such a system is typically executed by an on-board network with several hosts (CPUs). Moreover, such a system is typically put together from several parts, which correspond to different control problems, for example, fuel injection and anti-lock brake control. While the different software parts may interact, they are often developed by different suppliers: the brake supplier will deliver its own software, etc. Furthermore, to optimize the use of computational resources, there need not be a one-to-one correspondence between hosts and suppliers. The contracting company, or integrator (e.g., the car manufacturer), then faces the challenge of putting together and maintaining the entire system. Using today's methodologies, a simple modification in the software of a single supplier may induce a series of modifications in the whole system. For example, a change of timing attributes (e.g., task execution times) in one software component may cause the schedule of other components to change. We show how this problem can be avoided using Giotto.. Our approach. We view the Giotto program as the overall system specification (timing and task interaction). Each supplier is given a part of the Giotto program with the charge to implement the corresponding tasks. This information can be regarded as a component specification. So that all supplied software parts will fit together, each supplier also receives timing information in the form of a timing interface. The timing interface specifies the time slots that can be used by the supplier for computation on the hosts, and the time slots that can be used by the supplier for communication over the network. From a component specification and a timing interface each supplier produces code. The integrator then checks that the produced code complies to the timing interface and meets, on the given hardware, the release and termination times specified by the Giotto program. The first check is called interface compliance; the second, time safety. Both checks are local for each piece of supplied code and can be performed in pseudopolynomial time. If all checks go through, the integrator is assured that all supplied software parts fit together and correctly implement the original Giotto program (note that correctness includes the satisfaction of all real-time constraints).. Why does this work? Essentially, we build a fully softwarebased instance of the time-triggered paradigm. Instead of having the hardware and network protocol enforce all timing interfaces, each timing interface is enforced separately by the compiler (during distributed code generation by the suppliers) and by program analysis (during code integration by the integrator). The LET assumption is crucial to this approach. The LET (release to termination) of a task is always non-zero. This allows us to communicate values across the network without changing the timing of a task, and without introducing nondeterminism, as long as the timing interface ensures that all values are available in time to meet all task release and termination times, and all sensor read and actuator update times. By contrast, the synchrony assumption used by other real-time languages [8] does not offer this flexibility, and hence an important approach to distributing synchronous programs is based on the Globally Asynchronous, Locally Synchronous paradigm [9] .. What are the benefits? We obtain the benefits of the timetriggered paradigm in terms of real-time assurance, and at the same time achieve a high degree of flexibility. For example, a supplier may be replaced by another one, and as long as the code produced by the new supplier complies to its component specification and timing interface, it will work together properly with all other code in the system. Likewise, if new functionality is added to the system, say by adding a new supplier, as long as the new software passes the two checks (interface compliance and time safety), it will not change the behavior (neither functionality nor timing) of the original system in any way. This is because interface compliance succeeds only if the original set of timing interfaces can accommodate an additional timing interface with sufficient capacity, and time safety succeeds only if the original set of hosts can accommodate the new tasks. The advantage of our approach lies in the fact that the two checks can be performed automatically, and the system integrator need not rely exclusively on testing to see if the upgraded system behaves correctly.. Related work. Previously, Giotto had only been compiled for single-CPU systems [10] . The contribution of this paper is twofold: we describe a methodology that supports (1) distributed realtime code generation for (2) distributed real-time systems. Multiple suppliers (1) can independently compile different parts of a Giotto program to run on a system of multiple CPUs (2). Because of the time-driven nature of our timing interfaces, (1) immediately enables (2) on clock-synchronized systems. Other approaches for (2), however, may not necessarily support (1); for example, synchronous reactive programs written in Lustre have been compiled globally for distributed real-time systems [11] . Aimed at (1) are scheduling techniques that address the problem of dividing tasks into groups, and scheduling tasks within groups [12, 13] : the challenge is to develop compositional schemes for resource partitioning such that each task group may be programmed as if it had dedicated access to the resource and may be tested for schedulability without global task knowledge. However, these techniques typically assume a single CPU and no interaction between tasks. In distributed real-time systems there are efforts [14] to define minimal but complete interfaces that link components together. In avionics software, where previously each control subsystem had its own dedicated resource, new solutions are proposed which offer a common computing platform for multiple functions; [15] presents requirements for the temporal partitioning of such a platform. The car manufacturers' and suppliers' perspectives on embedded software reuse are described in [16] , which presents a general framework in which different software components can be classified according to their degree of reusability, albeit without considering real-time communication in detail.. Outline of the paper. In Section 2, we present a brief review of Giotto and introduce a running example that we will use throughout this paper. In Section 3, we discuss the algorithm that generates from a given Giotto program virtual machine code (SCC) for each host and each supplier. In Section 4, we introduce timing interfaces and show how they can be composed. Section 5 describes our prototype implementation of distributed Giotto. In Section 6, we analyze distributed SCC generated from Giotto, present pseudo-polynomial checks for interface compliance (w.r.t. a timing interface) and time safety (w.r.t. the worst-case execution times of tasks), and prove the distributed Giotto compiler correct. We introduced timing interfaces and showed how they can be used to distribute the code generation for Giotto programs and distributed target platforms. The integration of the individually compiled components is performed by individually checking the interface compliance and time safety of each component. Our approach guarantees global timing requirements without solving a global scheduling problem: as part of the continuing effort of the Giotto project to trade performance for predictability and composability, the burden is shifted to the generation of timing interfaces. There are related efforts [12, 13, 21] , how they can be optimized for different criteria is a topic for future research. Our test system consists of several off-the-shelf PC hosts with 200MHz Pentium Pro processors and 128MB RAM. All hosts are equipped with standard 100Mbit Ethernet network cards and are locally connected. The underlying operating system is RTLinux, where standard Linux runs under the control of a real-time kernel as the lowest priority task [18] . In contrast to Linux' fair timesharing scheduling, RTLinux uses a simple priority-based preemptive scheduler, thus permitting real-time functions to operate in a predictable and low-latency environment. In our tests the maximum scheduling latency was about 30µs. Real-time communication is attained through a special network driver [19] that precludes the standard Ethernet CSMA/CD protocol by establishing a TDMA-based time-triggered protocol, where each node has exclusive access to the network within its scheduled time slot. A software-based synchronization of the hosts is carried out by controlling the period of a thread that performs send and receive network operations. The control algorithm uses the arrival times of incoming data packets. The communication cycle is shown in Fig. 9 . For the purposes of synchronization, one of the hosts is designated as master and all others as clients. In each cycle the master sends a sync packet with the id of the client that is supposed to respond by sending a resync packet in the next slot. The subsequent slots are reserved for each of the hosts to send actual data packets. If T0 is the duration of a single slot, and N is the number of hosts operating under the time-triggered protocol, then the cycle repeats after time T0 · (N + 2).. In general, the protocol latency, i.e., the time between the send call of the network driver and the arrival of the data packet, depends on the time instant at which the call is made. However, the driver provides a function that synchronizes the sending thread with the network schedule, i.e., the driver resumes the thread when it reaches the exclusive time slot to send a message. This mechanism enables the precise timing in the interpretation of the SCC in- Figure 9 . Cycle of the communication protocol [19] structions (including message dispatch) with respect to the global time. The distributed SCC virtual machine is built as a dynamically loadable RTLinux kernel module. For the code of each supplier the machine maintains a context data structure similar to the non-distributed implementation described in [6] . To implement distributed SCC correctly we make use of special RTLinux calls that suspend and resume task threads.. To test the virtual machine we implemented the audio application GA through the distributed SCC program shown in Fig. 6 and 8. Note that in Fig. 8 each dispatch instruction with a task (resp. message) as an argument executes in computation (resp. communication) slots shown in Fig. 7 . In this setup each time slot lasts T0 = 1ms, and an entire communication cycle lasts 4ms (N =2). The maximum bandwidth available to each host in such a configuration is 2.86Mbit/s. The tests show that the sound card is fed continuously with samples. The audio reproduced back at h1 plays without any noticeable interruption or other sound defects. The estimated overhead of the network driver synchronization thread is 25µs. The overhead of the virtual machine, i.e., the time it takes to go through the machine event loop with two trigger and thread instances, is less than 12µs (divided roughly equally between E and S parts). Since the machine is invoked at 1kHz, the system overhead is about 3.7%. The actuator jitter is less than 2µs, since in Giotto a task output is written at the task termination time. In these measurements we used the Pentium time stamp counter, the most precise PC clock.

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