Example #1
0
File: lab2.py Project: Neidell/ppta
def main():
    G = Grammar(grammar)

    if G.grammarType[0] != 3:
        print "Not a regular grammar!\n"
        return

    FSM = FiniteStateMachine(G, "K", ["V"])

    drawFSM(FSM, "FSM_initial")

    FSM.removeUnreachableStates()

    FSM.determinate()

    drawFSM(FSM, "FSM_determinated")

    FSM.printRules()
Example #2
0
def main():
    currentGrammar = grammars[gramarToUse]

    G = Grammar(currentGrammar["grammar"])

    if G.grammarType[0] != 3:
        print "Not a regular grammar!\n"
        return

    FSM = FiniteStateMachine(G, currentGrammar["startState"],
                             currentGrammar["endStates"])

    drawFSM(FSM, "FSM_initial")

    FSM.removeUnreachableStates()

    drawFSM(FSM, "FSM_no_unreachable_states")

    FSM.minimize()

    drawFSM(FSM, "FSM_minimised")

    FSM.printRules()