Skip to content

A program in Java and QT Jambi to convert an NFA to a DFA and minimize it

Notifications You must be signed in to change notification settings

Ouissalb/NFA_to_DFA

 
 

Repository files navigation

#Program that converts an NFA to a DFA and minimizes it.

#Synopsis

This program converts an NFA into a minimized DFA.

#Usage

You can run this program by compiling with QT libraries included in Eclipse, or compiling separately and then setting "Class-Path:" line in JAR manifest file. For Eclipse: First download QT Jambi libraries for your OS: http://qtjambi.org/downloads And extract the zip.

Then Import the Java files here as a new project in Eclipse. In properties of project, select "Java Build Path". Click on " Libraries" , and select " Add External JARs" , to add two JARs from the extracted QT Jambi zip:

  1. qtjamb-4*.jar
  2. qtjambi-native* Then you can just run the project in eclipse, or export as a JAR.

For manually running: Compile the project as a JAR, and include the two files mentioned above as a class-path.

You can use the included JAR to run without a need to download QT jambi libraries, as they are included in it . Note: That JAR file has only the Linux 64 bit QT Jambi libraries for now. Other platforms will be included soon

Screenshots

User has 4 choices : Converting an NFA to a minimized DFA, Minimizing a DFA and displaying a DFA. choices

First menu has 4 choices : Add a symbol, delete a symbol, display the alphabet and display the alphabet's size. alt tag

You can enter any character as a symbol except "q" as that will be used for the states' names : alt tag

You have the ability to delete a previously entered symbol : alt tag

You can display your alphabet : alt tag

This menu let you enter how many states are in your automaton and display them : alt tag alt tag

Select the final states : alt tag

Enter the transition function: alt tag

alt tag

#Developers This is a project for the languages theory class.

By : Ouissal Benameur,Oumaima Kabbouri and Charaf Boughriba under the supervision of Dr. Youssef Baddi.

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%