# Formal Proof The Four- Color Theorem

Save this PDF as:

Size: px
Start display at page:

## Transcription

1 Formal Proof The Four- Color Theorem Georges Gonthier The Tale of a Brainteaser Francis Guthrie certainly did it, when he coined his innocent little colo puzzle in He managed to embarrass successively his mathematician brother, his brother s professor, Augustus de Morgan, and all of de Morgan s visitors, who couldn t solve it; the Royal Society, who only realized ten years later that Alfred Kempe s 1879 solution was wrong; and the three following generations of mathematicians who couldn t fix it [19]. Even Appel and Haken s 1976 triumph [2] had a hint of defeat: they d had a computer do the proof for them! Perhaps the mathematical controversy around the proof died down with their book [3] and with the elegant 1995 revision [13] by Robertson, Saunders, Seymour, and Thomas. However something was still amiss: both proofs combined a textual argument, which could reasonably be checked by inspection, with computer code that could not. Worse, the empirical evidence provided by running code several times with the same input is weak, as it is blind to the most common cause of computer error: programmer error. For some thirty years, computer science has been working out a solution to this problem: formal program proofs. The idea is to write code that describes not only what the machine should do, but also why it should be doing it a formal proof of correctness. The validity of the proof is an objective mathematical fact that can be checked by a different program, whose own validity can be ascertained empirically because it does run on many inputs. The main technical difficulty is that formal proofs are very difficult to produce, Georges Gonthier is a senior researcher at Microsoft Research Cambridge. His address is microsoft.com. even with a language rich enough to express all mathematics. In 2000 we tried to produce such a proof for part of code from [13], just to evaluate how the field had progressed. We succeeded, but now a new question emerged: was the statement of the correctness proof (the specification) itself correct? The only solution to that conundrum was to formalize the entire proof of the Four-Color Theorem, not just its code. This we finally achieved in While we tackled this project mainly to explore the capabilities of a modern formal proof system at first, to benchmark speed we were pleasantly surprised to uncover new and rather elegant nuggets of mathematics in the process. In hindsight this might have been expected: to produce a formal proof one must make explicit every single logical step of a proof; this both provides new insight in the structure of the proof, and forces one to use this insight to discover every possible symmetry, simplification, and generalization, if only to cope with the sheer amount of imposed detail. This is actually how all of sections Combinatorial Hypermaps (p. 1385) and The Formal Theorem (p. 1388) came about. Perhaps this is the most promising aspect of formal proof: it is not merely a method to make absolutely sure we have not made a mistake in a proof, but also a tool that shows us and compels us to understand why a proof works. In this article, the next two sections contain background material, describing the original proof and the Coq formal system we used. The following two sections describe the sometimes new mathematics involved in the formalization. Then the next two sections go into some detail into the two main parts of the formal proof: reducibility and 1382 Notices of the AMS Volume 55, Number 11

2 unavoidability; more can be found in [8]. The Coq code (available at the same address) is the ultimate reference for the intrepid, who should bone up on Coq [4, 16, 9] beforehand. The Puzzle and Its Solution Part of the appeal of the four color problem is that its statement Theorem 1. The regions of any simple planar map can be colored with only four colors, in such a way that any two adjacent regions have different colors. can on the one hand be understood even by schoolchildren as four colors suffice to color any flat map and on the other hand be given a faithful, precise mathematical interpretation using only basic notions in topology, as we shall see in the section The Formal Theorem. The first step in the proof of the Four-Color Theorem consists precisely in getting rid of the topology, reducing an infinite problem in analysis to a finite problem in combinatorics. This is usually done by constructing the dual graph of the map, and then appealing to the compactness theorem of propositional logic. However, as we shall see below, the graph construction is neither necessary nor sufficient to fully reduce the problem to combinatorics. Therefore, we ll simply restrict the rest of this outline to connected finite maps whose regions are finite polygons and which are bridgeless: every edge belongs to exactly two polygons. Every such polyhedral map satisfies the Euler formula N E+F= 2 where N, E, and F are respectively the number of vertices (nodes), sides (edges), and regions (faces) in the map. The next step consists in further reducing to cubic maps, where each node is incident to exactly three edges, by cove each node with a small polygon. In a cubic map we have 3N = 2E, which combined with the Euler formula gives us that the average number of sides (or arity) of a face is 2E/F= 6 12/F. The proof proceeds by induction on the size of the map; it is best explained as a refinement of Kempe s flawed 1879 proof [12]. Since its average arity is slightly less than 6, any cubic polyhedral map must contain ann-gon withn<6, i.e., one of the following map fragments. Each such configuration consists of a complete kernel face surrounded by a of partial faces. Erasing an edge of a digon or triangle yields a smaller map, which is four-colorable by induction. This colo uses at most three colors for the, leaving us a free color for the kernel face, so the original map is also four-colorable. Erasing an appropriate pair of opposite edges disposes of the square configuration similarly. In the pentagon case, however, it is necessary to modify the inductive colo to free a color for the kernel face. Kempe tried to do this by locally inverting the colors inside a two-toned maximal contiguous group of faces (a Kempe chain ). By planarity, chains cannot cross, and Kempe enumerated their arrangements and showed that consecutive inversions freed a color. Alas, it is not always possible to do consecutive inversions, as inverting one chain can scramble other chains. It took ten years to spot this error and almost a century to fix it. The correct proof gives up on pentagons and turns to larger reducible configurations for which Kempe s argument is sound. The first such configuration, which has -size 6, was discovered by Birkhoff in 1913 [5]: Birkhoff also showed that all configurations with -size less than 6 are reducible except the pentagon; thus any minimal counter-example to the theorem must be internally 6-connected (we ll refer to this as the Birkhoff lemma ). As we ll see below, showing that a given configuration is reducible is fairly straightforward, but very laborious: the number of cases to consider increases geometrically to about 20,000,000 for -size 14, and 137 of the 633 configurations used in the proof [13] are of that size. The final part of the proof shows that reducible configurations are unavoidable, using a refinement of the average-arity argument published by Heesch in 1969 [11]. The idea is to look for reducible configurations near faces whose arity averaged over their 2-neighborhood is less than 6; the averaging is done by transfe (discharging) fractions of arities between adjacent faces according to a small set of local patterns: the discharged arity of a faceais δ(a)=δ(a)+ b(t ba T ab ) December 2008 Notices of the AMS 1383

3 whereδ(a) is the original arity ofa, andt ba is the arity fraction transfered from b. Thus the average discharged arity remains 6 12/F < 6. The proof enumerates all internally 6-connected 2-neighborhoods whose discharged arity is less than 6. This enumeration is fairly complex, but not as computationally intensive as the reducibility checks: the search is heavily constrained as the neighborhoods consist of two disjoint concentric s of 5 + -gons. Indeed in [13] reducible configurations are always found inside the 2-neighborhoods, and the central face is a 7 + -gon. Coq and the Calculus of Inductive Constructions The Coq formal proof system (or assistant) [4, 16], which we used for our work is based on a version of higher-order logic, the Calculus of inductive Constructions (CiC) [6] whose specific features propositions as types, dependent types, and reflection all played an important part in the success of our project. We have good reason to leave the familiar, dead-simple world of untyped first-order logic for the more exotic territory of Type Theory [10, 4]. In first-order logic, higher-level ( meta ) arguments are second-class citizens: they are interpreted as informal procedures that should be expanded out to primitive inferences to achieve full rigor. This is fine in a non-formal proof, but rapidly becomes impractical in a formal one because of ramping complexity. Computer automation can mitigate this, but type theory supplies a much more satisfactory solution, levelling the playing field by providing a language that can express meta-arguments. This can indeed be observed even with the simplest first-order type system. Consider the commutativity of integer addition, x,y N, x+y=y+x There are two hidden premises, x N and y N, that need to be verified separately every time the law is used. This seems innocuous enough, except x and y may be replaced by huge expressions for which thex,y Npremises are not obvious, even for machine automation. By contrast, the typed version of commutativity x,y : Nat, x+y=y+x can be applied to any expression A+B without further checks, because the premises follow from the way A and B are written. We are simply not allowed to write drivel such as 1+true, and consequently we don t need to worry about its existence, even in a fully formal proof we have proof by notation. Our formal proof uses this, and much more: proof types, dependent types, and reflection, as we will now explain. Proof types are types that encode logic (they re also called propositions-as-types ). The encoding exploits a strong similarity between type and logic rules, which is most apparent when both are written in natural deduction style (see [10] in this issue), e.g., consider function application and modus ponens (MP): f :A B x :A f x :B A B A B The rules are identical if one ignores the terms to the left of :. However these terms can also be included in the correspondence, by interpreting x :A and x provesa rather than x is of typea. In the above we have that f x proves B because x proves A and f proves A B, so the applicationf x on the left denotes the MP deduction on the right. This holds in general: proof types are inhabited by proof objects. CiC is entirely based on this correspondence, which goes back to Curry and Howard. CiC is a formalism without a formal logic, a sensible simplification: as we ve argued we need types anyway, so why add a redundant logic? The availability of proof objects has consequences both for robustness, as they provide a practical means of sto and thus independently checking proofs, and for expressiveness, as they let us describe and prove algorithms that create and process proofs meta-arguments. The correspondence in CiC is not limited to Herbrand term and minimal logic; it interprets most data and programming constructs common in computer science as useful logical connectives and deduction rules, e.g., pairs as and x :A y :B x,y :A B A B A B u :A B u.1 :A u.2 :B A B A B tagged unions as or, conditional (if-then-else) as proof by cases, recursive definitions as proof by induction, and so on. The correspondence even works backwards for the logical rule of generalization: we have Γ B[x] x not free inγ Γ x,b[x]) Γ,x :A t[x] :B[x] Γ (funx:a t[x]) :( x :A,B[x]) The proof/typing context Γ is explicit here because of the side condition. Generalization is interpreted by a new, stronger form of function definition that lets the type of the result depend on a formal parameter. Note that the nondependent case interprets the Deduction Theorem. The combination of these dependent types with proof types leads to the last feature of CiC we wish 1384 Notices of the AMS Volume 55, Number 11

4 to highlight in this section, computational reflection. Because of dependent types, data, functions and therefore (potential) computation can appear in types. The normal mathematical practice is to interpret such meta-data, replacing a constant by its definition, instantiating formal parameters, selecting a case, etc. CiC supports this through a typing rule that lets such computation happen transparently: t :A A βιδζ B t :B This rule states that the βιδζ-computation rules of CiC yield equivalent types. It is a subsumption rule: there is no record of its use in the proof term t. Aribitrary long computations can thus be elided from a proof, as CiC has an ι-rule for recursion. This yields an entirely new way of proving results about specific calculations: computing! Henri Poincaré once pointed out that one does not prove 2+2 = 4, one checks it. CiC can do just that: if erefl : x,x=xis the reflexivity axiom, and the constants +, 2, 4 denote a recursive function that computes integer addition, and the representation of the integers 2 and 4, respectively, thenerefl 4 proves 2+2=4 because 2+2=4 and 4 = 4 are just different denotations of the same proposition. While the Poincaré example is trivial, we would probably not have completed our proof without computational reflection. At the heart of the reducibility proof, we define Definition check_reducible cf : bool :=... Definition cfreducible cf : Prop := c_reducible (cf cf) (cfcontract cf). where check_reducible cf calls a complex reducibility decision procedure that works on a specific encoding of configurations, while c_reducible r c is a logical predicate that asserts the reducibility of a configuration map with r and deleted edges (contract) c; cf cf denotes the of the map represented by cf. We then prove Lemma check_reducible_valid : forall cf : config, check_reducible cf = true -> cfreducible cf. This is the formal partial correctness proof of the decision procedure; it s large, but nowhere near the size of an explicit reducibility proof. With the groundwork done, all reducibility proofs become trivial, e.g., Lemma cfred232 : cfreducible (Config H 2 H 13 Y 5 H 10 H 1 H 1 Y 3 H 11 Y 4 H 9 H 1 Y 3 H 9 Y 6 Y 1 Y 1 Y 3 Y 1 Y Y 1 Y). Proof. apply check_reducible_valid. vm_compute; reflexivity. Qed. In CiC, this 20,000,000-cases proof, is almost as trivial as the Poincaré 2+2 = 4: apply the correctness lemma, then reflexivity up to (a big!) computation. Note that we make essential use of dependent and proof types, as the cubic map computed by cf is passed implicitly inside the type of the returned. cf mediates between a st representation of configurations, well suited to algorithms, and a more mathematical one, better suited for abstract graph theory, which we shall describe in the next section. Combinatorial Hypermaps Although the Four-Color Theorem is superficially stated in analysis, it really is a result in combinatorics, so common sense suggests that the bulk of the proof should use solely combinatorial structure. Oddly, most accounts of the proof use graphs homeomorphically embedded in the plane or sphere, dragging analysis into the combinatorics. This does allow appealing to the Jordan Curve Theorem in a pinch, but this is hardly helpful if one does not already have the Jordan Curve Theorem in store. Moreover, graphs lack the data to do geometric traversals, e.g., traversing the first neighborhood of a face in clockwise order; it is necessary to go back to the embedding to recover this information. This will not be easy in a fully formal proof, where one does not have the luxury of appealing to pictures or folklore when cornered. The solution to this problem is simply to add the missing data. This yields an elegant and highly symmetrical structure, the combinatorial hypermap [7, 17]. Definition 1. A hypermap is a triple of functions e,n,f on a finite setd of darts that satisfy the triangular identitye n f = 1. Note the circular symmetry of the identity: n,f,e and f,e,n are also hypermaps. Obviously, the condition forces all the functions to be permutations of d, and fixing any two will determine the third; indeed hypermaps are often defined this way. We choose to go with symmetry instead, because this lets us use our constructions and theorems three times over. The symmetry also clearly demonstrates that the dual graph construction plays no part in the proof. We have found that the relation between hypermaps and plain polyhedral maps is best depicted by drawing darts as points placed at the corners of the polygonal faces, and using arrows for the three functions, with the cycles of the f function going counter-clockwise inside each face, and those of the n function around each node. On a plain map each edge has exactly two endpoints, and consequently each e cycle is a double-ended arrow cutting diagonally across then f n f rectangle that straddles an edge (Figure 1). December 2008 Notices of the AMS 1385

5 e n f dart node edge map Figure 1. A hypermap. The Euler formula takes a completely symmetrical form for hypermaps E+N+F=D+ 2C wheree,n, andf are the number of cycles of the e,n, andf permutations,d andc are the number of darts and of connected components of e n f, respectively. We define planar hypermaps as those that satisfy this generalized Euler formula, since this property is readily computable. Much of the proof can be carried out using only this formula. In particular Benjamin Werner found out that the proof of correctness of the reducibility part was most naturally carried out using the Euler formula only. As the other unavoidability part of the proof is explicitly based on the Euler formula, one could be misled into thinking that the whole theorem is a direct consequence of the Euler formula. This is not the case, however, because unavoidability also depends on the Birkhoff lemma. Part of the proof of the latter requires cutting out the submap inside an arbitrary simple of 2 to 5 faces. Identifying the inside of a is exactly what the Jordan Curve Theorem does, so we worked out a combinatorial analogue. We even show that our hypermap Jordan property is actually equivalent to the hypermap Euler formula. The naïve transposition of the Jordan Curve Theorem from the continuous plane to discrete maps fails. Simply removing a from a hypermap, even a connected one, can leave behind any number of components: both the inside and the outside may turn out to be empty or disconnected. A possible solution, proposed by Stahl [14], is to consider paths (called chords below) that go from one face of the to another (loops are allowed). The Jordan Curve Theorem then tells us that such paths cannot start from the inner half of a face, and end at the outer half of a face. Using the fixed local structure of hypermaps, inner and outer can be defined locally, by adhe to a certain traversal pattern. Specifically, we exclude theefunction and fix opposite directions of travel onnandf: we define contour paths as dart paths for the n 1 f relation. A contour cycle follows the inside border of a face, clockwise, listing explicitly all the darts in this border. Note that n or n 1 steps from a contour cycle always go inside the contour, while f or f 1 steps always go outside. Therefore the Jordan property for hypermap contours is: any chord must start and end with the same type of step. This can be further simplified by splicing the and cycle, yielding Theorem 2. (the Jordan Curve Theorem for hypermaps): A hypermap is planar if and only if it has no duplicate-free Möbius contours of the form Thex y condition rules out contour cycles; note however that we do allowy=n(x). As far as we know this is a new combinatorial definition of planarity. Perhaps it has escaped attention because a crucial detail, reversing one of the permutations, is obscured for plain maps (wheree 1 =e), or when conside only cycles. Since this Jordan property is equivalent to the Euler identity, it is symmetrical with respect to the choice of the two permutations that define contours, despite appearances. Oddly, we know no simple direct proof of this fact. We show that our Jordan property is equivalent to the Euler identity by induction on the number of darts. At each induction step we remove some dart z from the hypermap structure, adjusting the permutations so that they avoid z. We can simply suppress z from two of the permutations (e.g., n and f), but then the triangular identity of hypermaps leaves us no choice for the third permutation (e here), and we have to either merge twoe-cycles or split ane-cycle: z Walkup e e n f 1386 Notices of the AMS Volume 55, Number 11

6 fullmap disk patch remainder contourcycle Figure 2. Patching hypermaps. Following [14, 18], we call this operation the Walkup transformation. The figure on the previous page illustrates the Walkup e transformation; by symmetry, we also have Walkup n and Walkup f transformations. In general, the three transformations yield different hypermaps, and all three prove to be useful. However, in the degenerate case wherez is fixed bye,n, orf, all three variants coincide. A Walkup transformation that is degenerate or that merges cycles does not affect the validity of the hypermap Euler equatione+n+f=d+2c. A splitting transformation preserves the equation if and only if it disconnects the hypermap; otherwise it increments the left hand side while decrementing the right hand side. Since the empty hypermap is planar, we see that planar hypermaps are those that maximize the sum E+N+F for given C and D and that a splitting transformation always disconnects a planar hypermap. To show that planar maps satisfy the Jordan property we simply exhibit a series of transformations that reduce the contour to a 3-dart cycle that violates the planarity condition. The converse is much more delicate, since we must apply reverse Walkup e transformations that preserve both the existence of a contour and avoid splits (the latter involves a combinatorial analogue of the flooding proof of the original Euler formula). We also use all three transformations in the main part of proof. Since at this point we are restricting ourselves to plain maps, we always perform two Walkup transformations in succession; the first one always has the merge form, the second one is always degenerate, and always yields a plain map. Each variant of this double Walkup transformation has a different geometric interpretation and is used in a different part of the proof: The double Walkup f transformation erases an edge in the map, merging the two adjoining faces. It is used in the main proof to apply a contract. The double Walkup e transformation concatenates two successive edges in the map; we apply it only at nodes that have only two incident edges, to remove edge subdivisions left over after erasing edges. The double Walkup n transformation contracts an edge in the map, merging its endpoints. It is used to prove the correctness of the reducibility check. Contours provide the basis for a precise definition of the patch operation, which pastes two maps along a border to create a larger map. This operation defines a three-way relation between a map, a configuration submap, and the remainder of that map. Surprisingly, the patch operation (Figure 2) is not symmetrical: For one of the submaps, which we shall call the disk map, the is anecycle (a hyperedge). No two darts on this cycle can belong to the same face. For the other submap, the remainder map, the is an arbitraryncycle. Let us point out that although the darts on the border s were linked by theeandnpermutations in the disk and remainder map, respectively, they are not directly connected in the full map. However, because theecycle is simple in the disk map, it is a subcycle of a contour that delineates the entire disk map. This contour is preserved by the construction, which is thus reversible: the disk map can be extracted, using the Jordan property, from this contour. The patch operation preserves most of the geometrical properties we are concerned with (planar, plane, cubic, 4-colorable; bridgeless requires a side condition). December 2008 Notices of the AMS 1387

7 Step 1 Steps 2-3 Step4 Step 5 Steps 6-7 Step8 Figure 3. Digitizing the four color problem. The Formal Theorem Polishing off our formal proof by actually proving Theorem 1 came as an afterthought, after we had done the bulk of the work and proved Theorem four_color_hypermap : forall g : hypermap, planar_bridgeless g -> four_colorable g. We realized we weren t quite done, because the deceptively simple statement hides fairly technical definitions of hypermaps, cycle-counting, and planarity. While formal verification spares the skeptical from having to wade through the complete proof, he still needs to unravel all the definitions to convince himself that the result lives up to its name. The final theorem looks superficially similar to its combinatorial counterpart Variable R : real_model. Theorem four_color : forall m : map R, simple_map m -> map_colorable 4 m. but it is actually quite different: it is based on about 40 lines of elementary topology, and about 100 lines axiomatizing real numbers, rather than 5,000 lines of sometimes arcane combinatorics. The 40 lines define simple point topology onr R, then simply drill down on the statement of Theorem 1: Definition 2. A planar map is a set of pairwise disjoint subsets of the plane, called regions. A simple map is one whose regions are connected open sets. Definition 3. Two regions of a map are adjacent if their respective closures have a common point that is not a corner of the map. Definition 4. A point is a corner of a map if and only if it belongs to the closures of at least three regions. The definition of corner allows for contiguous points, to allow for boundaries with accumulation points, such as the curve sin 1/x. The discretization construction (Figure 3) follows directly from the definitions: Pick a noncorner border point for each pair of adjacent regions (1); pick disjoint neighborhoods of these points (2), and snap them to a grid (3); pick a simple polyomino approximation of each region, that intersects all border rectangles (4), and extend them so they meet (5); pick a grid that covers all the polyominos (6) and construct the corresponding hypermap (7); construct the contour of each polyomino, and use the converse of the hypermap patch operation to cut out each polyomino (8). It is interesting to note that the final hypermap is planar because the full grid hypermap of step 7 is, simply by arithmetic: the map for an m n rectangle has(m+1)(n+ 1) nodes,mn+1 faces, m(n+1)+(m+1)n edges, hence N +F E = (m+1)(n+1)+(mn+1) m(n+1) (m+1)n = 2 and the Euler formula holds. The Jordan Curve Theorem plays no part in this Notices of the AMS Volume 55, Number 11

8 Checking Reducibility Although reducibility is quite demanding computationally, it also turned out to be the easiest part of the proof to formalize. Even though we used more sophisticated algorithms, e.g., multiway decision diagrams (MDDs) [1], this part of the formal proof was completed in a few part-time months. By comparison, the graph theory in section Combinatorial Hypermaps (p. 1385) took a few years to sort out. The reducibility computation consists in iterating a formalized version of the Kempe chain argument, in order to compute a lower bound for the set of colos that can be fitted to match a colo of the configuration border, using color swaps. Each configuration comes with a set of one to four edges, its contract [13], and the actual check verifies that the lower bound contains all the colos of the contract map obtained by erasing the edges of contract. The computation keeps track of both colos and arrangement of Kempe chains. To cut down on symmetries, their representation uses the fact that four-colo the faces of a cubic map is equivalent to three-colo its edges; this result goes back Tait in 1880 [15]. Thus a colo is represented by a word on the alphabet{1, 2, 3}. Kempe inversions for edge colos amount to inverting the edge colors along a two-toned path (a chain) incident to edges. Since the map is cubic the chains for any given pair of colors (say 2 and 3) are always disjoint and thus define an outerplanar graph, which is readily represented by a bracket (or Dyck) word on a 4-letter alphabet: traversing the edges counterclockwise, write down a if the edge is not part of a chain because it has color 1 a[if the edge starts a new chain a ] 0 (resp. ] 1 ) if the edge is the end of a chain of odd (resp. even) length As the chain graph is outerplanar, brackets for the endpoints of any chain match. We call such a four-letter word a chromogram. Since we can flip simultaneously any subset of the chains, a given chromogram will match any colo that assigns color 1 to edges and those only, and assigns different colors to edges with matching brackets if and only if the closing bracket is a ] 1. We say that such a colo is consistent with the chromogram. Let us say that a colo of the remainder map is suitable if it can be transformed, via a sequence alternating chain inversions and a cyclic permutationρ of{1, 2, 3}, into a colo of the configuration. A configuration will thus be reducible when all the colos of its contract map are suitable. The reducibility check consists in computing an upper bound of the set of nonsuitable colos and checking that it is disjoint from the set of contract colos. The upper bound is the limit of a decreasing sequenceξ 0,...,Ξ i,... starting with the setξ 0 of all valid colos; we simultaneously compute upper boundsλ 0,...,Λ i,... of the set of chromograms not consistent with any suitable colo. Each iteration starts with a set Θ i of suitable colos, taking the set of colos of the configuration for Θ 0. (1) We getλ i+1 by removing all chromograms consistent with someθ Θ i fromλ i (2) We remove fromξ i all colosξ that are not consistent with any λ Λ i+1 ; this is sound since any colo that induces ξ will also induce a chromogramγ Λ i+1. As γ is consistent with both ξ and a suitable colo θ, there exists a chain inversion that transformsξ intoθ. (3) Finally we get Θ i+1 by applyingρ andρ 1 to the colos that were deleted fromξ i ; we stop if there were none. We use 3- and 4-way decision diagrams to represent the various sets: a{1, 2, 3} edge-labeled tree represents a set of colos, and a {,[,] 0,] 1 } edge-labeled tree represents a set of chromograms. In the MDD for Ξ i, the leaf reached by following the branch labeled with some ξ Ξ i stores the number of matching λ Λ i, so that step 2 is in amortized constant time (each consistent pair is considered at most twice); the MDD structures are optimized in several other ways. The correctness proof consists in showing that the optimized MDD structure computes the right sets, mainly by stepping through the functions, and in showing the existence of the chromogram γ in step 2 above. Following a suggestion by B. Werner, we do this with a single induction on the remainder map, without developing any of the informal justification of the procedure: in this case, the formal proof turns out to be simpler than the informal proof that inspired it! The 633 configuration maps are the only link between the reducibility check and the main proof. A little analysis reveals that each of these maps can be built inside-out from a simple construction program. We cast all the operations we need, such as computing the set of colos, the contract map, or even compiling an occurrence check filter, as nonstandard interpretations of this program (the standard one being the map construction). This approach affords both efficient implementation and straightforward correctness proofs based on simulation relations between the standard and nonstandard interpretations. The standard interpretation yields a pointed remainder map, i.e., a plain map with a distinguished dartxwhich is cubic except for the cycle December 2008 Notices of the AMS 1389

9 n (x). The construction starts from a single edge and applies a sequence of steps to progressively build the map. It turns out we only need three types of steps. base map R step Y step before step added bystep boundary (before/after) selected dart (before/after) H step The text of a construction program always starts with an H and ends with a Y, but is executed right to left. Thus the program H R 3 Y Y constructs the square configuration: H R 3 base map The Ys produce the first two nodes; R 3 swings the reference point around so the H can close off the kernel. We compile the configuration contract by locally rewriting the program text (Figure 4) into a program that produces a map with the same colos as the contract map (Figure 5). The compilation uses three new kinds of steps: U step Y K step Y A step These contract steps are more primitive than the H and Y steps; indeed, we can define the H, Y, and K steps in terms of U and a rotation variant N of K: we have K=R 1 N R, hence Y=N U and H=N Y. Thus we only need to give precise hypermap constructions for the base map and the U, N, and A steps (Figure 7). Proving Unavoidability We complete the proof of the Four-Color Theorem proof by showing that in an internally 6-connected planar cubic bridgeless map, every 2-neighborhood either contains the kernel of one of the 633 reducible configurations from [13], or has averaged (discharged) arity at least 6. Following [13], we do this by combinatorial search, making successive complementary assumptions about the arity of the various faces of the neighborhood, until the accumulated assumptions imply the desired conclusion. The search is partly guided by data extracted from [13] (from both the text and the machine-checked parts), partly automated via reflection (similarly to the reducibility check). We accumulate the assumptions in a data structure called a part, which can be interpreted as the set of 2-neighborhoods that satisfy all assumptions. While we embrace the search structure of [13], we improve substantially its implementation. Indeed, this is the part of the proof where the extra precision of the formal proof pays off most handsomely. Specifically, we are able to show that if an internally 6-connected map contains a homomorphic copy of a configuration kernel, then the full configuration (comprising kernel and ) is actually embedded in the map. The latter condition is required to apply the reducibility of the configuration but is substantially harder to check for. The code supplied with [13] constructs a candidate kernel isomorphism then rechecks its output, along with an additional technical wellpositioned condition; its correctness relies on the structure theorem for 2-neighborhoods from [5], and on a folklore theorem ([13] theorem (3.3), p. 12) for extending the kernel isomorphism to an embedding of the entire configuration. In constrast, our reflected code merely checks that arities in the part and the configuration kernel are consistent along a face-spanning tree (called a quiz) of the edge graph of the configuration map. The quiz tree is traversed simultaneously in both maps, checking the consistency of the arity at each step, then usingn f 1 andf n 1 to move to the left and right child. This suffices because The traversal yields a mapping φ from the kernelk to the mapm matching the part, which respectsf, and respectse on the spanning tree. BecauseM andk are both cubic,φrespects e on all ofk. BecauseK has radius 2 and faces of the configuration C have arity at most 6, φ maps e arrows faithfully onk (hence is bijective). Because C and M are both cubic, and C is chordless (only contiguous faces are adjacent, 1390 Notices of the AMS Volume 55, Number 11

10 no step no step U step A step no step no step U step K step K step no step Y step Y step edgeerased by the contract node erased by the contract Figure 4. Contract interpretation. b c c b c b ρ ±1 b ρ 1 b c b ρ ±1 b ρ ±1 b b b c b c c b b c b c Figure 5. Colo interpretation. U step K step (b c) A step (c=c ) Y step H step (b c) H step (b=c) kernel kernel kernel kernel tree node traversed outer outer outer not traversed outer kernel kernel kernel kernel outer kernel Figure 6. Quiz tree interpretation. base map A step added by the step U step N step deleted by the step unchanged by the step selected dart (old/new) Figure 7. Standard (hypermap) interpretation. December 2008 Notices of the AMS 1391

11 spoke u l u hub u spoke u r h l u u l hat h h r u r u l u r spoke f 0 r spoke h l h r f 2 l fan f 1 r f 1 l fan f 2 r f 0 l h hat f 0 r f 1 l left quiz step right quizstep subpart darts unreachable dart Figure 8. The hypermap of a subpart. because each has arity at least 3), φ extends to an embedding ofc inm. The last three assertions are proved by induction over the size of the disk map of a contour containing a counter-example edge. For the third assertion, the contour is inm and spans at most 5 faces because it is the image of a simple non-cyclic path ink. Its interior must be empty for otherwise it would have to be a single pentagon (becausem is internally 6-connected) that would be the image of a face adjacent to 5 kernel and 2 faces, contrary to the arity constraint. We check the radius and arity conditions explicitly for each configuration, along with the sparsity and triad conditions on its contract [13]; the arity conditions are new to our proof. The checks and the quiz tree selection are formulated as nonstandard interpretations; the quiz interpretation (Figure 6) runs programs left-to-right, backwards. Because our proof depends only on the Birkhoff lemma (which incidentally we prove by reflection using a variant of the reducibility check), we do not need cartwheels as in [13] to represent 2-neighborhoods; the unavoidability check uses only parts and quizzes. We also use parts to represent the arity discharging rules, using functions that intersect, rotate, and reflect (mirror) parts, e.g., a discharging rule applies to a partp if and only if its part subsumesp. The search always starts by fixing the arity of the central hub face, so a part is really a counterclockwise list of subparts that each store a range of arities for each face of a sector of the neighborhood, comprising a single spoke face adjacent to the hub, a single hat face adjacent to the spoke and the preceding subpart, and 0 to 3 fan faces adjacent only to the spoke. There are only 15 possible ranges for arities, as there is no need to distinguish between arities greater than 9 (unconstrained faces range over [5, + )). It is easy to simulate a quiz traversal on a part, because only 14 of the possible 27 darts of a subpart are reachable (Figure 8). Finally, we translate the combinatorial search trees from [13] into an explicit proof script that refines a generic part until the lower bound on the discharged arity can be broken down into a sum of lower bounds (a hubcap) on the fractions of arity discharged from one or two spokes, which can be handled by a reflected decision procedure, or the part is a symmetry variant of a previous case. This shallow embedding allowed us to create our own scripts for pentagons and hexagons that were not covered by the computer proof in [13]. References [1] S. B. Akers, Binary decision diagrams, IEEE Trans. Computers 27(6) (1978), [2] K. Appel and W. Haken, Every map is four colourable, Bulletin of the American Mathematical Society 82 (1976), [3], Every map is four colourable, [4] Yves Bertot and Pierre Castéran, Interactive Theorem Proving and Program Development, Coq Art: The Calculus of Inductive Constructions, Sper-Verlag, [5] G. D. Birkhoff, The reducibility of maps, American Journal of Mathematics 35 (1913), [6] T. Coquand and G. Huet, The calculus of constructions, Information and Computation 76(2/3) (1988), [7] R. Cori, Un code pour les graphes planaires et ses applications, Astérisque 27 (1975). [8] G. Gonthier, A computer-checked proof of the four-colour theorem. [9] G. Gonthier and A. Mahboubi, A small scale reflection extension for the Coq system, INRIA Technical report Notices of the AMS Volume 55, Number 11

12 [10] T. Hales, Formal proofs, Notices of the AMS, this issue. [11] H. Heesch, Untersuchungen zum Vierfarbenproblem, [12] A. B. Kempe, On the geographical problem of the four colours, American Journal of Mathematics 2(3) (1879), [13] N. Robertson, D. Sanders, P. Seymour, and R. Thomas, The four-colour theorem, J. Combinatorial Theory, Series B 70 (1997), [14] S. Stahl, A combinatorial analog of the Jordan curve theorem, J. Combinatorial Theory, Series B 35 (1983), [15] P. G. Tait, Note on a theorem in the geometry of position, Trans. Royal Society of Edinburgh 29 (1880), [16] The Coq development team, The Coq Proof Assistant Reference Manual, version 8.1, [17] W. T. Tutte, Duality and trinity, Colloquium Mathematical Society Janos Bolyai 10 (1975), [18] D. W. Walkup, How many ways can a permutation be factored into two n-cycles?, Discrete Mathematics 28 (1979), [19] R. Wilson, Four Colours Suffice, Allen Lane Science, December 2008 Notices of the AMS 1393

### Coloring Eulerian triangulations of the projective plane

Coloring Eulerian triangulations of the projective plane Bojan Mohar 1 Department of Mathematics, University of Ljubljana, 1111 Ljubljana, Slovenia bojan.mohar@uni-lj.si Abstract A simple characterization

### Mathematics for Computer Science/Software Engineering. Notes for the course MSM1F3 Dr. R. A. Wilson

Mathematics for Computer Science/Software Engineering Notes for the course MSM1F3 Dr. R. A. Wilson October 1996 Chapter 1 Logic Lecture no. 1. We introduce the concept of a proposition, which is a statement

### vertex, 369 disjoint pairwise, 395 disjoint sets, 236 disjunction, 33, 36 distributive laws

Index absolute value, 135 141 additive identity, 254 additive inverse, 254 aleph, 466 algebra of sets, 245, 278 antisymmetric relation, 387 arcsine function, 349 arithmetic sequence, 208 arrow diagram,

### Chapter 7: Products and quotients

Chapter 7: Products and quotients Matthew Macauley Department of Mathematical Sciences Clemson University http://www.math.clemson.edu/~macaule/ Math 42, Spring 24 M. Macauley (Clemson) Chapter 7: Products

### Lecture 3. Mathematical Induction

Lecture 3 Mathematical Induction Induction is a fundamental reasoning process in which general conclusion is based on particular cases It contrasts with deduction, the reasoning process in which conclusion

### COLORED GRAPHS AND THEIR PROPERTIES

COLORED GRAPHS AND THEIR PROPERTIES BEN STEVENS 1. Introduction This paper is concerned with the upper bound on the chromatic number for graphs of maximum vertex degree under three different sets of coloring

### Formal Languages and Automata Theory - Regular Expressions and Finite Automata -

Formal Languages and Automata Theory - Regular Expressions and Finite Automata - Samarjit Chakraborty Computer Engineering and Networks Laboratory Swiss Federal Institute of Technology (ETH) Zürich March

### 136 CHAPTER 4. INDUCTION, GRAPHS AND TREES

136 TER 4. INDUCTION, GRHS ND TREES 4.3 Graphs In this chapter we introduce a fundamental structural idea of discrete mathematics, that of a graph. Many situations in the applications of discrete mathematics

### Partitioning edge-coloured complete graphs into monochromatic cycles and paths

arxiv:1205.5492v1 [math.co] 24 May 2012 Partitioning edge-coloured complete graphs into monochromatic cycles and paths Alexey Pokrovskiy Departement of Mathematics, London School of Economics and Political

### Lecture 4 DISCRETE SUBGROUPS OF THE ISOMETRY GROUP OF THE PLANE AND TILINGS

1 Lecture 4 DISCRETE SUBGROUPS OF THE ISOMETRY GROUP OF THE PLANE AND TILINGS This lecture, just as the previous one, deals with a classification of objects, the original interest in which was perhaps

### Lattice Point Geometry: Pick s Theorem and Minkowski s Theorem. Senior Exercise in Mathematics. Jennifer Garbett Kenyon College

Lattice Point Geometry: Pick s Theorem and Minkowski s Theorem Senior Exercise in Mathematics Jennifer Garbett Kenyon College November 18, 010 Contents 1 Introduction 1 Primitive Lattice Triangles 5.1

### Interactive Math Glossary Terms and Definitions

Terms and Definitions Absolute Value the magnitude of a number, or the distance from 0 on a real number line Additive Property of Area the process of finding an the area of a shape by totaling the areas

### Chapter 6: Colouring Graphs

17 Coloring Vertices Chapter 6: Colouring Graphs 1. Sections 17-19: Qualitative (Can we color a graph with given colors?) Section 20: Quantitative (How many ways can the coloring be done?) 2. Definitions:

### Catalan Numbers. Thomas A. Dowling, Department of Mathematics, Ohio State Uni- versity.

7 Catalan Numbers Thomas A. Dowling, Department of Mathematics, Ohio State Uni- Author: versity. Prerequisites: The prerequisites for this chapter are recursive definitions, basic counting principles,

### MA651 Topology. Lecture 6. Separation Axioms.

MA651 Topology. Lecture 6. Separation Axioms. This text is based on the following books: Fundamental concepts of topology by Peter O Neil Elements of Mathematics: General Topology by Nicolas Bourbaki Counterexamples

### You know from calculus that functions play a fundamental role in mathematics.

CHPTER 12 Functions You know from calculus that functions play a fundamental role in mathematics. You likely view a function as a kind of formula that describes a relationship between two (or more) quantities.

### (Refer Slide Time: 1:41)

Discrete Mathematical Structures Dr. Kamala Krithivasan Department of Computer Science and Engineering Indian Institute of Technology, Madras Lecture # 10 Sets Today we shall learn about sets. You must

### 6. GRAPH AND MAP COLOURING

6. GRPH ND MP COLOURING 6.1. Graph Colouring Imagine the task of designing a school timetable. If we ignore the complications of having to find rooms and teachers for the classes we could propose the following

### = 2 + 1 2 2 = 3 4, Now assume that P (k) is true for some fixed k 2. This means that

Instructions. Answer each of the questions on your own paper, and be sure to show your work so that partial credit can be adequately assessed. Credit will not be given for answers (even correct ones) without

### Basic Notions on Graphs. Planar Graphs and Vertex Colourings. Joe Ryan. Presented by

Basic Notions on Graphs Planar Graphs and Vertex Colourings Presented by Joe Ryan School of Electrical Engineering and Computer Science University of Newcastle, Australia Planar graphs Graphs may be drawn

### discuss how to describe points, lines and planes in 3 space.

Chapter 2 3 Space: lines and planes In this chapter we discuss how to describe points, lines and planes in 3 space. introduce the language of vectors. discuss various matters concerning the relative position

### DO NOT RE-DISTRIBUTE THIS SOLUTION FILE

Professor Kindred Math 04 Graph Theory Homework 7 Solutions April 3, 03 Introduction to Graph Theory, West Section 5. 0, variation of 5, 39 Section 5. 9 Section 5.3 3, 8, 3 Section 7. Problems you should

### CHAPTER 7 GENERAL PROOF SYSTEMS

CHAPTER 7 GENERAL PROOF SYSTEMS 1 Introduction Proof systems are built to prove statements. They can be thought as an inference machine with special statements, called provable statements, or sometimes

### Planar Graphs and Graph Coloring

Planar Graphs and Graph Coloring Margaret M. Fleck 1 December 2010 These notes cover facts about graph colorings and planar graphs (sections 9.7 and 9.8 of Rosen) 1 Introduction So far, we ve been looking

### 2.3 Scheduling jobs on identical parallel machines

2.3 Scheduling jobs on identical parallel machines There are jobs to be processed, and there are identical machines (running in parallel) to which each job may be assigned Each job = 1,,, must be processed

### 11 Ideals. 11.1 Revisiting Z

11 Ideals The presentation here is somewhat different than the text. In particular, the sections do not match up. We have seen issues with the failure of unique factorization already, e.g., Z[ 5] = O Q(

### INCIDENCE-BETWEENNESS GEOMETRY

INCIDENCE-BETWEENNESS GEOMETRY MATH 410, CSUSM. SPRING 2008. PROFESSOR AITKEN This document covers the geometry that can be developed with just the axioms related to incidence and betweenness. The full

### A CONSTRUCTION OF THE UNIVERSAL COVER AS A FIBER BUNDLE

A CONSTRUCTION OF THE UNIVERSAL COVER AS A FIBER BUNDLE DANIEL A. RAMRAS In these notes we present a construction of the universal cover of a path connected, locally path connected, and semi-locally simply

### WHAT ARE MATHEMATICAL PROOFS AND WHY THEY ARE IMPORTANT?

WHAT ARE MATHEMATICAL PROOFS AND WHY THEY ARE IMPORTANT? introduction Many students seem to have trouble with the notion of a mathematical proof. People that come to a course like Math 216, who certainly

### Planar Tree Transformation: Results and Counterexample

Planar Tree Transformation: Results and Counterexample Selim G Akl, Kamrul Islam, and Henk Meijer School of Computing, Queen s University Kingston, Ontario, Canada K7L 3N6 Abstract We consider the problem

### Midterm Practice Problems

6.042/8.062J Mathematics for Computer Science October 2, 200 Tom Leighton, Marten van Dijk, and Brooke Cowan Midterm Practice Problems Problem. [0 points] In problem set you showed that the nand operator

### A Mathematical Analysis of The Generalized Oval Track Puzzle

Rose- Hulman Undergraduate Mathematics Journal A Mathematical Analysis of The Generalized Oval Track Puzzle Samuel Kaufmann a Volume 12, no. 1, Spring 2011 Sponsored by Rose-Hulman Institute of Technology

### 2. Methods of Proof Types of Proofs. Suppose we wish to prove an implication p q. Here are some strategies we have available to try.

2. METHODS OF PROOF 69 2. Methods of Proof 2.1. Types of Proofs. Suppose we wish to prove an implication p q. Here are some strategies we have available to try. Trivial Proof: If we know q is true then

### A Second Course in Mathematics Concepts for Elementary Teachers: Theory, Problems, and Solutions

A Second Course in Mathematics Concepts for Elementary Teachers: Theory, Problems, and Solutions Marcel B. Finan Arkansas Tech University c All Rights Reserved First Draft February 8, 2006 1 Contents 25

### Min-cost flow problems and network simplex algorithm

Min-cost flow problems and network simplex algorithm The particular structure of some LP problems can be sometimes used for the design of solution techniques more efficient than the simplex algorithm.

### On planar regular graphs degree three without Hamiltonian cycles 1

On planar regular graphs degree three without Hamiltonian cycles 1 E. Grinbergs Computing Centre of Latvian State University Abstract. Necessary condition to have Hamiltonian cycle in planar graph is given.

### An Innocent Investigation

An Innocent Investigation D. Joyce, Clark University January 2006 The beginning. Have you ever wondered why every number is either even or odd? I don t mean to ask if you ever wondered whether every number

### 1.1 Logical Form and Logical Equivalence 1

Contents Chapter I The Logic of Compound Statements 1.1 Logical Form and Logical Equivalence 1 Identifying logical form; Statements; Logical connectives: not, and, and or; Translation to and from symbolic

### Metric Spaces. Chapter 1

Chapter 1 Metric Spaces Many of the arguments you have seen in several variable calculus are almost identical to the corresponding arguments in one variable calculus, especially arguments concerning convergence

### 3. Examples of discrete probability spaces.. Here α ( j)

3. EXAMPLES OF DISCRETE PROBABILITY SPACES 13 3. Examples of discrete probability spaces Example 17. Toss n coins. We saw this before, but assumed that the coins are fair. Now we do not. The sample space

### Basic Concepts of Point Set Topology Notes for OU course Math 4853 Spring 2011

Basic Concepts of Point Set Topology Notes for OU course Math 4853 Spring 2011 A. Miller 1. Introduction. The definitions of metric space and topological space were developed in the early 1900 s, largely

### 3. Equivalence Relations. Discussion

3. EQUIVALENCE RELATIONS 33 3. Equivalence Relations 3.1. Definition of an Equivalence Relations. Definition 3.1.1. A relation R on a set A is an equivalence relation if and only if R is reflexive, symmetric,

### Notes on polyhedra and 3-dimensional geometry

Notes on polyhedra and 3-dimensional geometry Judith Roitman / Jeremy Martin April 23, 2013 1 Polyhedra Three-dimensional geometry is a very rich field; this is just a little taste of it. Our main protagonist

### Induction. Margaret M. Fleck. 10 October These notes cover mathematical induction and recursive definition

Induction Margaret M. Fleck 10 October 011 These notes cover mathematical induction and recursive definition 1 Introduction to induction At the start of the term, we saw the following formula for computing

### 1 Point Inclusion in a Polygon

Comp 163: Computational Geometry Tufts University, Spring 2005 Professor Diane Souvaine Scribe: Ryan Coleman Point Inclusion and Processing Simple Polygons into Monotone Regions 1 Point Inclusion in a

### 5. GRAPHS ON SURFACES

. GRPHS ON SURCS.. Graphs graph, by itself, is a combinatorial object rather than a topological one. But when we relate a graph to a surface through the process of embedding we move into the realm of topology.

### In mathematics, there are four attainment targets: using and applying mathematics; number and algebra; shape, space and measures, and handling data.

MATHEMATICS: THE LEVEL DESCRIPTIONS In mathematics, there are four attainment targets: using and applying mathematics; number and algebra; shape, space and measures, and handling data. Attainment target

### Two General Methods to Reduce Delay and Change of Enumeration Algorithms

ISSN 1346-5597 NII Technical Report Two General Methods to Reduce Delay and Change of Enumeration Algorithms Takeaki Uno NII-2003-004E Apr.2003 Two General Methods to Reduce Delay and Change of Enumeration

### Revised Version of Chapter 23. We learned long ago how to solve linear congruences. ax c (mod m)

Chapter 23 Squares Modulo p Revised Version of Chapter 23 We learned long ago how to solve linear congruences ax c (mod m) (see Chapter 8). It s now time to take the plunge and move on to quadratic equations.

### COUNTING INDEPENDENT SETS IN SOME CLASSES OF (ALMOST) REGULAR GRAPHS

COUNTING INDEPENDENT SETS IN SOME CLASSES OF (ALMOST) REGULAR GRAPHS Alexander Burstein Department of Mathematics Howard University Washington, DC 259, USA aburstein@howard.edu Sergey Kitaev Mathematics

### Theorem 5. The composition of any two symmetries in a point is a translation. More precisely, S B S A = T 2

Isometries. Congruence mappings as isometries. The notion of isometry is a general notion commonly accepted in mathematics. It means a mapping which preserves distances. The word metric is a synonym to

### 1. Relevant standard graph theory

Color identical pairs in 4-chromatic graphs Asbjørn Brændeland I argue that, given a 4-chromatic graph G and a pair of vertices {u, v} in G, if the color of u equals the color of v in every 4-coloring

### TOPOLOGY: THE JOURNEY INTO SEPARATION AXIOMS

TOPOLOGY: THE JOURNEY INTO SEPARATION AXIOMS VIPUL NAIK Abstract. In this journey, we are going to explore the so called separation axioms in greater detail. We shall try to understand how these axioms

### GROUPS ACTING ON A SET

GROUPS ACTING ON A SET MATH 435 SPRING 2012 NOTES FROM FEBRUARY 27TH, 2012 1. Left group actions Definition 1.1. Suppose that G is a group and S is a set. A left (group) action of G on S is a rule for

### Labeling outerplanar graphs with maximum degree three

Labeling outerplanar graphs with maximum degree three Xiangwen Li 1 and Sanming Zhou 2 1 Department of Mathematics Huazhong Normal University, Wuhan 430079, China 2 Department of Mathematics and Statistics

### HOLES 5.1. INTRODUCTION

HOLES 5.1. INTRODUCTION One of the major open problems in the field of art gallery theorems is to establish a theorem for polygons with holes. A polygon with holes is a polygon P enclosing several other

### Elementary Number Theory We begin with a bit of elementary number theory, which is concerned

CONSTRUCTION OF THE FINITE FIELDS Z p S. R. DOTY Elementary Number Theory We begin with a bit of elementary number theory, which is concerned solely with questions about the set of integers Z = {0, ±1,

### Graphs without proper subgraphs of minimum degree 3 and short cycles

Graphs without proper subgraphs of minimum degree 3 and short cycles Lothar Narins, Alexey Pokrovskiy, Tibor Szabó Department of Mathematics, Freie Universität, Berlin, Germany. August 22, 2014 Abstract

### Axiom A.1. Lines, planes and space are sets of points. Space contains all points.

73 Appendix A.1 Basic Notions We take the terms point, line, plane, and space as undefined. We also use the concept of a set and a subset, belongs to or is an element of a set. In a formal axiomatic approach

### The Basics of Graphical Models

The Basics of Graphical Models David M. Blei Columbia University October 3, 2015 Introduction These notes follow Chapter 2 of An Introduction to Probabilistic Graphical Models by Michael Jordan. Many figures

### Sets and Cardinality Notes for C. F. Miller

Sets and Cardinality Notes for 620-111 C. F. Miller Semester 1, 2000 Abstract These lecture notes were compiled in the Department of Mathematics and Statistics in the University of Melbourne for the use

### Planar Graph and Trees

Dr. Nahid Sultana December 16, 2012 Tree Spanning Trees Minimum Spanning Trees Maps and Regions Eulers Formula Nonplanar graph Dual Maps and the Four Color Theorem Tree Spanning Trees Minimum Spanning

### Generic Polynomials of Degree Three

Generic Polynomials of Degree Three Benjamin C. Wallace April 2012 1 Introduction In the nineteenth century, the mathematician Évariste Galois discovered an elegant solution to the fundamental problem

### Introduction to Graph Theory

Introduction to Graph Theory Allen Dickson October 2006 1 The Königsberg Bridge Problem The city of Königsberg was located on the Pregel river in Prussia. The river divided the city into four separate

### Surface bundles over S 1, the Thurston norm, and the Whitehead link

Surface bundles over S 1, the Thurston norm, and the Whitehead link Michael Landry August 16, 2014 The Thurston norm is a powerful tool for studying the ways a 3-manifold can fiber over the circle. In

### MAT2400 Analysis I. A brief introduction to proofs, sets, and functions

MAT2400 Analysis I A brief introduction to proofs, sets, and functions In Analysis I there is a lot of manipulations with sets and functions. It is probably also the first course where you have to take

### Planarity Planarity

Planarity 8.1 71 Planarity Up until now, graphs have been completely abstract. In Topological Graph Theory, it matters how the graphs are drawn. Do the edges cross? Are there knots in the graph structure?

### CS268: Geometric Algorithms Handout #5 Design and Analysis Original Handout #15 Stanford University Tuesday, 25 February 1992

CS268: Geometric Algorithms Handout #5 Design and Analysis Original Handout #15 Stanford University Tuesday, 25 February 1992 Original Lecture #6: 28 January 1991 Topics: Triangulating Simple Polygons

### Homework Exam 1, Geometric Algorithms, 2016

Homework Exam 1, Geometric Algorithms, 2016 1. (3 points) Let P be a convex polyhedron in 3-dimensional space. The boundary of P is represented as a DCEL, storing the incidence relationships between the

### Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay

Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay Lecture - 17 Shannon-Fano-Elias Coding and Introduction to Arithmetic Coding

### Discrete Mathematics and Probability Theory Fall 2009 Satish Rao,David Tse Note 11

CS 70 Discrete Mathematics and Probability Theory Fall 2009 Satish Rao,David Tse Note Conditional Probability A pharmaceutical company is marketing a new test for a certain medical condition. According

### ALGEBRA. sequence, term, nth term, consecutive, rule, relationship, generate, predict, continue increase, decrease finite, infinite

ALGEBRA Pupils should be taught to: Generate and describe sequences As outcomes, Year 7 pupils should, for example: Use, read and write, spelling correctly: sequence, term, nth term, consecutive, rule,

### Construction and Properties of the Icosahedron

Course Project (Introduction to Reflection Groups) Construction and Properties of the Icosahedron Shreejit Bandyopadhyay April 19, 2013 Abstract The icosahedron is one of the most important platonic solids

### 4. CLASSES OF RINGS 4.1. Classes of Rings class operator A-closed Example 1: product Example 2:

4. CLASSES OF RINGS 4.1. Classes of Rings Normally we associate, with any property, a set of objects that satisfy that property. But problems can arise when we allow sets to be elements of larger sets

### INTRODUCTION TO PROOFS: HOMEWORK SOLUTIONS

INTRODUCTION TO PROOFS: HOMEWORK SOLUTIONS STEVEN HEILMAN Contents 1. Homework 1 1 2. Homework 2 6 3. Homework 3 10 4. Homework 4 16 5. Homework 5 19 6. Homework 6 21 7. Homework 7 25 8. Homework 8 28

### Chapter I Logic and Proofs

MATH 1130 1 Discrete Structures Chapter I Logic and Proofs Propositions A proposition is a statement that is either true (T) or false (F), but or both. s Propositions: 1. I am a man.. I am taller than

### Automata and Languages

Automata and Languages Computational Models: An idealized mathematical model of a computer. A computational model may be accurate in some ways but not in others. We shall be defining increasingly powerful

### Graph Theory Problems and Solutions

raph Theory Problems and Solutions Tom Davis tomrdavis@earthlink.net http://www.geometer.org/mathcircles November, 005 Problems. Prove that the sum of the degrees of the vertices of any finite graph is

### 1 Plane and Planar Graphs. Definition 1 A graph G(V,E) is called plane if

Plane and Planar Graphs Definition A graph G(V,E) is called plane if V is a set of points in the plane; E is a set of curves in the plane such that. every curve contains at most two vertices and these

### COMBINATORIAL PROPERTIES OF THE HIGMAN-SIMS GRAPH. 1. Introduction

COMBINATORIAL PROPERTIES OF THE HIGMAN-SIMS GRAPH ZACHARY ABEL 1. Introduction In this survey we discuss properties of the Higman-Sims graph, which has 100 vertices, 1100 edges, and is 22 regular. In fact

### Fundamentals of Media Theory

Fundamentals of Media Theory ergei Ovchinnikov Mathematics Department an Francisco tate University an Francisco, CA 94132 sergei@sfsu.edu Abstract Media theory is a new branch of discrete applied mathematics

### Mathematical Research Letters 1, 249 255 (1994) MAPPING CLASS GROUPS ARE AUTOMATIC. Lee Mosher

Mathematical Research Letters 1, 249 255 (1994) MAPPING CLASS GROUPS ARE AUTOMATIC Lee Mosher Let S be a compact surface, possibly with the extra structure of an orientation or a finite set of distinguished

### Solutions to Exercises 8

Discrete Mathematics Lent 2009 MA210 Solutions to Exercises 8 (1) Suppose that G is a graph in which every vertex has degree at least k, where k 1, and in which every cycle contains at least 4 vertices.

### CHAPTER 3 Numbers and Numeral Systems

CHAPTER 3 Numbers and Numeral Systems Numbers play an important role in almost all areas of mathematics, not least in calculus. Virtually all calculus books contain a thorough description of the natural,

### Graph Theory. Introduction. Distance in Graphs. Trees. Isabela Drămnesc UVT. Computer Science Department, West University of Timişoara, Romania

Graph Theory Introduction. Distance in Graphs. Trees Isabela Drămnesc UVT Computer Science Department, West University of Timişoara, Romania November 2016 Isabela Drămnesc UVT Graph Theory and Combinatorics

### 4. TILING AND DISSECTION 4.2. Scissors Congruence

What is Area? Despite being such a fundamental notion of geometry, the concept of area is very difficult to define. As human beings, we have an intuitive grasp of the idea which suffices for our everyday

### COT5405 Analysis of Algorithms Homework 3 Solutions

COT0 Analysis of Algorithms Homework 3 Solutions. Prove or give a counter example: (a) In the textbook, we have two routines for graph traversal - DFS(G) and BFS(G,s) - where G is a graph and s is any

### The Geometer s Sketchpad: Non-Euclidean Geometry & The Poincaré Disk

The Geometer s Sketchpad: Non-Euclidean Geometry & The Poincaré Disk Nicholas Jackiw njackiw@kcptech.com KCP Technologies, Inc. ICTMT11 2013 Bari Overview. The study of hyperbolic geometry and non-euclidean

### Introduction to Topology

Introduction to Topology Tomoo Matsumura November 30, 2010 Contents 1 Topological spaces 3 1.1 Basis of a Topology......................................... 3 1.2 Comparing Topologies.......................................

### A simple algorithm with no simple verication

A simple algorithm with no simple verication Laszlo Csirmaz Central European University Abstract The correctness of a simple sorting algorithm is resented, which algorithm is \evidently wrong" at the rst

### Sudoku puzzles and how to solve them

Sudoku puzzles and how to solve them Andries E. Brouwer 2006-05-31 1 Sudoku Figure 1: Two puzzles the second one is difficult A Sudoku puzzle (of classical type ) consists of a 9-by-9 matrix partitioned

### Fairness in Routing and Load Balancing

Fairness in Routing and Load Balancing Jon Kleinberg Yuval Rabani Éva Tardos Abstract We consider the issue of network routing subject to explicit fairness conditions. The optimization of fairness criteria

### Students in their first advanced mathematics classes are often surprised

CHAPTER 8 Proofs Involving Sets Students in their first advanced mathematics classes are often surprised by the extensive role that sets play and by the fact that most of the proofs they encounter are

### Lecture 17 : Equivalence and Order Relations DRAFT

CS/Math 240: Introduction to Discrete Mathematics 3/31/2011 Lecture 17 : Equivalence and Order Relations Instructor: Dieter van Melkebeek Scribe: Dalibor Zelený DRAFT Last lecture we introduced the notion

### SOLUTIONS TO ASSIGNMENT 1 MATH 576

SOLUTIONS TO ASSIGNMENT 1 MATH 576 SOLUTIONS BY OLIVIER MARTIN 13 #5. Let T be the topology generated by A on X. We want to show T = J B J where B is the set of all topologies J on X with A J. This amounts

### Topological Treatment of Platonic, Archimedean, and Related Polyhedra

Forum Geometricorum Volume 15 (015) 43 51. FORUM GEOM ISSN 1534-1178 Topological Treatment of Platonic, Archimedean, and Related Polyhedra Tom M. Apostol and Mamikon A. Mnatsakanian Abstract. Platonic

### The Four-Color Problem: Concept and Solution

October 14, 2007 Prologue Modern mathematics is a rich and complex tapestry of ideas that have evolved over thousands of years. Unlike computer science or biology, where the concept of truth is in a constant

### Automated Theorem Proving - summary of lecture 1

Automated Theorem Proving - summary of lecture 1 1 Introduction Automated Theorem Proving (ATP) deals with the development of computer programs that show that some statement is a logical consequence of