Menu

Inicio
Compilar
Administracion
Usuarios
Ayuda
Ejemplos
HowTo

Login

Usuario:

Password:



Registrarse

Enlaces

UCLM
ESI | UCLM
Campus Virtual

Idioma

::Estas en: Inicio / Ejemplos

equals :

automaton auto1{

     states q0,q1,q2,q3,q4,q5;
     alphabet a,b;
     initial q0;
     final q5;

     transition{

          q0,$=q1;
          q0,$=q3;

          q1,a=q1;
          q1,b=q2;

          q2,$=q5;

          q3,a=q4;

          q4,b=q4;
          q4,$=q5;

          q5,$=q0;

     }
}

automaton auto2{

     states q0,q1,q2,q3;
     alphabet a,b;
     initial q0;
     final q1,q2,q3;

     transition{

          q0,a=q1;
          q0,b=q2;

          q1,a=q1;
          q1,b=q3;

          q2,a=q1;
          q2,b=q2;

          q3,a=q1;
          q3,b=q3;
     }
}

regexp exp1{ a(a*)aa }
regexp exp2{ aaa(a*) }

grammar g1{

     terminal a;
     nonterminal S;
     axiom S;

     productions{
          S:= a S;
          S:= $;
     }
}

grammar g2{

     terminal a;
     nonterminal S;
     axiom S;

     productions{
          S:= a S;
          S:= a | $;
     }
}

/*
ENG: First we print the entities we are working with and
     after we check if them are equivalents.
ESP: Primero imprimimos las entidades con las que estamos
     trabajando y despues comprobamos si son equivalentes.
*/


/*
ENG: With automatons.
ESP: Con automatas.
*/

print(auto1);
print(auto2);

equals(auto1,auto2);


/*
ENG: With regular expressions.
ESP: Con expresiones regulares.
*/

print(exp1);
print(exp2);

equals(exp1,exp2);


/*
ENG: With grammars.
ESP: Con gramaticas.
*/

print(g1);
print(g2);

equals(g1,g2);