Números Catalan




En combinatoria, los números de Catalan forman una secuencia de números naturales que aparece en varios problemas de conteo que habitualmente son recursivos. Obtienen su nombre del matemático belga Eugène Charles Catalan (1814–1894).

El n-ésimo número de Catalan se obtiene, aplicando coeficientes binomiales, a partir de la siguiente fórmula:





Los números de Catalan satisfacen la siguiente relación de recurrencia:



Y también satisfacen:




using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace NumerosCatalan_Forms_II
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        int numero;

        private void button1_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }

        private void button2_Click(object sender, EventArgs e)
        {
            GeneradorNumerosCatalanes generator = new GeneradorNumerosCatalanes();

            for (int i = 0; i <= numero; i++)
            {
                textBox1.Text += "Numero Catalan 1ª Opción: " + " " + (i.ToString() + "-> " + (generator.PrimeraOpcion((i)) + "\r\n"));
                textBox1.Text += "Numero Catalan 2ª Opción: " + " " + (i.ToString() + "-> " + (generator.SegundaOpcion((i)) + "\r\n"));
                textBox1.Text += "Numero Catalan 3ª Opción: " + " " + (i.ToString() + "-> " + (generator.TerceraOpcionn((i)) + "\r\n"));
            }
        }



        public class GeneradorNumerosCatalanes
        {
            private static double Factorial(double n)
            {
                if (n == 0)
                    return 1;

                return n * Factorial(n - 1);
            }

            public double PrimeraOpcion(double n)
            {
                const double multiplicador = 2;
                return Factorial(multiplicador * n) / (Factorial(n + 1) * Factorial(n));
            }

            public double SegundaOpcion(double n)
            {
                if (n == 0)
                {
                    return 1;
                }
                double sum = 0;
                double i = 0;
                for (; i <= (n - 1); i++)
                {
                    sum += SegundaOpcion(i) * SegundaOpcion((n - 1) - i);
                }
                return sum;
            }

            public double TerceraOpcionn(double n)
            {
                if (n == 0)
                {
                    return 1;
                }
                return ((2 * (2 * n - 1)) / (n + 1)) * TerceraOpcionn(n - 1);
            }
        }

        private void textBox2_TextChanged(object sender, EventArgs e)
        {
            numero = int.Parse(textBox2.Text);
        }
    }
}


La ley de la eponimia de Stigler (1980) afirma que “ningún descubrimiento científico recibe el nombre de quien lo descubrió en primer lugar.” El matemático belga Eugène Charles Catalan (1814-1894) no fue el descubridor de los números de Catalan. Se llamaron números de Segner o números de Euler–Segner hasta 1901, cuando Eugen Netto (1848–1919) los renombró en el capítulo sobre el trabajo de Catalan de su libro “Lehrbuch der Combinatorik.”


Eugène Charles Catalan (1814–1894).
Los números de Catalan fueron introducidos en 1751 por Leonhard Euler (1707-1783) que se lo comunicó por carta (que se conserva) a Christian Goldbach (1690-1764). Euler no logró demostrar su fórmula hasta 1759 gracias a su asistente Johann Andreas von Segner (1704-1777). Por ello, durante mucho tiempo los números de Catalan se llamaron números de Euler–Segner.

En su trabajo original de 1751, Euler definió los números de Catalan Cn como el número de triangulaciones de un polígono de (n+2) lados. Euler calculó a mano los ocho primeros números de Catalan, una labor de chinos, ya que C8=1430... Gracias a ello sugirió la fórmula (correcta).


Para dos letras, ab, hay sólo una forma:

(ab)

Para tres letras, abc, tenemos dos formas:


((ab)c) y (a(bc))

Si tenemos cuatros letras, abcd, se obtienen cinco formas:



((ab)(cd)),(((ab)c)d),(a(b(cd))),(a((bc)d)) y ((a(bc))d)

Obtenemos los números 1,2 y 5. Y si continuáramos obtendríamos 14,42.... 


Es interesante apuntar que a veces esta sucesión se toma de la siguiente forma:
1,1,2,5,14,42...

Una sorprendente conexión entre estos números de Catalan y el triángulo de Pascal. Sí, exacto, los números de Catalan también están escondidos en este fabuloso triángulo. Y es sencillo encontrarlos.






y nos quedamos con la columna central, esto es, 1,2,6,20,.... Ahora restamos a cada número de esa columna central el número que tiene al lado en el triángulo. Podéis comprobar que así también obtenemos los números de Catalan






No hay comentarios:

Publicar un comentario

Nota: solo los miembros de este blog pueden publicar comentarios.