Handbook Of Graph Theory Combinatorial Optimization And Algorithms Arumugam instant download
Handbook Of Graph Theory Combinatorial Optimization And Algorithms Arumugam instant download
https://ebookbell.com/product/handbook-of-graph-theory-
combinatorial-optimization-and-algorithms-arumugam-5301048
https://ebookbell.com/product/handbook-of-graph-theory-second-
edition-2nd-edition-jonathan-l-gross-4590998
https://ebookbell.com/product/handbook-of-graph-theory-1st-edition-
jonathan-l-gross-jay-yellen-4644248
https://ebookbell.com/product/handbook-of-graphs-and-networks-in-
people-analytics-wih-examples-in-r-and-python-keith-mcnulty-54304068
Handbook Of Graphs And Networks From The Genome To The Internet Stefan
Bornholdt Heinz Georg Schuster
https://ebookbell.com/product/handbook-of-graphs-and-networks-from-
the-genome-to-the-internet-stefan-bornholdt-heinz-georg-
schuster-4102206
Handbook Of Product Graphs 2nd Richard Hammack Wilfried Imrich
https://ebookbell.com/product/handbook-of-product-graphs-2nd-richard-
hammack-wilfried-imrich-2376070
The Handbook Of International Trade And Finance The Complete Guide For
International Sales Finance Shipping And Administration 4th Revised
Edition Anders Grath
https://ebookbell.com/product/the-handbook-of-international-trade-and-
finance-the-complete-guide-for-international-sales-finance-shipping-
and-administration-4th-revised-edition-anders-grath-5745148
https://ebookbell.com/product/handbook-of-psychology-developmental-
psychology-richard-m-lerner-m-a-easterbrooks-jayanthi-mistry-44869188
https://ebookbell.com/product/handbook-of-home-language-maintenance-
and-development-andrea-c-schalley-44875220
https://ebookbell.com/product/handbook-of-what-works-with-sexual-
offenders-contemporary-perspectives-in-theory-assessment-treatment-
and-prevention-1st-edition-jean-proulx-44880746
Handbook of
Graph Theory,
Combinatorial
Optimization, and
Algorithms
PUBLISHED TITLES
ADVERSARIAL REASONING: COMPUTATIONAL APPROACHES TO READING THE OPPONENT’S MIND
Alexander Kott and William M. McEneaney
COMPUTER-AIDED GRAPHING AND SIMULATION TOOLS FOR AUTOCAD USERS
P. A. Simionescu
DELAUNAY MESH GENERATION
Siu-Wing Cheng, Tamal Krishna Dey, and Jonathan Richard Shewchuk
DISTRIBUTED SENSOR NETWORKS, SECOND EDITION
S. Sitharama Iyengar and Richard R. Brooks
DISTRIBUTED SYSTEMS: AN ALGORITHMIC APPROACH, SECOND EDITION
Sukumar Ghosh
ENERGY-AWARE MEMORY MANAGEMENT FOR EMBEDDED MULTIMEDIA SYSTEMS: A COMPUTER-AIDED DESIGN APPROACH
Florin Balasa and Dhiraj K. Pradhan
ENERGY EFFICIENT HARDWARE-SOFTWARE CO-SYNTHESIS USING RECONFIGURABLE HARDWARE
Jingzhao Ou and Viktor K. Prasanna
FUNDAMENTALS OF NATURAL COMPUTING: BASIC CONCEPTS, ALGORITHMS, AND APPLICATIONS
Leandro Nunes de Castro
HANDBOOK OF ALGORITHMS FOR WIRELESS NETWORKING AND MOBILE COMPUTING
Azzedine Boukerche
HANDBOOK OF APPROXIMATION ALGORITHMS AND METAHEURISTICS
Teoilo F. Gonzalez
HANDBOOK OF BIOINSPIRED ALGORITHMS AND APPLICATIONS
Stephan Olariu and Albert Y. Zomaya
HANDBOOK OF COMPUTATIONAL MOLECULAR BIOLOGY
Srinivas Aluru
HANDBOOK OF DATA STRUCTURES AND APPLICATIONS
Dinesh P. Mehta and Sartaj Sahni
HANDBOOK OF DYNAMIC SYSTEM MODELING
Paul A. Fishwick
HANDBOOK OF ENERGY-AWARE AND GREEN COMPUTING
Ishfaq Ahmad and Sanjay Ranka
HANDBOOK OF GRAPH THEORY, COMBINATORIAL OPTIMIZATION, AND ALGORITHMS
Krishnaiyan “KT” Thulasiraman, Subramanian Arumugam, Andreas Brandstädt, and Takao Nishizeki
Edited by
Subramanian Arumugam
Kalasalingam University
Tamil Nadu, India
Andreas Brandstädt
University of Rostock
Rostock, Germany
Takao Nishizeki
Tohoku University
Sendai, Japan
This book contains information obtained from authentic and highly regarded sources. Reasonable efforts have been made to publish reliable data and
information, but the author and publisher cannot assume responsibility for the validity of all materials or the consequences of their use. The authors and
publishers have attempted to trace the copyright holders of all material reproduced in this publication and apologize to copyright holders if permission
to publish in this form has not been obtained. If any copyright material has not been acknowledged please write and let us know so we may rectify in any
future reprint.
Except as permitted under U.S. Copyright Law, no part of this book may be reprinted, reproduced, transmitted, or utilized in any form by any electronic,
mechanical, or other means, now known or hereafter invented, including photocopying, microfilming, and recording, or in any information storage or
retrieval system, without written permission from the publishers.
For permission to photocopy or use material electronically from this work, please access www.copyright.com (http://www.copyright.com/) or contact
the Copyright Clearance Center, Inc. (CCC), 222 Rosewood Drive, Danvers, MA 01923, 978-750-8400. CCC is a not-for-profit organization that provides
licenses and registration for a variety of users. For organizations that have been granted a photocopy license by the CCC, a separate system of payment
has been arranged.
Trademark Notice: Product or corporate names may be trademarks or registered trademarks, and are used only for identification and explanation
without intent to infringe.
Visit the Taylor & Francis Web site at
http://www.taylorandfrancis.com
and the CRC Press Web site at
http://www.crcpress.com
Contents
Preface xi
Editors xiii
Contributors xv
vii
Section IX Matroids
Chapter 31 Matroids 879
H. Narayanan and Sachin B. Patkar
H. Narayanan
Chapter 39 Algorithms for Finding Disjoint Paths with QoS Constraints 1063
Alex Sprintson and Ariel Orda
Index 1197
Research in graph theory and combinatorial optimization has experienced explosive growth
in the last three decades or so. Rapid technological advances such as those in telecommu-
nication networks and large-scale integrated circuit design; emergence of new areas such as
network science, which emphasizes applications in social networks and biological networks;
and advances in theoretical computer science have all contributed to this explosion of inter-
est and knowledge in graph theory and combinatorial optimization and related algorithmic
issues. Therefore, it is no surprise that these disciplines have come to play a central role in
engineering and computer science curricula. Several excellent textbooks dealing with graph
theory or combinatorial optimization are now available. These books can be broadly classi-
fied into two categories. In the first category are the books that deal with all the essential
topics in graph theory or combinatorial optimization. These books are intended to serve as
textbooks for senior undergraduate students and beginning graduate students. In the second
category are books that give an in-depth treatment of certain specific topics. They are appro-
priate for students who intend to pursue a research career in graph theory or combinatorial
optimization. Since these disciplines have reached a certain level of maturity, we see a need
for a book that gives a broader and an integrated treatment of both graph theory and combi-
natorial optimization. Such a book will help students and researchers equip themselves with
techniques and tools that will strengthen their ability to see opportunities to apply graph
theory and combinatorial optimization in solving problems they encounter in their applica-
tions. Our long years of experience in teaching and applying graph theory and combinatorial
optimization have convinced us that while tools and techniques enhance one’s ability to solve
problems, a broader exposure to them will also help an individual see problems that will not
be visible otherwise. This philosophy is the underlying motivating factor for undertaking this
project.
A book that satisfies the above objective has to be necessarily a handbook with contribu-
tions from experts on the various topics to be covered. Size limitations also require that we
make some sacrifices in the treatment of the topics. We decided to emphasize proofs of results
and underlying proof techniques, since exposure to them would help enhance the analytical
skills of students. So, the authors were requested to give proofs of all theorems unless they
were too long, and limit the illustrations of theorems and algorithms to a minimum.
This book is organized into 11 sections, with each section consisting of chapters focusing
on a specific theme. Overall there are 44 chapters. Roughly speaking, there are 21 chapters
dealing exclusively with graph theory, 19 dealing exclusively with combinatorial optimization,
and 24 dealing with algorithmic issues. We believe that this book will serve as a reference
and also provide material to develop different courses according to the needs of the students.
The coverage of this book is by no means exhaustive. Advances in graph minors and
extremal graph theory are obvious omissions. There is also room for including additional
topics in combinatorial optimization, particularly, approximation algorithms and recent
xi
applications. We hope the survey section at the end of each chapter provides adequate point-
ers for exploring other related issues. We also hope a future edition will make the coverage
more complete.
It has been a pleasure working with the editorial and production teams at Taylor &
Francis Group. In particular we are thankful to Randi Cohen, senior acquisition editor;
Joette Lynch, project editor; and Indumathi Sambantham, project management executive at
Lumina Datamatics, for making the production process smooth, swift, and painless.
“KT” thanks Sartaj Sahni of the University of Florida, Gainesville, Florida, for the oppor-
tunity to undertake this project and graduate students Mamta Yadav (now at the University
of Oklahoma, Norman, Oklahoma), Dr. Yuh-Rong Chen (now at Nanyang Technological
University, Singapore), and Dr. Jincheng Zhuang (now at the Chinese Academy of Sciences,
China) for their valuable help at different stages during the preparation of this book.
For “KT” it all started when he was introduced to graph theory during 1963–1964 by
Professor Myril B. Reed of the University of Illinois who was then visiting the College of
Engineering, Guindy (now Anna University, Chennai, India), under the USAID educational
program. This marked the beginning of a career in exploring graph theoretic applications.
“KT” gratefully dedicates this handbook to the memory of Professor Myril Reed whose
inspirational teaching and works triggered all that happened to him in his academic life.
Subramanian Arumugam
Kalasalingam University
Andreas Brandstädt
University of Rostock
Takao Nishizeki
Tohoku University
Krishnaiyan “KT” Thulasiraman, PhD, has been professor and Hitachi chair in com-
puter science at the University of Oklahoma, Norman, Oklahoma, since 1994 and holds the
professor emeritus position in electrical and computer engineering at Concordia University,
Montreal, Québec, Canada. His prior appointments include professorships in electrical engi-
neering and computer science at the Indian Institute of Technology Madras, Chennai, India
(1965–1981) and in electrical and computer engineering at the Technical University of Nova
Scotia, Halifax, Nova Scotia, Canada (1981–1982), and at Concordia University (1982–1994).
He has held visiting positions at the University of Illinois, Champaign, Illinois; University of
Waterloo, Waterloo, Ontario, Canada; University of Karlsruhe, Karlsruhe, Germany; Tokyo
Institute of Technology, Meguro, Japan; and the National Chiao-Tung University, Hsinchu,
Taiwan.
“KT” earned his bachelor’s and master’s degrees in electrical engineering from Anna
University (formerly College of Engineering, Guindy), Chennai, India, in 1963 and 1965,
respectively, and a PhD in electrical engineering from the Indian Institute of Technology
Madras, Chennai, India, in 1968. His research interests have been in graph theory, combi-
natorial optimization, and related algorithmic issues with a specific focus on applications in
electrical and computer engineering. He has published extensively in archival journals and
has coauthored two textbooks entitled Graphs, Networks and Algorithms and Graphs: Theory
and Algorithms published by Wiley-Interscience in 1981 and 1992, respectively. He has been
professionally active within the IEEE, in particular, IEEE Circuits and Systems, Computer
and Communications Societies, and the ACM.
“KT” has received several honors and awards, including the Distinguished Alumnus
Award of the Indian Institute of Technology Madras; IEEE Circuits and Systems Society
Charles Desoer Technical Achievement Award; IEEE Circuits and Systems Society Golden
Jubilee Medal; senior fellowship of the Japan Society for Promotion of Science; and fellowship
of the IEEE, AAAS, and the European Academy of Sciences.
xiii
Andreas Brandstädt, PhD, has been a professor in computer science at the University of
Rostock, Rostock, Germany, since 1994 (officially retired October 2014). His prior appoint-
ments include a professorship in computer science at the University of Duisburg, Germany
(from 1991 to 1994), and assistant professorships in computer science at the University of
Hagen, Hagen, Germany (from 1990 to 1991), and in mathematics at the University of Jena,
Jena, (then) East Germany (from 1974 to 1990).
He has held various visiting professorships in France, for example, at the University of
Amiens (thrice), University of Clermont-Ferrand (twice), University of Metz, as well as the
University of Koper, Slovenia; and he has presented invited lectures at various international
conferences.
Dr. Brandstädt earned his master’s degree (diplom), his PhD (Dr. rer. nat.), and his
habilitation (Dr. rer. nat. habil.) in mathematics from the University of Jena, East Germany,
in 1974, 1976, and 1983, respectively.
His research interests have been in stochastics, complexity theory, formal languages, graph
algorithms, graph theory, combinatorial optimization, and related algorithmic issues with
a specific focus on efficient algorithms based on graph structure and graph classes with
tree structure. He has published extensively in various international journals and conference
proceedings, is the author of a textbook Graphen und Algorithmen (in German), and has
coauthored a widely cited monograph, Graph Classes: A Survey.
He has been active within various program committees, such as the WG conferences and
the ODSA conferences, as co-organizer of such conferences and coeditor of the corresponding
conference proceedings.
Takao Nishizeki, PhD, was a student at Tohoku University, Japan, earning a bachelor’s
degree in 1969, a master’s in 1971, and a PhD in 1974, all in electrical communication
engineering. He continued at Tohoku as a faculty member, and became a full professor there
in 1988. He retired in 2010, becoming a professor emeritus at Tohoku University, Japan,
but continued teaching as a professor at Kwansei Gakuin University, Nishinomiya, Japan,
over the period 2010–2015. He was also a visiting research mathematician at Carnegie-Mellon
University, Pittsburgh, Pennsylvania, from 1977 to 1978.
Dr. Nishizeki has established himself, both nationally and internationally, as a world
leader in computer science, in particular, algorithms for planar graphs, edge coloring, net-
work flows, VLSI routing, graph drawing, and cryptology. His publication list includes 3
coauthored books, 5 edited books, and more than 300 technical papers in leading journals
and prestigious conferences, such as JACM, SIAM Journal on Computing, Algorithmica,
Journal of Algorithms, Journal of Cryptology, STOC, ICALP, and SODA.
Dr. Nishizeki is a fellow of many distinguished academic and scientific societies, including
ACM, IEEE, IEICE of Japan, Information Processing Society of Japan, and Bangladesh
Academy of Sciences. He served as advisory committee chair of ISAAC 1990–2009 and as
steering committee member of Graph Drawing Conference 1993–2009.
For his great achievements in computer science, Professor Nishizeki has received many
awards, including the Science and Technology Prize of the Japanese Ministry of Education,
IEICE Achievement Award, ICF Best Research Award, Funai Information Science Promotion
Award, TELECOM Technology Award, and Best Paper Awards of IEICE, JSIAM, IPSJ,
ISAAC, FAW-AAIM, and WALCOM.
Tibor Jordán
Takao Nishizeki
Department of Operations Research
Eötvös University Graduate School of Information Sciences
and Tohoku University
MTA-ELTE Egerváry Research Sendai, Japan
Group on Combinatorial
Optimization Ariel Orda
Budapest, Hungary Department of Electrical Engineering
Technion–Israel Institute
George Karakostas
of Technology
Department of Computer Science Haifa, Israel
McMaster University
Hamilton, Ontario, Canada
James B. Orlin
Tina M. Kouri Sloan School of Management
Department of Computer Science Massachusetts Institute of Technology
and Engineering Cambridge, Massachusetts
University of South Florida
Tampa, Florida Daniel Pascua
CONTENTS
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Basic Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Subgraphs and Complements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4 Connectedness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.5 Operations on Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.6 Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.7 Cutsets and Cuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.8 Eulerian Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.9 Hamiltonian Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.10 Graph Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.11 Directed Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.12 Paths and Connections in Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.13 Directed Graphs and Relations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.14 Directed Trees and Arborescences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.15 Directed Eulerian Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.16 Directed Hamiltonian Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.17 Acyclic Directed Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.18 Tournaments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.19 Computational Complexity and Completeness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.1 INTRODUCTION
In this chapter we give a brief introduction to certain basic concepts and results in graph the-
ory and algorithms, some of which are not explicitly defined in the remaining chapters of this
book. For easy reference we also provide a list of commonly used symbols for graph parame-
ters and concepts. For basic concepts in graphs, digraphs, and algorithms we refer to Bondy
and Murty [1], Chartrand and Lesniak [2], Swamy and Thulasiraman [3], Thulasiraman and
Swamy [4], and West [5].
b c d
and
∆(G) = max{deg v : v ∈ V (G)}.
If all the vertices of G have the same degree r, then δ(G) = ∆(G) = r and in this case G is
called a regular graph of degree r. A regular graph of degree 3 is called a cubic graph.
A subgraph of a graph G is a graph H such that V (H) ⊆ V (G) and E(H) ⊆ E(G) and
the assignment of end vertices to edges in H is the same as in G. We then write H ⊆ G
and say that G contains H. The graph H is called a proper subgraph of G if either E(H) is
a proper subset of E(G) or V (H) is a proper subset of V (G). Also H is called a spanning
subgraph of G if V (H) = V (G). If V1 ⊂ V, then the subgraph G1 = (V1 , E1 ) is called an
induced subgraph of G if G1 is the maximal subgraph of G with vertex set V1 . Thus, if G1 is
an induced subgraph of G, then two vertices in V1 are adjacent in G1 if and only if they are
adjacent in G. The subgraph induced by V1 is denoted by ⟨V1 ⟩ or G[V1 ]. It is also called a
vertex-induced subgraph of G.
If E1 ⊂ E, then the subgraph of G with edge set E1 and having no isolated vertices is
called the subgraph induced by E1 and is denoted by G[E1 ]. This is also called edge-induced
subgraph of G.
Let G = (V, E) be a graph. Let vi ∈ V. The subgraph of G obtained by removing the
vertex vi and all the edges incident with vi is called the subgraph obtained by the removal of
the vertex vi and is denoted by G − vi . Clearly G − vi is an induced subgraph of G. If G is
connected S ⊂ V and G − S is not connected, then S is called a vertex cut of G.
Let ej ∈ E. Then G − ej = (V, E − {ej }) is called the subgraph of G obtained by the
removal of the edge ej . Clearly G − ej is a spanning subgraph of G which contains all the
edges of G except ej .
Let G = (V, E) be a graph. Let vi , vj be two vertices which are not adjacent in G.
Then G + vi vj = (V, E ∪ {vi , vj }) is called the graph obtained by the addition of the edge
vi vj to G.
Two graphs G1 = (V1 , E1 ) and G2 = (V2 , E2 ) are said to be isomorphic if there exists a
bijection f : V1 → V2 such that u, v are adjacent in G1 if and only if f (u), f (v) are adjacent
in G2 . If G1 is isomorphic to G2 , we write G1 ∼ = G2 . The map f is called an isomorphism
from G1 to G2 .
Let f be an isomorphism of the graph G1 = (V1 , E1 ) to the graph G2 = (V2 , E2 ). Let
v ∈ V1 . Then deg v = deg f (v).
An isomorphism of a graph G onto itself is called an automorphism of G. Let Γ(G) denote
the set of all automorphisms of G. Clearly the identity map i : V → V defined by i(v) = v is
an automorphism of G so that i ∈ Γ(G). Further if α and β are automorphisms of G then αβ
and α−1 are also automorphisms of G. Hence Γ(G) is a group and is called the automorphism
group of G.
Let G = (V, E) be a graph. The complement G of G is defined to be the graph which has
V as its set of vertices and two vertices are adjacent in G if and only if they are not adjacent
in G. The graph G is said to be a self-complementary graph if G is isomorphic to G.
1.4 CONNECTEDNESS
A walk of a graph G is an alternating sequence of vertices and edges v0 , x1 , v1 ,
x2 , v2 , . . ., vn−1 , xn , vn beginning and ending with vertices such that each edge xi is incident
with vi−1 and vi .
We say that the walk joins v0 and vn and it is called a v0 − vn walk. Also v0 is called the
initial vertex and vn is called the terminal vertex of the walk. The above walk is also denoted
by v0 , v1 , . . ., vn , the edges of the walk being self evident. The number of edges in the walk is
called the length of the walk.
A single vertex is considered as a walk of length 0. A walk is called a trail if all its
edges are distinct and is called a path if all its vertices are distinct. A graph consisting of a
path with n vertices is denoted by Pn . A v0 − vn walk is called closed if v0 = vn . A closed
walk v0 , v1 , v2 , . . ., vn = v0 in which n ≥ 3 and v0 , v1 , . . ., vn−1 are distinct is called a cycle
(or circuit) of length n. The graph consisting of a cycle of length n is denoted by Cn .
Two vertices u and v of a graph G are said to be connected if there exists a u − v path
in G. A graph G is said to be connected if every pair of its vertices are connected. A graph
which is not connected is said to be disconnected.
It is an easy exercise to verify that connectedness of vertices is an equivalence relation on
the set of vertices V. Hence V can be partitioned into nonempty subsets V1 , V2 , . . ., Vn such
that two vertices u and v are connected if and only if both u and v belong to the same set Vi .
Let Gi denote the induced subgraph of G with vertex set Vi . Clearly the subgraphs
G1 , G2 , . . ., Gn are connected and are called the components of G. Clearly a graph G is
connected if and only if it has exactly one component.
For any two vertices u, v of a graph we define the distance between u and v by
{
the length of a shortest u − v path if such a path exists
d(u, v) =
∞ otherwise.
Theorem 1.2 A graph G with at least two vertices is bipartite if and only if all its cycles
are of even length.
Theorem 1.3 Let v be a vertex of a connected graph G. The following statements are
equivalent:
1. v is a cutvertex of G.
2. There exists a partition of V − {v} into subsets U and W such that for each u ∈ U and
w ∈ W , the vertex v is on every u − w path.
3. There exist two vertices u and w distinct from v such that v is on every u − w path.
Theorem 1.4 Let x be an edge of a connected graph G. The following statements are
equivalent:
1. x is bridge of G.
2. There exists a partition of V into two subsets U and W such that for every vertex
u ∈ U and w ∈ W, the edge x is on every u − w path.
3. There exist two vertices u, w such that the edge x is on every u − w path.
Theorem 1.5 An edge x of a connected graph G is a bridge if and only if x is not on any
cycle of G.
A nonseparable graph is a connected graph with no cutvertices. All other graphs are separable.
A block of a separable graph G is a maximal nonseparable subgraph of G.
Two u − v paths are internally disjoint if they have no common vertices except u and v.
Theorem 1.6 Every nontrivial connected graph contains at least two vertices that are not
cutvertices.
Theorem 1.7 A graph G with n ≥ 3 vertices is a block if and only if any two vertices of G
are connected by at least two internally disjoint paths.
A block G is also called 2-connected or biconnected because at least two vertices have to
be removed from G to disconnect it. The concepts of vertex and edge connectivities and
generalized versions of the above theorem, called Menger’s theorem, will be discussed further
in Chapter 12 on connectivity.
The direct product G1 ×G2 of two graphs G1 and G2 is the graph with vertex set V (G1 )×
V (G2 ) and two vertices (u1 , u2 ) and (v1 , v2 ) are adjacent in G1 × G2 if u1 v1 ∈ V (G1 ) and
u2 v2 ∈ E(G2 ).
The lexicographic product G1 ◦ G2 of two graphs G1 and G2 is the graph with vertex set
V (G1 ) × V (G2 ) and two vertices (u1 , u2 ) and (v1 , v2 ) are adjacent in G1 ◦ G2 if u1 v1 ∈ E(G1 )
or u1 = v1 and u2 v2 ∈ E(G2 ).
1.6 TREES
The graphs that are encountered in most of the applications are connected. Among connected
graphs trees have the simplest structure and are perhaps the most important ones. A tree is
the simplest nontrivial type of a graph and in trying to prove a general result or to test a
conjecture in graph theory, it is sometimes convenient to first study the situation for trees.
A graph that contains no cycles is called an acyclic graph. A connected acyclic graph is
called a tree. Any graph without cycles is also called a forest so that the components of a
forest are trees.
A tree of a graph G is a connected acyclic subgraph of G. A spanning tree of a graph G
is a tree of G having all the vertices of G. A connected subgraph of a tree T is called a
subtree of T.
The cospanning tree T ∗ of a spanning tree T of a graph G is the subgraph of G having
all the vertices of G and exactly those edges of G that are not in T. Note that a cospanning
tree may not be connected.
The edges of a spanning tree T are called the branches of T, and those of the corresponding
cospanning tree T ∗ are called links or chords.
A spanning tree T uniquely determines its cospanning tree T ∗ . As such, we refer to the
edges of T ∗ as the chords or links of T.
Theorem 1.8 The following statements are equivalent for a graph G with n vertices and m
edges:
1. G is a tree.
3. G is connected and m = n − 1.
4. G is acyclic and m = n − 1.
5. G is acyclic, and if any two nonadjacent vertices of G are connected by an edge, then
the resulting graph has exactly one cycle.
The rank ρ(G) and nullity µ(G) of a graph G of order n and size m are defined by
ρ(G) = n − k and µ(G) = m − n + k, where k is the number of components of G. Note that
ρ(G) + µ(G) = m.
The arboricity a(G) of a graph G is the minimum number of edge disjoint spanning forests
into which G can be decomposed.
Several results connecting spanning trees, circuits, and cutsets will be discussed in Chapters 7
and 8.
Corollary 1.2 Let G be a connected graph with exactly 2k(k ≥ 1) odd vertices. Then the
edge set of G can be partitioned into k open trails.
Corollary 1.3 Let G be a connected graph with exactly two odd vertices. Then G has an
open trail containing all the edges of G.
We present several necessary conditions and sufficient conditions for a graph to be Hamil-
tonian. We observe that any Hamiltonian graph has no cutvertex.
n
1. 1 ≤ k ≤ n ⇒ dk ≥ 2 [7].
2. (u, v) ∈
/ E ⇒ d(u) + d(v) ≥ n [8].
n
3. 1 ≤ k < 2 ⇒ dk > k [6].
The closure of a graph G with n vertices is the graph obtained from G by repeatedly joining
pairs of nonadjacent vertices whose degree sum is at least n until no such pair remains. The
closure of G is denoted by c(G).
Corollary 1.5 Let G be a graph with at least 3 vertices. If c(G) is complete, then G is
Hamiltonian.
Definition 1.1 The distance d(u, v) between two vertices u and v in a connected graph is
defined to be the length of a shortest u − v path in G. The eccentricity e(v) of a vertex v
is the number maxu∈V (G) d(u, v). Thus e(v) is the distance between v and a vertex farthest
from v. The radius rad G of G is the minimum eccentricity among the vertices of G, while
the diameter diam G of G is the maximum eccentricity. A vertex v is a central vertex if
e(v) = rad(G) and the center Cen(G) is the subgraph of G induced by its central vertices.
A vertex v is a peripheral vertex if e(v) = diam(G), while the periphery P er(G) is the
subgraph of G induced by its peripheral vertices.
Definition 1.2 If G is a noncomplete graph and t is a nonnegative real number such that
t ≤ |S|/ω(G − S) for every vertex-cut S of G, where ω(G − S) is the number of components
of G − S, then G is defined to be t-tough. If G is a t-tough graph and s is a nonnegative real
number such that s < t, then G is also s-tough. The maximum real number t for which a
graph G is t-tough is called the toughness of G and is denoted by t(G).
Definition 1.3 A subset S of vertices of a graph is called an independent set if no two
vertices of S are adjacent in G. The number of vertices in a maximum independent is called
the independence number of G.
Definition 1.4 The clique number ω(G) of a graph G is the maximum order among the
complete subgraphs of G.
We observe that the clique number of G is the independence number of its complement.
Definition 1.5 The girth of a graph G having at least one cycle is the length of a shortest
cycle in G. The circumference of G is the length of a longest cycle in G.
Definition 1.6 The vertex cover of a graph G is a set S of vertices such that every edge of
G has at least one end vertex in S. An edge cover of G is a set L of edges such that every
vertex of G is incident to some edge of L. The minimum size of a vertex cover is called the
vertex covering number of G and is denoted by β(G). The minimum size of an edge cover is
called the edge covering number of G and is denoted by β′ (G).
1 2
4 3
Subgraphs and induced subgraphs of a directed graph are defined as in the case of undirected
graphs.
Let D = (V, A) be a digraph. The underlying graph G of D is a graph having the same
vertex set as D and two vertices u and w are adjacent in G whenever (u, w) or (w, u) is in A.
Similarly if we are given a graph G we can obtain a digraph from G by giving orientation
to each edge of G. A digraph thus obtained from G is called an orientation of G.
The converse digraph D′ of a digraph D is obtained from D by reversing the direction of
each arc.
2. In a symmetric directed graph, there are two oppositely oriented edges between any
two adjacent vertices. Therefore, an undirected graph can be considered as representing
a symmetric relation if we associate with each edge two oppositely oriented edges.
3. The edge (v1 , v2 ) is present in a transitive graph G if there is a directed path in G from
v1 to v2 .
Theorem 1.19 A directed graph D has a root if and only if it is quasi-strongly connected.
A directed graph D is a tree if the underlying undirected graph is a tree. A directed graph
D is a directed tree or arborescence if D is a tree and has a root.
We present in the next theorem a number of equivalent characterizations of a directed
tree.
4
3
6
9
Figure 1.3 Directed graph representation of a relation on the set X = {2, 3, 4, 6, 9}.
Theorem 1.20 Let D be a directed graph with n > 1 vertices. Then the following statements
are equivalent:
1. D is a directed tree.
2. There exists a vertex r in D such that there is exactly one directed path from r to every
other vertex of D.
3. D is quasi-strongly connected and loses this property if any edge is removed from it.
Theorem 1.21 A directed graph D has a directed spanning tree if and only if D is quasi-
strongly connected.
Theorem 1.22 The following statements are equivalent for a connected directed graph D.
Theorem 1.23 A directed connected graph D possesses an open directed Euler trail if and
only if the following conditions are satisfied:
1. In D there are two vertices v1 and v2 , such that d+ (v1 ) = d− (v1 ) + 1 and d− (v2 ) =
d+ (v2 ) + 1.
Theorem 1.24 The number of directed Euler trails of a directed Eulerian graph D without
self-loops is τd (D) np=1 (d− (vp ) − 1)!, where n is the number of vertices in D and τd (D) is
∏
Corollary 1.6 The number of directed spanning trees of a directed Eulerian graph is the
same for every choice of root.
Theorem 1.25 Let u be any vertex of a strongly connected complete directed graph with
n ≥ 3 vertices. For each k, 3 ≤ k ≤ n, there is a directed circuit of length k containing u.
Theorem 1.26 Let D be a strongly connected n-vertex graph without parallel edges and
self-loops. If for every vertex v in D, d− (v) + d+ (v) ≥ n, then D has a directed Hamilton
circuit.
Corollary 1.8 Let D be a directed n-vertex graph without parallel edges or self-loops. If
min (δ− , δ+ ) ≥ n/2 > 1, then D contains a directed Hamilton circuit.
Theorem 1.27 If a directed graph D = (V, A) is complete, then it has a directed Hamilton
path.
Theorem 1.28 In an acyclic directed graph D there exists at least one vertex with zero
indegree and at least one vertex with zero outdegree.
Select any vertex with zero outdegree. Since D is acyclic, by Theorem 1.28, there is at least
one such vertex in D. Label this vertex with the integer n. Now remove from D this vertex
and the edges incident on it. Let D′ be the resulting graph. Since D′ is also acyclic, we can
now select a vertex whose outdegree in D′ is zero. Label this with the integer n − 1. Repeat
this procedure until all the vertices are labeled. It is now easy to verify that this procedure
results in a topological sorting of the vertices of D.
1.18 TOURNAMENTS
A tournament is an orientation of a complete graph. It derives its name from its application
in the representation of structures of round-robin tournaments. In a round-robin tournament
several teams play a game that cannot end in a tie, and each team plays every other team
exactly once. In the directed graph representation of the round-robin tournament, vertices
represent teams and an edge (v1 , v2 ) is present in the graph if the team represented by the
vertex v1 defeats the team represented by the vertex v2 . Clearly, such a directed graph has
no parallel edges and self-loops, and there is exactly one edge between any two vertices. Thus
it is a tournament.
The teams participating in a tournament can be ranked according to their scores. The
score of a team i is the number of teams it has defeated. This motivates the definition of the
score sequence of a tournament.
The score sequence of an n-vertex tournament is the sequence (s1 , s2 , . . ., sn ) such that
each si is the outdegree of a vertex of the tournament. An interesting characterization of a
tournament in terms of the score sequence is given in the following theorem.
Suppose we can order the teams in a round-robin tournament such that each team precedes
the one it has defeated. Then we can assign the integers 1, 2, . . ., n to the teams to indicate
their ranks in this order. Such a ranking is always possible since in a tournament there exists
a directed Hamilton path and it is called ranking by a Hamilton path.
Note that ranking by a Hamilton path may not be the same as ranking by the score.
Further, a tournament may have more than one directed Hamilton path. In such a case there
will be more than one Hamilton path ranking. However, there exists exactly one directed
Hamilton path in a transitive tournament. This is stated in the following theorem, which is
easy to prove.
Theorem 1.30 In a transitive tournament there exists exactly one directed Hamilton path.
traveling salesman problem, the graph coloring problem, the problem of simplifying Boolean
functions, scheduling problems, and certain covering problems.
In this section we present a brief introduction to the theory of N P -completeness.
A decision problem is one that asks only for a yes or no answer. For example the ques-
tion Can this graph be 5-colored? is a decision problem. Many of the important optimization
problems can be phrased as decision problems. Usually, if we find a fast algorithm for a
decision problem, then we will be able to solve the corresponding original problem also
efficiently. For instance, if we have a fast algorithm to solve the decision problem for graph
coloring, by repeated applications (in fact, n log n applications) of this algorithm, we can find
the chromatic number of an n-vertex graph.
A decision problem belongs to the class P if there is a polynomial time algorithm to solve
the problem. A verification algorithm is an algorithm A which takes as input an instance
of a problem and a candidate solution to the problem, called a certificate and verifies in
polynomial time whether the certificate is a solution to the given problem instance. The
class NP is the class of problems which can be verified in polynomial time.
The fundamental open question in computational complexity is whether the class P
equals the class N P. By definition, the class N P contains all problems in class P. It is not
known, however, whether all problems in N P can be solved in polynomial time.
In an effort to determine whether P = N P, Cook [13] defined the class of N P -complete
problems. We say that a problem P1 is polynomial-time reducible to a problem P2 , written
P1 ≤p P2 , if
2. For any instance I1 , the instance f (I1 ) can be constructed in polynomial time.
1. Show that P ∈ N P .
It follows from the definition of N P -completeness that if any problem in NPc can be solved in
polynomial time, then every problem in NPc can be solved in polynomial time and P = N P.
On the other hand, if there is some problem in NPc that cannot be solved in polynomial
time, then no problem in NPc can be solved in polynomial time.
Cook [13] proved that there is an N P -complete problem. The satisfiability problem is
defined as follows:
Let X = {x1 , x2 , . . ., xn } be a set of Boolean variables. A literal is either a variable xi
or its complement xi . Thus the set of literals is L = {x1 , x2 , . . ., xn , x1 , x2 , . . ., xn }. A clause
C is a subset of L. The satisfiability problem (SAT) is: Given a set of clauses, does there
exist a set of truth values (T or F ), one for each variable, such that every clause contains at
least one literal whose value is T. Cook’s proof that SAT is N P -complete opened the way to
demonstrate the N P -completeness of a vast number of problems. The second problem to be
1 2
3 4
proved N P -complete is 3-SAT the 3-satisfiability problem, which is the special case of SAT
in that only three literals are permitted in each clause.
The list of N P -complete problems has grown very rapidly since Cook’s work. Karp [14,15]
demonstrated the N P -completeness of a number of combinatorial problems. Garey and
Johnson [16] is the most complete reference on N P -completeness and is highly recom-
mended. Other good textbooks recommended for this study include Horowitz and Sahni [17],
Melhorn [18], and Aho et al. [19]. For updates on N P -completeness see the article titled
“N P -completeness: An ongoing guide” in the Journal of Algorithms.
Since the concept of reducibility plays a dominant role in establishing the N P -
completeness of a problem, we shall illustrate this with an example.
Consider the graph G = (V, E) in Figure 1.4 and the decision problem Can the vertices
of G be 3-colored? We now reduce this problem to an instance of SAT.
We define 12 Boolean variables xi,j (i = 1, 2, 3, 4; j = 1, 2, 3) where the variable xi,j
corresponds to the assertion that vertex i has been assigned color j. The clauses are defined
as follows:
Whereas, C(i) asserts that each vertex i has been assigned at least one color, the clauses
T (i), U (i) and V (i) together assert that no vertex has been assigned more than one color. The
clauses D(e, j)’s guarantee that the coloring is proper (adjacent vertices have been assigned
distinct colors).
Thus, the graph of Figure 1.4 is 3-colorable if and only if there exists an assignment of
truth values T and F to the 12 Boolean variables x1,1 , x1,2 , . . ., x4,3 such that the each of the
clauses contains at least one literal whose value is T.
References
[1] J. A. Bondy and U. S. R. Murty, Graph Theory, Springer, Berlin, Germany, 2008.
[2] G. Chartrand and L. Lesniak, Graphs and Digraphs, 4th Edition, CRC Press, Boca
Raton, FL, 2005.
[5] D. B. West, Introduction to Graph Theory, 2nd Edition, Prentice Hall, Upper Saddle
River, NJ, 2001.
[7] G. A. Dirac, Some theorems on abstract graphs, Proc. London Math. Soc., 2 (1952),
69–81.
[8] O. Ore, Note on Hamilton circuits, Amer. Math. Monthly, 67 (1960), 55.
[9] A. Levitin, Introduction to the Design and Analysis of Algorithms, Pearson, Boston, MA,
2012.
[10] M. T. Goodrich and R. Tamassia, Algorithm Design: Foundations, Analysis and Internet
Examples, John Wiley & Sons, New York, 2002.
[12] J. Edmonds, Paths, trees and flowers, Canad. J. Math., 17 (1965), 449–467.
[13] S. A. Cook, The complexity of theorem proving procedures, Proc. 3rd ACM Symp. on
Theory of Computing, ACM, New York, 1971, 151–158.
[16] M. R. Garey and D. S. Johnson, Computers and Intractability: A Guide to the Theory
of NP-Completeness, Freeman, San Francisco, CA, 1979.
[19] A. V. Aho, J. E. Hopcroft, and J. D. Ullman The Design and Analysis of Computer
Algorithms, Addison-Wesley, Reading, MA, 1974.
CONTENTS
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2 Minimum Weight Spanning Tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.3 Optimum Branchings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.4 Transitive Closure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.5 Shortest Paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.5.1 Single Source Shortest Paths: Bellman–Ford–Moore Algorithm . . . . . . . . . 36
2.5.1.1 Negative Cycle Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.5.1.2 Shortest Path Tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.5.2 Single Source Shortest Paths in Graphs with No Negative Length
Edges: Dijkstra’s Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.5.3 All Pairs Shortest Paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2.6 Transitive Orientation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.1 INTRODUCTION
Graphs arise in the study of several practical problems. The first step in such studies is to
discover graph theoretic properties of the problem under consideration that would help us in
the formulation of a method of solution to the problem. Usually solving a problem involves
analysis of a graph or testing a graph for some specified property. Graphs that arise in the
study of real-life problems are very large and complicated. Analysis of such graphs in an
efficient manner, therefore, involves the design of efficient computer algorithms.
In this and the next chapter we discuss several basic graph algorithms. We consider these
algorithms to be basic in the sense that they serve as building blocks in the design of more
complex algorithms. While our main concern is to develop the theoretical foundation on which
the design of the algorithms is based, we also develop results concerning the computational
complexity of these algorithms.
The computational complexity of an algorithm is a measure of the running time of the
algorithm. Thus it is a function of the size of the input. In the case of graph algorithms,
complexity results will be in terms of the number of vertices and the number of edges in the
graph. In the following function g(n) is said to be O(f (n)) if and only if there exist constants
c and n0 such that |g(n)| ≤ c|f (n)| for all n ≥ n0 . Furthermore, all our complexity results
will be with respect to the worst-case analysis.
There are different methods of representing a graph on a computer. Two of the most
common methods use the adjacency matrix and the adjacency list. Adjacency matrix
representation is not a very efficient one in the case of sparse graphs. In the adjacency
∗
This chapter is an edited version of Sections 14.1, 14.2, 15.1, and 15.8 in Swamy and Thulasiraman [17].
21
list representation, we associate with each vertex a list that contains all the edges incident
on it. A detailed discussion of data structures for representing a graph may be found in some
of the references listed at the end of this chapter.
Theorem 2.1 Consider a vertex v in a weighted connected graph G. Among all the edges
incident on v, let e be one of minimum weight. Then, G has a minimum weight spanning
tree that contains e.
Proof. Let Tmin be a minimum weight spanning tree of G. If Tmin does not contain e, then a
circuit C is created when e is added to Tmin . Let e′ be the edge of C that is adjacent to e.
Clearly e′ ∈ Tmin . Also T ′ = Tmin − e′ + e is a spanning tree of G. Since e and e′ are both
incident on v, we get w(e) ≤ w(e′ ). But w(e) ≥ w(e′ ) because w(T ′ ) = w(Tmin ) − w(e′ ) +
w(e) ≥ w(Tmin ). So, w(e) = w(e′ ) and w(T ′ ) = w(Tmin ). Thus we have found a minimum
weight spanning tree, namely T ′ , containing e.
If the fundamental circuit with respect to a chord c of a spanning tree T contains branch b,
then T − b + c is also a spanning tree of G (see Chapter 7). Using this result we can prove
the statements in Theorem 2.2 along the same lines as the proof of Theorem 2.1.
Theorem 2.2 Let e be a minimum weight edge in a weighted connected graph G. Then
1. G has a minimum weight spanning tree that contains e.
2. If Tmin is a minimum weight spanning tree of G, then for every chord c w(b) ≤ w(c),
for every branch b in the fundamental circuit of Tmin with respect to c.
3. If Tmin is a minimum weight spanning tree of G, then for every branch b ∈ Tmin
w(b) ≤ w(c), for every chord c in the fundamental cutset of Tmin with respect to b.
Theorem 2.3 Let T be an acyclic subgraph of a weighted connected graph G such that there
exists a minimum weight spanning tree containing T . If G′ denotes the graph obtained by
′
contracting the edges of T , and Tmin is a minimum weight spanning tree of G′ , then Tmin
′
∪T
is a minimum weight spanning tree of G.
Proof. Let Tmin be a minimum weight spanning tree of G containing T . Let Tmin = T ∪ T ′ .
Then T ′ is a spanning tree of G′ . Therefore
w(T ′ ) ≥ w(Tmin
′
). (2.1)
′
It is easy to see that Tmin ∪ T is also a spanning tree of G. So
′
w(Tmin ∪ T ) ≥ w(Tmin ) = w(T ) + w(T ′ ). (2.2)
′
Combining (2.1) and (2.3) we get w(Tmin ) = w(T ′ ), and so w(Tmin
′
∪T ) = w(T ′ ∪T ) = w(Tmin ).
′
Thus Tmin ∪ T is a minimum weight spanning tree of G.
We now present Kruskal’s algorithm.
Input: G = (V, E) is the given nontrivial n-vertex weighted connected graph with m edges.
The edges are ordered according to their weights, that is, w(e1 ) ≤ w(e2 ) ≤ · · · ≤ w(em ).
Output: A minimum weight spanning tree of G. The edges e′1 , e′2 , . . ., e′n−1 will be the
required spanning tree.
begin
k ← 0;
T0 ← φ;
for i = 1 to m do
If Tk + ei is acyclic then
begin
k ← k + 1;
e′k ← ei ;
Tk ← Tk−1 + e′k ;
end
end
Kruskal’s algorithm essentially proceeds as follows. Edges are first sorted in the order of
nondecreasing weights and then examined, one at a time, for inclusion in a minimum weight
spanning tree. An edge is included if it does not form a circuit with the edges already selected.
Next we prove the correctness of Kruskal’s algorithm.
Theorem 2.4 Kruskal’s algorithm constructs a minimum weight spanning tree of a weighted
connected graph.
Proof. Let G be the given nontrivial weighted connected graph. Clearly, when Kruskal’s
algorithm terminates, the edges selected will form a spanning tree of G. Thus the algorithm
terminates with k = n − 1, and Tn−1 as a spanning tree of G.
We next establish that Tn−1 is indeed a minimum weight spanning tree of G by proving
that every Tk , k ≥ 1 constructed in the course of Kruskal’s algorithm is contained in a
minimum weight spanning tree of G. Our proof is by induction on k.
Clearly by Theorem 2.1, G has a minimum weight spanning tree that contains the edge
e′1 = e1 . In other words T1 = {e1 } is contained in a minimum weight spanning tree of G.
As inductive hypothesis, assume that Tk , for some k ≥ 1 is contained in a minimum weight
spanning tree of G. Let G′ be the graph obtained by contracting the edges of Tk . Then the
edge e′k+1 selected by the algorithm will be a minimum weight edge in G′ . So, by Theorem 2.2,
the edge e′k+1 is contained in a minimum weight spanning tree Tmin′
of G′ . By Theorem 2.3,
Tk ∪ Tmin is a minimum weight spanning tree of G. More specifically Tk+1 = Tk + e′k+1 is
′
contained in a minimum weight spanning tree of G and the correctness of Kruskal’s algorithm
follows.
We next present another algorithm due to Prim [2] to construct a minimum weight spanning
tree of a weighted connected graph.
Both these algorithms result in a minimum weight spanning tree since the edge ei+1 selected
as above is in a minimum weight spanning tree of G′ as proved in Theorems 2.1 and 2.3.
The following algorithm which unifies both Prim’s and Kruskal’s algorithms is slightly
more general than both.
For complexity results relating to the minimum weight spanning tree enumeration problem
see Kerschenbaum and Van Slyke [3], Yao [4], and Cheriton and Tarjan [5]. For sensitiv-
ity analysis of minimum weight spanning trees and shortest path trees see Tarjan [6]. See
Papadimitriou and Yannakakis [7] for a discussion of the complexity of restricted minimum
weight spanning tree problems. For a history of the minimum weight spanning tree problem
see Graham and Hall [8]. The complexity of Kruskal’s algorithm is O(m log n) (see Korte
and Vygen [9]). Clearly the complexity of Prim’s algorithm is O(n2 ). For more sophisticated
implementations see [10–13]. See also [14] for an algorithm due to Jarnik.
1. w(e) > 0.
∗
See Chapter 1 for the definition of a directed tree, also called an arborescence.
e1 5
e5 6 6
e2 e5 6
6 e2
5 e12 5 5
5 e3 1 e3
e4 e4
e6 1 e10
3
4 e11
e8 e9 e8 e9
6 3 6 3
2 2
e7 e7
(a) (b)
Figure 2.1 (a) A directed graph G. (b) A critical subgraph of G. (Data from M. N. Swamy
and K. Thulasiraman, Graphs, Networks and Algorithms, Wiley-Interscience, 1981.)
A directed graph G and a critical subgraph H of G are shown in Figure 2.1. It is easy to see
that
1. Each component of a critical subgraph contains at most one circuit, and such a circuit
will be a directed circuit.
Consider a branching B. Let e = (i, j) be an edge not in B, and let e′ be the edge of B
incident into vertex j. Then e is eligible relative to B if
B ′ = (B ∪ e) − e′
is a branching.
For example, the edges {e1 , e2 , e3 , e4 , e7 , e8 } form a branching B of the graph of Figure 2.1.
The edge e6 , not in B, is eligible relative to B since
(B ∪ e6 ) − e7
Lemma 2.1 Let B be a branching, and let e = (i, j) be an edge not in B. Then e is eligible
relative to B if and only if in B there is no directed path from j to i.
Lemma 2.2 Let B be a branching and let C be a directed circuit such that no edge of C − B
is eligible relative to B. Then |C − B| = 1.
Theorem 2.5 Let H be a critical subgraph. Then there exists an optimum branching B such
that, for every directed circuit C in H, |C − B| = 1.
Proof. Let B be an optimum branching that, among all optimum branchings, contains a
maximum number of edges of the critical subgraph.
Consider any edge e ∈ H − B that is incident into vertex j, and let e′ be the edge of B
incident into j. If e were eligible, then
(B ∪ e) − e′
would also be an optimum branching, containing a larger number of edges of H than B does;
a contradiction. Thus no edge of H − B is eligible relative to B. So, by Lemma 2.2, for each
circuit C in H, |C − B| = 1.
Let C1 , C2 , . . ., Ck be the directed circuits in H. Note that no two circuits of H can have a
common edge. In other words, these circuits are edge-disjoint. Let e0i be an edge of minimum
weight in Ci , i ≥ 1.
Ci − B = e0i . (2.4)
Proof. Among all optimum branchings that satisfy item 1, let B be a branching containing
a minimum number of edges from the set {e01 , e02 , . . ., e0k }. We now show that B satisfies
item 2.
If not, suppose that, for some i, e0i ∈ B, but that no edge of B − Ci is incident into
a vertex in Ci . Let e = Ci − B. Then (B − e0i ) ∪ e is clearly an optimum branching
that satisfies item 1 but has fewer edges than B from the set {e01 , e02 , . . ., e0k }. This is a
contradiction.
This result is very crucial in the development of Edmonds’ algorithm. It suggests that we
can restrict our search for optimum branchings to those that satisfy (2.4).
Next we construct, from the given graph G, a simpler graph G′ and show how to
construct from an optimum branching of G′ an optimum branching of G that satis-
fies (2.4).
As before, let H be the critical subgraph of G and let C1 , C2 , . . ., Ck be the directed circuits
in H. The graph G′ is constructed by contracting all the edges in each Ci = 1, 2, . . ., k. In G′ ,
vertices of each circuit Ci are represented by a single vertex ai , called a pseudo-vertex. The
weights of the edges of G′ are the same as those of G, except for the weights of the edges
incident into the pseudo-vertices. These weights are modified as follows.
Let e = (i, j) be an edge of G such that j is a vertex of some circuit Cr and i is
not in Cr . Then in G′ , e is incident into the pseudo-vertex ar . Define ẽ as the unique
edge in Cr that is incident into vertex j. Then in G′ the weight of e, denoted by w′ (e),
is given by
w′ (e) = w(e) − w(ẽ) + w(e0r ). (2.5)
For example, consider the edge e1 incident into the directed circuit {e2 , e3 , e4 , e5 } of the
critical subgraph of the graph G of Figure 2.1. Then ẽ1 = e5 , and the weight of e1 in G′ is
given by
B′ = B ∩ E′ (2.6)
Ci′ = Ci − e0i .
Ci′ = Ci − ẽ.
k k
w(e0i ).
∑ ∑
w(B) − w(B ′ ) = w(Ci ) − (2.8)
i=1 i=1
This property of B and B ′ implies that if B is an optimum branching of G that satisfies (2.4),
then B ′ is an optimum branching of G′ and vice versa. Thus we have proved the following
theorem.
Theorem 2.6 There exists a one-to-one correspondence between the set of all optimum
branchings in G that satisfy (2.4) and the set of all optimum branchings in G′ .
Edmonds’ algorithm for constructing an optimum branching is based on Theorem 2.6 and is
as follows:
As an example let G0 be the graph in Figure 2.1a, and let H0 be the graph in Figure 2.1b.
H0 is the critical subgraph of G0 . After contracting the edges of the circuits in H0 and
modifying the weights, we obtain the graph G1 shown in Figure 2.2a. The critical subgraph
H1 of G1 is shown in Figure 2.2b. H1 is acyclic. So it is an optimum branching of G1 . An
optimum branching of G0 is obtained from H1 by expanding the pseudo-vertices a1 and a2
(which correspond to the two directed circuits in H0 ), and it is shown in Figure 2.2c.
The running time of Edmonds’ optimum branching algorithm is O(mn), where m is
the number of edges and n is the number of vertices. Tarjan [18] gives an O(mn log n)
e1 5
6
e2
e1 4 e1 4
5 5
e4 e3
a1
e12
0 a1
e10 3
e8
6
2
a2 a2
e7
(a) (b) (c)
Figure 2.2 (a) Graph G1 . (b) H1 a critical subgraph of G1 . (c) An optimum branching of
graph G of Figure 2.1a. (Data from M. N. Swamy and K. Thulasiraman, Graphs, Networks
and Algorithms, Wiley-Interscience, 1981.)
implementation of Edmonds’ algorithm. Gabow et al. [13] have given an O(m + n log n) time
implementation using Fibonacci heaps (see also Camerini et al. [19]). Bock [20] and Chu and
Liu [21] have also independently discovered Edmonds’ algorithm.
x0 = x, x1 , x2 , . . ., xk = y
x0 = x, x1 , x2 , . . ., xk = y
(a) (b)
1 2 1 2 1 2
3 4 3 4 3 4
(a) (b) (c)
Let G be an n-vertex directed graph with its vertices denoted by the integers 1, 2, . . ., n.
Let G0 = G. Warshall’s algorithm constructs a sequence of graphs so that Gi ⊆ Gi+1 ,
0 ≤ i ≤ n − 1, and Gn is the transitive closure of G. The graph Gi , i ≥ 1, is obtained from
Gi−1 by processing vertex i in Gi−1 . Processing vertex i in Gi−1 involves addition of new
edges to Gi−1 as described next.
Let, in Gi−1 , the edges (i, k), (i, l), (i, m), . . . be incident out of vertex i. Then for each
edge (j, i) incident into vertex i, add to Gi−1 the edges (j, k), (j, l), (j, m), . . . if these edges
are not already present in Gi−1 . The graph that results after vertex i is processed is denoted
as Gi . Warshall’s algorithm is illustrated in Figure 2.4.
It is clear that Gi ⊆ Gi+1 , i ≥ 0. To show that Gn is the transitive closure of G we need
to prove the following result.
Theorem 2.7
1. Suppose that, for any two vertices s and t, there exists in G a directed path P from vertex
s to vertex t such that all its vertices other than s and t are from the set {1, 2, . . ., i}.
Then Gi contains the edge (s, t).
2. Suppose that, for any vertex s, there exists in G a directed circuit C containing s such
that all its vertices other than s are from the set {1, 2, . . ., i}. Then Gi contains the
self-loop (s, s).
Proof.
1. Proof is by induction on i.
Clearly the result is true for G1 since Warshall’s construction, while processing vertex
1, introduces the edge (s, t) if G0 (= G) contains the edges (s, 1) and (1, t).
Let the result be true for all Gk , k < i.
Suppose that i is not an internal vertex of P . Then it follows from the induction
hypothesis that Gi−1 contains the edge (s, t). Hence Gi also contains (s, t) because
Gi−1 ⊆ Gi .
Suppose that i is an internal vertex of P . Then again from the induction hypothesis it
follows that Gi−1 contains the edges (s, i) and (i, t). Therefore, while processing vertex
i in Gi−1 , the edge (s, t) is added to Gi .
We next give a formal description of Warshall’s algorithm. In this description the graph
G is represented by its adjacency matrix M and the symbol ∨ stands for Boolean
addition.
2. The algorithm processes all the edges incident into a vertex before it begins to process
the next vertex. In other words it processes the matrix M column-wise. Hence, we
describe Warshall’s algorithm as column-oriented.
3. While processing a vertex no new edge (i.e., an edge that is not present when the
processing of that vertex begins) incident into the vertex is added to the graph. This
means that while processing a vertex we can choose the edges incident into the vertex
in any arbitrary order.
4. Suppose that the edge (j, i) incident into the vertex i is not present while vertex i
is processed, but that it is added subsequently while processing some vertex k, k> i.
Clearly this edge was not processed while processing vertex i. Neither will it be pro-
cessed later since no vertex is processed more than once. In fact, such an edge will not
result in adding any new edges.
5. Warshall’s algorithm is said to work in one pass since each vertex is processed exactly
once.
1 4 3 2
(a)
1 4 3 2
(b)
1 4 3 2
(c)
Figure 2.5Example of row-oriented transitive closure algorithm: (a) G, (b) G′ , and (c) G∗ .
(Data from M. N. Swamy and K. Thulasiraman, Graphs, Networks and Algorithms, Wiley-
Interscience, 1981.)
can be done only in a second pass. Thus, in general, a row-oriented algorithm may require
more than one pass to compute the transitive closure.
For example, consider the graph G of Figure 2.5a. After processing row-wise the ver-
tices of G we obtain the graph G′ shown in Figure 2.5b. Clearly, G′ is not the transitive
closure of G since the edge (1,2) is yet to be added. It may be noted that the edge (1,3) is
not processed in this pass because it is added only while processing the edge (1,4). The same
is the case with the edge (4,2).
Suppose we next process the vertices of G′ . In this second pass the edge (1,2) is added
while processing vertex 1 and we get the transitive closure G∗ shown in Figure 2.5c. Thus in
the case of the graph of Figure 2.5a two passes of the row-oriented algorithm are required.
Now the question arises whether two passes always suffice. The answer is in the affir-
mative, and Warren [24] has demonstrated this by devising a clever two-pass row-oriented
algorithm. In this algorithm, while processing a vertex, say vertex i, in the first pass only
edges connected to vertices less than i are processed, and in the second pass only edges con-
nected to vertices greater than i are processed. In other words the algorithm transforms the
adjacency matrix M of the graph G to the adjacency matrix of G∗ by processing in the first
pass only entries below the main diagonal of M and in the second pass only entries above the
main diagonal. Thus during each pass at most n(n − 1)/2 edges are processed. A description
of Warren’s modification of Warshall’s algorithm now follows.
end
{Pass 1 ends}
for i = 1, 2, . . ., n − 1 do {Pass 2 begins}
begin
for j = i + 1, i + 2, . . ., n do
if M (i, j) = 1 then
begin
for k = 1, 2, . . ., n do
M (i, k) ← M (i, k) ∨ M (j, k);
end
end
{Pass 2 ends}
end
As an example, consider again the graph shown in Figure 2.5a. At the end of the first pass
of Warren’s algorithm we obtain the graph shown in Figure 2.6a, and at the end of the
second pass we get the transitive closure G∗ shown in Figure 2.6b. The proof of correctness
of Warren’s algorithm is based on the following lemma.
Lemma 2.3 Suppose that, for any two vertices s and t, there exists in G a directed path P
from s to t. Then the graph that results after processing vertex s in the first pass of Warren’s
algorithm contains an edge (s, r), where r is a successor of s on P and either r > s or r = t.
Proof. Proof is by induction on s.
If s = 1, then the lemma is clearly true because all the successors of 1 on P are greater
than 1. Assume that the lemma is true for all s < k and let s = k. Suppose (s, i1 ) is the first
edge on P . If i1 > s, then clearly the lemma is true.
If i1 < s, then by the induction hypothesis the graph that results after processing vertex
i1 in the first pass contains an edge (i1 , i2 ), where i2 is a successor of i1 on P and either
i2 > i1 or i2 = t.
If i2 ̸= t and i2 < s, then again by the induction hypothesis the graph that results after
processing vertex i2 in the first pass contains an edge (i2 , i3 ) where i3 is a successor of i2
on P , and either i3 > i2 or i3 = t.
If i3 ̸= t and i3 < s, we repeat the arguments on i3 until we locate an im such that
either im > s or im = t. Thus the graph that we have before the processing of vertex s
begins contains the edges (s, i1 ), (i1 , i2 ), . . ., (im−1 , im ) such that the following conditions are
satisfied:
1 4 3 2
(a)
1 4 3 2
(b)
1. ip is a successor of ip−1 on P , p ≥ 2.
2. im−1 > im−2 > im−3 > · · · > i1 , and ik < s for k ̸= m.
3. im = t or im > s.
We now begin to process vertex s. Processing of (s, i1 ) introduces the edge (s, i2 ) because of
the presence of (i1 , i2 ). Since i2 > i1 , the edge (s, i2 ) is subsequently processed. Processing
of this edge introduces (s, i3 ) because of the presence of (i2 , i3 ), and so on. Thus when the
processing of s is completed, the required edge (s, im ) is present in the resulting graph.
Theorem 2.8 Warren’s algorithm computes the transitive closure of a directed graph G.
Case 1 For any two distinct vertices s and t there exists in G a directed path P from s to t.
Let (i, j) be the first edge on P (as we proceed from s to t) such that i > j. Then it
follows from Lemma 2.3 that the graph that we have, before the second pass of Warren’s
algorithm begins, contains an edge (i, k), where k is a successor of i on P and either k = t or
k > i. Thus after the first pass is completed there exists a path P ′ : s, i1 , i2 , . . ., im , t such
that s < i1 < i2 < · · · < im and each ij+1 is a successor of ij on P .
When in the second pass we process vertex s, the edge (s, i1 ) is first encountered. The
processing of this edge introduces the edge (s, i2 ) because of the presence of the edge (i1 , i2 ).
Since i2 > i1 , the edge (s, i2 ) is processed subsequently. This, in turn, introduces the edge
(s, i3 ), and so on. Thus when the processing of s is completed, we have the edge (s, t) in the
resulting graph.
Case 2 There exists in G a directed circuit containing a vertex s.
In this case we can prove along the same lines as before that when the processing of
vertex s is completed in the second pass, the resulting graph contains the self-loop (s, s).
Clearly both Warshall’s and Warren’s algorithms have the worst-case complexity O(n3 ).
Warren [24] refers to other row-oriented algorithms. For some of the other transitive closure
algorithms (see [25–33]). Syslo and Dzikiewicz [34] discuss computational experiences with
several of the transitive closure algorithms. Melhorn [35] discusses the transitive closure
problem in the context of general path problems in graphs. Several additional references on
this topic can also be found in [35].
2. All-Pairs Shortest Paths Problem: Find the shortest paths between all the ordered pairs
of vertices in G.
W
HEN Peter crawled out of his haystack the next morning the
weather was intensely cold and the wind was gone. Every
twig and weed sparkled with the ice frozen upon it. He had
needed no alarm-clock to awaken him, for an uneasy sense
of discomfort gradually opened his eyes, and he found his knees
aching and his whole body chilled and stiff. He climbed the fence
into the farm-house yard. He had no doubt now that he was hungry,
and he was well aware that his head was cold where the hair was
thin. Indeed, his hands and feet were cold too. But he tightened his
belt another hole and made for Mrs. Potter's woodshed. Among the
chips and sawdust he found a piece of white cloth which, had he
known it was the remains of one of Mrs. Potter's petticoats, he
would have left where it lay, but not knowing this he made a
makeshift turban by knotting the corners, and drew it well down
over his ears, like a nightcap. It was more comfortable than the raw
morning air, and Peter had no more pride than a tramp.
He found the wood saw hanging in the shed, a piece of bacon-rind
on the windowsill, and the ice-covered sawbuck in the yard, and he
set to work on the pile of pin-oak as if he meant to earn his clock,
his breakfast and a full day's wages before Mrs. Potter got out of
bed. The exercise warmed him, but he kept one eye on the top of
Mrs. Potter's kitchen chimney, looking for the thin smoke signal
telling that breakfast was under way. The pile of stove-wood grew
and grew under his saw but still the house gave no sign of life. The
sun climbed, making the icy coating of trees and fences glow with
color, and still Mrs. Potter's kitchen chimney remained hopelessly
smokeless.
“That woman must have a good, clear conscience or she couldn't
sleep like that,” said the hungry Peter, “but I've got folks on my
hands, and I've got to see to them. If this ain't enough wood to
satisfy her I'll saw some more when I come back.”
He was worried, for no smoke was coming from the stovepipe that
protruded from the roof of his shanty-boat. When he reached the
boat he knocked three times without answer before he opened the
door cautiously and peered in, ready to retreat should his entrance
be inopportune. The woman was lying where he had left her, still in
her wet clothes, and the cabin was icy cold. The boy, when Peter
opened the door, was standing on the table trying to lift the shot-
gun from its pegs. His face showed he had made a trip to the bread
and jam. He looked down at Peter as the door opened.
“Mama's funny,” he said, and reached for the gun again.
The woman was indeed “funny.” She was in the grip of a raging
fever. Her cheeks were violently red and against them the green dye
from her hat made hideous streaks. Her hair had fallen and lay in a
tangle over the pillow, with the rain-soaked hat still clinging to a
strand. As she moved her head the hat moved with it, giving her a
drunken, disreputable appearance. She talked rapidly and angrily,
repeating the names of men, of “Susie” and “Buddy,” stopping to
sing a verse of a popular song, breaking into profanity and laughing
loudly. All human emotions except tears flowed from her, and Peter
stood with his back against the door, uncertain what to do. The
table, tipping suddenly and throwing the boy to the floor, decided
him.
“There, now, you little rascal!” he said, gathering the weeping boy
in his arms.
“You might have broke your arm, or your leg. You oughtn't to
stand on a table you ain't acquainted with, that way.”
“I wanted to fall down,” said the boy, ceasing his tears at once. “I
like to fall off tables I ain't 'quainted with.”
“Well, I just bet you do!” said Peter. “You look like that sort of a
boy to me. Does your ma act funny like this often? You poor young
'un, I hope not!”
“No,” said Buddy.
Peter looked at the woman, studying her. It might have been
possible that she was insane, but the vivid red of her cheeks
convinced him she was delirious with fever. Her hat, askew over one
ear, gave Peter a feeling of shame for her, and he put Buddy down
and walked to the bunk. He saw that the hat pin had made a cruel
scratch along her cheek.
“Now, ma'am,” he said, “I'm just going to help you off with this
hat, because it's getting all mashed up, and it ain't needed in the
house.”
He put out his hand to take the hat, but the woman raised herself
on one arm, and with the other fist struck Peter full in the face, so
that he staggered back against the table, while she swore at him
viciously.
“You hadn't ought to do that,” he said reprovingly; “I wasn't going
to hurt you.”
“I know you!” shouted the woman in a rage. “I know you! You
can't come any of that over me! You took Susie, you beast, but you
don't get Buddy. Let me get at you!”
She tried to clamber from the bunk, but fell back coughing.
“Now, you are absolutely wrong, ma'am,” said Peter earnestly.
“You've got me placed entirely wrong. I ain't the man you think I am
at all. I'm the man that got something for Buddy to eat last night.
You recall that, don't you?”
The woman looked at him craftily.
“Where's Buddy?” she asked.
“I'm—I'm cooking eggs, Mama,” said Buddy promptly, and Peter
turned.
“Well, you little rascal!” cried Peter. “You must be hungry.”
The boy had put the frying-pan on the floor while Peter's back was
turned, and had broken the remaining eggs in it. Much of the omelet
had missed the pan, decorating Buddy's clothes and the floor. The
woman seemed satisfied when she heard the boy's voice, and closed
her eyes, and Peter took the opportunity to kindle the fire and start
the breakfast. He cooked the omelet, the condition of the eggs
suggesting that as the only method of preparing them. The woman
opened her eyes as the pleasant odor filled the cabin, and followed
every movement Peter made.
“I know you! You'll run me out of town, will you?” she cried
suddenly. “All right, I'll go! I'll go! That's what I get for being decent.
You know I 've been decent since you took Susie away from me, and
that's what I get. Run me out—what do I care! I'll go.”
She put her feet to the floor, but another coughing fit threw her
back against the pillow, and when she recovered she burst into
tears.
“Don't take her!” she pleaded. “I'll be decent—don't! I tell you I'll
be decent. Don't I feed her plenty? Don't I dress her warm? Ain't she
going to school like the other kids? Don't take her. Before God, I'll be
decent. Come here, Susie!”
“Now, that's all right, ma'am,” said Peter, as she began coughing
again. “Nobody's going to take nobody whilst I'm in this boat, and
you can make your mind up to that right off. Here's Buddy right
here, eating like a little man, ain't you, Buddy?”
“Poor baby!” said the woman. “Come and let Ma try to carry you
again. Your poor little leg's all tired out, ain't it?”
“It's rested,” said Buddy, “it ain't tired.”
“Tired, oh, God, I'm tired!” she wept. “You'll have to get down,
Buddy. Ma can't carry you another step. God knows when I get to
Riverbank I'll be straight. I've got enough of this. Where's Susie?”
“Now, I wisht, if you can, you'd try to lie quiet, ma'am,” said Peter,
“for you ain't well. Try lying still, and I'll go right to town and get a
doctor to come out and see you. I didn't mean you no harm at all.”
“I know you, you snake!” she cried. “You 're from the Society. You
took my Susie, and you want Buddy. I'll kill you first. Come here,
Buddy!”
The boy went to her obediently, and she drew him on to the bunk
and ran her hand through his white kinks of hair. It seemed to quiet
her to feel him in her arm.
“Now, ma'am,” said Peter, “you see nobody's going to take Buddy
at all, and you can take my word I won't let anybody take him whilst
I'm around. You can depend on that, I'm going to town, now, and I
guess I'd better leave Buddy right here, for you'll be more
comfortable knowing where he is. Don't you worry about nothing at
all until I get back, and if you find the door locked it's just so nobody
can't get in and bother you.”
He looked about the cabin. It was comfortably warm, and he
poured water on the fire. He wished to take no chances with the
woman in her present state. He even took his shot-gun and the
heavy poker as he went out. Buddy watched him with interest.
“Are you stealing that gun?” he asked.
“No, son,” said Peter gravely. “Nobody's stealing anything. You
want to get that idea out of your head. Nobody in this cabin—you,
nor me, nor your ma, would steal anything. Your ma's sick and don't
know what she's doing, but she don't mean no real harm. I guess
she ain't been treated right, and she feels upset about it, but a boy
don't want, ever, to say anything bad about his ma.”
He went out and closed and locked the door. Involuntarily he
glanced at Widow Potter's chimneys. No smoke came from any of
them.
“Now, I just bet that woman has gone and got sick, just when I've
got my hands plumb full!” he said disgustedly. “I've got to go up and
see what's the matter with her, or she might lie there and die and
nobody know a thing about it.”
The cold had frozen the slush into hardness, and Peter cut across
the corn-field. He tried Mrs. Potter's doors and found them all locked
—which was a bad sign, unless she had gone to town while he was
in the shanty-boat—but he knocked on the kitchen door noisily, and
was rewarded after a reasonable wait, by hearing the widow
dragging her feet across the kitchen.
“Is that you, Peter Lane?” she asked.
“Yes'm,” Peter answered.
“Well, it's time you come, I must say,” said the widow, between
groans. “You the only man anywheres near, and you'd leave me die
here as soon as not. You got to feed the cows and the horse and
give the chickens some grain and then hitch up and fetch a doctor
as fast as he can be fetched. I might have laid here for weeks, you
're that unreliable. I'll put the barn key on the kitchen table, and
when the doctor comes I'll be in my bed, if the Lord lets me live that
long. I'll be in it anyway, I dare say, dead or alive, if I can manage to
get to it. And don't you come in until I get out of the way, for I ain't
got a stitch on but my night-gown.”
“I won't,” said Peter, and he didn't. He gave Mrs. Potter time to get
into twenty beds, if she had been so minded, before he opened the
kitchen door a crack and peeped in. He hurried through the chores
as rapidly as he could, feeding the stock and the chickens and
milking the cows. He had eaten part of the omelet Buddy had
commenced, but he thought it only right he should have a satisfying
drink of the warm milk, and he took it. He made a fire in the kitchen
stove and saw that the iron tea-kettle was full of water, and then he
harnessed the horse and drove briskly to town and sought a doctor.
It was the hour when physicians were making their calls and the
first two Peter sought were out, but Dr. Roth, the new doctor who
had come from Willets to build a practice in the larger town,
happened to be in his office over Moore's Drug Store, and he drew
on his coat and gloves while Peter explained the object of his visit.
“I ain't running Mrs. Potter's affairs,” said Peter, “for there ain't no
call for her to have nobody to run them, but, if I was, I'd get a sort
of nurse-woman to go up and take care of her. She's all alone, and I
don't know how sick she is.”
“Then you are not Mr. Potter?” asked the doctor.
“I ain't nothing at all like that,” said Peter. “I'm a shanty-boatman
and my boat is right near the widow's place, and I do odd chores for
her. Old Potter died and went where he belongs quite some time
ago.”
The doctor agreed to pick up Mrs. Skinner on his way, Mrs.
Skinner being one of those plump, useful creatures that are willing
to do nursing, washing, or general housework by the day.
“And another thing, doctor,” said Peter, as the doctor closed his
office door, “whilst you are out there I want you to drop down to the
cove below the widow's house, to a shanty-boat you'll see there, and
take a look at the woman I've got in it. So far as I can make out
she's a mighty sick woman. I'll try to get back before you get
through with the widow, but you'd better take my key, if I shouldn't.
I'll pay whatever it costs to treat her. I'm quite ready to do that.”
“Why not drive out with me?”
“I got some business to transact,” said Peter. “But mebby it might
be just as well to wait till I do get there. She's sort of out of her
mind, and she might think you had come to do her some harm if I
wasn't there.” The business Peter had to transact took him to George
Rapp's Livery, Sale and Feed Stable, and by good luck he found
George in his stuffy, over-heated office, redolent of tobacco smoke,
harness soap and general stable odors. Like all men who brave cold
weather at all hours George liked to be well baked when in-doors.
“Well, George,” said Peter, “since I seen you yesterday
circumstances has occurred to change my mind about making any
trips this year in my boat. For a man of my constitution I've made up
my mind it would be just the worst thing to go south at all. It ain't
the right air for my lungs, and when you got to talking about
chinchillas going out of fashion, I seen it wasn't worth the risk. What
I need is cold climate, George, and it's an unfortunate thing this here
Mississippi River don't run any way but south, because there's one
fur never does go out of style, and that's arctic fox—.”
“All right, I'll give you forty dollars for the boat,” laughed Rapp,
putting his hand in his pocket.
“Now, wait!” said Peter. “I don't want you to think I'm doing this
just because I want to sell the boat, George. That ain't so. I guess
maybe I could raise what money I need to outfit, one way or
another, but I can't afford to pay a caretaker to take care of that
boat whilst I'm away up in Labrador, or Alaska, or wherever I'm
going, and it ain't safe to leave a shanty-boat vacant. Tramps would
run away with her.”
“When do you aim to start north?” asked Rapp, grinning.
“My mind ain't quite made up to that,” said Peter. “I want to look
over a map and see where Labrador is before I start out. I thought
maybe you'd let me remain in the shanty-boat awhile, George.”
“Stay on her as long as you like,” said Rapp. “You can live right in
her all winter. All I want is to get her down to my place right away
before the river closes, so she'll be there when the ducks fly next
spring.”
“Now, that's another thing,” said Peter uneasily. “With all the
preparations I have to make for my trip I'll have to be round town
more or less this winter, and as your place is a long way down river,
I thought maybe you might let the boat stay where she is this
winter, George?”
“You can sleep in my barn any time you want to, Peter,” said Rapp.
“I might as well let that boat lie where she is forever as leave her
there all winter. I want her down there when the ducks fly north. I'll
give you five dollars extra for floating her down, and a dollar or so a
week for taking care of her, but if she can't go down she ain't any
use to me.”
“The way the ice is beginning to run I'd have to start her down to-
day or to-morrow,” said Peter regretfully. “It upsets my plans, but I
got to have some ready cash. If the wind shifts your slough will be
ice-blocked, and there ain't no other safe place to winter a boat
down there.”
“You don't have to sell her if you don't want to,” said Rapp. “You
can put off your trip. Seems like I've heard you put off trips before
now, Peter.”
“Well, I guess I'll sell, George,” said Peter. “Maybe I can trap
muskrats or something down there, I'll make out some how.”
He took the money Rapp handed him and once more Peter was
homeless. He was no better than a tramp now. His plans were vague
as to the sick woman, but forty-five dollars seemed a great deal of
money to Peter. He might hire a room from Mrs. Potter, if that lady
would permit, and have the sick woman cared for there, or he
might, have her brought to town and lodged somewhere, if any one
would take her in. There was no hospital in Riverbank. But he was
happy. Somehow, he did not doubt he could care for the woman, for
he had money in his pocket. To turn her over to the county poor-
farm did not enter his mind. He would not have given a dog that
fate.
He drove to Main Street first and tied his horse before the grocery
that received his infrequent patronage. Here he bought a bag of
flour and six packages of roasted coffee, some bacon and beans,
condensed milk and canned goods, sugar and other necessities, and
then let his eyes wander over the grocer's shelves. He had about
decided to buy a can of green gage plums, as a dainty he loved and
never indulged in, and therefore suitable to buy for the sick woman,
when he saw the small white jars of beef extract, and he bought one
for the sick woman.
While his parcels were being wrapped he picked up the copy of
the Riverbank News that lay on the counter and glanced over it, for
a newspaper was a rare treat for Peter. On the first page his eye
caught the headline “Pass Her Along.” It was at the head of an
article in the News reporter's best humorous style, and told how Lize
Merdin, a notorious character, had been run out of Derlingport, the
next town up the river, and ordered never to return under pain of tar
and feathers. “The gay girl hit the ties in the direction of Riverbank
at a Maud S. pace, yanking her young male offspring after her by
the arm,” wrote the reporter, “and when last seen seemed intending
to favor River-bank with her society, but up to last reports nothing
has been seen of her there. It is a two days' jaunt for a gentle
creature like Lize, but when she hits the River Street depot she will
find Riverbank a regular springboard, and the bounce she will get
here will impress on her receptive mind the fact that Riverbank is not
hankering for her company. Pass her along!”
Peter folded the paper and laid it on the counter. So that was who
his visitor was, and how she came to be tramping the railway track!
He walked to where great golden oranges glowed in a box, near the
door, and chose half a dozen and laid them beside his other
purchases. These too were for the sick woman. Then he selected a
dozen big, red apples and laid them beside the oranges. They were
for Buddy. It was Peter's method of showing his disapproval of the
bad taste of the News'' article.
When Peter reached the widow's farmhouse the doctor's horse still
stood in the bam-yard, and Peter put up his own horse, while
waiting for the doctor to come out.
“How is the widow? Is she bad off?” he asked when the doctor
appeared.
“Mrs. Potter thinks she is a very sick woman, and she isn't a well
one,” said the doctor. “She'll stay in bed a week, anyway. That's
some woman. She has Mrs. Skinner hopping around like a toad in a
skillet already, and she sent orders by me that you are to come and
sleep in the kitchen, to be handy if she has a relapse in the night.
You are to take care of her stock, and saw the rest of her cord
wood, and do the odd chores, and if the pump freezes thaw it out,
before it gets frozen any worse.”
“Now, ain't that too bad!” said Peter. “Just when I've got to get
started down river this afternoon. Things always happen like that,
don't they?”
He led the way across the frozen corn-field to his shanty-boat, and
opened the door. Buddy had managed to turn the table upside down
and was “riding a boat” in it. The doctor gave the boy and the cabin
one glance and had Peter classed as one of the shiftless shanty-
boatmen before he had pulled off his fur gloves. Then he turned to
the woman. She was lying with her face toward the wall. He bent
over her, and when he straightened his back and turned to Peter his
face was very serious.
“Your wife is dead,” he said.
Peter's pale blue eyes stared at the doctor vacantly.
“Dead?” he stammered. “My wife? Why, doctor, she ain't—”
“Yes,” said the doctor, not waiting to hear the conclusion of Peter's
sentence. “She has been dead an hour, at least. A weak heart,
overtaxed, I should say. What do you mean by leaving her in these
damp clothes? I should have been called long ago.”
“Now, ain't that too bad! Ain't that too bad!” said Peter regretfully.
“It ain't nobody's fault but mine. I ought to have gone for you last
night, and there I was, a-sleepin' away as comfortable as could be!”
“She should have been under treatment for some time,” said the
doctor severely. He was a young doctor, and important, and not
inclined to spare the feelings of a mere shanty-boatman. Here he
could be severe, who had to be suave and politic with better people.
He told Peter brutally that the woman had not been properly cared
for; that with her constitution, she should have had delicacies and
comforts and kindness. “If you want my candid opinion, you as
much as killed her,” said Dr. Roth.
He was nettled by Peter's apparent heartlessness, for while Peter
showed that the death had shocked him, he gave way to no outburst
of sorrow such as might be expected from a bereaved husband. But
now deep regret in Peter's eyes touched him.
“I shouldn't have said that,” he said more kindly. “I might not have
been able to do anything. Probably not much after all. But if you
don't want the boy to go the same way, treat him better. You have
him left.”
Peter turned and looked at Buddy who, all unconscious, was
rowing his table boat with a piece of driftwood for oar.
“That's so, aint it?” said Peter. “She's left the boy on my hands,
ain't she? I guess I got to take care of him. Yep, I guess I have!”
When the doctor left the boat, half an hour later, he shook his
head as he closed the door.
“Shiftless and unfeeling!” he muttered to himself. “'Left the boy on
my hands!' Poor boy, I'm sorry for you, with a father like that.”
For he did not see Peter drop on his knees beside the curly
headed child as soon as the door was closed, and he did not see
how Peter took the boy in his arms. He could not hear what Peter
said.
“Buddy boy,” said Peter, “how'd it be if you and Uncle Peter just
sort of snuggled up close and—and et a big, red apple?”
V. BUDDY STEERS THE BOAT
N
OW, don't you fret, Buddy-boy,” said Peter Lane with forced
cheerfulness, “because I'm going to let you do something you
never did before, and that I wouldn't let many boys do. You
are going to help Uncle Peter steer this boat, just like you was
a big man.”
Buddy stood in the skiff which was drawn up on the bank. Peter,
with a rock and his stove-poker, was undoing the frozen knot that
held his shanty-boat to the Rock Island Railway System, and by
means of that to the State of Iowa. He was preparing to take the
shanty-boat down the river to George Rapp's place. His provisions
were aboard, the rag of a sail lay ready to raise should the wind
serve—but it promised not to—and the long sweep that had reposed
on the roof of the boat was on its pin at the bow, if a boat, both
ends of which were identical, could be said to have a bow.
“I like to steer boats,” said Buddy out of his boyish optimism.
“I bet you do,” said Peter, “and a mighty good steerer you'll make.
I don't know how Uncle Peter could get down river if he didn't have
somebody to steer for him. Now, you let me push that skiff into the
water, and we'll row around the boat, and before you know it you'll
be steering like a regular little sailor.”
He threw the mooring rope on to the stern deck of the shanty-
boat, pushed the skiff into the water and poled to the other end of
the boat where the long sweep was held with its blade suspended in
the air, the handle caught under a cleat on the deck. Peter lifted
Buddy to the deck, made the skiff's painter fast, and climbed to the
deck after the boy.
“Now, Buddy, we'll be off in a minute and a half,” he said, “just as
soon as I fix you the way they fix sailors when they steer a ship in a
big storm.”
He drew a ball of seine twine from his pocket, knotted one end
about Buddy's waist, cut off a generous length, and tied the other
end to the cleat.
“Don't!” said Buddy imperatively. “I don't want to be tied, Uncle
Peter.”
“Oh, yes, you do!” said Peter. “Why, a sailor-man couldn't think of
steering a great boat like this unless he was tied to it.”
“No!” shouted Buddy, and Peter stood, holding his end of the cord,
studying the boy.
“Now, Buddy-boy,” he said appealingly. “Don't holler like that. Ain't
I told you we must keep right quiet, because your ma is asleep in
there.”
“But I don't want to be tied!” cried the boy.
“But Uncle Peter's going to be tied, too,” said Peter. “Yes, siree,
Bob! Just as soon as I get this boat out into the river, I'm going to
be tied like you are, and no mistake. You didn't know that, I guess,
did you?”
The boy looked at him doubtfully.
“Are you?” he asked.
“If I say I am, I am,” said Peter. “You can always be right sure that
when Uncle Peter says a thing, he ain't trying to fool you, Buddy. No,
sir! You can just believe what Uncle Peter says, with all your might. I
might lie to grown folks now and then, but I wouldn't lie to a little
boy. No, sir!”
“I ain't a little boy. I'm a big sailor-man!” said the boy. “And you
said I could steer, and I want to steer.”
“Right away you can,” said Peter. “You're going to steer with one
of them skiff oars, but first I've got to row this boat out into the river
a ways so you'll have plenty of room. So don't you fret. You watch
Uncle Peter.”
He made the skiff fast to the boat with a length of rope, took the
oars, and as he rowed, the heavy boat moved slowly from behind
the point out into the river current. Peter towed her well out into the
river before he let the skiff drop back. He meant the shanty-boat to
float sweep first—it was all the same to her—and he fastened the
painter of the skiff to the shanty-boat's stern, and edged his way
along the narrow strip of wood that marked the division between the
hull and the superstructure, holding himself by clasping the edge of
the roof with his cold fingers, and sliding an oar along the roof as he
went. It would have been much simpler and safer to have passed
through the cabin.
To satisfy Buddy, he tied a length of seine cord about his own
waist and fastened the end to the deck ring, and then he lashed
Buddy's oar to a small iron ring. The boy could take a few steps and
splash the water with the oar without falling into the river. Then
Peter took the heavy sweep handle in his hands and the shanty-boat
was under way.
It was time. The rising water had dislodged heavier ice than had
yet come down, and the river was filling with it. The wind, such as
there was, while it blew almost dead upstream, was an aid in that it
swept the floating ice toward the Illinois shore, leaving Peter's
course clear, and an occasional dip of the sweep was sufficient to
keep the boat head-on in the current. The wind made the river
choppy, but the shanty-boat, not having had time to water-log since
Peter put her in the water, floated high.
For a while Buddy steered energetically, splashing the water with
the blade of his oar, but Peter was ready for the first sign of
weariness.
“My! but you are a fine steerer!” he said approvingly. “When you
grow just a bit bigger, Uncle Peter is going to teach you how to row
a boat, and a song to sing while you row it. Hurry up, now, and help
Uncle Peter steer.”
“Let's sing a song to steer a boat,” said Buddy.
“No, I guess we won't sing to-day,” said Peter. “Some other day
we'll sing.”
For Peter and Buddy were not taking the voyage alone. When
Peter, assisted by Mrs. Skinner, had completed the preparations he
felt were due any woman who is making the Great Journey, he
found his money too little to afford her a resting-place in the town,
but Peter Lane could not let one who had knocked at his door,
seeking shelter, go from there to the potter's field, any more than he
could let her boy go to the county farm. While the smart reporter
was wondering whether the power of the press, in his article “Pass
Her Along,” had warned Lize Merdin to take the road to some other
town, and while Dr. Roth was telling of the shanty-boatman whose
wife had died without medical attendance, Peter, by roundabout
questions regarding George Rapp's place, learned of a small country
burying ground not too far from the spot where the shanty-boat was
to be moored for the winter. There he was taking Lize Merdin who,
“decent” at last and forever, lay within the cabin.
Through the long forenoon Peter leaned on the handle of his
sweep, pressing his breast against it now and then to swing the
shanty-boat into the full current. There was no other large boat on
the river. Here and there a fisherman pulled at his oars in a heavy
skiff, or moved slowly from hook to hook of his trot-line, lifting from
time to time a flop-pily protesting fish, but gave the shanty-boat no
more than a glance.
The boat floated past the empty log-boom of the upper mill—
silent for the winter—and past the great lumber piles, still bearing
their covering of sleet. Peter could hear the gun-like slap of board on
board coming from where some man was loading lumber in a freight
car, and occasionally a voice came across the water with startling
distinctness:
“I told him he could chop his own wood, I wouldn't do it.”
“What did he say to that?”
“He said he could get plenty of men that would do it.” He knew
the men must be sitting close to the water's edge, and finally his
sharp eyes made them out below the railway embankment—two
black specks crouched over a small, yellow blaze. He recognized one
voice, the voice of one of the town loafers. The other was strange to
him, probably that of some tramp.
Below that, dwellings fronted the river and the streets of the town
opened in long vistas as the boat came to them, closing again
immediately as it passed. The hissing of a switch-engine, sidetracked
to await the passing of a train soon due, and the clanking of a poker
on the grate bars as the fireman dislodged the clinkers, came to
Peter's ears distinctly. Then the boat slipped past George Rapp's
stable, with its bold red brick front, and as he passed the door, Peter
could hear for an instant the scrape of a horse's hoof in the stall,
although the boat was a good half mile out in the river. Beyond the
stable was the low-lying canning factory, and the row of saloons,
and the hotel, and the wholesale houses, partly hidden by the
railway station on the river side of Front Street, and the packet
warehouse on the river's edge. Then the low rumbling of the dusty
oatmeal mill, cut by the excited voices of small children playing at
the water's edge, became the prominent voice of the town.
From the edge of the river the town rose on two hills, showing
masses of gray, leafless trees, with here and there a house peeping
through. From Peter's boat it looked like the dead corpse of a town,
but he knew every street of it, and he knew Life, with its manifold
business of work and play, was hurrying feverishly there, and he
knew, too, that not one of all those so busy with Life knew he was
floating by, or if knowing it, would have cared.
“That there is a town, Buddy,” said Peter. “That's Riverbank.”
“Is it?” said Buddy, without interest. He gave it but a glance.
“Yes, sir!” said Peter. “That's the town. And it's sort of funny to
think of that whole townful of people rushing around, and going and
coming, and doing things that seem mighty important to them whilst
your—whilst this boat goes floating down this river as calm and
peaceful as if the day of judgment had come and gone again. It's
funny! Probably there ain't man or woman in that whole town but, a
couple of days ago, was better and whiter than—than a certain
party; and now there ain't one of 'em but is all smudgy and soiled if
compared with her. Yes, sir, it's funny!”
He worked his sweep vigorously to carry the shanty-boat to the
east of the large island—the Tow-head—that lay before the lower-
town. The screech of boards passing through the knives of a
planing-mill drowned the rumble of the oatmeal mill. A long
passenger train hurried along the river bank like a hasty worm, and
stopped, panting, at the water tank, and went on again. The boat,
as it passed on the far side of the island, seemed to drop suddenly
into silence, and the chopping of the waves against the hull of the
boat made itself heard.
“Yes, sir, towns is funny!” said Peter. “Now, take the way going
behind this island has wiped that one out. So far as you and me are
concerned, Buddy, that town might be wiped off the earth, and we
wouldn't know. We wouldn't hardly care at all. The folks in it ain't
nothing to us at all, right now. And yet, if I go into that town, I'm
interested in every one of the folks I meet, and it makes me sort of
sick to see any of them cold and hungry. Maybe that's what towns is
for. Maybe I live alone too much. I get so all I think about is sleep
and eat. And eating ain't a bad habit. How'd you like to?”
Buddy was willing. He was willing to eat any time. He ate two
apples and eight crackers, and watched the apple cores float beside
the boat.
“Now, you 're going to fish,” said Peter. “Right here looks like a
good place to fish. Maybe you'll catch a whale. You're just as apt to
catch a whale here as anything else.”
“Ain't Mama hungry?” asked Buddy so suddenly that Peter was
startled.
“Now, hear that!” he said. “Ain't you just as thoughtful! Why, no,
Buddy. It's real nice for you to think of that, but your ma ain't
hungry. She ain't going to be hungry or cold or wet any more, so
don't you bother your little head about it one bit. She don't want
anything but that you should grow up and be a big, fine man.”
“Like you, Uncle Peter?” asked Buddy. “My land, no!” said Peter
impulsively. “I mean, no, indeed. Don't you take me for no model,
Buddy. You want to grow up and be—I'll explain when you get older.
I want you to grow up to be a good man; the kind of man that takes
some interest in other folks. You don't want to be a dried-up old
codger like me.”
“What's a codger?” asked Buddy.
“A codger is a stingy, old, hard-shell cuss—” Peter began. “I guess
you could eat another apple,” he finished, and Buddy did.
The island they were passing was low and fringed with willows,
now bare of leaf, and the shanty-boat kept close in until the current
veered to the Illinois shore, with its water-elms and maples, and
tangles of wild grapevines. Peter knew every mark of this part of the
river well. The current swung from shore to shore, now crossing to
the Iowa side again, where the levee guarded the fields, and now
swinging back to the Illinois bottom-land. For the boy the scene held
little interest; for Peter it was a new chapter of an old story he loved.
Here a giant sycamore he had known since youth had been
blackened and shortened by lightning; there an elm, falling, had
created a new sand-bar on which willows were already finding a
foothold. In time it might be quite an island, or perhaps the next
spring “rise” might sweep it away entirely. A farm-house high on the
Illinois bluff had a new windmill. A sweet-potato bam on the other
side of the river was now a blackened pile of timbers. Rotting sand-
bags told the spot where the river, on its last “rampage” had
threatened to cut the levee.
Buddy fished patiently until even a more interested fisherman
would have given it up as a bad job, and Peter fed him a slice of
bread and butter. For half an hour he watched Peter whittle a nubbin
off the end of the sweep and fashion it into a top, but at the first
attempt to spin it the top bounded into the water, and floated away,
and this suggested boats. For the rest of the afternoon Peter doled
out pieces of the pile of driftwood on the deck, and they went over
the side as boats, Peter naming each after one of the river steamers,
until Buddy himself said, “This is the War Eagle, Uncle Peter,” or
“This is the Long Annie. She'll splash!” Peter did not grudge his
firewood; there was an abundance of driftwood to be had in the
slough for which they were making. The last piece he fitted with a
painter of twine, and Buddy let it drag in the water, enjoying its
“pull,” until the afternoon grew late and the sun set like a huge red
ball that almost reached from bank to bank, and made the river a
path of gold and copper.
As they floated down this glowing way, Peter fed the boy again.
Little as he knew about boys, he knew they must be fed.
“There, now!” he said when the tired boy could eat no more, and
the tired eyes blinked, “I guess you'll sleep like a sailor to-night, and
no mistake, Buddy-boy, and I'm going to give you a treat such as
boys don't often have. You see that great, big, white moon up there?
I'm going to let you go to bed outdoors here, so you can look right
up at that moon and blink your eyes at it, and see if it blinks back at
you. That's what I'm going to do; and whenever you want to, you
can open your eyes and you'll see that big old moon, and those
stars, and Uncle Peter.”
“I don't want to go to sleep,” said Buddy.
“Nobody said you had to go to sleep,” said Peter. “You stay awake,
if you want to, and watch that funny old moon. You'd think we'd
float right past it, but she floats along up there, like a sort of shanty-
boat up in the sky, and the stars follow along like the play boats you
put in the water. You wait until you see the bed Uncle Peter is going
to make for you!”
Buddy fixed his eyes very seriously on the moon, while Peter
unlocked the cabin door and brought out an armful of nets and
blankets and a pillow. Close against the cabin Peter built a bed of
nets and blankets.
“There, now!” he said. “That's some bed! I hope that moon didn't
blink at you. Did she?”
“No, she didn't,” said Buddy. “But she almost did.”
“You crawl in here where you'll be nice and warm, then,” said
Peter. “Uncle Peter has to have somebody to watch that moon and
tell him if she blinks, and you can lie here and look up, like the
sailors do. If she blinks, you tell me, won't you?”
“Yes,” said Buddy seriously, and Peter tucked him in the blankets.
“Uncle Peter,” he said, after a minute, “she blinked.”
“Did she, now?” said Peter, but Buddy said no more. He was
asleep.
But the moon did not blink much. Big and clear and cold she filled
the river valley with white light through which sparkles of frost
glittered, and through the evening and late into the night Peter Lane
stood at his sweep, looking out over the water and thinking his own
strange thoughts. Now and then he stooped and arranged the
blanket over Buddy's shoulders, and now and then he knelt and
dipped water from the river with his cupped hand to pour upon the
sweep-pin lest it creak and awaken the boy. When he swung the
sweep he swung it slowly and carefully, so that only the softest
gurgle of water could be heard above the plashing of the small
waves against the hull.
After midnight the night became intensely cold and Peter's fingers
stiffened on the sweep handle, and he warmed them by hugging
them in his arm-pits. It was about two in the morning when the
shanty-boat slipped into the mouth of the slough that cut George
Rapp's place, and floated more slowly down the narrow winding
water until the soft grating of sand on the bottom of the hull told
Peter she was going aground on a bar. Very quietly, then, Peter
poled the boat close to the low, muddy bank—frozen now—and
made her fast. His voyage was over.
He gathered driftwood and made a fire, well back from the boat
so the light might not disturb the boy's slumber, and sat beside it,
warming his hands and feet, until the sun lighted the east. It was a
full hour after sunrise before Buddy awakened, and then he looked
expectantly at the sky.
“The moon got lost, Uncle Peter,” he said with deep concern.
“Well, we haven't time to bother about any moon this morning,”
said Peter briskly. “This is the day you are going to have a real good
time, because a farmer man lives not so far away from here, and he
has more pigs than you ever heard of, and horses, and cows, and
chickens, and turkeys, and guinea-hens, and I don't know what all,
and I dare say he's wondering why you haven't come to see them by
this time. Yes, sir, he's wondering why Buddy hasn't come yet. And
so are the pigs, and the cows, and the horses, and the chickens, and
the guinea-hens.”
“And the turkeys,” said Buddy, eagerly.
“Yes, siree, Bob!” said Peter. “So we'll hurry up and wash our faces
—”
Buddy scrambled to his feet, all eagerness, and then, with the
sudden changefulness of a small boy, he turned from Peter, toward
the cabin door.
“I want my mama to wash my face!” he said.
Peter Lane put his thin brown hand on Buddy's shoulder.
“Son,” he said, so seriously that Buddy looked up, “do you recall to
mind the other night when you and your ma come a knocking at my
door, and how cold and wet and tired in the leg, and hungry you
was? Well, Buddy, your ma was awful sorry you was so tired out and
all. I guess I couldn't half tell you how sorry she was, son, not in a
week. You took notice how your ma cried whilst you was on that
trip, didn't you?”
“Yes, Mama cried,” said Buddy.
“Yes, she cried,” said Peter. “And the reason she cried was because
she had to take you on that trip that she didn't know what was to be
the end of. That's what she cried for, because she had to let you get
all tired and hungry. And you wouldn't want to make your ma cry
any more, would you?”
“No,” said Buddy simply.
“Well, then,” said Peter, clearing his throat, “your ma she has had
to go on another trip, unexpected, and she says to me, in a way, so
to speak, 'Uncle Peter,' she said, 'here's Buddy, and he just can't go
with me on this trip, and I want you to take him and—and—show
him the pigs and—'”
“And cows,” Buddy prompted. “And horses. And turkeys.”
“Why, yes,” said Peter Lane. “So to speak, that's what she meant,
I guess. The horses and turkeys and the things in the world. So she
went away, and she wouldn't like to have you fret too much just
because she couldn't take you along.”
“All right,” said Buddy, quite satisfied. “Let's go see the pigs, and
the cows, and the turkeys.”
For Peter it was a long day, from the time he carried Buddy on his
shoulder to the farm-house two miles back on the bluff to the time
he stopped for him at the farm-house again, late in the afternoon,
and bore him back to the boat, with a chunk of gingerbread in his
hand, and the farmer's kind wife standing in the door, wiping her
eyes on her blue apron.
When Peter had tucked the boy in the bunk, and had said “Good
night,” he took out his jack-knife to shape a wooden spoon. The boy,
raising his head, watched him, and Peter, looking up, saw the blue
eyes and thought he saw a reproach in them.
“That's so!” he said. “That's so! I forgot it teetotally last night.”
He seated himself on the edge of the bunk and leaned over the
boy, taking the small hands in his.
“I don't know if your ma had you say your prayers to her or not,
Buddy,” he said, “and I don't rightly remember how that 'Our Father'
goes, so we'll get along the best we can 'til I go up to the farm again
and I find out for sure. You just say this after Uncle Peter—'O God,
make us all well and happy to-morrow: Buddy and Uncle Peter, and
Aunt Jane,'”
“And Aunt Jane,” repeated Buddy.
“And—and Mrs. Potter,” said Peter.
“And Mrs. Potter,” said Buddy, “and the pigs, and the horses, and
the cows, and the chickens, and the turkeys.”
“Well—yes!” said Peter. “I guess it won't do any harm to put them
in, although it ain't customary. They might as well be well and happy
as not.—Amen!”
“Uncle Peter,” said the boy suddenly, “will Mama come back?”
“Oh, yes!” said Peter Lane, in his unpreparedness, and then he
opened his mouth again to tell the boy the truth, but he heard the
sigh of satisfaction as Buddy dropped his head on the pillow and
closed his eyes.
“I got to take that lie back to-morrow,” said Peter gravely, but he
never did take it back, never! It stands against him to this day, but it
is quite hidden in the heaped up blossoms of his gentle kindness.
VI. “BOOGE”
N
O, siree, Buddy!” said Peter, shaking his head, “my jack-knife
is one thing you can't have to play with. There's two things a
man oughtn't to trust to anybody; one's his jack-knife and
one's his soul. He ought to keep both of them nice and sharp
and clean. If I been letting my soul get dull and rusty and all nicked
up, it's no sign I'm going to let my jack-knife get that way. What I
got to do is to polish up my soul, and I guess there ain't no better
place to do it than down here where there ain't nobody to bother me
whilst I do it. You hain't no idee what a soul is, but you will have
some day, maybe. I ain't right sure I know that, myself.”
The shanty-boat was moored in Rapp's slough, and had been
there three days. The cold weather, which continued unabated, had
sealed the boat in by spreading a sheet of ice over the surface of the
slough, but Peter did not like the way the river was behaving.
Between the new-formed ice and the shore a narrow strip of water
appeared faster than the cold could freeze it and the ice that
covered the slough cracked now and then in long, irregular lines, all
telling that the river was rising, and rising rapidly. This meant that
the cold snap was merely local and that up the river unseasonably
warm weather had brought rains or a great thaw. There was no
great danger of a long period of high water so late in the season, for
cold waves were sure to freeze the North soon, but the present high
water was not only apt to be inconvenient but actually dangerous for
the shanty-boat. A rise of another foot would cover the lowland, and
if the weather turned warm Buddy and Peter would be cut off from
the hill farms by two miles of water-covered “bottom,” to wade
across which in Peter's thin shoes would be most unpleasant.
The danger was that the wind which now blew steadily toward the
Iowa side and down stream, might force the huge weight of floating
ice into the head of the slough, pushing and pressing it against the
newly formed slough ice and crumbling it—cracked and loosened at
the edges as it was—and thus pile the whole mass irresistibly
against the little shanty-boat. In such an event the boat would either
be overwhelmed by one of those great ice hills that pile up when the
river ice meets an obstruction or, borne before the tons of pressure,
be carried out of the slough with the moving ice and forced down
the river for many miles, perhaps, before Peter could work the boat
into clear water and find shelter behind some point. The water
reached the height of the bank of the slough the third day, and Peter
made every possible preparation to save the boat should the ice
begin to move. There was not much he could do. He unshipped his
small mast and drove a spike in its butt, to use as a pike pole,
stowed his skiff in a safe place between two large trees on the
shore, and saw to the hitch that held the boat, that he might cast off
promptly if the strain became too great.
Peter did not blame himself for the position in which the untimely
rise had placed him. The slough should have been a safe place.
Once let the ice firmly seal the slough—any slough—and all the
weight of all the floating ice of the whole river could not disturb the
boat. When the ice moved out of the river in the spring it would pile
up in a mountain at the head of the island formed by the slough,
choking the entrance, and not until the slough ice softened and
rotted and honeycombed and at last dissolved in the sun, could
anything move the shanty-boat. A big rise in November is rare
indeed.
“But I want your jack-knife, Uncle Peter,” said the boy insistently.
“I want to whittle.”
“And I wouldn't give two cents for a boy that didn't want to
whittle,” said Peter. “A jack-knife is one of the things I've got to get
you when I go up town, and I'll put it right down now.”
From his clock shelf—still lacking its alarm-clock—he took a slip of
paper and a pencil stub. It was his list of goods to be bought, and it
was growing daily.
Coffee
Rubber boots for B
Lard
Sweter for B. red one
Bibel
Sope
Hymn Book
Stokings for B
A. B. C. blocks for B
60 thread. 80 too
Under this he added “Jack-knife for B.” and replaced the list and
pencil. He shook his head as he did so. He had forty cents in his
pocket, and the small pile of wooden spoons that represented his
trading capital had not increased. Getting settled for the winter had
taken most of his time, and while his jack-knife was busy each
evening its work was explained by the toys with which Buddy had
littered the floor. These were crudely whittled and grotesque animals
—a horse, a cow, two pigs and a cat much larger than the cow, all of
clean white maplewood—the beginnings of a complete farm-yard. Of
them all Buddy preferred the “funny cat,” and a funny cat it was.
Peter had his own ideas on the question of when a small boy
should go to bed, but Buddy had other ideas, and Peter was not
sorry to have the boy playing about the cabin long after normal bed-
time. When, on the night of the funeral, it became a matter of plain
decency for Buddy to retire, and he wouldn't, Peter had
compromised by agreeing to whittle a cat if Buddy would go to bed
like a little soldier as soon as the cat was completed. The result was
a very hasty cat. Peter made it with twenty quick motions of his
jack-knife—which was putting up a job on Buddy—but Buddy was
satisfied. The cat had no ears. It might have been a rabbit or a bear,
if Peter had chosen to call it so. It was a most impressionistic cat.
But Buddy loved it.
“Ho! ho!” he laughed, throwing his legs in the air, as was his way
when he was much amused. “That's a funny cat, Uncle Peter. Make
another funny cat.”
“You get to bed, young Buddy!” said Peter. “I said I'd make you a
cat, and you say that's a cat, and you said you'd go to bed, so to
bed you go.”
And to bed Buddy went, with the cat in one hand. Next to Peter
himself Buddy loved the cat more than anything in the world. He
loved to look at the cat. It was the sort of cat that left something to
the imagination. That may be why he liked it. Children are happiest
with the simplest toys.
In Peter's list of prospective purchases the “Bibel” had been put
down because Peter, watching Buddy's curly head as it lay beside
the cat on the pillow of the bunk, had suddenly perceived that a
child is a tremendous responsibility. Buddy's hair did it. He noticed
that Buddy's hair, which had been almost white, had, in the few days
Peter had had him in charge, turned to a dirty gray. He had not
minded Buddy's dirty face and hands—they were normal to a boy—
but the soiled tow hair shamed Peter. Even a mother like Buddy's
had kept that hair as it should be, and Peter was shocked to think he
was already letting the boy deteriorate. If this continued Buddy
would soon be no better than himself—a shiftless (as per Mrs.
Potter), careless, no-account scrub of a boy, and it made Peter
wince. He thought too much of the freckled face, and the little tow-
head to have that happen.
It made him down-hearted for a minute, but Peter was never
despondent long. If the cold chilled his bones it suggested a trip to
New Orleans or Cuba, and he instantly forgot the cold in building
one detail of the trip on another, until he had circumnavigated the
globe and decided he would go to neither one nor the other, but to
Patagonia or Peru.
If that was the way Buddy's hair looked after a few days under the
old Peter, then Peter must turn over so many new leaves he would
be in the second volume. He would be a tramp no more. He would
have money and a home and be a respected citizen, with a black silk
watch fob, and go to church—and that suggested the “Bibel.” With
“sope” and the Scripture on his list Peter felt less guilty.
The “hymn book” was a sequential thought. Bibles and hymn
books go hand in hand. Peter meant to start Buddy right, and he
was going to begin with himself. He meant, now, to be a good man,
and a prosperous one—perhaps a millionaire. His idea was a little
vague, including a shadowy Prince Albert coat and a silk hat, but he
thought a Bible and a hymn book, at least, ought to be in the stock
of a man that was going to be what Peter meant to be. The A. B. C.
blocks on the list were to be the cornerstone of Buddy's education,
and on them Peter visioned a gilded structure of college and other
vague things of culture. Peter's plans were always dreamlike, and all
the more beautiful for that reason. He was forever about to trap
some elusive chinchilla on some unattainable Amazon.
“Make a funny cat, Uncle Peter,” said Buddy when he was
convinced he could not coax the jack-knife from Peter.
“Oh, no!” said Peter. “You've got one funny cat. I guess one funny
cat like that is enough in one family. Uncle Peter has to keep his eye
out to watch if the ice is going to move this morning. He can't make
cats.”
“Make a funny dog,” said Buddy promptly. “Well, Buddy, if I make
you a funny dog,” said Peter, “will you be a good boy and play with it
and let Uncle Peter get some stove wood aboard the boat?”
“Yes, Uncle Peter,” said Buddy. He had the smile of a cherub and
the splendid mendacity of youth. He would promise anything. Only
the most unreasonable expect a boy to keep such promises, but it
does the heart good to hear them.
Peter took a thin slice of maplewood from his pile, and seated
himself on his bunk. He held the wood at arm's length until he saw a
dog in it, and Buddy leaned against his knee.
“Now, this is going to be a real funny dog,” said Peter, as his keen
blade sliced through the wood as easily as a yacht's prow cuts the
water. “S'pose we put his head up like that, hey, like he was laughing
at the moon?” Two deft turns of the blade. “And we'll have this
funny dog a-sitting on his hind legs, hey?” Four swift turns of the
knife.
“That's a funny dog!” laughed Buddy. “Give me the funny dog.”
“Now, don't you be so impatient,” said Peter. “This is going to be a
real funny dog, if you wait a minute. There, now, he's scratching
that ear with this paw, and he's ready to shake hands with this one,
and”—two or three quick turns of the knife—“there he is, cocking his
eye up at you, like he was tickled to death to see you had your face
washed this morning without howling no more than you did.”
“Ho, ho!” laughed Buddy; “that's a funny dog! Now make a funny
rabbit, Uncle Peter.”
“No, siree, Buddy!” said Peter sternly.
“You promised to be good if I made a dog, so you just sit down
and be it. When a body makes a promise, he'd always ought to keep
it, if it ain't too inconvenient. So you stay right here and don't touch
the stove or anything, whilst I get in some wood. That's my duty,
and when a man has a duty to do he ought to do it, unless
something he'd rather do turns up meanwhile.”
Peter took his shot-gun. There was always a chance of a shot at a
rabbit. He crossed the plank to the shore, but there was not much
burnable driftwood along the slough. What there was had been
frozen in the ice, and Peter pushed his way up to where the slough
made a sharp turn. In such places abundant driftwood was thrown
against the willows at high water, and Peter set his gun against a log
and filled his arms. He was stooping for a last stick when a cotton-
tail darted from under the tangled pile and zig-zagged into the
willow thicket.
Peter dropped his wood and grasped his gun and ran after the
rabbit, but his foot turned on a slimy log and he went down. He had
a bad fall.
For a man just beginning a career of superhuman goodness Peter
swore quite freely as he sat on the log and hugged his ankle,
grinning with pain. It relieved his mind, and the rubbing he gave his
ankle relieved the pain, and he felt better all through when he put
his foot to the ground and tried it. He limped a little, but he grinned,
too, for he knew Buddy would be amused to see Uncle Peter limping
“like Buddy.” Buddy could see something funny in anything.
Peter limped back to his driftwood, but as he pushed through the
leafless willows he dropped his gun and hobbled hastily toward the
shanty-boat. Forced by the weight of river ice pressing in at the
Welcome to our website – the perfect destination for book lovers and
knowledge seekers. We believe that every book holds a new world,
offering opportunities for learning, discovery, and personal growth.
That’s why we are dedicated to bringing you a diverse collection of
books, ranging from classic literature and specialized publications to
self-development guides and children's books.
ebookbell.com