{"id":1010,"date":"2026-03-25T11:07:37","date_gmt":"2026-03-25T10:07:37","guid":{"rendered":"https:\/\/clases.jesussoto.es\/?p=1010"},"modified":"2026-03-21T19:16:04","modified_gmt":"2026-03-21T18:16:04","slug":"mad-graphs-grafos-con-maxima","status":"publish","type":"post","link":"https:\/\/clases.jesussoto.es\/?p=1010","title":{"rendered":"MAD: graphs: grafos con maxima"},"content":{"rendered":"<h2>graphs<\/h2>\n<p>El paquete <em>graphs<\/em> proporciona estructuras de datos de grafos y d\u00edgrafos para Maxima. Los grafos y d\u00edgrafos son simples (no tienen aristas m\u00faltiples ni bucles), aunque los d\u00edgrafos pueden tener una arista dirigida de <strong>u<\/strong> a <strong>v<\/strong> y una arista dirigida de <strong>v<\/strong> a <strong>u<\/strong>.<\/p>\n<p style=\"text-align: center;\"><iframe loading=\"lazy\" title=\"Matem\u00e1tica Discreta con M\u00e1xima - Grafos - Jes\u00fas Soto\" width=\"640\" height=\"360\" src=\"https:\/\/www.youtube.com\/embed\/IZKvJgRk0dA?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/p>\n<p>Para trabajar con <em>graphs<\/em> es necesario cargar el paquete <em>graphs<\/em>. A continuaci\u00f3n, utilizamos el comando <\/p>\n<ul>\n<li><strong>create_graph<\/strong> (<em>v_list<\/em>, <em>e_list<\/em>): Creates a new graph on the set of vertices v_list and with edges e_list.<\/li>\n<\/ul>\n<p>y lo mostramos con  <\/p>\n<ul>\n<li><strong>draw_graph<\/strong> (graph, option1, &#8230;, optionk): Draws the graph using the draw package.<\/li>\n<\/ul>\n<p>Veamos un ejemplo:<\/p>\n<p><!-- Code cell --><\/p>\n<table>\n<tr style=\"border: 0px;\">\n<td style=\"width: 70px;vertical-align: top;padding: 1mm;\"><span class=\"prompt\">(%i1)<\/span><\/td>\n<td style=\"vertical-align: top;padding: 1mm;\"> <span class=\"input\"><span class=\"code_function\">load<\/span>(<span class=\"code_string\">\u00abgraphs\u00bb<\/span>)<span class=\"code_endofline\">;<\/span><\/span><\/td>\n<\/tr>\n<\/table>\n<p><math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><mtable><mlabeledtr columnalign=\"left\"><mtd><mtext\/><\/mtd><mtd><mo>0 errores, 0 advertencias<\/mo><\/mtd><\/mlabeledtr><mlabeledtr columnalign=\"left\"><mtd><mtext\/><\/mtd><mtd><mo>0 errores, 0 advertencias<\/mo><\/mtd><\/mlabeledtr><\/mtable><\/math><math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><mtable><mlabeledtr columnalign=\"left\"><mtd><mtext>(%o1) <\/mtext><\/mtd><mtd><mo>\/usr\/share\/maxima\/5.41.0\/share\/graphs\/graphs.mac<\/mo><\/mtd><\/mlabeledtr><\/mtable><\/math><!-- Code cell --><\/p>\n<table>\n<tr style=\"border: 0px;\">\n<td style=\"width: 70px;vertical-align: top;padding: 1mm;\"><span class=\"prompt\">(%i3)<\/span><\/td>\n<td style=\"vertical-align: top;padding: 1mm;\"> <span class=\"input\"><span class=\"code_variable\">g<\/span><span class=\"code_operator\">:<\/span><span class=\"code_function\">create_graph<\/span>([<span class=\"code_number\">1<\/span>,<span class=\"code_number\">2<\/span>,<span class=\"code_number\">3<\/span>,<span class=\"code_number\">4<\/span>], [[<span class=\"code_number\">1<\/span>,<span class=\"code_number\">2<\/span>], [<span class=\"code_number\">2<\/span>,<span class=\"code_number\">3<\/span>], [<span class=\"code_number\">1<\/span>,<span class=\"code_number\">3<\/span>],[<span class=\"code_number\">1<\/span>,<span class=\"code_number\">4<\/span>],[<span class=\"code_number\">2<\/span>,<span class=\"code_number\">4<\/span>]])<span class=\"code_endofline\">$<\/span><br \/><span class=\"code_function\">draw_graph<\/span>(<span class=\"code_variable\">g<\/span>)<span class=\"code_endofline\">$<\/span><\/span><\/td>\n<\/tr>\n<\/table>\n<p><math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><mtable><mlabeledtr columnalign=\"left\"><mtd><mtext>(%t3) <\/mtext><\/mtd><mtd\/><\/mlabeledtr><\/mtable><\/math><img decoding=\"async\" src=\"https:\/\/uploads.jesussoto.es\/grafos\/prueba_3.png\" width=\"200\" style=\"max-width:90%;\" loading=\"lazy\" alt=\" (Gr\u00e1ficos) \" class=\"aligncenter size-medium wp-image-1235\"\/><\/p>\n<hr\/>\n<p>Tambi\u00e9n podemos crear digrafos:<\/p>\n<p><!-- Code cell --><\/p>\n<table>\n<tr style=\"border: 0px;\">\n<td style=\"width: 70px;vertical-align: top;padding: 1mm;\"> <span class=\"prompt\">(%i5)<\/span><\/td>\n<td style=\"vertical-align: top;padding: 1mm;\"> <span class=\"input\"><span class=\"code_variable\">g<\/span><span class=\"code_operator\">:<\/span><span class=\"code_function\">create_graph<\/span>([<span class=\"code_number\">1<\/span>,<span class=\"code_number\">2<\/span>,<span class=\"code_number\">3<\/span>,<span class=\"code_number\">4<\/span>], [[<span class=\"code_number\">1<\/span>,<span class=\"code_number\">2<\/span>], [<span class=\"code_number\">2<\/span>,<span class=\"code_number\">4<\/span>], [<span class=\"code_number\">1<\/span>,<span class=\"code_number\">3<\/span>],[<span class=\"code_number\">1<\/span>,<span class=\"code_number\">4<\/span>],[<span class=\"code_number\">4<\/span>,<span class=\"code_number\">1<\/span>]],<span class=\"code_variable\">directed<\/span><span class=\"code_operator\">=<\/span> true)<span class=\"code_endofline\">$<\/span><br \/><span class=\"code_function\">draw_graph<\/span>(<span class=\"code_variable\">g<\/span>, <br \/> \u00a0\u00a0 <span class=\"code_variable\">show_id<\/span><span class=\"code_operator\">=<\/span>true,<br \/> \u00a0\u00a0 <span class=\"code_variable\">show_vertices<\/span><span class=\"code_operator\">=<\/span>[<span class=\"code_number\">1<\/span>,<span class=\"code_number\">2<\/span>,<span class=\"code_number\">3<\/span>,<span class=\"code_number\">4<\/span>],<br \/> \u00a0\u00a0 <span class=\"code_variable\">show_vertex_size<\/span><span class=\"code_operator\">=<\/span><span class=\"code_number\">3<\/span>,<br \/> \u00a0\u00a0 <span class=\"code_variable\">show_vertex_color<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">green<\/span>,<br \/> \u00a0\u00a0 <span class=\"code_variable\">edge_color<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">blue<\/span>,<br \/> \u00a0\u00a0 <span class=\"code_variable\">edge_width<\/span><span class=\"code_operator\">=<\/span><span class=\"code_number\">1<\/span>, \u00a0\u00a0\u00a0<br \/> \u00a0\u00a0 <span class=\"code_variable\">text_color<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">red<\/span>)<span class=\"code_endofline\">$<\/span><\/span><\/td>\n<\/tr>\n<\/table>\n<p><math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><mtable><mlabeledtr columnalign=\"left\"><mtd><mtext>(%t5) <\/mtext><\/mtd><mtd\/><\/mlabeledtr><\/mtable><\/math><img decoding=\"async\" src=\"https:\/\/uploads.jesussoto.es\/grafos\/prueba_5.png\" width=\"398\" style=\"max-width:90%;\" loading=\"lazy\" alt=\" (Gr\u00e1ficos) \" class=\"aligncenter size-medium wp-image-1235\"\/><\/p>\n<hr\/>\n<p>Las principales funciones para trabajar con grafos est\u00e1n en:<\/p>\n<ul>\n<li><a href=\"https:\/\/maths.cnam.fr\/Membres\/wilk\/MathMax\/help\/Maxima\/maxima_53.html\" rel=\"noopener\" target=\"_blank\">Funciones y variables para graphs<\/a><\/li>\n<\/ul>\n<blockquote><p><strong>Ejercicio:<\/strong> Construir el grafo \\(G_1(V,E)\\) <\/p>\n<div id=\"miGrafo2Cytoscape\" style=\"width: 500px; height: 300px;\"><\/div>\n<p><!-- [grafo_cytoscape] esto es necesario para que se vean los grafos--><br \/>\n<script>\ndocument.addEventListener('DOMContentLoaded', function() {\n  const container = document.getElementById('miGrafo2Cytoscape');\n  if (container) {\n    const cy = cytoscape({\n      container: container,\n      elements: [\n          { data: { id: 'n1', label: '1' } },\n          { data: { id: 'n2', label: '2' } },\n          { data: { id: 'n3', label: '3' } },\n          { data: { id: 'n4', label: '4' } },\n          { data: { id: 'n5', label: '5' } },\n          { data: { source: 'n1', target: 'n2', label: '' } },\n          { data: { source: 'n1', target: 'n4', label: '' } },\n          { data: { source: 'n1', target: 'n5', label: '' } },\n          { data: { source: 'n2', target: 'n3', label: '' } },\n          { data: { source: 'n5', target: 'n3', label: '' } },\n          { data: { source: 'n4', target: 'n3', label: '' } },\n          { data: { source: 'n4', target: 'n5', label: '' } }     ],\n      style: [\n          {\n            selector: 'node',\n            style: {\n              'background-color': '#000',\n              'label': 'data(label)',\n              'width': 15,  \/\/ Establece el ancho del nodo a 30 p\u00edxeles\n              'height': 15 \/\/ Establece la altura del nodo a 30 p\u00edxeles\n            }\n          },\n          {\n            selector: 'edge',\n            style: {\n              'width': 2,\n              'line-color': 'blue',\n              'label': 'data(label)',\n              'curve-style': 'bezier',\n              'target-arrow-shape': 'none' \/\/ triangle si es un grafo dirigido\n            }\n          }\n        ],\n        layout: {\n        name: 'grid'\n      },\n      zoomingEnabled: false \/\/ Deshabilita el zoom con la rueda del rat\u00f3n \n    });\n  } else {\n    console.error(\"No se encontr\u00f3 el contenedor con el ID 'miGrafo1Cytoscape'\");\n  }\n});\n<\/script>\n<\/p><\/blockquote>\n<p><script>\nfunction showHtmlDiv1a() {\n  var htmlShow1a = document.getElementById(\"html-show1a\");\n  if (htmlShow1a.style.display === \"none\") {\n    htmlShow1a.style.display = \"block\";\n  } else {\n    htmlShow1a.style.display = \"none\";\n  }\n}\n<\/script><\/p>\n<p><button onclick=\"showHtmlDiv1a()\">Soluci\u00f3n:<\/button><\/p>\n<div id=\"html-show1a\" style=\"display: none;\">\n<!-- Code cell --><\/p>\n<table>\n<tr style=\"border: 0px;\">\n<td style=\"width: 70px;vertical-align: top;padding: 1mm;\"><span class=\"prompt\">(%i4) <\/span><\/td>\n<td style=\"vertical-align: top;padding: 1mm;\"><span class=\"input\"><span class=\"code_variable\">v<\/span><span class=\"code_operator\">:<\/span>[<span class=\"code_number\">1<\/span>,<span class=\"code_number\">2<\/span>,<span class=\"code_number\">3<\/span>,<span class=\"code_number\">4<\/span>,<span class=\"code_number\">5<\/span>]<span class=\"code_endofline\">$<\/span><br \/><span class=\"code_variable\">g<\/span><span class=\"code_operator\">:<\/span><span class=\"code_function\">create_graph<\/span>(<span class=\"code_variable\">v<\/span>, <br \/> \u00a0\u00a0 [[<span class=\"code_number\">1<\/span>,<span class=\"code_number\">2<\/span>],[<span class=\"code_number\">1<\/span>,<span class=\"code_number\">5<\/span>],<br \/> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 [<span class=\"code_number\">1<\/span>,<span class=\"code_number\">4<\/span>],[<span class=\"code_number\">2<\/span>,<span class=\"code_number\">3<\/span>],<br \/> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 [<span class=\"code_number\">3<\/span>,<span class=\"code_number\">5<\/span>],[<span class=\"code_number\">3<\/span>,<span class=\"code_number\">4<\/span>],<br \/> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 [<span class=\"code_number\">4<\/span>,<span class=\"code_number\">5<\/span>]])<span class=\"code_endofline\">$<\/span><br \/><span class=\"code_function\">draw_graph<\/span>(<span class=\"code_variable\">g<\/span>,<br \/> \u00a0\u00a0 <span class=\"code_variable\">show_id<\/span><span class=\"code_operator\">=<\/span>true,<br \/> \u00a0\u00a0 <span class=\"code_variable\">show_vertices<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">v<\/span>,<br \/>\u00a0\u00a0 <span class=\"code_variable\">show_vertex_size<\/span><span class=\"code_operator\">=<\/span><span class=\"code_number\">3<\/span>, \u00a0\u00a0\u00a0<br \/> \u00a0\u00a0 <span class=\"code_variable\">edge_width<\/span><span class=\"code_operator\">=<\/span><span class=\"code_number\">1<\/span>)<span class=\"code_endofline\">$<\/span><\/span><\/td>\n<\/tr>\n<\/table>\n<p><img decoding=\"async\" src=\"https:\/\/uploads.jesussoto.es\/grafos\/prueba_2.png\" width=\"398\" style=\"max-width:90%;\" loading=\"lazy\" alt=\" (Gr\u00e1ficos) \" class=\"aligncenter size-medium wp-image-1235\"\/>\n<\/div>\n<hr \/>\n<blockquote><p><strong>Ejercicio:<\/strong> Construir el digrafo  <\/p>\n<div id=\"miGrafoCytoscape\" style=\"width: 500px; height: 300px;\"><\/div>\n<p><!-- [grafo_cytoscape] esto es necesario para que se vean los grafos--><br \/>\n<script>\ndocument.addEventListener('DOMContentLoaded', function() {\n  const container = document.getElementById('miGrafoCytoscape');\n  if (container) {\n    const cy = cytoscape({\n      container: container,\n      elements: [\n          { data: { id: 'n1', label: '1' } },\n          { data: { id: 'n2', label: '2' } },\n          { data: { id: 'n3', label: '3' } },\n          { data: { id: 'n4', label: '4' } },\n          { data: { id: 'n5', label: '5' } },\n          { data: { id: 'n6', label: '6' } },\n          { data: { id: 'n7', label: '7' } },\n          { data: { id: 'n8', label: '8' } },\n          { data: { source: 'n1', target: 'n2', label: '' } },\n          { data: { source: 'n2', target: 'n3', label: '' } },\n          { data: { source: 'n2', target: 'n5', label: '' } },\n          { data: { source: 'n3', target: 'n4', label: '' } },\n          { data: { source: 'n3', target: 'n7', label: '' } },\n          { data: { source: 'n4', target: 'n3', label: '' } },\n          { data: { source: 'n4', target: 'n8', label: '' } },     \n          { data: { source: 'n5', target: 'n1', label: '' } },     \n          { data: { source: 'n6', target: 'n7', label: '' } },\n          { data: { source: 'n7', target: 'n6', label: '' } },\n          { data: { source: 'n8', target: 'n4', label: '' } }\n        ],\n      style: [\n          {\n            selector: 'node',\n            style: {\n              'background-color': '#000',\n              'label': 'data(label)',\n              'width': 15,  \/\/ Establece el ancho del nodo a 30 p\u00edxeles\n              'height': 15 \/\/ Establece la altura del nodo a 30 p\u00edxeles\n            }\n          },\n          {\n            selector: 'edge',\n            style: {\n              'width': 2,\n              'line-color': 'blue',\n              'label': 'data(label)',\n              'curve-style': 'bezier',\n              'target-arrow-shape': 'triangle', \/\/ none si es un grafo nodirigido\n              'target-arrow-color': 'blue' \n            }\n          }\n        ],\n        layout: {\n        name: 'grid'\n      },\n      zoomingEnabled: false \/\/ Deshabilita el zoom con la rueda del rat\u00f3n \n    });\n  } else {\n    console.error(\"No se encontr\u00f3 el contenedor con el ID 'miGrafo1Cytoscape'\");\n  }\n});\n<\/script>\n<\/p><\/blockquote>\n<p><script>\nfunction showHtmlDiv1d() {\n  var htmlShow1d = document.getElementById(\"html-show1d\");\n  if (htmlShow1d.style.display === \"none\") {\n    htmlShow1d.style.display = \"block\";\n  } else {\n    htmlShow1d.style.display = \"none\";\n  }\n}\n<\/script><\/p>\n<p><button onclick=\"showHtmlDiv1d()\">Soluci\u00f3n:<\/button><\/p>\n<div id=\"html-show1d\" style=\"display: none;\">\n <!-- Code cell --><\/p>\n<table>\n<tr style=\"border: 0px;\">\n<td style=\"width: 70px;vertical-align: top;padding: 1mm;\"> <span class=\"prompt\">(%i1)<\/span><\/td>\n<td style=\"vertical-align: top;padding: 1mm;\"><span class=\"input\"><span class=\"code_function\">load<\/span>(<span class=\"code_string\">\u00abgraphs\u00bb<\/span>)<span class=\"code_endofline\">;<\/span><\/span><\/td>\n<\/tr>\n<\/table>\n<p><math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><mtable><mlabeledtr columnalign=\"left\"><mtd><mtext\/><\/mtd><mtd><mo>0 errores, 0 advertencias<\/mo><\/mtd><\/mlabeledtr><mlabeledtr columnalign=\"left\"><mtd><mtext\/><\/mtd><mtd><mo>0 errores, 0 advertencias<\/mo><\/mtd><\/mlabeledtr><\/mtable><\/math><math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><mtable><mlabeledtr columnalign=\"left\"><mtd><mtext>(%o1) <\/mtext><\/mtd><mtd><mo>\/usr\/share\/maxima\/5.41.0\/share\/graphs\/graphs.mac<\/mo><\/mtd><\/mlabeledtr><\/mtable><\/math><!-- Code cell --><\/p>\n<table>\n<tr style=\"border: 0px;\">\n<td style=\"width: 70px;vertical-align: top;padding: 1mm;\"> <span class=\"prompt\">(%i4)<\/span><\/td>\n<td style=\"vertical-align: top;padding: 1mm;\"><span class=\"input\"><span class=\"code_variable\">v<\/span><span class=\"code_operator\">:<\/span>[<span class=\"code_number\">1<\/span>,<span class=\"code_number\">2<\/span>,<span class=\"code_number\">3<\/span>,<span class=\"code_number\">4<\/span>,<span class=\"code_number\">5<\/span>,<span class=\"code_number\">6<\/span>,<span class=\"code_number\">7<\/span>,<span class=\"code_number\">8<\/span>]<span class=\"code_endofline\">$<\/span><br \/><span class=\"code_variable\">g<\/span><span class=\"code_operator\">:<\/span><span class=\"code_function\">create_graph<\/span>(<span class=\"code_variable\">v<\/span>, <br \/> \u00a0\u00a0 [[<span class=\"code_number\">1<\/span>,<span class=\"code_number\">2<\/span>],[<span class=\"code_number\">2<\/span>,<span class=\"code_number\">3<\/span>],[<span class=\"code_number\">2<\/span>,<span class=\"code_number\">5<\/span>],<br \/> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 [<span class=\"code_number\">3<\/span>,<span class=\"code_number\">4<\/span>],[<span class=\"code_number\">3<\/span>,<span class=\"code_number\">7<\/span>],[<span class=\"code_number\">4<\/span>,<span class=\"code_number\">3<\/span>],<br \/> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 [<span class=\"code_number\">4<\/span>,<span class=\"code_number\">8<\/span>],[<span class=\"code_number\">5<\/span>,<span class=\"code_number\">1<\/span>],[<span class=\"code_number\">6<\/span>,<span class=\"code_number\">7<\/span>],<br \/> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 [<span class=\"code_number\">7<\/span>,<span class=\"code_number\">6<\/span>],[<span class=\"code_number\">8<\/span>,<span class=\"code_number\">4<\/span>]],<br \/> \u00a0\u00a0 <span class=\"code_variable\">directed<\/span><span class=\"code_operator\">=<\/span> true)<span class=\"code_endofline\">$<\/span><br \/><span class=\"code_function\">draw_graph<\/span>(<span class=\"code_variable\">g<\/span>, <br \/> \u00a0\u00a0 <span class=\"code_variable\">vertex_type<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">filled_square<\/span>,<br \/> \u00a0\u00a0 <span class=\"code_variable\">show_id<\/span><span class=\"code_operator\">=<\/span>true,<br \/> \u00a0\u00a0 <span class=\"code_variable\">show_vertices<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">v<\/span>,<br \/> \u00a0\u00a0 <span class=\"code_variable\">show_vertex_size<\/span><span class=\"code_operator\">=<\/span><span class=\"code_number\">3<\/span>,<br \/> \u00a0\u00a0 <span class=\"code_variable\">show_vertex_color<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">yellow<\/span>,<br \/> \u00a0\u00a0 <span class=\"code_variable\">show_vertex_type<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">filled_square<\/span>,<br \/> \u00a0\u00a0 <span class=\"code_variable\">edge_color<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">cyan<\/span>,<br \/> \u00a0\u00a0 <span class=\"code_variable\">edge_width<\/span><span class=\"code_operator\">=<\/span><span class=\"code_number\">1<\/span>, \u00a0\u00a0\u00a0<br \/> \u00a0\u00a0 <span class=\"code_variable\">text_color<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">black<\/span>)<span class=\"code_endofline\">$<\/span><\/span><\/td>\n<\/tr>\n<\/table>\n<p><math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><mtable><mlabeledtr columnalign=\"left\"><mtd><mtext>(%t4) <\/mtext><\/mtd><mtd\/><\/mlabeledtr><\/mtable><\/math><img decoding=\"async\" src=\"https:\/\/uploads.jesussoto.es\/grafos\/prueba_4.png\" width=\"398\" style=\"max-width:90%;\" loading=\"lazy\" alt=\" (Gr\u00e1ficos) \" class=\"aligncenter size-medium wp-image-1235\"\/>\n<\/div>\n<hr \/>\n<blockquote><p><strong>Ejercicio<\/strong>: Construir el grafo de los divisores del n\u00famero 1221<\/strong>\n<\/p><\/blockquote>\n<p><script>\nfunction showHtmlDiv1d4r() {\n  var htmlShow1d4r = document.getElementById(\"html-show1d4r\");\n  if (htmlShow1d4r.style.display === \"none\") {\n    htmlShow1d4r.style.display = \"block\";\n  } else {\n    htmlShow1d4r.style.display = \"none\";\n  }\n}\n<\/script><\/p>\n<p><button onclick=\"showHtmlDiv1d4r()\">Soluci\u00f3n:<\/button><\/p>\n<div id=\"html-show1d4r\" style=\"display: none;\">\n<table>\n<tr style=\"border: 0px;\">\n<td style=\"width: 70px;vertical-align: top;padding: 1mm;\"><span class=\"prompt\">(%i1)<\/span><\/td>\n<td style=\"vertical-align: top;padding: 1mm;\"><span class=\"input\"><span class=\"code_function\">load<\/span><span class=\"code_operator\">(<\/span><span class=\"code_string\">\u00abgraphs\u00bb<\/span><span class=\"code_operator\">)<\/span><span class=\"code_endofline\">$<\/span><\/span><\/td>\n<\/tr>\n<\/table>\n<p><!-- Text cell --><\/p>\n<div class=\"comment\">Consegimos los divisores de 1221, V,y los arcos, E, del digrafo:<\/div>\n<p><!-- Code cell --><\/p>\n<table>\n<tr style=\"border: 0px;\">\n<td style=\"width: 70px;vertical-align: top;padding: 1mm;\"><span class=\"prompt\">(%i5)<\/span><\/td>\n<td style=\"vertical-align: top;padding: 1mm;\"><span class=\"input\"><span class=\"code_variable\">V<\/span><span class=\"code_operator\">:<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">1<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">3<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">11<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">33<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">37<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">111<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">407<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">1221<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">$<\/span><span class=\"code_endofline\"><br \/><\/span><span class=\"code_variable\">E<\/span><span class=\"code_operator\">:<\/span><span class=\"code_operator\">[<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">1<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">3<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">1<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">11<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">1<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">37<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">3<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">33<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">3<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">111<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">11<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">33<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">11<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">407<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">33<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">1221<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">37<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">111<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">37<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">407<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">111<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">1221<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">407<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">1221<\/span><span class=\"code_operator\">]<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">$<\/span><span class=\"code_endofline\"><br \/><\/span><span class=\"code_variable\">g<\/span><span class=\"code_operator\">:<\/span><span class=\"code_function\">create_graph<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">V<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_variable\">E<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_variable\">directed<\/span><span class=\"code_operator\">=<\/span><span class=\"code_function\">true<\/span><span class=\"code_operator\">)<\/span><span class=\"code_endofline\">$<\/span><span class=\"code_endofline\"><br \/><\/span><span class=\"code_function\">draw_graph<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">g<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">show_id<\/span><span class=\"code_operator\">=<\/span><span class=\"code_function\">true<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">show_vertices<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">V<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">show_vertex_size<\/span><span class=\"code_operator\">=<\/span><span class=\"code_number\">5<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">show_vertex_color<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">cyan<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">edge_color<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">black<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">edge_width<\/span><span class=\"code_operator\">=<\/span><span class=\"code_number\">1<\/span><span class=\"code_endofline\">,<\/span> \u00a0\u00a0 <span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">text_color<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">red<\/span><span class=\"code_operator\">)<\/span><span class=\"code_endofline\">$<\/span><\/span><\/td>\n<\/tr>\n<\/table>\n<p><img decoding=\"async\" src=\"https:\/\/uploads.jesussoto.es\/grafos\/grafoDivis1221.png\" width=\"398\" style=\"max-width:90%;\" loading=\"lazy\" alt=\" (Graphics) \" class=\"aligncenter size-medium wp-image-1235\"\/><\/p>\n<\/div>\n<hr \/>\n<blockquote><p>\n<strong>Proposici\u00f3n:<\/strong> Sea \\( n = p_1^{a_1} p_2^{a_2} \\cdots p_r^{a_r} \\) la factorizaci\u00f3n en n\u00fameros primos de un entero positivo \\( n \\). Entonces, el n\u00famero de aristas del grafo de los divisores de \\(n\\) viene dado por<br \/>\n\\[<br \/>\nE(n)=\\tau(n)\\sum_{i=1}^r \\frac{a_i}{a_i+1},<br \/>\n\\]<br \/>\ndonde<br \/>\n\\[<br \/>\n\\tau(n)=\\prod_{i=1}^r (a_i+1)<br \/>\n\\]<br \/>\nes el n\u00famero de divisores positivos de \\(n\\).\n<\/p><\/blockquote>\n<blockquote><p>\n<strong>Ejercicio:<\/strong> Construye una funci\u00f3n que nos devuelva el n\u00famero de aristas del grafo de los divisores de \\(n\\)\n<\/p><\/blockquote>\n<p><script>\nfunction showHtmlDiv1d23() {\n  var htmlShow1d23 = document.getElementById(\"html-show1d23\");\n  if (htmlShow1d23.style.display === \"none\") {\n    htmlShow1d23.style.display = \"block\";\n  } else {\n    htmlShow1d23.style.display = \"none\";\n  }\n}\n<\/script><\/p>\n<p><button onclick=\"showHtmlDiv1d23()\">Soluci\u00f3n:<\/button><\/p>\n<div id=\"html-show1d23\" style=\"display: none;\">\n<!-- Code cell --><\/p>\n<table>\n<tr style=\"border: 0px;\">\n<td style=\"width: 70px;vertical-align: top;padding: 1mm;\"><span class=\"prompt\">(%i2)<\/span><\/td>\n<td style=\"vertical-align: top;padding: 1mm;\"><span class=\"input\"><span class=\"code_function\">num_aristas_divisores<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">n<\/span><span class=\"code_operator\">)<\/span><span class=\"code_operator\">:<\/span><span class=\"code_operator\">=<\/span><span class=\"code_function\">block<\/span><span class=\"code_operator\">(<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0 <span class=\"code_operator\">[<\/span><span class=\"code_variable\">factores<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_variable\">d_n<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_variable\">suma<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_variable\">i<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_variable\">e_i<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0 <span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0 <span class=\"code_comment\">\/* 1. Obtenemos la factorizaci\u00f3n: [[p1, e1], [p2, e2], &#8230;] *\/<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0 <span class=\"code_variable\">factores<\/span><span class=\"code_operator\">:<\/span><span class=\"code_function\">ifactors<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">n<\/span><span class=\"code_operator\">)<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0 <span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0 <span class=\"code_comment\">\/* 2. Calculamos el n\u00famero total de divisores d(n) *\/<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0 <span class=\"code_variable\">d_n<\/span><span class=\"code_operator\">:<\/span><span class=\"code_function\">length<\/span><span class=\"code_operator\">(<\/span><span class=\"code_function\">divisors<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">n<\/span><span class=\"code_operator\">)<\/span><span class=\"code_operator\">)<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0 <span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0 <span class=\"code_comment\">\/* 3. Aplicamos la f\u00f3rmula combinatoria *\/<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0 <span class=\"code_variable\">suma<\/span><span class=\"code_operator\">:<\/span><span class=\"code_number\">0<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0 <span class=\"code_function\">for<\/span><span class=\"code_variable\"> i<\/span><span class=\"code_operator\">:<\/span><span class=\"code_number\">1<\/span><span class=\"code_function\"> thru <\/span><span class=\"code_function\">length<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">factores<\/span><span class=\"code_operator\">)<\/span><span class=\"code_function\"> do <\/span><span class=\"code_operator\">(<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 <span class=\"code_variable\">e_i<\/span><span class=\"code_operator\">:<\/span><span class=\"code_variable\">factores<\/span><span class=\"code_operator\">[<\/span><span class=\"code_variable\">i<\/span><span class=\"code_operator\">]<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">2<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 <span class=\"code_variable\">suma<\/span><span class=\"code_operator\">:<\/span><span class=\"code_variable\">suma<\/span><span class=\"code_operator\">+<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">e_i<\/span><span class=\"code_operator\">\u00b7<\/span><span class=\"code_variable\">d_n<\/span><span class=\"code_operator\">\/<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">e_i<\/span><span class=\"code_operator\">+<\/span><span class=\"code_number\">1<\/span><span class=\"code_operator\">)<\/span><span class=\"code_operator\">)<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0 <span class=\"code_operator\">)<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0 <span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0 <span class=\"code_function\">return<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">suma<\/span><span class=\"code_operator\">)<\/span><span class=\"code_endofline\"><br \/><\/span><span class=\"code_operator\">)<\/span><span class=\"code_endofline\">$<\/span><span class=\"code_endofline\"><br \/><\/span><span class=\"code_function\">num_aristas_divisores<\/span><span class=\"code_operator\">(<\/span><span class=\"code_number\">24<\/span><span class=\"code_operator\">)<\/span><span class=\"code_endofline\">;<\/span><\/span><\/td>\n<\/tr>\n<\/table>\n<p>\\[\\operatorname{ }10\\]<\/p>\n<\/div>\n<hr \/>\n<blockquote><p><strong>Ejercicio:<\/strong> Dibuja el grafo de coprimalidad de $S = \\{12,2,34,35,4,41,29\\}$<\/p><\/blockquote>\n<p><script>\nfunction showHtmlDiv1d234() {\n  var htmlShow1d234 = document.getElementById(\"html-show1d234\");\n  if (htmlShow1d234.style.display === \"none\") {\n    htmlShow1d234.style.display = \"block\";\n  } else {\n    htmlShow1d234.style.display = \"none\";\n  }\n}\n<\/script><\/p>\n<p><button onclick=\"showHtmlDiv1d234()\">Soluci\u00f3n:<\/button><\/p>\n<div id=\"html-show1d234\" style=\"display: none;\">\n<!-- Code cell --><\/p>\n<table>\n<tr style=\"border: 0px;\">\n<td style=\"width: 70px;vertical-align: top;padding: 1mm;\"><span class=\"prompt\">(%i1)<\/span><\/td>\n<td><span class=\"input\"><span class=\"code_function\">load<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">graphs<\/span><span class=\"code_operator\">)<\/span><span class=\"code_endofline\">$<\/span><\/span><\/td>\n<\/tr>\n<\/table>\n<p><!-- Text cell --><\/p>\n<div class=\"comment\">Dibujemos el grafo de coprimalidad de S = {12,2,34,35,4,41,29}<\/div>\n<p><!-- Code cell --><\/p>\n<table>\n<tr style=\"border: 0px;\">\n<td style=\"width: 70px;vertical-align: top;padding: 1mm;\">\n<td><span class=\"prompt\">(%i4)<\/span><\/td>\n<td style=\"vertical-align: top;padding: 1mm;\"><span class=\"input\"><span class=\"code_variable\">V<\/span><span class=\"code_operator\">:<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">12<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">2<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">34<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">35<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">4<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">41<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">29<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">$<\/span><span class=\"code_endofline\"><br \/><\/span><span class=\"code_variable\">g<\/span><span class=\"code_operator\">:<\/span><span class=\"code_function\">create_graph<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">V<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">12<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">35<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">12<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">41<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">12<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">29<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 <span class=\"code_operator\">[<\/span><span class=\"code_number\">2<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">35<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">2<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">41<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">2<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">29<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 <span class=\"code_operator\">[<\/span><span class=\"code_number\">34<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">35<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">34<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">41<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">34<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">29<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 <span class=\"code_operator\">[<\/span><span class=\"code_number\">35<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">4<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">35<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">41<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">35<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">29<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 <span class=\"code_operator\">[<\/span><span class=\"code_number\">4<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">41<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">4<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">29<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 <span class=\"code_operator\">[<\/span><span class=\"code_number\">41<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">29<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0 <span class=\"code_operator\">]<\/span><span class=\"code_operator\">)<\/span><span class=\"code_endofline\">$<\/span><span class=\"code_endofline\"><br \/><\/span><span class=\"code_function\">draw_graph<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">g<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">show_id<\/span><span class=\"code_operator\">=<\/span><span class=\"code_function\">true<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">show_vertices<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">V<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">show_vertex_size<\/span><span class=\"code_operator\">=<\/span><span class=\"code_number\">3<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">show_vertex_color<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">cyan<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">edge_color<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">blue<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">edge_width<\/span><span class=\"code_operator\">=<\/span><span class=\"code_number\">1<\/span><span class=\"code_endofline\">,<\/span> \u00a0\u00a0 <span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">text_color<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">black<\/span><span class=\"code_operator\">)<\/span><span class=\"code_endofline\">$<\/span><\/span><\/td>\n<\/tr>\n<\/table>\n<p><img decoding=\"async\" src=\"https:\/\/uploads.jesussoto.es\/grafos\/grafo_ejr2115_01.png\" width=\"398\" style=\"max-width:90%;\" loading=\"lazy\" alt=\" (Graphics) \"\/><\/p>\n<\/div>\n<hr \/>\n<blockquote><p><strong>Ejercicio:<\/strong> Utilizando la definici\u00f3n, construye un algoritmo que nos determine el n\u00famero de aristas de un grafo de coprimalidad de un conjunto de n\u00fameros naturales $S$ y apl\u00edcalo para calcular las aristas de $\\{12,2,34,35,4,41,29\\}$<\/p><\/blockquote>\n<p><script>\nfunction showHtmlDiv1d2345() {\n  var htmlShow1d2345 = document.getElementById(\"html-show1d2345\");\n  if (htmlShow1d2345.style.display === \"none\") {\n    htmlShow1d2345.style.display = \"block\";\n  } else {\n    htmlShow1d2345.style.display = \"none\";\n  }\n}\n<\/script><\/p>\n<p><button onclick=\"showHtmlDiv1d2345()\">Soluci\u00f3n:<\/button><\/p>\n<div id=\"html-show1d2345\" style=\"display: none;\">\n<!-- Text cell --><\/p>\n<div class=\"comment\">Veamos cu\u00e1ntas ser\u00edan las aristas del grafo de coprimalidad de S = {12,2,34,35,4,41,29}<br \/>Primero definimos una funci\u00f3n para el mcd:<\/div>\n<p><!-- Code cell --><\/p>\n<table>\n<tr style=\"border: 0px;\">\n<td style=\"width: 70px;vertical-align: top;padding: 1mm;\"><span class=\"prompt\">(%i1)<\/span><\/td>\n<td><span class=\"input\"><span class=\"code_function\">mcd<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">n<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_variable\">m<\/span><span class=\"code_operator\">)<\/span><span class=\"code_operator\">:<\/span><span class=\"code_operator\">=<\/span><span class=\"code_function\">if <\/span><span class=\"code_variable\">m<\/span><span class=\"code_operator\">=<\/span><span class=\"code_number\">0<\/span><span class=\"code_function\"> then <\/span><span class=\"code_function\">abs<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">n<\/span><span class=\"code_operator\">)<\/span><span class=\"code_function\"> else <\/span><span class=\"code_function\">mcd<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">m<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_function\">mod<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">n<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_variable\">m<\/span><span class=\"code_operator\">)<\/span><span class=\"code_operator\">)<\/span><span class=\"code_endofline\">$<\/span><\/span><\/td>\n<\/tr>\n<\/table>\n<p><!-- Text cell --><\/p>\n<div class=\"comment\">Ahora definimos el algoritmo que nos proporcionar\u00e1 el n\u00famero de aristas:<\/div>\n<p><!-- Code cell --><\/p>\n<table>\n<tr style=\"border: 0px;\">\n<td style=\"width: 70px;vertical-align: top;padding: 1mm;\"><span class=\"prompt\">(%i2)<\/span><\/td>\n<td><span class=\"input\"><span class=\"code_function\">num_aristas<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">v<\/span><span class=\"code_operator\">)<\/span><span class=\"code_operator\">:<\/span><span class=\"code_operator\">=<\/span><span class=\"code_function\">block<\/span><span class=\"code_operator\">(<\/span><span class=\"code_operator\">[<\/span><span class=\"code_variable\">s<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0 <span class=\"code_variable\">s<\/span><span class=\"code_operator\">:<\/span><span class=\"code_number\">0<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0 <span class=\"code_function\">for <\/span><span class=\"code_variable\">i<\/span><span class=\"code_operator\">:<\/span><span class=\"code_number\">1<\/span><span class=\"code_function\"> thru <\/span><span class=\"code_function\">length<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">v<\/span><span class=\"code_operator\">)<\/span><span class=\"code_operator\">\u2212<\/span><span class=\"code_number\">1<\/span><span class=\"code_function\"> do <\/span><span class=\"code_operator\">(<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 <span class=\"code_function\">for <\/span><span class=\"code_variable\">j <\/span><span class=\"code_operator\">:<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">i<\/span><span class=\"code_operator\">+<\/span><span class=\"code_number\">1<\/span><span class=\"code_operator\">)<\/span><span class=\"code_function\"> thru <\/span><span class=\"code_function\">length<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">v<\/span><span class=\"code_operator\">)<\/span><span class=\"code_function\"> do <\/span><span class=\"code_operator\">(<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 <span class=\"code_function\">if <\/span><span class=\"code_operator\">(<\/span><span class=\"code_function\">mcd<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">v<\/span><span class=\"code_operator\">[<\/span><span class=\"code_variable\">i<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_variable\">v<\/span><span class=\"code_operator\">[<\/span><span class=\"code_variable\">j<\/span><span class=\"code_operator\">]<\/span><span class=\"code_operator\">)<\/span><span class=\"code_operator\">=<\/span><span class=\"code_number\">1<\/span><span class=\"code_operator\">)<\/span><span class=\"code_function\"> then <\/span><span class=\"code_variable\">s<\/span><span class=\"code_operator\">:<\/span><span class=\"code_variable\">s<\/span><span class=\"code_operator\">+<\/span><span class=\"code_number\">1<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 <span class=\"code_operator\">)<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0 <span class=\"code_operator\">)<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0 <span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0 <span class=\"code_function\">return<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">s<\/span><span class=\"code_operator\">)<\/span><span class=\"code_endofline\"><br \/><\/span><span class=\"code_operator\">)<\/span><span class=\"code_endofline\">$<\/span><span class=\"code_endofline\"><br \/><\/span><\/span><\/td>\n<\/tr>\n<\/table>\n<p><!-- Code cell --><\/p>\n<table>\n<tr style=\"border: 0px;\">\n<td style=\"width: 70px;vertical-align: top;padding: 1mm;\"><span class=\"prompt\">(%i4)<\/span><\/td>\n<td style=\"vertical-align: top;padding: 1mm;\"><span class=\"input\"><span class=\"code_variable\">V<\/span><span class=\"code_operator\">:<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">12<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">2<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">34<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">35<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">4<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">41<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">29<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">$<\/span><span class=\"code_endofline\"><br \/><\/span><span class=\"code_function\">num_aristas<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">V<\/span><span class=\"code_operator\">)<\/span><span class=\"code_endofline\">;<\/span><\/span><\/td>\n<\/tr>\n<\/table>\n<p>\\[\\operatorname{ }15\\]<\/p>\n<\/div>\n<hr \/>\n<blockquote><p><strong>Ejercicio:<\/strong> Dibuja el grafo de factorizaci\u00f3n de $S = \\{4,6,9,10,15,21,32\\}$<\/p><\/blockquote>\n<p><script>\nfunction showHtmlDiv1d2() {\n  var htmlShow1d2 = document.getElementById(\"html-show1d2\");\n  if (htmlShow1d2.style.display === \"none\") {\n    htmlShow1d2.style.display = \"block\";\n  } else {\n    htmlShow1d2.style.display = \"none\";\n  }\n}\n<\/script><\/p>\n<p><button onclick=\"showHtmlDiv1d2()\">Soluci\u00f3n:<\/button><\/p>\n<div id=\"html-show1d2\" style=\"display: none;\">\n<!-- Code cell --><\/p>\n<table>\n<tr style=\"border: 0px;\">\n<td style=\"width: 70px;vertical-align: top;padding: 1mm;\"><span class=\"prompt\">(%i1)<\/span><\/td>\n<td style=\"vertical-align: top;padding: 1mm;\"><span class=\"code_function\">load<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">graphs<\/span><span class=\"code_operator\">)<\/span><span class=\"code_endofline\">$<\/span><\/span><\/td>\n<\/tr>\n<\/table>\n<p><!-- Text cell --><\/p>\n<div class=\"comment\">Dibujemos el grafo de factorizaci\u00f3n de S = {4,6,9,10,15,21,32}<\/div>\n<p><!-- Code cell --><\/p>\n<table>\n<tr style=\"border: 0px;\">\n<td style=\"width: 70px;vertical-align: top;padding: 1mm;\"><span class=\"prompt\">(%i4)<\/span><\/td>\n<p><span class=\"input\"><span class=\"code_variable\">V<\/span><span class=\"code_operator\">:<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">4<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">6<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">9<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">10<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">15<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">21<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">32<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">$<\/span><span class=\"code_endofline\"><br \/><\/span><span class=\"code_variable\">g<\/span><span class=\"code_operator\">:<\/span><span class=\"code_function\">create_graph<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">V<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">4<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">6<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">4<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">10<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">4<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">32<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">6<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">9<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">6<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">10<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 <span class=\"code_operator\">[<\/span><span class=\"code_number\">6<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">15<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">6<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">21<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">6<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">32<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">9<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">15<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">9<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">21<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">10<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">15<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">10<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">32<\/span><span class=\"code_operator\">]<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_operator\">[<\/span><span class=\"code_number\">15<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_number\">21<\/span><span class=\"code_operator\">]<\/span><span class=\"code_operator\">]<\/span><span class=\"code_operator\">)<\/span><span class=\"code_endofline\">$<\/span><span class=\"code_endofline\"><br \/><\/span><span class=\"code_function\">draw_graph<\/span><span class=\"code_operator\">(<\/span><span class=\"code_variable\">g<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">show_id<\/span><span class=\"code_operator\">=<\/span><span class=\"code_function\">true<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">show_vertices<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">V<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">show_vertex_size<\/span><span class=\"code_operator\">=<\/span><span class=\"code_number\">3<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">show_vertex_color<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">cyan<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">edge_color<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">blue<\/span><span class=\"code_endofline\">,<\/span><span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">edge_width<\/span><span class=\"code_operator\">=<\/span><span class=\"code_number\">1<\/span><span class=\"code_endofline\">,<\/span> \u00a0\u00a0 <span class=\"code_endofline\"><br \/><\/span> \u00a0 <span class=\"code_variable\">text_color<\/span><span class=\"code_operator\">=<\/span><span class=\"code_variable\">black<\/span><span class=\"code_operator\">)<\/span><span class=\"code_endofline\">$<\/span><\/span><\/td>\n<\/tr>\n<\/table>\n<p>\\[\\operatorname{ }\\]<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/uploads.jesussoto.es\/grafos\/grafo_ejr2110_01.png\" width=\"398\" style=\"max-width:90%;\" loading=\"lazy\" alt=\" (Graphics) \"\/><\/p>\n<\/div>\n<hr \/>\n<blockquote><p><strong>Ejercicio:<\/strong> Modifica el algoritmo anterior para ofrecer un algoritmo que nos determine el n\u00famero de aristas de un grafo de factorizaci\u00f3n de un conjunto de n\u00fameros naturales $S$<\/p><\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>graphs El paquete graphs proporciona estructuras de datos de grafos y d\u00edgrafos para Maxima. Los grafos y d\u00edgrafos son simples (no tienen aristas m\u00faltiples ni bucles), aunque los d\u00edgrafos pueden tener una&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8],"tags":[9],"class_list":["post-1010","post","type-post","status-publish","format-standard","hentry","category-matematica-discreta","tag-practicas-mad"],"_links":{"self":[{"href":"https:\/\/clases.jesussoto.es\/index.php?rest_route=\/wp\/v2\/posts\/1010","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/clases.jesussoto.es\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/clases.jesussoto.es\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/clases.jesussoto.es\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/clases.jesussoto.es\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1010"}],"version-history":[{"count":12,"href":"https:\/\/clases.jesussoto.es\/index.php?rest_route=\/wp\/v2\/posts\/1010\/revisions"}],"predecessor-version":[{"id":1025,"href":"https:\/\/clases.jesussoto.es\/index.php?rest_route=\/wp\/v2\/posts\/1010\/revisions\/1025"}],"wp:attachment":[{"href":"https:\/\/clases.jesussoto.es\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1010"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/clases.jesussoto.es\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1010"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/clases.jesussoto.es\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1010"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}