Answered step by step
Verified Expert Solution
Question
1 Approved Answer
I am working on this prolog code that handles the following DFA; I have some of the code written but I need some serious help
I am working on this prolog code that handles the following DFA;
I have some of the code written but I need some serious help with the rest of it. I have written code to handle this DFA in C and in haskell but prolog is new to me. I will take all the help I can get!
I need to implement these requirements (below) but do not know how that would look or where to start; the bold in my code shows where it should be altered in what code I have written.
dfaAccept(DFA, InputStr):-
dfAcceptR(DFA, [H|T], CurrentState) :-
dfaAccept(DFA, [], CurrenctState :
start(q1). final(q4). transition(q1, '.', q3). transition(q1, '0', q2). transition(q1, '1', q2). transition(q2, '.', q4). transition(q2, '0', q2). transition(q2, '1', q2). transition(q3, '.', q5). transition(q3, '0', q4). transition(q3, '1', q4). transition(q4, '.', q5). transition(q4, '0', q4). transition(q4, '1', q4). transition(q5, '0', q5). transition(q5, '1', q5). dfaAccept(Symbols) :- start(StartState), accept(Symbols, StartState). dfaAccept([], State) :- final(State). dfaAccept([Symbol|Symbols], State) :- transition(State, Symbol, NextState), accept(Symbols, NextState).
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started