Chapter 5 Reduction Algorithms

Chapter 5 Reduction Algorithms

Chapter 5 Reduction Algorithms In this chapter we give an introduction to reduction algorithms for decision and optimization problems on graphs. A reduction algorithm is based on a finite set of reduction rules and a finite set of graphs. Each reduction rule describes a way to modify a graph locally. The idea of a reduction algorithm is to solve a decision problem by repeatedly applying reduction rules on the input graph until no more rule can be applied. If the resulting graph is in the finite set of graphs, then the algorithm returns true, otherwise it returns false. The idea of reduction algorithms originates from Duffin’s [1965] characterization of series-parallel graphs (Definition 2.3.3): a multigraph is series-parallel if and only if it can be reduced to a single edge by applying a sequence of series and parallel reductions. A series reduction is the replacement of a vertex of degree two and its incident edges by an edge be- tween its two neighbors, and a parallel reduction is the removal of one of two or more edges between the same vertices, i.e. the removal of an edge which has parallel edges (see also Figure 2.11). Valdes, Tarjan, and Lawler [1982] showed how a reduction algorithm based on this set of reduction rules can be implemented in linear time, and hence series-parallel graphs can be recognized in linear time. Inspired by the characterization of Duffin and the similarity between graphs of treewidth two and series-parallel graphs, Arnborg and Proskurowski [1986] generalized this idea for recognizing simple graphs of treewidth at most three: they gave a set of reduction rules which characterizes graphs of treewidth at most three. They also showed that these reduction rules 3 can be used to recognize partial three-trees in On time. Matou˘sek and Thomas [1991] gave a slightly different set of reduction rules, and showed that with this new set it is possible to recognize simple graphs of treewidth at most three in linear time. Additionally, they showed how to construct a tree decomposition of minimum width in linear time if the input graph has treewidth at most three. A much more general approach is taken by Arnborg, Courcelle, Proskurowski, and Seese [1993]. They gave a set of conditions that must hold for a set of reduction rules to ensure that the reduction algorithm works correctly. They have also shown that for a large class of decision problems on simple graphs of bounded treewidth, there is a set of reduction rules for which these conditions hold, and that the algorithm based on such a set of reduction rules takes On time (but more than linear space). The results of Arnborg et al. are stated in a general, algebraic setting. Bodlaender [1994] extended the notion of reduction algorithms to optimization problems: 95 Chapter 5 Reduction Algorithms he introduced a new notion of reduction rules for optimization problems, called reduction- counter rules, and gave a set of conditions which are necessary for a set of reduction-counter rules in order to make a reduction algorithm work correctly. For simple graphs of bounded treewidth, this results again in efficient linear time algorithms. Bodlaender and Hagerup [1995] have shown that the sequential reduction algorithms of Arnborg et al. [1993] and Bodlaender [1994] can efficiently be parallelized, if some additional conditions hold for the set of reduction rules. Their reduction algorithm uses Olognlog n time with O n operations and space on an EREW PRAM, and O logn time with On operations and space on a CRCW PRAM. A sequential version of this algorithm gives a reduction algorithm which uses On time and space. In this chapter, we give an overview of the results of Arnborg et al. [1993], Bodlaender [1994] and Bodlaender and Hagerup [1995] that are mentioned above. We combine the re- sults and present them in a uniform setting, in order to get a comprehensible overview. The chapter also acts as an introduction for Chapters 6 and 7: in Chapter 6, we show how the reduction algorithms presented in this chapter can be extended to constructive algorithms, i.e. algorithms which solve constructive decision or optimization problems. In Chapter 7, we apply these results to a number of optimization problems. This chapter is organized as follows. In Section 5.1 we discuss reduction algorithms for decision problems as introduced by Arnborg et al. [1993]. We do this in a more direct way, without making use of the algebraic theory. We also give a reduction algorithm which uses linear time and space, based on the ideas of Arnborg et al. [1993] and of Bodlaender and Hagerup [1995]. In Section 5.2, we describe reduction algorithms for optimization problems, as introduced by Bodlaender [1994]. In Section 5.3, we discuss the parallel reduction algo- rithms of Bodlaender and Hagerup [1995], and in Section 5.4, we mention some additional results. 5.1 Reduction Algorithms for Decision Problems In this section, we start with definitions of reduction rules and reduction systems (Sec- tion 5.1.1). Then we give an efficient reduction algorithm based on a special type of reduction system (Section 5.1.2). Finally, we show that this reduction algorithm can be used to solve a large class of decision problems on graphs of bounded treewidth (Section 5.1.3). 5.1.1 Reduction Systems The graphs we consider are simple unless stated otherwise. Recall that a graph property is a function P which maps each graph to the value true or false. We say a property is effectively decidable if an algorithm is known that decides the property. For the definitions of terminal graphs, and the operation , see Definitions 2.2.3 and 2.2.4. ; ; h ; ; i ; ; h ; ; i Two terminal graphs V1 E1 x1 xk and V2 E2 y1 yl are said to be isomorphic ; ; if k = l and there is an isomorphism from V1 E1 to V2 E2 which maps xi to yi for each i, 1 i k. 96 5.1 Reduction Algorithms for Decision Problems ; Definition 5.1.1 (Reduction Rule). A reduction rule r is an ordered pair H1 H2 ,whereH1 and H2 are l-terminal graphs for some l 0. ; A match to reduction rule r =H1 H2 in graph G is a terminal graph G1 which is iso- morphic to H1, such that there is a terminal graph G2 with G = G1 G2. If G contains a match to r,thenanapplication of r to G is an operation that replaces G by a graph G0 , such that there are terminal graphs G1, G2 and G3, with G1 isomorphic to H1, 0 = G2 isomorphic to H2,andG = G1 G3, G G2 G3. We also say that, in G, G1 is replaced by G2. An application of a reduction rule is also called a reduction. Figure 5.1 shows an example of a reduction rule r, and an application of r to a graph G.We ; usually depict a reduction rule H1 H2 by the two graphs H1 and H2 with an arrow from H1 ; to H2. Given a reduction rule r =H1 H2 , we call H1 the left-hand side of r,andH2 the right-hand side of r. H H 1 2 G0 1 1 G r r ! 2 ! 2 3 3 ; Figure 5.1. An example of a reduction rule r =H1 H2 , and an application of r to a 0 graph G, resulting in graph G0 . The dotted lines in G and G denote the parts of G and G0 that are involved in the reduction. ; Let G be a graph and r =H1 H2 a reduction rule. If G contains a match G1 to r,then an application of r to G which replaces G1 by a terminal graph isomorphic to H2 is called a reduction corresponding to the match G1. Note that different applications of a reduction rule to a graph may result in different (i.e. non-isomorphic) graphs. If there is an application of rule r to graph G which results in a r 0 0 graph G , then we write G ! G .LetR be a set of reduction rules. For two graphs G and r 0 0 0 R 2 ! G , we write G ! G if there exists an r R with G G .WesayG contains a match G1 if there is an r 2 R such that G1 is a match to r in G.IfG contains no match, then we say that G is irreducible (for R ). The following conditions are useful for a set of reduction rules in order to get a charac- terization of a graph property P. Definition 5.1.2. Let P be a graph property and R a set of reduction rules. 0 R 0 ! , R is safe for P if, whenever G G ,thenP G P G . R is complete for P if the set I of irreducible graphs for which P holds is finite. R R R ! ! ! R is terminating if there is no infinite sequence G1 G2 G3 . 97 Chapter 5 Reduction Algorithms 0 R 0 ! R is decreasing if, whenever G G ,thenG contains fewer vertices than G. Definition 5.1.3 (Reduction System). A reduction system for a graph property P is a pair ; R I , with R a finite set of reduction rules which is safe, complete and terminating for P, and I the set of irreducible graphs for which P holds. ; A decreasing reduction system for P is a reduction system R I for P in which R is decreasing.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    26 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us