This paper describes a formal theory of undirected (labeled) graphs in higher-order logic developed using the mechanical theoremproving system HOL. It formalizes and proves theorems about such notions as the empty graph, single-node graphs, finite graphs, subgraphs, adjacency relations, walks, paths, cycles, bridges, reachability, connectedness, acyclicity, trees, trees oriented with respect to roots, oriented trees viewed as family trees, top-down and bottom-up inductions in a family tree, distributing associative and commutative operations with identities recursively over subtrees of a family tree, and merging disjoint subgraphs of a graph. The main contribution of this work lies in the precise formalization of these graph-theoretic notions and the rigorous derivation of their properties in higher-order logic. This is significant because there is little tradition of formalization in graph theory due to the concreteness of graphs. A companion paper [2] describes the application of this formal graph theory to the mechanical verification of distributed algorithms.
[1]
M. Gordon.
HOL: A Proof Generating System for Higher-Order Logic
,
1988
.
[2]
Shimon Even,et al.
Graph Algorithms
,
1979
.
[3]
de Ng Dick Bruijn.
Checking mathematics with computer assistance
,
1991
.
[4]
M. Gordon,et al.
Introduction to HOL: a theorem proving environment for higher order logic
,
1993
.
[5]
W. Wong.
A Simple Graph Theory And Its Application In Railway Signaling
,
1991,
1991., International Workshop on the HOL Theorem Proving System and Its Applications.
[6]
Adrian Segall,et al.
Distributed network protocols
,
1983,
IEEE Trans. Inf. Theory.
[7]
Pierre A. Humblet,et al.
A Distributed Algorithm for Minimum-Weight Spanning Trees
,
1983,
TOPL.
[8]
Ching-Tsun Chou.
Mechanical Verification of Distributed Algorithms in Higher-Order Logic
,
1995,
Comput. J..