Change Program 3 to represent a DFA as a structure,
and revise accepts accordingly. That is,
you will use defstruct to define a dfa structure
such that +dfa2+ is created as follows:
(defvar +dfa2+
(make-dfa
:alphabet '(a b)
:states '(1 2 3 4)
:initial-state 1
:final-states '(4)
:transitions '((1 a 2) (1 b 5)
(2 a 4) (2 b 3)
(3 a 5) (3 b 2)
(4 a 5) (4 b 5)
(5 a 5) (5 b 5))
:description
"A deterministic finite-state automaton that accepts the language
{a b^n a, n is an even number}, i.e. {aa, abba, abbbba, ...}."))
Please turn in a hardcopy of your code.