Graph Transformations
|
|
- Doreen Erica Rich
- 6 years ago
- Views:
Transcription
1 Graph Transformations An Introduction to the Categorical Approach Hans J. Schneider c Hans J. Schneider, Computer Science Department, University of Erlangen-Nürnberg, Germany, 2012
2 December 28, Chapter 6 Related Topics Overview of the chapter... (still missing) 6.1 Hyperedge Replacement Grammars In Chapter 2, we have defined a hypergraph as a quadruple H = (E, V, s, t) with E, V Obj Set and s, t : E V (Definition 2.2.4) and a labeled hypergraph as a sixtuple H = (E, V, s, t, l E, l V ) with set morphisms l E : E L E and l V : V L V satisfying τ s l E = lv s E τ t l E = lv t E. (Definition ). As usual, V is the set of nodes, and E denotes the set of hyperedges, i.e., the edges of the hypergraph. L E and L V are alphabets used as edge labels and node labels, respectively. The point is that the edge label determines the number and the labels of nodes the edge must visit. For this, the alphabets L E and L V are related to one another by typing functions τ s, τ t : L E L V. At that place, we have also mentioned two variations. First, it is not necessary to distinguish between s and t. Second, many applications do not need node labels; in this case, it is sufficient to define the order of the nodes. The theory of hyperedge replacement grammars follows this line. The first approaches we are aware of date from the early seventies. J.L. Pfaltz and A. Rosenfeld call them web grammars [70], J. Feder uses the term plex grammars [40]. A first study of context-free properties has been given by T. Pavlidis [68]. Lateron, A. Habel has extensively studied this approach [46], and a comprehensive summary has been presented by F. Drewes, H.- J. Kreowski, and A. Habel [15]. Definition (Multi-pointed labeled hypergraph [15]): Let L E be an alphabet and τ : L E N 0 a typing function for L E. A multi-pointed labeled hypergraph over L E is a quintuple H = (E, V, s, l E, ext) where E and V are the sets of hyperedges and nodes, respectively, s : E V assigns a sequence of pairwise distinct nodes to each hyperedge, and l E : E L E labels each hyperedge such that τ(l E (e)) = s(e). Finally, ext V is a sequence of pairwise distinct external nodes.
3 212 December 28, 2012 We say that e is a k-hyperedge if it visits k nodes, i.e., if τ(l E (e)) = k, and that H is a k-hypergraph if it has k external nodes, i.e., ext = k. The role of the external nodes becomes clear when we define a derivation step. They play the role of the interface nodes. Please note that the sequence of external nodes may be empty. Thus, the hypergraphs of Definition are 0-hypergraphs, and therefore a special case of multi-pointed hypergraphs. Example (Well-structured programs): Let us consider a 3-hyperedge and some 3-hypergraphs taken from Example describing the well-structured programs: On the left-hand side, we see a 1 s 1 s 1 cond s 2 s 3 ::= 1 s 1 stmt s 2 s 1 cond s 2 s s 1 cond s 3 s 1 s 2 s 2 2 cond s 3 3 cond s 3 s 2 s 1 3 r stmt s 2 s 1 cond s 2 2 r s 3 Figure hyperedge labeled with cond. As in the previous chapters, we represent a hyperedge by a rectangle connected to its i-th node by an arrow s i. The other graphs are 3-hypergraphs. The sequence of external nodes ext is given by the numbers. The nodes that are not external are simply represented by dots. The diagram shows three productions with identical left-hand sides: The hyperedge on the left-hand side is to be replaced by one of the right-hand sides. Please note that the left-hand side of such a production is completely determined if we know the label of e l! In our example, it would be sufficient to write cond on the left-hand side; it is not necessary to draw all the other stuff. In the later examples, we do so. Of course, we can also define the productions in this way: Definition (Hyperedge replacement production [15]): A hyperedge replacement production of type k is a pair (A, B r ) consisting of a hyperedge label A with τ(a) = k and a labeled, multi-pointed k-hypergraph B r.
4 December 28, Informally, such a production is applied in the following way: If a hyperedge e l labeled with A occurs in some hypergraph H l, (a) we remove e l from H l, (b) we add B r to the remaining graph, (c) we connect B r to the remaining graph by identifying its external nodes with the nodes that e l has visited before being removed, where the order of the nodes is obeyed. We now give a formal definition of this construction: Definition (Hyperedge replacement [46]): Let p = (A, B r ) be a hyperedge replacement production and H l, H r be hypergraphs where H l contains a hyperedge e l with l Eh l(e l ) = A. Then, H l p = H r is a derivation step if and only if the following conditions hold: (a) HE r := (HE l \ {e l }) BE r (b) HV r := (HV l \ B V l ) BV r (s B r(e)) i if e BE r (c) (s H r(e)) i := (s H l(e)) i if e HE l \ {e l } (s H l(e)) i BV l (ext B r) j if e HE l \ {e l } (s H l(e)) i = s j (e l ) { leh l(e) if e HE (d) l EH r(e) := l \ {e l } l EB r(e) if e BE r Steps (a), (b), and (d) of the construction are obvious. Step (c) implements connecting B r to the graph that remains after removing e l from H l. The first alternative defines that hyperedges coming from B r visit the same nodes as on the right-hand side of the production. The other alternatives describe the behaviour of the hyperedges coming from the remaining part of H l. As long as a hyperedge visits a node that is part of the remaining graph, too, it continues to do so. If, however, a visited node is the j-th node s j (e l ) of the removed hyperedge e l, it has been removed by step (b), and we use the j-th external node of the hypergraph on the right-hand side instead. As in Definition 3.1.2, hyperedge replacement induces the derivability relation = as its reflexive, transitive closure, and we can define a hyperedge replacement grammar and its language analogously with Definition and Definition Definition (Hyperedge replacement grammar [15]): A hyperedge replacement grammar is given by a quadruple HRG = (L, T, P, S) with P being a finite set of hyperedge replacement productions over the alphabet L. T L is called the terminal alphabet, and S is the start symbol. A hyperedge replacement grammar is said to be of order k if for all productions (A, B r ), we have τ(a) = ext B r k. Definition (Hyperedge replacement language): If HRG is a hyperedge replacement grammar, then the set L(HRG) := {H S = HRG H l EH[H E ] T is called the hyperedge replacement language generated by HRG.
5 214 December 28, 2012 A set of hypergraphs is a hyperedge replacement language of order k if there exists a hyperedge replacement grammar of order k that generates it. To show the relationship between hyperedge replacement and the double-pushout approach, we explicitly formulate the definition of context-free hypergraph productions (Def ) without distinguishing between source and target nodes: Definition (Context-free hypergraph production): A context-free hypergraph production of order k satisfies: (a) B l E = {e l } with s l (e l ) = k (b) All the nodes of B l V occur in s l (e l ). (c) I E =, I V = {1, 2,..., k} (d) p l V is bijective and p r V is injective. Analogously, we adapt the definition of a hypergraph grammar (Def ): Definition (Context-free hypergraph grammar): A context-free hypergraph grammar of order K is a graph grammar all the productions of which are context-free hypergraph productions of order k with k K. We now discuss the relationship between hyperedge replacement and the doublepushout approach. Theorem (Hyperedge replacement as a DPO step): Let p = (A, B r ) be a k-hyperedge replacement production and H l, H r be hypergraphs with H l p = H r. Then, there exists a context-free hypergraph production p = (B l I B r ) such H l p = H r holds in the double-pushout approach. Proof: We have to construct the production p, the context graph C, and the morphisms such that the pushout property on both sides of the double-pushout diagram holds: p l B l g l H l p l p r I B r g g r C H r p r We get B l as a hypergraph consisting of one edge labeled with A and the nodes visited by this edge: BE l = {e l } l EH l(e l ) = A BV l = {(s B l(e l )) 1, (s B l(e l )) 2,..., (s B l(e l )) k } The interface graph simply consists of numbered nodes: I E = I V = {1, 2,..., k} They are mapped onto the nodes of the left-hand side and on the external nodes of the right-hand side preserving the order: p l V (i) = (s B l(e l )) i p r V (i) = (ext B r) i The context graph C is constructed from H l by removing the edge ge(e l l ), but not the nodes it visits:
6 December 28, C E = HE l \ {ge(e l l )} C V = HV l since these nodes take the role of the interface nodes: g V (i) = (s H l(ge(e l l ))) i gv l ((s B l(e l )) i ) = (s H l(ge(e l l ))) i We complete the left-hand diagram by p l V = id VC p l E(e) = e for all e C E = HE l \ {ge(e l l )} This construction results in pushout diagrams for both nodes and edges by Corollary Since this diagram is a commutative diagram in Graph, it is a pushout diagram in Graph, too (Lemma 4.5.1). On the right-hand side, the definition of hyperedge replacement (Def ) yields the set of edges and the set of nodes. We make the right-hand diagram a pushout diagram by defining: p r E(e) = e for all e C E = H l E \ {g l E(e l )} { v if H p r l V (v) = V \ BV l (ext B r) i if v = g V (i) ge(e) r = e for all e BE r gv r (v) = v for all v BV r The construction of the double-pushout production does not depend on the derivation step. We, therefore, can construct a graph grammar equivalent to the hyperedge replacement grammar. In Section 3.5, we have already considered the relationship between Chomsky languages and special hypergraph languages. That discussion has been purely based on the double-pushout approach, but of course, it is also related to hyperedge replacement. Now, we mention some results that can be easier proved in the hyperedge replacement setting. Definitions and show that Chomsky grammars can be considered as special cases of graph grammars. Those definitions represent strings by usual graphs, i.e., the edges have one source and one target. The grammar associated with a Chomsky grammar is a (1, 1)-hypergraph grammar. The definition of a contextfree Chomsky grammar assumes exactly one such edge on the left-hand side of each production. In Definition 3.5.9, we have generalized the notion of a contextfree grammar by admitting (k 1, k 2 )-hyperedges on the left-hand side. This definition allows us to show that {a n b n c n n > 0} can be generated by a contextfree hypergraph grammar of order (2, 2), although it is a typical example of a non-contextfree Chomsky language (Lemma ). It is obvious that the same result holds for a hyperedge replacement grammar of order 4. A lot of theorems well-known for contextfree Chomsky grammars and languages are valid for hyperedge replacement languages of arbitrary (finite) order, too. We mention only one of these results: the context-freeness lemma. In the Chomsky setting, it says: We have a derivation sequence consisting of n + 1 steps, i.e., A = n+1 w, if and only if there is a production p = (A, B 1 B 2... B m ) and a decomposition of w = w 1 w 2... w m such that B i = w i holds for all i = 1, 2,... m. This lemma is the basis of drawing derivation trees that represent the structure of syntactically correct strings. Extending it to contextfree hypergraph grammars, therefore, is an interesting result. 1 Since the morphisms are injective, only the first two conditions of the corollary are of interest.
7 216 December 28, 2012 F. Drewes, H.J. Kreowski, and A. Habel have shown that some other properties typical of contextfree Chomsky grammars, e.g., the so-called Pumping Lemma, also hold for contextfree hypergraph grammars [15]. There are some interesting applications that can be modeled by contextfree hyperedge replacement. We consider the Nassi-Shneiderman diagrams well-known in structured programming [65] as an example. The set of all well-formed Nassi-Shneiderman diagrams (block diagrams) is a contextfree hyperedge replacement language. M. Minas and G. Viehstaedt have used such a grammar as an example in specifying diagram editors [58, 59]. Example : Nassi-Shneiderman diagrams are defined recursively. Simple statements as well as compound statements are drawn as rectangular blocks. A block subdivided into several blocks represents a sequence of statements. A loop is described by a block to which a vertical bar is added, indicating the range of the loop. Finally, a conditional statement is represented by two columns of blocks preceded by the condition. These basic blocks are shown in Figure a. Simple statement Sequence of statements Loop condition Range of the loop Conditional statement Alternative 1 Alternative 2 Figure a: Basic blocks of Nassi-Shneiderman diagrams Figure b shows the hyperedge replacement grammar generating well-formed Nassi-Shneiderman diagrams. 2. The start symbol nsd has only to generate the start graph that on its turn, has no external nodes, since it can not be glued together with some surrounding graph. The right-hand side of the start production is a 0-pointed labeled hypergraph consisting of one 4-hyperedge labeled with stsq and three 2-hyperedges. The stsq-hyperedge is drawn as usual; its nodes are depicted by bold dots. (We have omitted the node numbers; the order is from top left to bottom right.) Three 2-hyperedges, drawn as bold lines, connect these nodes. The bold line is an abbreviation denoting a terminal label. It means that the generated diagram contains a concrete line between these two nodes. Please note that we do not generate a line at the bottom of the sequence. The next two productions determine that a statement sequence consists of one or more statements. Since the label stsq requires a hyperedge with four nodes, the 2 The conditional statement is omitted and left to the reader as an exercise (Exercise 6.5.1)
8 December 28, nsd ::= stsq stsq ::= 1 2 stat stsq stat stat ::= bstat while st 3 4 while st ::= 1 2 cond stsq 3 4 Figure b: Hyperedge replacement grammar for Nassi-Shneiderman diagrams graphs on the right-hand sides must have four external nodes. We have explicitly numbered these external nodes to distinguish them from the other nodes. The third line contains some alternatives to expand the nonterminal edges stat, e.g., to replace a stat-hyperedge by a basic statement or by a while-statement. In the case of the basic statement, we add the terminal line at the bottom, which we have omitted in the first production to avoid duplicate lines between the blocks in a statement sequence. The last production refines the while-statement. Especially, it generates the concrete lines within the block and the part of the line at the bottom that is not generated at the end of the statement sequence. Figure c shows two derivation steps. The first step replaces the hyperedge representing a derivation sequence by a statement and a statement sequence, the second step concretizes the first statement to be a while statement. Another point must be explicitly mentioned to avoid misunderstandings. Consider the first derivation step: The nonterminal hyperedge stsq is replaced by two hyperedges: stat followed by stsq. The blocks represented by these hyperedges must be suitably connected one to another. In the production, we have
9 218 December 28, 2012 stsq = stat stsq = cond stsq stsq Figure c: Beginning of a derivation realized this connection by identifying the (not-numbered) nodes 3 and 4 of the stat-hyperedge with the nodes 1 and 2 of the stsq-hyperedge, respectively. In addition, we have put these nodes onto the lines connecting the external nodes. Of course, this is not prescribed by the production. M. Minas and G. Viehstaedt, therefore, have improved the productions by attributes constraining the geometric positions of the blocks represented by the hyperedges. 3 In this case, the coordinates of the nodes involved are identified. (In other cases, the attributes may be used to determine the size of a block such that we get good proportions.) 6.2 Inward Productions The double-pushout approach follows formal language theory: A derivation step starts with looking for a handle g l : B l G l, then g l (B l ) is removed from the host graph, and finally, a copy of B r is inserted, replacing the removed part. In term graph rewriting, however, the steps occur in the reverse order: Gluing some new structure into the graph is done first, then edges are redirected, and finally garbage is removed. In 1994, R. Banach could show that this order is also possible in the double-pushout approach [4, 5]. In Banach s productions, the arrows go inwards: q = (B l q l Q qr B r ), where B l and B r are the same graphs as in the double-pushout approach and the 3 This approach follows the lines of the attributed grammars introduced by D.E. Knuth [51].
10 December 28, morphisms q l and q r are related to p l and p r by a pushout construction. The direction of the arrows in the production leads us to use the terms inward and outward referring to Banach s approach and to the original one, respectively. Under certain assumptions, each inward derivation step unambiguously corresponds to an outward derivation step. Definition (Inward production): With each outward production p = (B l production q = (B l p l I p r B r ), we associate an inward q l Q qr B r ), where Q is the pushout object in I p r B r p l B l q r P O Q q l This definition is asymmetrical: If an outward production is given, the associated inward production can always be constructed unambiguously, but not vice versa. If the inward production is given, we need a pushout complement to get the outward production. We have examined the details of this construction in Chapter 4. The results for Set and Graph are summarized in Section 4.4 and in Construction , respectively. There may be several outward productions the given inward production is associated with, or it may happen that the inward production is not associated with any outward production at all. We often use (p l, p r ) and (q l, q r ) as abbreviations for the outward and inward production, respectively. Definition (Inward derivability): q l Let q = (B l Q qr B r ) be an inward production. We call G r derivable from G l via q: G l = q G r (with handle g l : B l G l ) if and only if there exists a morphism g r : B r G r such that in the following diagram both squares are pushouts q l q Q r B l B r g l G l P O ḡ P O D g r G r A problem of the double-pushout approach is the necessity to construct the pushout complement, i.e., after determining a handle g l in the outward version, we have to look for a g : I C such that G l is the pushout object of g and p l. There is a difference between the outward and inward approach: Using the outward one, we have to construct the pushout complement in the middle. The inward approach, however, causes us to look for a pushout complement when constructing the rightmost morphism. In 1995, R. Banach could show that in the category Graph, we can replace the outward double-pushout construction by an inward one and vice versa, if the dangling condition holds (Theorem 4.5.8) and p l is injective.
11 220 December 28, 2012 Example 6.2.3: We illustrate the equivalence of outward and inward derivation steps by an example in Graph. With Banach s result in mind, we choose an outward production with injective morphisms p l and p r. Figure 6.2.3(a) shows a simple derivation step using this production. B l I B r p l p r g l g G l C G r p l p r g r Figure 6.2.3(a): Derivation step using an outward production In Figure 6.2.3(b), we construct the inward production q = (B l Q qr B r ) associated with p = (p l, p r ) as the pushout of p l and p r. Of course, the resulting morphisms q l and q r are also injective. Finally, Figure 6.2.3(c) shows the inward derivation step based on the production q = (q l, q r ). Since the morphisms are injective, the pushout complement on the right-hand side can be constructed unambiguously. We omit the details of the construction, especially checking the dangling condition. Of course, it is satisfied in the outward version as well as in the inward one. Banach has proved that under certain assumptions, outward derivation steps are equivalent to inward derivation steps. One part of his result, however, can be obtained without any restrictions as long as the category under consideration has pushouts: Theorem (From outward to inward derivations [5, 94, 95]): If we have an outward derivation step G l = p G r in a category that has pushouts, then G l = q G r does also hold with q being the inward production associated with the outward production p. Proof: We consider an outward production p = (p l, p r ) and the inward production q = (q l, q r ) associated with it, i.e., q l p l = q r p r is a pushout diagram. This is the upper part q l
12 December 28, I 1 2 B r 1 2 p r 5 6 B l p l q l Q 3 1 q r Figure 6.2.3(b): Construction if the inward production (q l, q r ) of the figure. We assume that G r is derivable from G l by applying the outward production p with the handle g l, i.e., the squares g l p l = p l g and g r p r = p r g are pushout diagrams, too: We complete the lower part of the cube by constructing D as the pushout object in the square q l p l = q r p r. Now, the outermost edges establish a commutative diagram: ( q l g l ) p l = q l p l g = q r p r g = ( q r g r ) p r and therefore, the pushout property of Q yields a unique ḡ making q l g l = ḡ q l and q r g r = ḡ q r commutative. To show the pushout property of these squares, we use the composition lemma (Lemma ): With g r p r = p r g and q r p r = q l p l being pushouts, ( q r g r ) p r = q l ( p l g) also is a pushout. Up to isomorphism, (ḡ q r ) p r = q l (g l p l ) is the same pushout. Its second half, namely ḡ q l = q l g l, is a pushout, too, due to part (b) of the composition lemma. Analogously, we see that q r g r = ḡ q r is a pushout. Putting these pushouts together, we get the inward derivability via q. Please note that this proof does not make use of any special properties of the category under consideration as long as it has pushouts. If the outward derivation step exists, the associated inward production can also be applied. In Graph, this means that if the dangling condition holds in the outward derivation step, then the dangling condition needed in constructing the inward derivation step is satisfied, too! Furthermore, we have not assumed any special properties of the morphisms, especially, they need not be injective. In the case of a non-injective p l, we can apply the outward production if the pushout complement of g l p l exists, but C and G r may be ambiguous. Theorem says that all the graphs G r derivable by the outward production can also be derived by the associated inward production, i.e., the existence of the pushout complement of ḡ q r implicitly follows from the existence of the pushout complement of g l p l! Conversely, it is easy to prove that every inward derivation step corresponds to an
13 222 December 28, 2012 B l Q B r q l q r g l ḡ G l D G r q l q r g r Figure 6.2.3(c): Derivation step using an inward production I pl B l q l g Q p r B r q r g r g l ḡ p r C p l q r D q l G l G r Figure 6.2.4: Relationship between outward and inward derivation step outward one under more or less strong assumptions. In general, we need only that existence of pushout complements is inherited from the inward part of the cube in Figure to the outward part (Exercise 6.5.4). In Set and Graph, it is sufficient to assume the top square of the cube to be a bicartesian square (Exercise 6.5.5). This idea can also be used to prove the equivalence in an adhesive grammar [19]. Authors preferring HLR1-categories usually assume both p l and p r to be in the distinguished class M. (The same holds true for the cospan approach discussed by H. Ehrig, F. Her-
14 December 28, mann, and U. Prange [28]). But we can prove the equivalence assuming only p l to be in the distinguished class of morphisms. As in Chapter 5, we consider the class of PIT-categories (see Def ): Theorem (Equivalence of inward and outward derivations): If in a PIT-category, p is an outward production with p l M, q is the associated inward production and if we have a handle g l : B l G l, then G l = p G r holds if and only if G l = q G r. Proof: The direction from left to right is a consequence of Theorem Conversely, we assume G l = q G r, i.e., three of the pushouts in the cube of Figure exist: q r p r = q l p l due to the definition of associated productions and ḡ q l = q l g l as well as ḡ q r = q r g r because of the assumption (Figure 6.2.5a). p r I pl P O q r B l Q g l G l q l P O q l ḡ D Figure 6.2.5a P O q r B r g r G r p r B r q r I pl B l Q q l g = = ḡ p r C p l G l P B q r D q l g l Figure 6.2.5b g r G r Please keep in mind that q r and q r are in M since p l is by definition of a PIT-category. Now, we construct C as the pullback object of q l and q r (Figure 6.2.5b), and we get a unique morphism g : I C such that g r p r = p r g and g l p l = p l g commute. We have to show that these two diagrams are pushouts. By the composition lemma, the diagram q r (g r p r ) = (ḡ q l ) p l is a pushout diagram, but q r ( p r g) = ( q l g l ) p l is the same diagram. Analogously, q l ( p l g) = ( q r g r ) p r is a pushout diagram. In Figure 6.2.5c, therefore, the large rectangles are pushouts, the right-hand corner I B r I C G r B l = = P B q r G l D Figure 6.2.5(c) is a pullback and q r is in the class of distinguished morphisms. Condition (c) in the definition of a PIT-category completes the proof.
15 224 December 28, 2012 This theorem essentially coincides with Banach s result [4, 5]. Trivially, it also holds in the case that both sides of the given outward production are in the distinguished class of morphisms. If we require the right-hand side to be in M, but allow the left-hand side to be an arbitrary morphism, the symmetry of the cube in Figure yields: Corollary 6.2.6: If in a PIT-category, p is an outward production with p r M, q is the associated inward production, and if we have a handle g l : B l G l, then G l = p G r holds if and only if G l = q G r. In this case, the outward derivation step allows ambiguous solutions, but all the solutions can be derived by inward derivation steps, too. The advantage of our proof in a purely categorical setting is that we can apply it to more general structures such as hierarchical graphs [92], or structurally labeled graphs [99, 100]. Lemma gives a criterion which restrictions a structured alphabet must obey such that the structurally labeled graphs constitute a PIT-category and the equivalence theorem holds. At this point, we switch over to an interesting operational approach to graph transformations. These approaches describe replacing a subgraph with another one by set operations that can be easily implemented. Such an approach is the -grammar approach, which has been introduced by S.M. Kaplan, J.P. Loyall, and S.K. Goering [50]. In this approach, all relevant items of a production are incorporated into one tripartite graph: Definition ( -production [50]): A -production is a tripartite graph = ( l E c E r E, l V c V r V, s, t) with s, t : l E c E r E l V c V r V where the following conditions hold: (a) e l E s(e) r V t(e) r V (b) e r E s(e) l V t(e) l V (c) e c E s(e) c V t(e) c V The definition excludes edges from l to r or vice versa. 4 Usually, c is depicted within a triangle, and l and r are drawn on the left and on the right of this triangle, respectively. Example 6.2.8: We consider a simple example. Figure depicts the -version of the production we have already used in Figure 6.2.3(a). c consists of the nodes within the triangle and the edges not leaving it. In our example, the edge from node 1 to node 2 belongs to c. All the edges a part of which is drawn outside the triangle belong to l or to r, respectively, i.e., the edge from 2 to 1 is part of l and the loop at node 1 belongs to r. The edges connecting nodes one of which is in l or in r belong to l or to r, respectively, e.g., the edge from 1 to 3 is part of l. 4 x is shorthand for the edges x E and the nodes x V.
16 December 28, l c r 2 6 Figure 6.2.8: Example of a -production By definition c is a graph. In general, however, l and r are not graphs, but Def ensures that l c and c r are graphs if we restrict s, t to l E c E and r E c E, respectively. l is the fragment of the graph removed during applying the production, r is the graph fragment replacing l. c denotes a subgraph that is identified, but not changed during rewriting. It is common to both the left-hand side and the right-hand side of the production. 5 Definition ( -derivation [50]): If a -production is given and if we have an injective graph morphism g l : ( l E c E, l V c V, s p, t p ) G l where s p, t p are the restrictions of s, t to l E c E, then G r is called derivable from G l with : G l = G r if G r is constructed as follows: G r E := (G l E \ g l [ l E]) r E G r V := (G l V \ g l [ l V ]) r V s G l(e) if e G l E \ g l [ l E] s G r(e) := s(e) if e r E s(e) r V g l (s(e)) if e r E s(e) c V t G r(e) analogously Constructions of s G r and t G r ensure that G r is a graph. Theorem (Equivalence of -derivability with double-pushout approach): In the case of injective handles -derivability and double-pushout derivability are equivalent. Proof: Since in Set and Graph, the coproduct is the disjoint union, we can translate a - production into an outward production straightforwardly 6 : p = ( l c p l c p r c r ) 5 Kaplan s productions have two further components, a negative application condition and a textually expressed guard; both are omitted here. 6 l c denotes the coproduct of l and c. Please remember that this operation is associative.
17 226 December 28, 2012 with p l and p r being the natural coproduct morphisms. Since in a -production, p l and p r are injective, l and r are the coproduct complements of c with respect to l c and c r, respectively. Figure illustrates the situation. Since - derivability assumes g l to be injective, g l : l c G l has a coproduct complement R G l, as we have shown in Example We can, therefore, rewrite G l as a coproduct: G l = ( l c ) R. By Lemma 4.2.5, the subdiagram (1) is a pushout if l c p l c p r c r g l (1) (2) ( l c ) R C ( c r ) R R Figure g r we choose C = c R. By the same argument, subdiagram (2) is a pushout. On the other hand, we can rewrite the pushout object of (2) as ( c r ) R = ( c R) r. In a set-theoretical formulation, c R is G l \ l, and ( c R) r is (G l \ l ) r. This completes the proof. (Definitions of s G r and t G r are straightforward.) We have embedded the -approach into the double-pushout approach. Why we have discussed this equivalence in the context of inward productions? The answer is simple: Corollary : Consider a -production, and translate it into an outward production. Then, the graph Q in the associated inward production (B l Q qr B r ) is the tripartite graph representing the given -production: Q = l c r. q l c p r r c p r q r q l l c l c r Figure Figure refers to the canonical construction of pushouts (Theorem 2.5.6): After the coproduct ( l c ) ( r c ) has been constructed, the coequalizer identifies the elements of c. This means that we can implement the double-pushout approach (at least in the case of injective productions) storing only one graph, namely Q indicating the partitioning by suitable flags. The original definition of -derivability allows only injective handles g l. The categorical treatment, however, shows that this assumption is too strong:
18 December 28, Lemma : A -production can also be applied using a noninjective handle g l identification condition. satisfying the If we do so, we have to observe the identification condition (Lemma 4.1.2): Only elements of c may be put together. Proof: We replace Figure by Figure (a) taking advantage of Corollary instead of Lemma By the identification condition, g l p is injective, and we can p l l c p l g l p g l p l l C c Figure (a) g C p r c r g r G r construct the pushout complement p l : C l C as the coproduct complement of g l p, i.e., p l is the natural injection. Furthermore, the identification condition ensures g l [ c ] C. The morphism g l, therefore, can be written as the coproduct of two morphisms (cf. Def ): g l = g l g l l c, and we get g = gl as shown in c Figure (b). On the right-hand side, we symmetrically get G r = C r. In the in l l g l l l c in c c g l l g l c l C g l c in C C Figure (b) p r c r g r G r set-theoretic notation, this means that G r = C r = (G l \ g l [ l ]) r in accordance with the definition of -derivability. Finally, we have to show that the definition of s G r in Definition does not depend on the choice of edges that are put together. We consider e, e c E r C with g r (e) = g r (e ). Both e and e must come from c and put together by g l c, i.e., gl E(e) = ge(e l ), implying gv l (s(e)) = s G l(ge(e)) l = s G l(ge(e l )) = gv l (s(e )). Although the -grammar approach is explixitly based on the outward version of the double-pushout approach (cf. [50]), it may be better understood considering the inward version. Kaplan s -approach is very similar to Göttlers Y-model [43, 44], which has been extended to the X-model lateron [45].
19 228 December 28, Comma Category Concept In the previous chapters, we have studied a large variety of graphs and different labeling mechanisms. In each case, we had to prove that the variation under consideration constitutes a category satisfying the properties we need. Now, we show that it is sufficient to prove interesting properties only for some basic categories, since we can lift them to other categories by the comma-category technique. 7 For this, we need functors, i.e., maps between categories that preserve the category structure. Definition (Functor [48]): A functor F : A B from category A to category B is a pair of functions F O : Obj A Obj B and F M : Mor A Mor B preserving identities and composition: (a) F O (id a ) = idf(a) (b) Whenever g f is defined, the equality F M (g f) = F M (g) F M (f) holds. The functions F M and F O cannot be confused with one another; therefore, we usually omit the indices. Remark: Since there is a one-to-correspondence between objects and identities, it would be sufficient to define a functor by its F M. From this, we get F O by F O (a) = dom(f M (id a )). Some examples, however, are easier to comprehend if F O is given explicitly. A comma category is constructed from two functors with a common target: Definition (Comma category [42, 81]): Let A, B, C be categories and let L : A C and R : B C be two functors. Then, the comma category (L, R) is defined as follows: (a) The objects of (L, R) are of the form (a, b, c) with a Obj A, b Obj B and c : L(a) R(b) being a morphism of C. (b) A morphism f : (a, b, c) (a, b, c ) of (L, R) is a pair of morphisms f = (f l : a a, f r : b b ) with f l Mor A, f r Mor B such that the following diagram commutes: L(a) c R(b) L(f l ) = R(f r ) L(a ) R(b ) c (c) Composition and identities are defined componentwise. An object of the comma category (L, R) takes an object of A and an object of B and establishes a relationship between their images in C by a suitable morphism. We illustrate this by defining the category of graphs as a comma category. Informally, A represents the edges, B the nodes, and the morphisms of C define source and target nodes. The example is a little bit too simple because all three categories are the same category, namely Set: 7 From a systematic point of view, it seems better to discuss this approach in Chapter 2. Then, we can take advantage of it in the following chapters. For didactic reasons, however, that chapter has been kept as short as possible.
20 December 28, Example (Graph): Consider the identity functor Id : Set Set and the diagonal functor X : Set Set defined by Id(S) := S X(S) := S S Id(f) := f X(f)((a, b)) := (f(a), f(b)) The comma category (Id, X) is the category of graphs. The comma-category definition considers a graph to be a triple G = (E, V, c) with c : E V V, where E is the set of edges and V is the set of nodes. Function c connects each edge with a source and a target node: c(e) = (s(e), t(e)). As usual, a graph morphism is a pair (g E : E E, g V : V V ). On the left-hand side Id(E) c X(V ) Id(g E ) = X(g V ) g E = (g V, g V ) Id(E ) X(V ) c E V V c Figure 6.3.3: Comma category interpretation of graph morphisms E c V V of the figure, we show the diagram according to the definition of a comma category, and on the right-hand side, you see the interpretation with Id and X replaced by their definitions. In the previous chapters, we have discussed different versions of hypergraphs. Here, we use the version well-suited to represent term graphs. For this, we modify Definition such that each edge visits at least one target: Example (Hypergraphs): Let C : Set Set be the functor defined by C(S) := S S + C(f)((w, w )) := (f (w), f + (w )) Then, comma category (Id, C) is the category of hypergraphs with (a possibly empty sequence of) sources and at least one target. Hence, a hypergraph is a triple H = (E, V, c) with c : E V V +, and a hypergraph Id(E) c C(V ) c E V V + Id(g E ) = C(g V ) g E = (gv, g+ V ) Id(E ) C(V ) c E V V + c Figure 6.3.4: Interpretation of hypergraph morphisms morphism is pair (g e : E E, g V commutative. : V V ) making the diagram in the figure
21 230 December 28, 2012 Petri nets are based on bipartite graphs. Defining this variant of graphs, we need the product A B of two categories. The set of objects is Obj A Obj B, and the morphisms are constructed componentwise. Example (Bipartite graphs): Let B : Set Set Set be the functor defined by B(S, T ) := S T T S { (f(u), g(v)) if u S, v T B(f, g)(u, v) := (g(u), f(v)) if u T, v S Then, comma category Bgraph = (Id, B) is the category of bipartite graphs. From this, a bipartite graph is a graph (E, (S, T ), c) with c : E S T T S. A Id(E) c B(S, T ) Id(g E ) = B(g S, g T ) Id(E ) B(S, T ) c E c S T T S g E = B(g S, g T ) E S T T S c Figure 6.3.5: Interpretation of morphisms in Bgraph morphism is a pair of morphisms the second component is a pair again: (g e : E 1 E 2, (g S : S 1 S 2, g T : T 1 T 2 )) mapping places to places and transitions to transitions. The comma category concept unifies not only treating different graph structures, but also the different labeling mechanisms. On the one hand, we can distinguish between labeling only nodes, only edges or both nodes and edges. On the other hand, we can use a simple labeling alphabet assuming morphisms to preserve labels (Def ) or we may impose a structure on the alphabet requiring morphisms to be compatible with this structure (Def ) or we may even use graphs as labels again [92]. First, we introduce selecting functors that decide on whether nodes or edges are to be labeled. We slightly modify Schied s definition [82]. For this, we define the category the objects of which are the Cartesian products of sets: Definition (Category of pairs): The category CartSet has Obj Set Obj Set as objects, and Mor Set Mor Set as morphisms. Composition and identities are defined componentwise. Of course, limits and colimits can be also constructed component by component. Definition (Selected labeling): Let G be any category of graphs and W E, W V : G Set, W EV : G CartSet selecting functors defined as follows: W E ((E, V, c)) := E W E ((f E, f V )) := f E W V ((E, V, c)) := V W V ((f E, f V )) := f V W EV ((E, V, c)) := (E, V ) W EV ((f E, f V )) := (f E, f V )
22 December 28, Consider a category L of labels and a labeling functor Lab : L Set. Then, (W E, Lab) yields a category of edge-labeled graphs, (W V, Lab) yields a category of node-labeled graphs. With Lab : L CartSet, comma category (W EV, Lab) yields a category of graphs both the nodes and edges of which are labeled. The domain of W selects a kind of graphs such as usual graphs, hypergraphs, or bipartite graphs. The codomain defines the component to be labeled, e.g., nodes, edges, or both. In detail, a Lab-labeled graph is a triple (G, L, l), where G = (E, V, c) is a graph, L Obj L is an object of the labeling category and l is a labeling function. The figure depicts the case of node labeling. We see the definition on the left-hand W V (G) l Lab(L) W V ((f E, f V )) = Lab(...) f V = Lab(...) W V (G ) Lab(L ) l V Lab(L ) l Figure 6.3.7: Interpretation of a selecting functor V l Lab(L) side and a draft of the interpretation on the right-hand side. We hesitate to make the morphism Lab(...) concrete, since it depends on the way we label the graphs. We first consider the case of morphisms preserving the labels: Example (Node-labeled graphs): Let 1 be the category consisting of one object and one morphism id. Consider functor Lab : 1 Set defined by Lab( ) := L V Lab(id ) := id LV Then, (W V, Lab) is the category of node-labeled graphs with the labeling alphabet L V. Replacing Lab in Figure by this definition, we get the well-known diagram of Definition W V (G) W V ((f E, f V )) W V (G ) l V = l V Lab( ) Lab(id ) Lab( ) V l V f V = L V V l V Figure 6.3.8: Interpretation of node-labeled graph morphisms Analogously, you can define the category of edge-labeled graphs by simply replacing W V and L V by W E and L E, respectively. Labeling both nodes and edges, we must take into consideration that the labeling alphabets for nodes and edges usually are different.
23 232 December 28, 2012 Example (Node- and edge-labeled graphs): Let 1 as before and consider the functor Lab : 1 CartSet defined by Lab( ) := (L E, L V ) Lab(id ) := id (LE,L V ) Then, (W EV, Lab) is isomorphic to the category Lgraph with L E and L V labeling alphabets. as the Again, we illustrate the construction by two diagrams (Fig (a)). By definition, W EV (G) W EV ((f E, f V )) W EV (G ) l V = l V Lab( ) Lab(id ) Lab( ) (l E, l V ) (E, V ) (L E, L V ) (f E, f V ) = (id LE, id LV ) (E, V ) (l E, l V ) (E, V ) Figure 6.3.9(a): Comma-category interpretation of Lgraph V l V f V = L V V l V Figure 6.3.9(b) E l E f E = E l E L E the objects of (W, Lab) are of the form (G, (L E, L V ), (l E, l V )). Figure 6.3.9(b) shows the right-hand diagram decomposed into its components. We get the same diagrams as in Def In G. Schied s version of Definition 6.3.7, all the functors have the codomain Set. He has defined W EV ((E, V, c)) := E V and W EV ((f E, f V )) := f E f V. 8 As a consequence of this, he gets Lab( ) := L E L V, and he must ensure that l also is of the form l E l V. In [97], we have proposed another approach. We introduce a two-step comma-category construction. Without loss of generality, we start with labeling edges using W E and Lab E : L E Set. Objects of (W E, Lab E ) are of the form (G, L E, l E ) = ((E, V, c), L E, l E ) and morphisms are of the form ((f E, f V ), f LE ), where the first components (f E, f V ) are graph morphisms. Although (W E, Lab E ) is a category of graphs, we must slightly modify W V to access the nodes: Definition (Two-step labeling): Let Lab E : L E Set and Lab V : L V Set be two labeling functors. With W V : (W E, Lab E ) Set defined by W V (G, L E, l E ) = W V (G) W V (f, f LE ) = W V (f), we construct the comma category (W V, Lab V ) and denote the result by (W E, W V, Lab E, Lab V ), explicitly mentioning the four morphisms. 8 f E f V : E V f E f V is the function f E on E and is the function f V on V.
24 December 28, The objects of this category are of the form (((E, V, c), L E, l E ), L V, l V ) and morphisms look like (((f E, f V ), f LE ), f LV ). We can easily establish a close relation to the previous version substituting 1 for both L E and L V : ((E, V, c), L E, l E ), L V, l V ) ((E, V, c), (L E, L V ), (l E, l V )) ((f E, f V ), f LE ), f LV ) ((f E, f V ), (f LE, f LV )) Up to now, we have considered only the case of label-preserving morphisms. Example (Substituting labels): Let (L, ) be a structured alphabet and CL L the category with L as the only object and all nondecreasing functions h as morphisms, i.e., a h(a) for all a L. Consider the functor CL : CL L Set defined by CL(L) := L CL(h) := h Then, CLgraph = (W V, CL) is a category of node-labeled graphs the morphisms of which are allowed to change labels observing the structure of the alphabet. We illustrate this example by labeling the nodes with elements of an alphabet L V. The right-hand diagram shows that each label a of a node is replaced by h(a) on l W V (G) V CL(L V ) W V (f) = SL(h) f V = W V (G ) CL(L V ) l V V l V Figure : Morphisms substituting labels V l V L V h L V the image of the node. Contrary to Definition 3.6.5, however, all occurrences of a label must be replaced by the same label! This property meets the requirements in constructing derivation steps on term graphs (Definition 3.7.3), even if the terms are not normalized. Some other examples such as the problem of the dining philosophers can not be modeled in this way. Example (Dining Philosophers): The figure recapitulates one of the productions we have considered in Example to illustrate derivability in SLgraph, with the subset relation as the strucure B l I B r p 2 ps satisf ied b pt p l Figure p r ps satisf ied b pt f 2, f 3 p 2 of the alphabet. A morphism in this category allows a node with label to be
25 234 December 28, 2012 mapped onto a node with label {p 2 } and another node with the same label onto a node with label {f 2, f 3 }, as you can see on the right-hand side of the production. We use a trick due to Hess and Mayoh [49] and extend the labels by adding indices from an (arbitrary) index set I. We define h : I M(S) I M(S) to be nondecreasing if the second component is: Example (Structurally labeled graphs [97]): Let (L, ) be a structured alphabet, I a set of indices, and SL IL the category with I L as the only object and all functions h with h(i, l) = (i, l ) implying l l as morphisms. Consider the functor SL : SL IL Set defined by SL(I L) := I L SL(h) := h Then, SLgraph = (W V, SL) is the category of structurally labeled graphs. If two nodes are labeled with the same index and the same label, then the image nodes must have identical labels. If the indices are different, then the image nodes may (but need not) have different labels. What about the index set? A simple choice is the set of nodes itself. This choice covers all the examples which allow the labels on different nodes to change independently. If you, however, want to allow a label to be replaced arbitrarily on some nodes (obeying the structure, of course), but to be replaced with the same label on some other nodes, you must choose a special set of indices. This approach gives the designer of an application a lot of freedom. What are the benefits of this constructions? We can infer interesting properties of the constructed categories such as existence of pushouts from the properties of the constituent categories. Evidently, every commutative diagram qf = pg in (L, R) can be divided into two commutative diagrams q l f l = p l g l in A and q r f r = p r g r in B, since the morphisms of (L, R) are pairs of morphisms. Hence, pushouts and other colimits in (L, R) induce the corresponding constructions in the constituent categories. The proof is simple (cf. Example 3.8.1). This gives us a necessary condition for the existence of colimits in the comma category: A commutative diagram in (L, R) is a pushout diagram only if the component diagrams are pushout diagrams in A and B, respectively. But the converse requires an additional condition. Definition (Cocontinuous functor): A functor L : A C is called (finitely) cocontinuous if it preserves all (finite) colimits, i.e., if a commutative diagram composed of the morphisms f 1, f 2,... is a colimit in A, then the diagram composed of the morphisms L(f 1 ), L(f 2 ),... is a colimit of the same type in C. A functor is continuous if it preserves limits. Cocontinuous functors allow us to use the idea of Theorem in order to get a general way to construct colimits in comma categories. By way of example, we explicitly prove the case of pushouts: Lemma (Pushouts in a comma category): Let L : A C and R : B C be two functors. The comma category (L, R) has pushouts if A and B have pushouts and L is cocontinuous.
26 December 28, Please note that we assume only L to be cocontinuous. The dual lemma states that (L, R) has pullbacks if A and B have pullbacks and if R is continuous. Proof: We follow the lines of the proof of Theorem 3.1.4, but we have to pay attention to some details arising from working in different categories. We start with two morphisms p = (p A, p B ) and g = (g A, g B ) in the category (L, R) as shown in Figure (a), and we I p B I A p A B A I B p B B B g ḡ g A P O ḡ A g B P O ḡ B C p G C A pa G A C B pb G B Fig (a) Fig (b) Fig (c) remember that objects of (L, R) are of the form I = (I A, I B, f I ) where I A and I B are objects of A and of B, respectively, and f I is a morphism f I : L(I A ) R(I B ) in C. The first step is to construct the pushout diagrams of the components in the categories A and B, respectively, as depicted in Figures (b) and (c). These diagrams exist, since A and B have pushouts by assumption, and they can be carried over to L(p A ) L(I A ) L(B A ) R(p B ) R(I B ) R(B B ) L(g A ) P O L(ḡ A ) R(g B ) = R(ḡ B ) L(C A ) L( p A ) L(G A ) R(C B ) R( p B ) R(G B ) Fig (b ) Fig (c ) category C by the functors L and R, respectively. We get the diagrams (b ) and (c ). Since L is cocontinuous, the left-hand diagram is a pushout again, whereas the righthand diagram need not, but the definition of functors ensures its commutativity. In Figure (d), we connect these two diagrams by the morphisms f I, f B, and f C. We must prove that ḡ = (ḡ A, ḡ B ) and p = ( p A, p B ) complete the diagram (a) such that we get a commutative one. First, we have to make G A and G B an object of (L, R) by adding a suitable morphism f G : L(G A ) R(G B ) factorizing R(ḡ B ) f B and R( p B ) f C such that (ḡ A, ḡ B ) and ( p A, p B ) become morphisms in (L, R). Existence and uniqueness of f G follow from the pushout property of L(ḡ A ) L(p A ) = L( p A ) L(g A ) and the fact that the outer paths of the diagram commute: R(ḡ B ) f B L(p A ) = R( p B ) f C L(g A ). This part of the proof also makes clear why R need not be cocontinous; commutativity of diagram (c ) is sufficient. The final step is proving the universal property of the diagram in Figure (a). Consider the left-hand diagram of Figure (e) that is a diagram in (L, R). We have to show
Categories and Modules
Categories and odules Takahiro Kato arch 2, 205 BSTRCT odules (also known as profunctors or distributors) and morphisms among them subsume categories and functors and provide more general and abstract
More informationHYPEREDGE REPLACEMENT GRAPH GRAMMARS
HYPEREDGE REPLACEMENT GRAPH GRAMMARS FRANK DREWES, HANS-JÖRG KREOWSKI Universität Bremen, Fachbereich 3, D 8334 Bremen (Germany) E-mail: {drewes,kreo}@informatik.uni-bremen.de ANNEGRET HABEL Universität
More informationCHAPTER THREE: RELATIONS AND FUNCTIONS
CHAPTER THREE: RELATIONS AND FUNCTIONS 1 Relations Intuitively, a relation is the sort of thing that either does or does not hold between certain things, e.g. the love relation holds between Kim and Sandy
More informationTransformation of Corecursive Graphs
Transformation of Corecursive Graphs Towards M-Adhesive Categories of Corecursive Graphs Julia Padberg 10.2.2017 Padberg Transformation of Corecursive Graphs 10.2.2017 1 Motivation Table of Contents 1
More informationParallel Independence in Hierarchical Graph Transformation
Parallel Independence in Hierarchical Graph Transformation Annegret Habel 1 and Berthold Hoffmann 2 1 Carl-v.-Ossietzky-Universität Oldenburg, Germany habel@informatik.uni-oldenburg.de 2 Universitität
More informationLanguages. Languages. An Example Grammar. Grammars. Suppose we have an alphabet V. Then we can write:
Languages A language is a set (usually infinite) of strings, also known as sentences Each string consists of a sequence of symbols taken from some alphabet An alphabet, V, is a finite set of symbols, e.g.
More informationDouble-pushout graph transformation revisited
Math. Struct. in Comp. Science (00), vol., pp. 637 688. c 00 Cambridge University Press DOI: 0.7/S096095000345 Printed in the United Kingdom Double-pushout graph transformation revisited ANNEGRET HABEL,JÜRGEN
More informationAn Algebraic View of the Relation between Largest Common Subtrees and Smallest Common Supertrees
An Algebraic View of the Relation between Largest Common Subtrees and Smallest Common Supertrees Francesc Rosselló 1, Gabriel Valiente 2 1 Department of Mathematics and Computer Science, Research Institute
More informationPART I. Abstract algebraic categories
PART I Abstract algebraic categories It should be observed first that the whole concept of category is essentially an auxiliary one; our basic concepts are those of a functor and a natural transformation.
More informationwhere Σ is a finite discrete Gal(K sep /K)-set unramified along U and F s is a finite Gal(k(s) sep /k(s))-subset
Classification of quasi-finite étale separated schemes As we saw in lecture, Zariski s Main Theorem provides a very visual picture of quasi-finite étale separated schemes X over a henselian local ring
More informationAttribution of Graphs by Composition of M, N -adhesive Categories
Attribution of Graphs by Composition of M, N -adhesive Categories Christoph Peuser and Annegret Habel Carl von Ossietzky Universität Oldenburg {peuser,habel}@informatik.uni-oldenburg.de Abstract. This
More informationAdaptive Star Grammars and Their Languages
Adaptive Star Grammars and Their Languages Frank Drewes 1, Berthold Hoffmann 2, Dirk Janssens 3, and Mark Minas 4 1 Umeå universitet, Sweden drewes@cs.umu.se 2 Universität Bremen, Germany hof@informatik.uni-bremen.de
More informationCONTINUITY. 1. Continuity 1.1. Preserving limits and colimits. Suppose that F : J C and R: C D are functors. Consider the limit diagrams.
CONTINUITY Abstract. Continuity, tensor products, complete lattices, the Tarski Fixed Point Theorem, existence of adjoints, Freyd s Adjoint Functor Theorem 1. Continuity 1.1. Preserving limits and colimits.
More informationMISHA GAVRILOVICH, ALEXANDER LUZGAREV, AND VLADIMIR SOSNILO PRELIMINARY DRAFT
A DECIDABLE EQUATIONAL FRAGMENT OF CATEGORY THEORY WITHOUT AUTOMORPHISMS MISHA GAVRILOVICH, ALEXANDER LUZGAREV, AND VLADIMIR SOSNILO Abstract. We record an observation of Nikolai Durov that there is a
More informationLectures - XXIII and XXIV Coproducts and Pushouts
Lectures - XXIII and XXIV Coproducts and Pushouts We now discuss further categorical constructions that are essential for the formulation of the Seifert Van Kampen theorem. We first discuss the notion
More informationDerived Algebraic Geometry I: Stable -Categories
Derived Algebraic Geometry I: Stable -Categories October 8, 2009 Contents 1 Introduction 2 2 Stable -Categories 3 3 The Homotopy Category of a Stable -Category 6 4 Properties of Stable -Categories 12 5
More informationChapter 6. Properties of Regular Languages
Chapter 6 Properties of Regular Languages Regular Sets and Languages Claim(1). The family of languages accepted by FSAs consists of precisely the regular sets over a given alphabet. Every regular set is
More informationContext Free Grammars
Automata and Formal Languages Context Free Grammars Sipser pages 101-111 Lecture 11 Tim Sheard 1 Formal Languages 1. Context free languages provide a convenient notation for recursive description of languages.
More informationTree sets. Reinhard Diestel
1 Tree sets Reinhard Diestel Abstract We study an abstract notion of tree structure which generalizes treedecompositions of graphs and matroids. Unlike tree-decompositions, which are too closely linked
More informationBoolean Algebra and Propositional Logic
Boolean Algebra and Propositional Logic Takahiro Kato June 23, 2015 This article provides yet another characterization of Boolean algebras and, using this characterization, establishes a more direct connection
More informationSection 1 (closed-book) Total points 30
CS 454 Theory of Computation Fall 2011 Section 1 (closed-book) Total points 30 1. Which of the following are true? (a) a PDA can always be converted to an equivalent PDA that at each step pops or pushes
More informationIsomorphisms between pattern classes
Journal of Combinatorics olume 0, Number 0, 1 8, 0000 Isomorphisms between pattern classes M. H. Albert, M. D. Atkinson and Anders Claesson Isomorphisms φ : A B between pattern classes are considered.
More informationBoolean Algebra and Propositional Logic
Boolean Algebra and Propositional Logic Takahiro Kato September 10, 2015 ABSTRACT. This article provides yet another characterization of Boolean algebras and, using this characterization, establishes a
More informationDiscrete Mathematics: Lectures 6 and 7 Sets, Relations, Functions and Counting Instructor: Arijit Bishnu Date: August 4 and 6, 2009
Discrete Mathematics: Lectures 6 and 7 Sets, Relations, Functions and Counting Instructor: Arijit Bishnu Date: August 4 and 6, 2009 Our main goal is here is to do counting using functions. For that, we
More informationNotes on Ordered Sets
Notes on Ordered Sets Mariusz Wodzicki September 10, 2013 1 Vocabulary 1.1 Definitions Definition 1.1 A binary relation on a set S is said to be a partial order if it is reflexive, x x, weakly antisymmetric,
More informationDISTINGUISHING PARTITIONS AND ASYMMETRIC UNIFORM HYPERGRAPHS
DISTINGUISHING PARTITIONS AND ASYMMETRIC UNIFORM HYPERGRAPHS M. N. ELLINGHAM AND JUSTIN Z. SCHROEDER In memory of Mike Albertson. Abstract. A distinguishing partition for an action of a group Γ on a set
More informationBEN KNUDSEN. Conf k (f) Conf k (Y )
CONFIGURATION SPACES IN ALGEBRAIC TOPOLOGY: LECTURE 2 BEN KNUDSEN We begin our study of configuration spaces by observing a few of their basic properties. First, we note that, if f : X Y is an injective
More informationThe Hurewicz Theorem
The Hurewicz Theorem April 5, 011 1 Introduction The fundamental group and homology groups both give extremely useful information, particularly about path-connected spaces. Both can be considered as functors,
More informationMath 210B. Profinite group cohomology
Math 210B. Profinite group cohomology 1. Motivation Let {Γ i } be an inverse system of finite groups with surjective transition maps, and define Γ = Γ i equipped with its inverse it topology (i.e., the
More information9. Birational Maps and Blowing Up
72 Andreas Gathmann 9. Birational Maps and Blowing Up In the course of this class we have already seen many examples of varieties that are almost the same in the sense that they contain isomorphic dense
More informationFOUNDATIONS OF ALGEBRAIC GEOMETRY CLASS 2
FOUNDATIONS OF ALGEBRAIC GEOMETRY CLASS 2 RAVI VAKIL CONTENTS 1. Where we were 1 2. Yoneda s lemma 2 3. Limits and colimits 6 4. Adjoints 8 First, some bureaucratic details. We will move to 380-F for Monday
More informationCongruence Boolean Lifting Property
Congruence Boolean Lifting Property George GEORGESCU and Claudia MUREŞAN University of Bucharest Faculty of Mathematics and Computer Science Academiei 14, RO 010014, Bucharest, Romania Emails: georgescu.capreni@yahoo.com;
More informationCHAPTER 3: THE INTEGERS Z
CHAPTER 3: THE INTEGERS Z MATH 378, CSUSM. SPRING 2009. AITKEN 1. Introduction The natural numbers are designed for measuring the size of finite sets, but what if you want to compare the sizes of two sets?
More informationParikh s theorem. Håkan Lindqvist
Parikh s theorem Håkan Lindqvist Abstract This chapter will discuss Parikh s theorem and provide a proof for it. The proof is done by induction over a set of derivation trees, and using the Parikh mappings
More information34.1 Polynomial time. Abstract problems
< Day Day Up > 34.1 Polynomial time We begin our study of NP-completeness by formalizing our notion of polynomial-time solvable problems. These problems are generally regarded as tractable, but for philosophical,
More informationCategory Theory. Categories. Definition.
Category Theory Category theory is a general mathematical theory of structures, systems of structures and relationships between systems of structures. It provides a unifying and economic mathematical modeling
More informationMath 535a Homework 5
Math 535a Homework 5 Due Monday, March 20, 2017 by 5 pm Please remember to write down your name on your assignment. 1. Let (E, π E ) and (F, π F ) be (smooth) vector bundles over a common base M. A vector
More informationA shrinking lemma for random forbidding context languages
Theoretical Computer Science 237 (2000) 149 158 www.elsevier.com/locate/tcs A shrinking lemma for random forbidding context languages Andries van der Walt a, Sigrid Ewert b; a Department of Mathematics,
More informationPartial cubes: structures, characterizations, and constructions
Partial cubes: structures, characterizations, and constructions Sergei Ovchinnikov San Francisco State University, Mathematics Department, 1600 Holloway Ave., San Francisco, CA 94132 Abstract Partial cubes
More informationEquational Logic. Chapter Syntax Terms and Term Algebras
Chapter 2 Equational Logic 2.1 Syntax 2.1.1 Terms and Term Algebras The natural logic of algebra is equational logic, whose propositions are universally quantified identities between terms built up from
More informationAlgebraic Geometry Spring 2009
MIT OpenCourseWare http://ocw.mit.edu 18.726 Algebraic Geometry Spring 2009 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms. 18.726: Algebraic Geometry
More informationFORMAL GLUEING OF MODULE CATEGORIES
FORMAL GLUEING OF MODULE CATEGORIES BHARGAV BHATT Fix a noetherian scheme X, and a closed subscheme Z with complement U. Our goal is to explain a result of Artin that describes how coherent sheaves on
More information1. Introduction. Let C be a Waldhausen category (the precise definition
K-THEORY OF WLDHUSEN CTEGORY S SYMMETRIC SPECTRUM MITY BOYRCHENKO bstract. If C is a Waldhausen category (i.e., a category with cofibrations and weak equivalences ), it is known that one can define its
More informationSJÄLVSTÄNDIGA ARBETEN I MATEMATIK
SJÄLVSTÄNDIGA ARBETEN I MATEMATIK MATEMATISKA INSTITUTIONEN, STOCKHOLMS UNIVERSITET Equivariant Sheaves on Topological Categories av Johan Lindberg 2015 - No 7 MATEMATISKA INSTITUTIONEN, STOCKHOLMS UNIVERSITET,
More informationProceedings of the 12th International Workshop on Graph Transformation and Visual Modeling Techniques (GTVMT 2013)
Electronic Communications of the EASST Volume 58 (2013) Proceedings of the 12th International Workshop on raph Transformation and Visual Modeling Techniques (TVMT 2013) Analysis of Hypergraph Transformation
More informationExercises on chapter 0
Exercises on chapter 0 1. A partially ordered set (poset) is a set X together with a relation such that (a) x x for all x X; (b) x y and y x implies that x = y for all x, y X; (c) x y and y z implies that
More informationMorphically Primitive Words (Extended Abstract)
Morphically Primitive Words (Extended Abstract) Daniel Reidenbach 1 and Johannes C. Schneider 2, 1 Department of Computer Science, Loughborough University, Loughborough, LE11 3TU, England reidenba@informatik.uni-kl.de
More informationCategory Theory. Travis Dirle. December 12, 2017
Category Theory 2 Category Theory Travis Dirle December 12, 2017 2 Contents 1 Categories 1 2 Construction on Categories 7 3 Universals and Limits 11 4 Adjoints 23 5 Limits 31 6 Generators and Projectives
More informationAlgebraic Geometry: Limits and Colimits
Algebraic Geometry: Limits and Coits Limits Definition.. Let I be a small category, C be any category, and F : I C be a functor. If for each object i I and morphism m ij Mor I (i, j) there is an associated
More informationLeft-Forbidding Cooperating Distributed Grammar Systems
Left-Forbidding Cooperating Distributed Grammar Systems Filip Goldefus a, Tomáš Masopust b,, Alexander Meduna a a Faculty of Information Technology, Brno University of Technology Božetěchova 2, Brno 61266,
More informationA Grothendieck site is a small category C equipped with a Grothendieck topology T. A Grothendieck topology T consists of a collection of subfunctors
Contents 5 Grothendieck topologies 1 6 Exactness properties 10 7 Geometric morphisms 17 8 Points and Boolean localization 22 5 Grothendieck topologies A Grothendieck site is a small category C equipped
More informationLecture 9: Sheaves. February 11, 2018
Lecture 9: Sheaves February 11, 2018 Recall that a category X is a topos if there exists an equivalence X Shv(C), where C is a small category (which can be assumed to admit finite limits) equipped with
More informationPerfect matchings in highly cyclically connected regular graphs
Perfect matchings in highly cyclically connected regular graphs arxiv:1709.08891v1 [math.co] 6 Sep 017 Robert Lukot ka Comenius University, Bratislava lukotka@dcs.fmph.uniba.sk Edita Rollová University
More informationAnother algorithm for nonnegative matrices
Linear Algebra and its Applications 365 (2003) 3 12 www.elsevier.com/locate/laa Another algorithm for nonnegative matrices Manfred J. Bauch University of Bayreuth, Institute of Mathematics, D-95440 Bayreuth,
More informationEXAMPLES AND EXERCISES IN BASIC CATEGORY THEORY
EXAMPLES AND EXERCISES IN BASIC CATEGORY THEORY 1. Categories 1.1. Generalities. I ve tried to be as consistent as possible. In particular, throughout the text below, categories will be denoted by capital
More informationForschungsberichte der Fakultät IV Elektrotechnik und Informatik. Concurrency in Reconfigurable Place/Transition Systems:
Forschungsberichte der Fakultät IV Elektrotechnik und Informatik Concurrency in Reconfigurable Place/Transition Systems: Independence of Net Transformations as well as Net Transformations and Token Firing
More informationSets and Functions. (As we will see, in describing a set the order in which elements are listed is irrelevant).
Sets and Functions 1. The language of sets Informally, a set is any collection of objects. The objects may be mathematical objects such as numbers, functions and even sets, or letters or symbols of any
More informationBASIC MATHEMATICAL TECHNIQUES
CHAPTER 1 ASIC MATHEMATICAL TECHNIQUES 1.1 Introduction To understand automata theory, one must have a strong foundation about discrete mathematics. Discrete mathematics is a branch of mathematics dealing
More informationSETS AND FUNCTIONS JOSHUA BALLEW
SETS AND FUNCTIONS JOSHUA BALLEW 1. Sets As a review, we begin by considering a naive look at set theory. For our purposes, we define a set as a collection of objects. Except for certain sets like N, Z,
More informationCSCE 551: Chin-Tser Huang. University of South Carolina
CSCE 551: Theory of Computation Chin-Tser Huang huangct@cse.sc.edu University of South Carolina Church-Turing Thesis The definition of the algorithm came in the 1936 papers of Alonzo Church h and Alan
More informationInequational Deduction as Term Graph Rewriting 1
TERMGRAPH Preliminary Version Inequational Deduction as Term Graph Rewriting Andrea Corradini and Fabio Gadducci Dipartimento di Informatica, Università di Pisa, Italy Wolfram Kahl 3 Department of Computing
More information3. The Sheaf of Regular Functions
24 Andreas Gathmann 3. The Sheaf of Regular Functions After having defined affine varieties, our next goal must be to say what kind of maps between them we want to consider as morphisms, i. e. as nice
More informationCHAPTER 0: BACKGROUND (SPRING 2009 DRAFT)
CHAPTER 0: BACKGROUND (SPRING 2009 DRAFT) MATH 378, CSUSM. SPRING 2009. AITKEN This chapter reviews some of the background concepts needed for Math 378. This chapter is new to the course (added Spring
More informationNotes about Filters. Samuel Mimram. December 6, 2012
Notes about Filters Samuel Mimram December 6, 2012 1 Filters and ultrafilters Definition 1. A filter F on a poset (L, ) is a subset of L which is upwardclosed and downward-directed (= is a filter-base):
More informationStabilization as a CW approximation
Journal of Pure and Applied Algebra 140 (1999) 23 32 Stabilization as a CW approximation A.D. Elmendorf Department of Mathematics, Purdue University Calumet, Hammond, IN 46323, USA Communicated by E.M.
More informationSeminaar Abstrakte Wiskunde Seminar in Abstract Mathematics Lecture notes in progress (27 March 2010)
http://math.sun.ac.za/amsc/sam Seminaar Abstrakte Wiskunde Seminar in Abstract Mathematics 2009-2010 Lecture notes in progress (27 March 2010) Contents 2009 Semester I: Elements 5 1. Cartesian product
More informationAlgebraic Geometry
MIT OpenCourseWare http://ocw.mit.edu 18.726 Algebraic Geometry Spring 2009 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms. 18.726: Algebraic Geometry
More informationLax Extensions of Coalgebra Functors and Their Logic
Lax Extensions of Coalgebra Functors and Their Logic Johannes Marti, Yde Venema ILLC, University of Amsterdam Abstract We discuss the use of relation lifting in the theory of set-based coalgebra and coalgebraic
More informationLIST OF CORRECTIONS LOCALLY PRESENTABLE AND ACCESSIBLE CATEGORIES
LIST OF CORRECTIONS LOCALLY PRESENTABLE AND ACCESSIBLE CATEGORIES J.Adámek J.Rosický Cambridge University Press 1994 Version: June 2013 The following is a list of corrections of all mistakes that have
More informationGenerating All Circular Shifts by Context-Free Grammars in Chomsky Normal Form
Generating All Circular Shifts by Context-Free Grammars in Chomsky Normal Form Peter R.J. Asveld Department of Computer Science, Twente University of Technology P.O. Box 217, 7500 AE Enschede, the Netherlands
More informationInduced Subgraph Isomorphism on proper interval and bipartite permutation graphs
Induced Subgraph Isomorphism on proper interval and bipartite permutation graphs Pinar Heggernes Pim van t Hof Daniel Meister Yngve Villanger Abstract Given two graphs G and H as input, the Induced Subgraph
More informationCOMMUTATIVE ALGEBRA LECTURE 1: SOME CATEGORY THEORY
COMMUTATIVE ALGEBRA LECTURE 1: SOME CATEGORY THEORY VIVEK SHENDE A ring is a set R with two binary operations, an addition + and a multiplication. Always there should be an identity 0 for addition, an
More informationReview of category theory
Review of category theory Proseminar on stable homotopy theory, University of Pittsburgh Friday 17 th January 2014 Friday 24 th January 2014 Clive Newstead Abstract This talk will be a review of the fundamentals
More informationPushouts, Pullbacks and Their Properties
Pushouts, Pullbacks and Their Properties Joonwon Choi Abstract Graph rewriting has numerous applications, such as software engineering and biology techniques. This technique is theoretically based on pushouts
More informationFinite Induced Graph Ramsey Theory: On Partitions of Subgraphs
inite Induced Graph Ramsey Theory: On Partitions of Subgraphs David S. Gunderson and Vojtěch Rödl Emory University, Atlanta GA 30322. Norbert W. Sauer University of Calgary, Calgary, Alberta, Canada T2N
More informationGeometric Steiner Trees
Geometric Steiner Trees From the book: Optimal Interconnection Trees in the Plane By Marcus Brazil and Martin Zachariasen Part 3: Computational Complexity and the Steiner Tree Problem Marcus Brazil 2015
More informationAMALGAMATIONS OF CATEGORIES
AMALGAMATIONS OF CATEGORIES JOHN MACDONALD AND LAURA SCULL Abstract. We consider the pushout of embedding functors in Cat, the category of small categories. We show that if the embedding functors satisfy
More informationSergey Norin Department of Mathematics and Statistics McGill University Montreal, Quebec H3A 2K6, Canada. and
NON-PLANAR EXTENSIONS OF SUBDIVISIONS OF PLANAR GRAPHS Sergey Norin Department of Mathematics and Statistics McGill University Montreal, Quebec H3A 2K6, Canada and Robin Thomas 1 School of Mathematics
More informationDerived Algebraic Geometry IX: Closed Immersions
Derived Algebraic Geometry I: Closed Immersions November 5, 2011 Contents 1 Unramified Pregeometries and Closed Immersions 4 2 Resolutions of T-Structures 7 3 The Proof of Proposition 1.0.10 14 4 Closed
More informationChapter One. The Real Number System
Chapter One. The Real Number System We shall give a quick introduction to the real number system. It is imperative that we know how the set of real numbers behaves in the way that its completeness and
More information7 The structure of graphs excluding a topological minor
7 The structure of graphs excluding a topological minor Grohe and Marx [39] proved the following structure theorem for graphs excluding a topological minor: Theorem 7.1 ([39]). For every positive integer
More informationRepresentable presheaves
Representable presheaves March 15, 2017 A presheaf on a category C is a contravariant functor F on C. In particular, for any object X Ob(C) we have the presheaf (of sets) represented by X, that is Hom
More informationBoolean Algebras, Boolean Rings and Stone s Representation Theorem
Boolean Algebras, Boolean Rings and Stone s Representation Theorem Hongtaek Jung December 27, 2017 Abstract This is a part of a supplementary note for a Logic and Set Theory course. The main goal is to
More informationExercises for Unit VI (Infinite constructions in set theory)
Exercises for Unit VI (Infinite constructions in set theory) VI.1 : Indexed families and set theoretic operations (Halmos, 4, 8 9; Lipschutz, 5.3 5.4) Lipschutz : 5.3 5.6, 5.29 5.32, 9.14 1. Generalize
More informationMathematics 114L Spring 2018 D.A. Martin. Mathematical Logic
Mathematics 114L Spring 2018 D.A. Martin Mathematical Logic 1 First-Order Languages. Symbols. All first-order languages we consider will have the following symbols: (i) variables v 1, v 2, v 3,... ; (ii)
More informationABSTRACT DIFFERENTIAL GEOMETRY VIA SHEAF THEORY
ABSTRACT DIFFERENTIAL GEOMETRY VIA SHEAF THEORY ARDA H. DEMIRHAN Abstract. We examine the conditions for uniqueness of differentials in the abstract setting of differential geometry. Then we ll come up
More informationAdjunctions! Everywhere!
Adjunctions! Everywhere! Carnegie Mellon University Thursday 19 th September 2013 Clive Newstead Abstract What do free groups, existential quantifiers and Stone-Čech compactifications all have in common?
More informationAn Outline of Rule-Based Renement for Petri Nets. Julia Padberg. Technical University of Berlin. Institute for Communication- and Software-Technique
An Outline of Rule-Based Renement for Petri Nets Julia Padberg Technical University of Berlin Institute for Communication- and Software-Technique FB 13 Sekr. 6-1 D-10587 Berlin e-mail: padberg@cs.tu-berlin.de
More information1.3 Vertex Degrees. Vertex Degree for Undirected Graphs: Let G be an undirected. Vertex Degree for Digraphs: Let D be a digraph and y V (D).
1.3. VERTEX DEGREES 11 1.3 Vertex Degrees Vertex Degree for Undirected Graphs: Let G be an undirected graph and x V (G). The degree d G (x) of x in G: the number of edges incident with x, each loop counting
More informationTriangle-free graphs with no six-vertex induced path
Triangle-free graphs with no six-vertex induced path Maria Chudnovsky 1, Paul Seymour 2, Sophie Spirkl Princeton University, Princeton, NJ 08544 Mingxian Zhong Columbia University, New York, NY 10027 June
More informationFundamental Theory for Typed Attributed Graph Transformation
Fundamental Theory for Typed Attributed Graph Transformation Hartmut Ehrig, Ulrike Prange, and Gabriele Taentzer Technical University of Berlin, Germany ehrig ullip gabi@cs.tu-berlin.de Abstract. The concept
More informationcse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska
cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska LECTURE 5 CHAPTER 2 FINITE AUTOMATA 1. Deterministic Finite Automata DFA 2. Nondeterministic Finite Automata NDFA 3. Finite Automata
More informationPICARD GROUPS OF MODULI PROBLEMS II
PICARD GROUPS OF MODULI PROBLEMS II DANIEL LI 1. Recap Let s briefly recall what we did last time. I discussed the stack BG m, as classifying line bundles by analyzing the sense in which line bundles may
More informationSTOKES THEOREM ON MANIFOLDS
STOKES THEOREM ON MANIFOLDS GIDEON DRESDNER Abstract. The generalization of the Fundamental Theorem of Calculus to higher dimensions requires fairly sophisticated geometric and algebraic machinery. In
More informationdoi: /j.jsc
doi: 10.1016/j.jsc.2009.10.002 Origami Fold as Algebraic Graph Rewriting Tetsuo Ida Department of Computer Science, University of Tsukuba Tsukuba, 305-8573, Japan Hidekazu Takahashi 1 Shiga Prefectural
More informationQUIVERS AND LATTICES.
QUIVERS AND LATTICES. KEVIN MCGERTY We will discuss two classification results in quite different areas which turn out to have the same answer. This note is an slightly expanded version of the talk given
More informationDirect Limits. Mathematics 683, Fall 2013
Direct Limits Mathematics 683, Fall 2013 In this note we define direct limits and prove their basic properties. This notion is important in various places in algebra. In particular, in algebraic geometry
More informationRelations Graphical View
Introduction Relations Computer Science & Engineering 235: Discrete Mathematics Christopher M. Bourke cbourke@cse.unl.edu Recall that a relation between elements of two sets is a subset of their Cartesian
More informationOperads. Spencer Liang. March 10, 2015
Operads Spencer Liang March 10, 2015 1 Introduction The notion of an operad was created in order to have a well-defined mathematical object which encodes the idea of an abstract family of composable n-ary
More informationOut-colourings of Digraphs
Out-colourings of Digraphs N. Alon J. Bang-Jensen S. Bessy July 13, 2017 Abstract We study vertex colourings of digraphs so that no out-neighbourhood is monochromatic and call such a colouring an out-colouring.
More information