# Tutor de autómatas finitos, Mealy/Moore, Karnaugh y minimización

Explica paso a paso autómatas y lógica combinacional: construcción por subconjuntos ε-NFA→NFA→DFA, minimización por refinamiento de particiones de Moore, conversión Mealy↔Moore; agrupación Gray en Karnaugh y Quine-McCluskey con implicantes primos y cobertura mínima exacta para el SOP mínimo. Incluye diagramas ASCII, tablas e iteraciones.

> Página canónica: https://elysiatools.com/es/tools/finite-state-machine-mealy-moore-karnaugh-minimization-tutor

- **Categoría:** Education

- **Palabras clave:** autómata finito, dfa, nfa, karnaugh, quine mccluskey, minimización, lógica digital

## Descripción general

DSL de autómatas: `states: q0 q1 …`, `start: q0`, `accept: q1, q2`, `alphabet: a b`, una transición por línea `origen símbolo destino` (aristas ε como ε o eps); salida Mealy `q0 a q1 / 1`, salida Moore `moore: q0:0 q1:1`. La construcción por subconjuntos aplica ε-cierre; la minimización elimina primero los inalcanzables y luego refina particiones (trampa clásica); Mealy→Moore divide estados por salida entrante (≤ |Q|·|Δ|). Modo booleano: Quine-McCluskey combina vecinos (un bit, guiones alineados), el gráfico de implicanttes primos cubre solo el conjunto ON, y tras los esenciales se enumeran subconjuntos para la cobertura mínima exacta (Petrick equivalente). Casos de referencia verificados: (a|b)*abb → DFA de 5 estados, mínimo de 4; Σm(0,1,2,5,6,7,8,9,10,14) → B'C' + CD' + A'BD único óptimo.

## Entradas

- **Modo** (select)
- **Definición del autómata** (textarea): states: q0 q1 q2 start: q0 accept: q2 alphabet: a b q0 a q0 q0 b q0 q0 ε q1 q1 b q2 q2 a q2 q2 b q2
- **Número de variables (Karnaugh)** (number)
- **Minterms (conjunto ON)** (text): 0,1,2,5,6,7,8,9,10,14
- **Indiferentes (don't-care)** (text): e.g. 3,11,12
- **Convertir NFA a DFA (construcción por subconjuntos)** (checkbox)
- **Minimizar DFA (refinamiento de particiones de Moore)** (checkbox)
- **Convertir Mealy ↔ Moore (si hay salidas)** (checkbox)

## Cuándo usarlo

- Cuando necesites convertir un ε-NFA o NFA en un DFA mediante construcción por subconjuntos.
- Cuando quieras minimizar un DFA o convertir una máquina Mealy en Moore, o viceversa.
- Cuando necesites simplificar una función booleana con mapas de Karnaugh y Quine-McCluskey.

## Cómo funciona

- Selecciona el modo de autómatas o el modo de minimización booleana.
- En modo autómatas, introduce estados, estado inicial, estados de aceptación, alfabeto y transiciones en el DSL indicado.
- Activa las opciones de conversión y minimización que necesites para obtener cierres ε, tablas, diagramas e iteraciones.
- En modo booleano, indica entre 2 y 4 variables, los minterms del conjunto ON y, opcionalmente, los indiferentes.

## Casos de uso

- Practicar conversiones de ε-NFA a DFA y comprobar qué estados resultan alcanzables.
- Analizar ejercicios de minimización de autómatas mediante refinamiento de particiones de Moore.
- Simplificar funciones de lógica digital y comparar los grupos de Karnaugh con la cobertura de Quine-McCluskey.

## Preguntas frecuentes

### ¿Qué tipos de autómatas puedo introducir?

Puedes introducir ε-NFA, NFA, DFA, Mealy y Moore con la sintaxis de estados, inicio, aceptación, alfabeto y transiciones.

### ¿Cómo se representa una transición ε?

Escribe ε o eps como símbolo de la transición, por ejemplo: `q0 ε q1`.

### ¿Qué hace la construcción por subconjuntos?

Calcula los ε-cierres y transforma un ε-NFA o NFA en un DFA.

### ¿Cómo introduzco una función booleana?

Selecciona el modo booleano, indica de 2 a 4 variables y escribe los minterms separados por comas, como `0,1,2,5`.

### ¿Qué resultado produce la minimización booleana?

Muestra agrupaciones de Karnaugh, implicantes primos y una cobertura mínima exacta en forma SOP.

## Herramientas relacionadas

- [Analizador de composición de aminoácidos](https://elysiatools.com/es/tools/amino-acid-composition): Analiza la composición de una secuencia: recuentos y porcentajes molares de cada uno de los 20 aminoácidos estándar; totales por grupo (básicos K/R/H, ácidos D/E, aromáticos F/W/Y, azufrados C/M, alifáticos A/I/L/V, amidas N/Q, hidroxilo S/T, otros G/P); GRAVY con los valores de hidropatía de Kyte–Doolittle 1982 (>0 tendencia hidrofóbica, <0 hidrofílica; las globulares solubles suelen estar entre −1 y +0,3); y el peso molecular con la tabla de masas medias de ProtParam. Los códigos ambiguos (B/J/O/U/X/Z) se cuentan aparte y se excluyen de los porcentajes. Fuentes: Kyte & Doolittle 1982, ExPASy ProtParam, Lehninger. Solo para educación.
- [Simulador del efecto cuello de botella (pérdida de heterocigosidad)](https://elysiatools.com/es/tools/bottleneck-effect-simulator): Simula la pérdida esperada de heterocigosidad tras un cuello de botella (esperanza determinista). Bajo deriva Wright-Fisher ideal, H_{t+1} = H_t(1 − 1/(2N)) por generación, luego H_final = H₀(1−1/2Nb)^t × (1−1/2Nr)^g; el tamaño efectivo por media armónica Ne = (t+g)/(t/Nb + g/Nr) queda dominado por el mínimo; F acumulado = 1 − H_final/H₀. Para un alelo de frecuencia p, la supervivencia a UNA generación de cuello es 1 − (1−p)^(2Nb); los alelos raros se pierden primero. Casos clásicos: foca elefante del norte (~20 supervivientes en 1890), guepardo, nēnē Hawái, bisonte europeo, atolón Pingelap. Fuentes: Wright 1931, Nei et al. 1975, Hartl & Clark 2007, StatPearls. Solo uso educativo.
- [Generador de mazos SRS desde lista de frecuencia](https://elysiatools.com/es/tools/language-vocab-spaced-repetition-deck-generator): Pega una lista de vocabulario bilingüe y exporta un mazo compatible con Anki que divide cada entrada en tarjetas de reconocimiento, recuerdo y cloze con categoría, IPA y frases de ejemplo, más una vista previa SM-2.
- [Calculadora de longitud de fragmentos de restricción](https://elysiatools.com/es/tools/restriction-fragment-length): Estima los tamaños de los fragmentos tras la digestión: un sustrato circular con n cortes produce n fragmentos (envolviendo el origen) y uno lineal produce n+1. El modo de posiciones calcula fragmentos exactos a partir de coordenadas separadas por comas; el modo de número de sitios da el recuento y la media con distribución uniforme. Incluye la frecuencia esperada de sitios en ADN aleatorio: cortadores de 4 bases ~1 cada 256 bp, de 6 bases ~1 cada 4096 bp (REBASE/Sambrook), y avisos de resolución en agarosa (<50 bp puede perderse). Fuentes: Sambrook & Russell 3.ª ed., REBASE. Solo para educación.
- [Conversor de fórmulas AsciiMath / LaTeX / MathML](https://elysiatools.com/es/tools/asciimath-latex-mathml-equation-converter): Convierte fórmulas entre AsciiMath, LaTeX y MathML: detecta el formato de entrada y produce LaTeX canónico, MathML de presentación con anotación semántica, retro-traducción aproximada a AsciiMath, fragmento aria-label para lectores de pantalla y una vista previa KaTeX.
- [Resolvedor de alias de encabezados CSV](https://elysiatools.com/es/tools/csv-header-alias-resolver): Mapea encabezados CSV desordenados a un esquema destino limpio. Pega un CSV cuya primera fila tenga nombres de columna inconsistentes (Customer ID, user_id, customerId, CUST_ID…) junto con tu esquema destino (una columna por línea) y un diccionario opcional "alias=objetivo". Cada encabezado se resuelve en cuatro pasadas — exacto, diccionario, normalizado (quita mayúsculas/acentos/separadores/camelCase) y distancia de edición difusa — y se muestra en una tabla con método y confianza, más cobertura de destino y una exportación CSV opcional.
- [Extractor de tokens de tema ECharts](https://elysiatools.com/es/tools/echarts-theme-token-extractor): Extrae design tokens — colores, números, tamaños de fuente y cadenas — de un JSON de tema ECharts y expórtalos directamente a tu design system. Pega un objeto de tema (el que registras y pasas a echarts.init(dom, themeName)) y la herramienta recorre cada hoja, etiquetando cada color (con normalización opcional nombrado/rgb → hex), número de espaciado, tamaño de fuente y cadena, para luego emitir variables CSS limpias, una configuración theme.extend de Tailwind, tokens.json de Style Dictionary o variables SCSS. Tiende el puente entre un tema de visualización ECharts y los tokens de diseño Figma/CSS/Tailwind sin copiar cada valor a mano.
- [Constructor de firmas de correo HTML](https://elysiatools.com/es/tools/email-signature-html-builder): Genera una firma de correo HTML limpia y lista para copiar-pegar que se ve correctamente en Gmail, Outlook y Apple Mail — con avatar/logo, iconos sociales (auto-detectados desde tus enlaces), color de acento, tema claro/oscuro/auto, y un diseño basado en tablas con estilos en línea seguro para correo. Copia el HTML y pégalo en tu cliente.

## Ejemplos

- [Ejemplos de Procesamiento de Imágenes Web Python](https://elysiatools.com/es/samples/web-image-processing-python): Ejemplos de procesamiento de imágenes Web Python usando PIL/Pillow incluyendo lectura, guardado, redimensionamiento y conversión de formato
- [Ejemplos de Procesamiento de Imágenes Android Java](https://elysiatools.com/es/samples/android-image-processing-java): Ejemplos de procesamiento de imágenes Android Java incluyendo lectura/escritura, escalado y conversión de formato
- [Ejemplos de Procesamiento de Imágenes Android Kotlin](https://elysiatools.com/es/samples/android-image-processing-kotlin): Ejemplos de procesamiento de imágenes Android Kotlin incluyendo lectura/escritura, escalado y conversión de formato
- [Ejemplos de Procesamiento de Imágenes Web Rust](https://elysiatools.com/es/samples/web-image-processing-rust): Ejemplos de procesamiento de imágenes Web Rust incluyendo lectura/escritura, escalado y conversión de formato
