DFA CREATOR AND STRING TESTER

Page 1

International Research Journal of Engineering and Technology (IRJET)

e-ISSN: 2395-0056

Volume: 10 Issue: 01 | Jan 2023

p-ISSN: 2395-0072

www.irjet.net

DFA CREATOR AND STRING TESTER Shravani Phadol1, Shubhechha Mehere2, Prerna Divekar3, Yash Gaikwad4 1,2,3,4 Student, Dept. of Information Technology, Vishwakarma Institute of Technology, Pune, Maharashtra, India

---------------------------------------------------------------------***--------------------------------------------------------------------Abstract - Machines and their working is one the vital 2. LITERATURE REVIEW and major concepts to understand and work on. DFA which is Deterministic Finite Automata is a very easy and understandable concept, to learn the working of different real-life machines. To visualize the working efficiency of DFA models, this web-based platform helps the end user to create various such DFAs using a very user-friendly GUI. To simplify DFA working the project is divided into the following parts: the creation of states, creating transitions, inserting states, and deleting states. After completing the design of the machine the user can test different input strings for understanding the language and working of the machine. The test results are shown simultaneously to the user. This web project focuses on the practical and hands-on implementation of different concepts of DFA including states, transitions, final states, and initial states. To simplify the understanding and working of DFA and its flow control, users can use the drag and move functionality.

[1] In this article, the authors describe the development of a tool for visualizing and debugging deterministic finite-state machines (DFAs). The tool allows users to construct DFAs by specifying the states and transitions of the machine, and it provides a visual representation of the DFA as it processes input. The tool also includes a feature for generating code in the finite state machine (FSM) language, which allows users to execute their edited machines. The authors proposed a mechanism for visualizing and verifying the behavior of formal machines during debugging, and they claim that their tool is unique in its ability to generate code for state-based machines. This tool could be useful for educators, students, or researchers working with DFAs, as it provides a more intuitive and interactive way of constructing and understanding these machines. [2] An Efficient Protocol for Oblivious DFA Evaluation and Applications it designs an efficient tool for the evaluation of deterministic finite automata (DFA) between one input holder and a DFA second holder. It also designs a protocol to compute the counting number of accepting states for evaluation of DFA on an input. To solve the counting variant of states it introduces a novel modification for protocol. It implements a protocol and runs the experiments for the evaluation of the DFA string.

Key Words: DFA, Automata, Machine, Web-based 1. INTRODUCTION DFA which is a vital part of automation theory is almost a theoretical concept. Many of its contents such as states their types, transition between two states, final states, and their symbolic representation can be understood easily by ideating the visuals. This project emphasizes the actual working of a machine. Learning these machines and their working on pen and paper becomes tough when the number of states and transitions increases proportionally. To soothe the learning process of building DFA, this web app gives GUI based platform where the addition of states and connecting them becomes easy by just clicking on buttons. The user can parallelly make a state final, add a new state, or delete an added state by using the respective buttons. Building such DFA’s will help to understand the working of real-time and real-usage machines and enhance concept building. The project also has a test string functionality where the user can test, which strings are accepted by the designed DFA, which furtherly helps to identify the language accepted by the DFA. This type of interaction erases the barriers that stand up while learning the functionality of machines. DFA which is popularly used by different compilers explains the mechanism of validation which is used in different fields such as password checking. The main intent of the project is to make a cognizant understanding of the working of machines.

© 2022, IRJET

|

Impact Factor value: 7.529

[3] This article described a tool that allows users to experiment with finite automata and generate lists of strings in the language recognized by the automaton. The tool also has the ability to perform various conversions, such as converting an NFA (nondeterministic finite automaton) to a DFA (deterministic finite automaton). In automata theory, a finite automaton is a mathematical model used to recognize patterns within the input. It consists of a finite set of states, a set of input symbols, a transition function, a start state, and a set of accepting states. The automaton reads input symbols one at a time, transitioning from one state to another according to the transition function until it either accepts or rejects the input. [4] Dynamic testing is a software testing technique that involves testing a system while it is executing. The goal of dynamic testing is to evaluate the behavior of a system at runtime and ensure that it is functioning as expected. Automata learning is a technique used to learn the behavior of a system by constructing a finite automaton that represents the system's behavior. This can be useful for testing purposes, as the automaton can be used to generate

|

ISO 9001:2008 Certified Journal

|

Page 267


Turn static files into dynamic content formats.

Create a flipbook