stringtranslate.com

Gráfico con raíz

En matemáticas , y en particular en teoría de grafos , un grafo con raíz es un grafo en el que se ha distinguido un vértice como raíz. [1] [2] Se han estudiado versiones dirigidas y no dirigidas de grafos con raíz, y también existen definiciones variantes que permiten múltiples raíces.

Los grafos con raíz también pueden conocerse (según su aplicación) como grafos puntiagudos o grafos de flujo . En algunas de las aplicaciones de estos grafos, existe un requisito adicional de que todo el grafo sea accesible desde el vértice raíz.

Variaciones

En la teoría de grafos topológicos , la noción de grafo con raíz puede extenderse para considerar múltiples vértices o múltiples aristas como raíces. Los primeros a veces se denominan grafos con raíz en vértices para distinguirlos de los grafos con raíz en aristas en este contexto. [3] Los grafos con múltiples nodos designados como raíces también son de cierto interés en combinatoria , en el área de grafos aleatorios . [4] Estos grafos también se denominan grafos con múltiples raíces . [5]

Los términos grafo dirigido con raíz o dígrafo con raíz también ven variación en las definiciones. El trasplante obvio es considerar un dígrafo con raíz identificando un nodo particular como raíz. [6] [7] Sin embargo, en informática , estos términos comúnmente se refieren a una noción más estrecha; a saber, un grafo dirigido con raíz es un dígrafo con un nodo distinguido r , de modo que hay un camino dirigido desde r a cualquier nodo distinto de r . [8] [9] [10] [11] Los autores que dan la definición más general pueden referirse a los grafos que cumplen con la definición más estrecha como dígrafos con raíz conexos [6] o grafos con raíz accesibles (véase § Teoría de conjuntos).

En The Art of Computer Programming, los dígrafos con raíz se definen de forma un poco más amplia, es decir, un grafo dirigido se denomina con raíz si tiene al menos un nodo que puede alcanzar a todos los demás nodos. Knuth señala que la noción así definida es una especie de intermedio entre las nociones de dígrafo fuertemente conectado y dígrafo conectado . [12]

Aplicaciones

Gráficos de flujo

En informática , los grafos con raíz en los que el vértice raíz puede alcanzar todos los demás vértices se denominan grafos de flujo o flowgraphs . [13] A veces se añade una restricción adicional que especifica que un grafo de flujo debe tener un único vértice de salida ( sumidero ). [14]

Los gráficos de flujo pueden verse como abstracciones de diagramas de flujo , con los elementos no estructurales (contenidos y tipos de nodos) eliminados. [15] [16] Quizás la subclase más conocida de gráficos de flujo son los gráficos de flujo de control , utilizados en compiladores y análisis de programas . Un gráfico de flujo arbitrario puede convertirse en un gráfico de flujo de control realizando una contracción de borde en cada borde que sea el único borde saliente de su fuente y el único borde entrante en su destino. [17] Otro tipo de gráfico de flujo comúnmente utilizado es el gráfico de llamadas , en el que los nodos corresponden a subrutinas completas . [18]

El concepto general de gráfico de flujo se ha denominado gráfico de programa [19], pero el mismo término también se ha utilizado para denotar únicamente gráficos de flujo de control [20]. Los gráficos de flujo también se han denominado gráficos de flujo sin etiqueta [21] y gráficos de flujo propios [15] . Estos gráficos se utilizan a veces en pruebas de software [15] [18]

Cuando se requiere que tengan una única salida, los gráficos de flujo tienen dos propiedades que no comparten con los gráficos dirigidos en general: los gráficos de flujo se pueden anidar, lo que es el equivalente a una llamada de subrutina (aunque no existe la noción de pasar parámetros), y los gráficos de flujo también se pueden secuenciar, lo que es el equivalente a la ejecución secuencial de dos piezas de código. [22] Los gráficos de flujo principales se definen como gráficos de flujo que no se pueden descomponer mediante anidación o secuenciación utilizando un patrón elegido de subgráficos, por ejemplo, los primitivos de la programación estructurada . [23] Se han realizado investigaciones teóricas para determinar, por ejemplo, la proporción de gráficos de flujo principales dado un conjunto elegido de gráficos. [24]

Teoría de conjuntos

Peter Aczel ha utilizado grafos dirigidos con raíz de manera que cada nodo sea alcanzable desde la raíz (a los que llama grafos apuntados accesibles ) para formular el axioma antifundamental de Aczel en la teoría de conjuntos no bien fundados . En este contexto, cada vértice de un grafo apuntado accesible modela un conjunto (no bien fundado) dentro de la teoría de conjuntos (no bien fundados) de Aczel, y un arco desde un vértice v hasta un vértice w modela que v es un elemento de w . El axioma antifundamental de Aczel establece que cada grafo apuntado accesible modela una familia de conjuntos (no bien fundados) de esta manera. [25]

Teoría de juegos combinatorios

Cualquier juego combinatorio puede asociarse a un grafo dirigido con raíz cuyos vértices son posiciones del juego, cuyos bordes son movimientos y cuya raíz es la posición inicial del juego. Este grafo es importante en el estudio de la complejidad del juego , donde la complejidad del espacio de estados es el número de vértices del grafo.

Enumeración combinatoria

El número de gráficos no dirigidos con raíz para 1, 2, ... nodos es 1, 2, 6, 20, 90, 544, ... (secuencia A000666 en la OEIS ).

Conceptos relacionados

Un caso especial de interés son los árboles con raíz , los árboles con un vértice raíz distinguido. Si los caminos dirigidos desde la raíz en el dígrafo con raíz se restringen adicionalmente para que sean únicos, entonces la noción obtenida es la de arborescencia (con raíz) —el equivalente en grafo dirigido de un árbol con raíz. [7] Un grafo con raíz contiene una arborescencia con la misma raíz si y solo si se puede llegar a todo el grafo desde la raíz, y los científicos informáticos han estudiado problemas algorítmicos para encontrar arborescencias óptimas. [26]

Los gráficos con raíz se pueden combinar utilizando el producto raíz de gráficos . [27]

Véase también

Referencias

  1. ^ Zwillinger, Daniel (2011), Tablas y fórmulas matemáticas estándar del CRC, 32.ª edición , CRC Press, pág. 150, ISBN 978-1-4398-3550-0
  2. ^ Harary, Frank (1955), "El número de grafos lineales, dirigidos, con raíz y conexos", Transactions of the American Mathematical Society , 78 (2): 445–463, doi : 10.1090/S0002-9947-1955-0068198-2 , MR  0068198. Véase pág. 454.
  3. ^ Gross, Jonathan L.; Yellen, Jay; Zhang, Ping (2013), Manual de teoría de grafos (2.ª ed.), CRC Press, págs. 764–765, ISBN 978-1-4398-8018-0
  4. ^ Spencer, Joel (2001), La extraña lógica de los gráficos aleatorios , Springer Science & Business Media, capítulo 4, ISBN 978-3-540-41654-8
  5. ^ Harary (1955, pág. 455).
  6. ^ de Björner, Anders ; Ziegler, Günter M. (1992), "8. Introducción a los greedoids" (PDF) , en White, Neil (ed.), Matroid Applications, Encyclopedia of Mathematics and its Applications, vol. 40, Cambridge: Cambridge University Press, págs. 284–357, doi :10.1017/CBO9780511662041.009, ISBN 0-521-38165-7, MR  1165537, Zbl  0772.05026, En este contexto, un dígrafo con raíz Δ = ( V , E , r ) se llama conexo (o 1-conexo ) si hay un camino dirigido desde la raíz a cada vértice.Véase en particular la pág. 307.
  7. ^ ab Gordon, Gary; McMahon, Elizabeth (febrero de 1989), "Un polinomio greedoide que distingue arborescencias enraizadas" (PDF) , Actas de la American Mathematical Society , 107 (2): 287, CiteSeerX 10.1.1.308.2526 , doi : 10.1090/s0002-9939-1989-0967486-0 , Un subdígrafo enraizado F es una arborescencia enraizada si el vértice raíz ∗ está en F y, para cada vértice v en F , hay un camino dirigido único en F desde ∗ hasta v . Por lo tanto, las arborescencias enraizadas en dígrafos corresponden a árboles enraizados en grafos no dirigidos. 
  8. ^ Ramachandran, Vijaya (1988), "Algoritmos paralelos rápidos para gráficos de flujo reducibles", Computaciones concurrentes : 117–138, doi : 10.1007/978-1-4684-5511-3_8, ISBN 978-1-4684-5513-7Un grafo dirigido con raíz o un grafo de flujo G = ( V , A , r ) es un grafo dirigido con un vértice distinguido r tal que hay un camino dirigido en G desde r a cada vértice v en Vr . . Véase en particular la pág. 122.
  9. ^ Okamoto, Yoshio; Nakamura, Masataka (2003), "La caracterización menor prohibida de antimatroides de búsqueda de línea de dígrafos enraizados" (PDF) , Matemáticas Aplicadas Discretas , 131 (2): 523–533, doi : 10.1016/S0166-218X(02)00471-7 , Un dígrafo enraizado es un triple G =( V , E , r ) donde ( V ∪ { r }, E ) es un dígrafo y r es un vértice especificado llamado raíz tal que existe un camino desde r a cada vértice de V .. Véase en particular la pág. 524.
  10. ^ Jain, Abhinandan (2010), Dinámica de robots y multicuerpos: análisis y algoritmos , Springer Science & Business Media, pág. 136, ISBN 978-1-4419-7267-5Un dígrafo con raíz es un dígrafo conectado con un solo nodo raíz que es el ancestro de todos los demás nodos del dígrafo.
  11. ^ Chen, Xujin; Zang, Wenan (2006), "Un algoritmo eficiente para encontrar empaquetamientos de ciclo máximo en gráficos de flujo reducibles", Algorithmica , 44 (3): 195–211, doi :10.1007/s00453-005-1174-x, hdl : 10722/48600 , MR  2199991, S2CID  5235131
  12. ^ Knuth, Donald (1997), "2.3.4.2. Árboles orientados", El arte de la programación informática , vol. 1 (3.ª ed.), Pearson Education, pág. 372, ISBN 0-201-89683-4Se dice que tiene raíz si existe al menos una raíz, es decir, al menos un vértice R tal que existe un camino orientado de V a R para todo VR .
  13. ^ Gross, Yellen y Zhang (2013, pág. 1372).
  14. ^ Fenton, Norman Elliott; Hill, Gillian A. (1993), Construcción y análisis de sistemas: un marco matemático y lógico , McGraw-Hill, pág. 319, ISBN 978-0-07-707431-9.
  15. ^ abc Zuse, Horst (1998), Un marco de medición de software , Walter de Gruyter, págs. 32-33, ISBN 978-3-11-080730-1
  16. ^ Samaroo, Angelina; Thompson, Geoff; Williams, Peter (2010), Pruebas de software: una guía básica de ISTQB-ISEB , BCS, The Chartered Institute, pág. 108, ISBN 978-1-906124-76-2
  17. ^ Tarr, Peri L.; Wolf, Alexander L. (2011), Ingeniería de software: las contribuciones continuas de Leon J. Osterweil , Springer Science & Business Media, pág. 58, ISBN 978-3-642-19823-6
  18. ^ ab Jalote, Pankaj (1997), Un enfoque integrado para la ingeniería de software , Springer Science & Business Media, pág. 372, ISBN 978-0-387-94899-7
  19. ^ Thulasiraman, K.; Swamy, MNS (1992), Gráficos: teoría y algoritmos , John Wiley & Sons, pág. 361, ISBN 978-0-471-51356-8
  20. ^ Cechich, Alejandra; Piattini, Mario; Vallecillo, Antonio (2003), Calidad de software basada en componentes: métodos y técnicas , Springer Science & Business Media, pág. 105, ISBN 978-3-540-40503-0
  21. ^ Beineke, Lowell W.; Wilson, Robin J. (1997), Conexiones gráficas: relaciones entre la teoría de grafos y otras áreas de las matemáticas, Clarendon Press, pág. 237, ISBN 978-0-19-851497-8
  22. ^ Fenton y Hill (1993, pág. 323).
  23. ^ Fenton y Hill (1993, pág. 339).
  24. ^ Cooper, C. (2008), "Enumeración asintótica de diagramas de flujo predicado-unión", Combinatoria, probabilidad y computación , 5 (3): 215–226, doi :10.1017/S0963548300001991, S2CID  10313545
  25. ^ Aczel, Peter (1988), Conjuntos no bien fundados (PDF) , CSLI Lecture Notes, vol. 14, Stanford, CA: Stanford University, Centro para el Estudio del Lenguaje y la Información, ISBN 0-937073-22-9, LCCN  87-17857, MR  0940014, archivado desde el original (PDF) el 26 de marzo de 2015
  26. ^ Drescher, Matthew; Vetta, Adrian (2010), "Un algoritmo de aproximación para el problema de la arborescencia con máxima extensión de hojas", ACM Trans. Algorithms , 6 (3): 46:1–46:18, doi :10.1145/1798596.1798599, S2CID  13987985.
  27. ^ Godsil, CD ; McKay, BD (1978), "Un nuevo producto gráfico y su espectro" (PDF) , Bull. Austral. Math. Soc. , 18 (1): 21–28, doi : 10.1017/S0004972700007760 , MR  0494910

Lectura adicional

Enlaces externos