Lenguajes y Autómatas - Módulo 1.3 (Expresiones regulares)

Поделиться
HTML-код
  • Опубликовано: 14 дек 2024
  • Material elaborado por el Profesor Dr. Fabián Riquelme Csori, para el curso de Lenguajes y Autómatas, de la Escuela de Ingeniería Civil Informática de la Universidad de Valparaíso, Chile.
    MÓDULOS DEL CURSO
    Capítulo 1. Lenguajes regulares y autómatas finitos.
    1. Alfabetos, cadenas y lenguajes
    2. Jerarquía de Chomsky
    3. Expresiones regulares
    4. Autómatas finitos deterministas (DFA)
    5. Autómatas finitos no-deterministas (NFA)
    6. Conversión y equivalencia NFA-DFA
    7. Lema del bombeo (para lenguajes regulares)
    Capítulo 2. Lenguajes libres de contexto y autómatas de pila
    1. Gramáticas libres de contexto (CFG)
    2. Árboles de derivación
    3. Autómatas de pila (PDA)
    4. Conversión CFG-PDA
    5. Lema del bombeo (para lenguajes libres de contexto)
    Capítulo 3. Máquinas de Turing y computabilidad
    1. Tesis de Church-Turing
    2. Máquinas de Turing (TM)
    3. TM en notación modular
    4. Variaciones de TM
    5. TM no-deterministas

Комментарии •

  • @mariasilvialescano9797
    @mariasilvialescano9797 3 года назад +9

    Muy,muy buena sus clases! Ya mire todo el temario. Super completo el contenido y excelente su forma de explicar los temas. Gracias!

  • @maximilianoviand7683
    @maximilianoviand7683 Год назад +3

    Buenas profe tengo una pregunta. Si tengo una expresion regular que sea (a+b*)*, quiere decir que las cadenas validas serian => Epsilon, a, b, ab, bb, abb, bbb, abbb, bbb y asi sucesivamente?? Muchas gracias por su respuesta.

    • @arigamboa1523
      @arigamboa1523 Год назад +2

      Esa expresión regular (a+b*)* es equivalente a: (a+b)*, por lo que también se considerarían a las cadenas: aa, ba, abb, aab, aabb, abab, ... y así sucesivamente :D

    • @unprofedeinformatica
      @unprofedeinformatica  Год назад +2

      Hola. Ambas fórmulas no son equivalentes, ya que (a+b)* solo permite una "b" después de cada "a". "ba" no puede ser generada por ninguna de esas fórmulas, porque ambas empiezan con a+ y por tanto obligan que la cadena siempre empiece con una "a". Saludos.

    • @unprofedeinformatica
      @unprofedeinformatica  Год назад +2

      Hola. Esa fórmula significa "concatenación de 0 más subcadenas de 1 o más a's seguida de 0 o más b's". Por lo tanto, cualquier cadena que empiece con "b" no puede ser generada por esa expresión regular. En cambio sí podrías generar cadenas como "aa", "aaa", "ab", "aab", "abb", etc. Saludos

  • @alexkillaz4179
    @alexkillaz4179 Год назад +2

    por que en el ultimo ejemplo alternas entre una y otra? se supone que solo se puede una u otra pero no las dos

    • @unprofedeinformatica
      @unprofedeinformatica  Год назад

      porque la barra | representa un OR lógico: se puede elegir 00 o 01, y la clausura de Kleene permite que esta selección pueda variar o mantenerse cada vez

    • @yarethchavezvelazquez1669
      @yarethchavezvelazquez1669 9 месяцев назад

      Tengo exactamente la misma duda, la cláusula permite hacer n combinaciones, más no la concatenacion según entiendo

  • @miguelangelsierragalindo8692
    @miguelangelsierragalindo8692 2 месяца назад +1

    Una buena explicacion.

  • @alexisjavier9158
    @alexisjavier9158 3 года назад +1

    Si me dan (0+11). 0^*
    Aca el mas es seleccion ? Se suele usar tambien el | para seleccion?

  • @alejandro24tm20
    @alejandro24tm20 Год назад +2

    Muchas gracias profesor

  • @alexisjavier9158
    @alexisjavier9158 3 года назад +1

    Profe recibe consulta por email. Tengo un problema pero es con foto.?

  • @THENOTO890
    @THENOTO890 4 года назад +3

    si quisiera
    crear una ER que inicie con cualquier numero del 16 al 20(16,17,18,19,o 20) como seria?

    • @THENOTO890
      @THENOTO890 4 года назад +1

      @@unprofedeinformatica muchas gracias, muy buen contenido el que haces

    • @jesusalbertolopezberra3850
      @jesusalbertolopezberra3850 6 месяцев назад

      @@THENOTO890 ¿Te refieres a esto? (1[6-9]|20)

  • @alexisjavier9158
    @alexisjavier9158 3 года назад +1

    Profe hay alguna manera o truco para sacar una expresion regular dado un enunciado?

  • @alexisjavier9158
    @alexisjavier9158 3 года назад +2

    Hola profe para orientarme un poco con las E.R estaria bien si me dicen
    Hallar cadenas con al menos una letra b
    (a^* . b . a^* ) | (a|b)^*
    El punto es concatenacion

  • @IsakManiac
    @IsakManiac 4 года назад +1

    si en ves del * hubiera un 2 afuera del parentesis, quiere decir que solo se harian 2 repeticiones? osea por ejemplo: (00+01+10+11)^2
    deberia ser asi? : (e,00,01,10,11,0000,0101,1010,1111)

    • @IsakManiac
      @IsakManiac 4 года назад

      @@unprofedeinformatica perfecto, en un inicio lo hice así, pero no estaba seguro, muchas gracias!

  • @elpytoson1768
    @elpytoson1768 3 года назад +1

    en el ejemplo (00 | 01*) tambien se valen las repeticiones?
    por ejemplo 0001....1

    • @eperez_yt
      @eperez_yt 3 года назад

      @@unprofedeinformatica entonces como disyunción, ésta funciona como exclusiva, ¿cierto? Pues de lo contrario ¿se podría aceptar: 000, 0001, 0001...1?

  • @AdrianMC-jg6bd
    @AdrianMC-jg6bd 4 года назад +2

    Muy buena explicación

  • @drunkenone1699
    @drunkenone1699 Год назад +1

    Gracias, mañana tengo examen y no entendia nada JAJAJAJ :)

  • @neoestrada-fi4eo
    @neoestrada-fi4eo Год назад +1

    Que tal a todos no se si alguien me pueda ayudar con este problema la verdad que no entiendo muy bien lo de desmostraiciones y sin expreciones regulares espero me puedan ayudar
    Pruebe que el lenguaje { 0, 10 }* consiste de todas las cadenas binarias que terminan en 0 y no contienen un prefijo que termine en 11 (más la cadena vacía)