C# Class QUT.Gplex.Automaton.Minimizer

Exibir arquivo Open project: spark-shading-language/spark

Private Methods

Method Description
FindPartition ( DFSA dSt ) : PartitionBlock

Find an existing partition block with which dSt is compatible, or construct a new partition into which dSt can be placed.

Minimizer ( DFSA dfsa ) : System
MkNewBlock ( ) : PartitionBlock
PMap ( DFSA dSt ) : DFSA.DState

Maps old dfsa states to new states in the minimized set.

PopulatePartitions ( List list ) : void

The initial partitions are formed by the following rules: Every accept state shares a partition with all other accept states that have the same semantic action. All other states go in the partition "otherStates". Addendum, Version 0.3: start states must be kept out of the otherStates partition, otherwise prefixes can be chopped off by, for example, concluding that states {1,3} are equivalent in the following FSA. They are, but the computation of yytext is broken if you merge! a b c d (start state) 1---->2---->3---->4-----(5) (accept state) c d (start state) 1---->7---->(5) (accept state) The inverse transition function is computed at the same time as the initial partition is performed.

RefinePartitions ( ) : void

Refine the partitions by splitting incompatible states