diff --git a/examples2/automaton/DFTA.xml b/examples2/automaton/DFTA.xml index 78b83184ce275de31b2c606d8c24f6c174a5fa98..5cbde5853dab9ea324fc205decbd8b103446f3bb 100644 --- a/examples2/automaton/DFTA.xml +++ b/examples2/automaton/DFTA.xml @@ -1,650 +1,392 @@ <?xml version="1.0"?> <DFTA> <states> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + </Set> + <Set> + <Unsigned>2</Unsigned> + </Set> + <Set> + <Unsigned>3</Unsigned> + </Set> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> + </Set> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> + </Set> </states> <rankedInputAlphabet> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>b</Character> <Unsigned>1</Unsigned> </RankedSymbol> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>c</Character> <Unsigned>0</Unsigned> </RankedSymbol> </rankedInputAlphabet> <finalStates> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>3</Unsigned> + </Set> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> + </Set> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> + </Set> </finalStates> <transitions> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + </Set> + <Set> + <Unsigned>3</Unsigned> + </Set> </from> <to> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> + </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + </Set> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> + </Set> </from> <to> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> + </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + </Set> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> + </Set> </from> <to> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> + </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>3</Unsigned> + </Set> + <Set> + <Unsigned>3</Unsigned> + </Set> </from> <to> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>2</Unsigned> + </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>3</Unsigned> + </Set> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> + </Set> </from> <to> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>2</Unsigned> + </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>3</Unsigned> + </Set> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> + </Set> </from> <to> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>2</Unsigned> + </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> + </Set> + <Set> + <Unsigned>3</Unsigned> + </Set> </from> <to> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> + </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> + </Set> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> + </Set> </from> <to> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> + </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> + </Set> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> + </Set> </from> <to> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> + </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> + </Set> + <Set> + <Unsigned>3</Unsigned> + </Set> </from> <to> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> + </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> + </Set> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> + </Set> </from> <to> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> + </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> + </Set> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> + </Set> </from> <to> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> + </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>b</Character> <Unsigned>1</Unsigned> </RankedSymbol> </input> <from> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>2</Unsigned> + </Set> </from> <to> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>b</Character> <Unsigned>1</Unsigned> </RankedSymbol> </input> <from> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> + </Set> </from> <to> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>1</Unsigned> + </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>c</Character> <Unsigned>0</Unsigned> </RankedSymbol> </input> <from/> <to> - <LabelSetLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </LabelSetLabel> + <Set> + <Unsigned>3</Unsigned> + </Set> </to> </transition> </transitions> diff --git a/examples2/automaton/DPDA1.xml b/examples2/automaton/DPDA1.xml index dc38061b86c32b3f4fa823b9d6b90bcc31f48c86..845225d2acc2489fefb23c98fa9e58cffdb69f2c 100644 --- a/examples2/automaton/DPDA1.xml +++ b/examples2/automaton/DPDA1.xml @@ -1,63 +1,88 @@ +<?xml version="1.0"?> <DPDA> - <states> - <PrimitiveLabel><String>a</String></PrimitiveLabel> - <PrimitiveLabel><String>b</String></PrimitiveLabel> - <PrimitiveLabel><String>c</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>{</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>}</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol> - </pushdownStoreAlphabet> - <initialState> - <PrimitiveLabel><String>a</String></PrimitiveLabel> - </initialState> - <initialPushdownStoreSymbol> - <LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol> - </initialPushdownStoreSymbol> - <finalStates> + <states> + <String>a</String> + <String>b</String> + <String>c</String> + </states> + <inputAlphabet> + <Character>{</Character> + <Character>}</Character> + </inputAlphabet> + <pushdownStoreAlphabet> + <Character>0</Character> + </pushdownStoreAlphabet> + <initialState> + <String>a</String> + </initialState> + <initialPushdownStoreSymbol> + <Character>0</Character> + </initialPushdownStoreSymbol> + <finalStates> </finalStates> - <transitions> - <transition> - <from><PrimitiveLabel><String>a</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>{</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> + <transitions> + <transition> + <from> + <String>a</String> + </from> + <input> + <Character>{</Character> + </input> + <pop> </pop> - <to><PrimitiveLabel><String>b</String></PrimitiveLabel></to> - <push> + <to> + <String>b</String> + </to> + <push> </push> - </transition> - <transition> - <from><PrimitiveLabel><String>b</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>{</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> + </transition> + <transition> + <from> + <String>b</String> + </from> + <input> + <Character>{</Character> + </input> + <pop> </pop> - <to><PrimitiveLabel><String>b</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol> + <to> + <String>b</String> + </to> + <push> + <Character>0</Character> + </push> + </transition> + <transition> + <from> + <String>b</String> + </from> + <input> + <Character>}</Character> + </input> + <pop> + <Character>0</Character> + </pop> + <to> + <String>c</String> + </to> + <push> </push> - </transition> - <transition> - <from><PrimitiveLabel><String>b</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>}</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>c</String></PrimitiveLabel></to> - <push> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>c</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>}</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>c</String></PrimitiveLabel></to> - <push> + </transition> + <transition> + <from> + <String>c</String> + </from> + <input> + <Character>}</Character> + </input> + <pop> + <Character>0</Character> + </pop> + <to> + <String>c</String> + </to> + <push> </push> - </transition> - </transitions> + </transition> + </transitions> </DPDA> diff --git a/examples2/automaton/ENFSM2.DET.xml b/examples2/automaton/ENFSM2.DET.xml index 1adda21dc095b9782862dc465d7709b1c068afb5..9ea11a0608f56763abfb87ed19dceb5f9a659cd7 100644 --- a/examples2/automaton/ENFSM2.DET.xml +++ b/examples2/automaton/ENFSM2.DET.xml @@ -1,2 +1,189 @@ <?xml version="1.0"?> -<DFA><states><Set><PrimitiveLabel><String>four</String></PrimitiveLabel></Set><Set><PrimitiveLabel><String>one</String></PrimitiveLabel></Set><Set><PrimitiveLabel><String>three</String></PrimitiveLabel></Set><Set><PrimitiveLabel><String>two</String></PrimitiveLabel></Set><Set><PrimitiveLabel><String>zero</String></PrimitiveLabel></Set></states><inputAlphabet><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol><LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol></inputAlphabet><initialState><Set><PrimitiveLabel><String>zero</String></PrimitiveLabel></Set></initialState><finalStates><Set><PrimitiveLabel><String>one</String></PrimitiveLabel></Set><Set><PrimitiveLabel><String>zero</String></PrimitiveLabel></Set></finalStates><transitions><transition><from><Set><PrimitiveLabel><String>four</String></PrimitiveLabel></Set></from><input><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol></input><to><Set><PrimitiveLabel><String>one</String></PrimitiveLabel></Set></to></transition><transition><from><Set><PrimitiveLabel><String>four</String></PrimitiveLabel></Set></from><input><LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol></input><to><Set><PrimitiveLabel><String>four</String></PrimitiveLabel></Set></to></transition><transition><from><Set><PrimitiveLabel><String>one</String></PrimitiveLabel></Set></from><input><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol></input><to><Set><PrimitiveLabel><String>two</String></PrimitiveLabel></Set></to></transition><transition><from><Set><PrimitiveLabel><String>one</String></PrimitiveLabel></Set></from><input><LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol></input><to><Set><PrimitiveLabel><String>one</String></PrimitiveLabel></Set></to></transition><transition><from><Set><PrimitiveLabel><String>three</String></PrimitiveLabel></Set></from><input><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol></input><to><Set><PrimitiveLabel><String>four</String></PrimitiveLabel></Set></to></transition><transition><from><Set><PrimitiveLabel><String>three</String></PrimitiveLabel></Set></from><input><LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol></input><to><Set><PrimitiveLabel><String>three</String></PrimitiveLabel></Set></to></transition><transition><from><Set><PrimitiveLabel><String>two</String></PrimitiveLabel></Set></from><input><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol></input><to><Set><PrimitiveLabel><String>three</String></PrimitiveLabel></Set></to></transition><transition><from><Set><PrimitiveLabel><String>two</String></PrimitiveLabel></Set></from><input><LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol></input><to><Set><PrimitiveLabel><String>two</String></PrimitiveLabel></Set></to></transition><transition><from><Set><PrimitiveLabel><String>zero</String></PrimitiveLabel></Set></from><input><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol></input><to><Set><PrimitiveLabel><String>two</String></PrimitiveLabel></Set></to></transition><transition><from><Set><PrimitiveLabel><String>zero</String></PrimitiveLabel></Set></from><input><LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol></input><to><Set><PrimitiveLabel><String>one</String></PrimitiveLabel></Set></to></transition></transitions></DFA> +<DFA> + <states> + <Set> + <String>four</String> + </Set> + <Set> + <String>one</String> + </Set> + <Set> + <String>three</String> + </Set> + <Set> + <String>two</String> + </Set> + <Set> + <String>zero</String> + </Set> + </states> + <inputAlphabet> + <Character>0</Character> + <Character>1</Character> + </inputAlphabet> + <initialState> + <Set> + <String>zero</String> + </Set> + </initialState> + <finalStates> + <Set> + <String>one</String> + </Set> + <Set> + <String>zero</String> + </Set> + </finalStates> + <transitions> + <transition> + <from> + <Set> + <String>four</String> + </Set> + </from> + <input> + <Character>0</Character> + </input> + <to> + <Set> + <String>one</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>four</String> + </Set> + </from> + <input> + <Character>1</Character> + </input> + <to> + <Set> + <String>four</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>one</String> + </Set> + </from> + <input> + <Character>0</Character> + </input> + <to> + <Set> + <String>two</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>one</String> + </Set> + </from> + <input> + <Character>1</Character> + </input> + <to> + <Set> + <String>one</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>three</String> + </Set> + </from> + <input> + <Character>0</Character> + </input> + <to> + <Set> + <String>four</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>three</String> + </Set> + </from> + <input> + <Character>1</Character> + </input> + <to> + <Set> + <String>three</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>two</String> + </Set> + </from> + <input> + <Character>0</Character> + </input> + <to> + <Set> + <String>three</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>two</String> + </Set> + </from> + <input> + <Character>1</Character> + </input> + <to> + <Set> + <String>two</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>zero</String> + </Set> + </from> + <input> + <Character>0</Character> + </input> + <to> + <Set> + <String>two</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>zero</String> + </Set> + </from> + <input> + <Character>1</Character> + </input> + <to> + <Set> + <String>one</String> + </Set> + </to> + </transition> + </transitions> +</DFA> diff --git a/examples2/automaton/ENFSM2.xml b/examples2/automaton/ENFSM2.xml index 6dddce5eb69c4f0ee4a3715547e649b72623873c..150ad7f95e0b84fd889140af5afa18ceff4e22e6 100644 --- a/examples2/automaton/ENFSM2.xml +++ b/examples2/automaton/ENFSM2.xml @@ -1,80 +1,146 @@ +<?xml version="1.0"?> <EpsilonNFA> - <states> - <PrimitiveLabel><String>one</String></PrimitiveLabel> - <PrimitiveLabel><String>two</String></PrimitiveLabel> - <PrimitiveLabel><String>three</String></PrimitiveLabel> - <PrimitiveLabel><String>four</String></PrimitiveLabel> - <PrimitiveLabel><String>five</String></PrimitiveLabel> - <PrimitiveLabel><String>six</String></PrimitiveLabel> - <PrimitiveLabel><String>zero</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <initialState> - <PrimitiveLabel><String>zero</String></PrimitiveLabel> - </initialState> - <finalStates> - <PrimitiveLabel><String>one</String></PrimitiveLabel> - <PrimitiveLabel><String>six</String></PrimitiveLabel> - </finalStates> - <transitions> - <transition> - <from><PrimitiveLabel><String>four</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>four</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>four</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>one</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>one</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>two</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>one</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>one</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>three</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>four</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>three</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>three</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>two</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>three</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>two</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>two</String></PrimitiveLabel></to> - </transition> - - <transition> - <from><PrimitiveLabel><String>five</String></PrimitiveLabel></from> - <input><epsilon/></input> - <to><PrimitiveLabel><String>six</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>zero</String></PrimitiveLabel></from> - <input><epsilon/></input> - <to><PrimitiveLabel><String>five</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>zero</String></PrimitiveLabel></from> - <input><epsilon/></input> - <to><PrimitiveLabel><String>one</String></PrimitiveLabel></to> - </transition> - </transitions> + <states> + <String>one</String> + <String>two</String> + <String>three</String> + <String>four</String> + <String>five</String> + <String>six</String> + <String>zero</String> + </states> + <inputAlphabet> + <Character>0</Character> + <Character>1</Character> + </inputAlphabet> + <initialState> + <String>zero</String> + </initialState> + <finalStates> + <String>one</String> + <String>six</String> + </finalStates> + <transitions> + <transition> + <from> + <String>four</String> + </from> + <input> + <Character>1</Character> + </input> + <to> + <String>four</String> + </to> + </transition> + <transition> + <from> + <String>four</String> + </from> + <input> + <Character>0</Character> + </input> + <to> + <String>one</String> + </to> + </transition> + <transition> + <from> + <String>one</String> + </from> + <input> + <Character>0</Character> + </input> + <to> + <String>two</String> + </to> + </transition> + <transition> + <from> + <String>one</String> + </from> + <input> + <Character>1</Character> + </input> + <to> + <String>one</String> + </to> + </transition> + <transition> + <from> + <String>three</String> + </from> + <input> + <Character>0</Character> + </input> + <to> + <String>four</String> + </to> + </transition> + <transition> + <from> + <String>three</String> + </from> + <input> + <Character>1</Character> + </input> + <to> + <String>three</String> + </to> + </transition> + <transition> + <from> + <String>two</String> + </from> + <input> + <Character>0</Character> + </input> + <to> + <String>three</String> + </to> + </transition> + <transition> + <from> + <String>two</String> + </from> + <input> + <Character>1</Character> + </input> + <to> + <String>two</String> + </to> + </transition> + <transition> + <from> + <String>five</String> + </from> + <input> + <epsilon/> + </input> + <to> + <String>six</String> + </to> + </transition> + <transition> + <from> + <String>zero</String> + </from> + <input> + <epsilon/> + </input> + <to> + <String>five</String> + </to> + </transition> + <transition> + <from> + <String>zero</String> + </from> + <input> + <epsilon/> + </input> + <to> + <String>one</String> + </to> + </transition> + </transitions> </EpsilonNFA> diff --git a/examples2/automaton/NFSM1.DET.xml b/examples2/automaton/NFSM1.DET.xml index 17035cd07ba24ecda083a8038fe35c72e6782112..cff0a4b14e97bc5dd1669515e382ddeef8281d9c 100644 --- a/examples2/automaton/NFSM1.DET.xml +++ b/examples2/automaton/NFSM1.DET.xml @@ -1,300 +1,174 @@ <?xml version="1.0"?> <DFA> - <states> - <Set> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </states> - <inputAlphabet> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>0</Integer> - </PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </inputAlphabet> - <initialState> - <Set> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </initialState> - <finalStates> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </finalStates> - <transitions> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>0</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>0</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>0</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>0</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - </transitions> + <states> + <Set> + <String>S</String> + </Set> + <Set> + <String>A</String> + <String>S</String> + </Set> + <Set> + <String>B</String> + <String>S</String> + </Set> + <Set> + <String>A</String> + <String>C</String> + <String>S</String> + </Set> + </states> + <inputAlphabet> + <Integer>0</Integer> + <Integer>1</Integer> + </inputAlphabet> + <initialState> + <Set> + <String>S</String> + </Set> + </initialState> + <finalStates> + <Set> + <String>A</String> + <String>C</String> + <String>S</String> + </Set> + </finalStates> + <transitions> + <transition> + <from> + <Set> + <String>S</String> + </Set> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <Set> + <String>A</String> + <String>S</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>S</String> + </Set> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <Set> + <String>S</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>S</String> + </Set> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <Set> + <String>A</String> + <String>S</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>S</String> + </Set> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <Set> + <String>B</String> + <String>S</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>B</String> + <String>S</String> + </Set> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <Set> + <String>A</String> + <String>C</String> + <String>S</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>B</String> + <String>S</String> + </Set> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <Set> + <String>S</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>C</String> + <String>S</String> + </Set> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <Set> + <String>A</String> + <String>S</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>C</String> + <String>S</String> + </Set> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <Set> + <String>B</String> + <String>S</String> + </Set> + </to> + </transition> + </transitions> </DFA> diff --git a/examples2/automaton/NFSM1.xml b/examples2/automaton/NFSM1.xml index c258052495d89f4ee2da5165864c98f1b8abb7a9..532f991e044bd05fd447919370d7c6efb14173f9 100644 --- a/examples2/automaton/NFSM1.xml +++ b/examples2/automaton/NFSM1.xml @@ -1,45 +1,76 @@ +<?xml version="1.0"?> <NFA> - <states> - <PrimitiveLabel><String>S</String></PrimitiveLabel> - <PrimitiveLabel><String>A</String></PrimitiveLabel> - <PrimitiveLabel><String>B</String></PrimitiveLabel> - <PrimitiveLabel><String>C</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Integer>0</Integer></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Integer>1</Integer></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <initialState> - <PrimitiveLabel><String>S</String></PrimitiveLabel> - </initialState> - <finalStates> - <PrimitiveLabel><String>C</String></PrimitiveLabel> - </finalStates> - <transitions> - <transition> - <from><PrimitiveLabel><String>S</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>0</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>S</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>S</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>0</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>A</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>S</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>1</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>S</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>A</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>1</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>B</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>B</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>0</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>C</String></PrimitiveLabel></to> - </transition> - </transitions> + <states> + <String>S</String> + <String>A</String> + <String>B</String> + <String>C</String> + </states> + <inputAlphabet> + <Integer>0</Integer> + <Integer>1</Integer> + </inputAlphabet> + <initialState> + <String>S</String> + </initialState> + <finalStates> + <String>C</String> + </finalStates> + <transitions> + <transition> + <from> + <String>S</String> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <String>S</String> + </to> + </transition> + <transition> + <from> + <String>S</String> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <String>A</String> + </to> + </transition> + <transition> + <from> + <String>S</String> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <String>S</String> + </to> + </transition> + <transition> + <from> + <String>A</String> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <String>B</String> + </to> + </transition> + <transition> + <from> + <String>B</String> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <String>C</String> + </to> + </transition> + </transitions> </NFA> diff --git a/examples2/automaton/NFSM2.DET.xml b/examples2/automaton/NFSM2.DET.xml index 83a09dc3752377cb84d025248df984ea5ef4dad4..7644298486c22f4ea08310d8d97e9c8917af81a2 100644 --- a/examples2/automaton/NFSM2.DET.xml +++ b/examples2/automaton/NFSM2.DET.xml @@ -1,671 +1,377 @@ <?xml version="1.0"?> <DFA> - <states> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </states> - <inputAlphabet> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>0</Integer> - </PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </inputAlphabet> - <initialState> - <Set> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </initialState> - <finalStates> - <Set> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </finalStates> - <transitions> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>0</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>0</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>0</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>0</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>0</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>0</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>0</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>0</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>0</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - </transitions> + <states> + <Set> + <String>A</String> + </Set> + <Set> + <String>C</String> + </Set> + <Set> + <String>S</String> + </Set> + <Set> + <String>A</String> + <String>B</String> + </Set> + <Set> + <String>A</String> + <String>C</String> + </Set> + <Set> + <String>A</String> + <String>S</String> + </Set> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + </Set> + <Set> + <String>A</String> + <String>C</String> + <String>S</String> + </Set> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + <String>S</String> + </Set> + </states> + <inputAlphabet> + <Integer>0</Integer> + <Integer>1</Integer> + </inputAlphabet> + <initialState> + <Set> + <String>S</String> + </Set> + </initialState> + <finalStates> + <Set> + <String>C</String> + </Set> + <Set> + <String>A</String> + <String>B</String> + </Set> + <Set> + <String>A</String> + <String>C</String> + </Set> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + </Set> + <Set> + <String>A</String> + <String>C</String> + <String>S</String> + </Set> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + <String>S</String> + </Set> + </finalStates> + <transitions> + <transition> + <from> + <Set> + <String>A</String> + </Set> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <Set> + <String>C</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + </Set> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <Set> + <String>A</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>C</String> + </Set> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <Set> + <String>A</String> + <String>S</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>S</String> + </Set> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>S</String> + </Set> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <Set> + <String>C</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + </Set> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <Set> + <String>C</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + </Set> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>C</String> + </Set> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <Set> + <String>A</String> + <String>C</String> + <String>S</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>C</String> + </Set> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <Set> + <String>A</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>S</String> + </Set> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>S</String> + </Set> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <Set> + <String>A</String> + <String>C</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + </Set> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <Set> + <String>A</String> + <String>C</String> + <String>S</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + </Set> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>C</String> + <String>S</String> + </Set> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + <String>S</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>C</String> + <String>S</String> + </Set> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <Set> + <String>A</String> + <String>C</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + <String>S</String> + </Set> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + <String>S</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + <String>S</String> + </Set> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + </Set> + </to> + </transition> + </transitions> </DFA> diff --git a/examples2/automaton/NFSM2.xml b/examples2/automaton/NFSM2.xml index cdef0c1afea632a5fa891d3e495202203db7db0e..1bea6dff5886132f40eb727d2e5c51893ee45916 100644 --- a/examples2/automaton/NFSM2.xml +++ b/examples2/automaton/NFSM2.xml @@ -1,71 +1,132 @@ +<?xml version="1.0"?> <NFA> - <states> - <PrimitiveLabel><String>S</String></PrimitiveLabel> - <PrimitiveLabel><String>A</String></PrimitiveLabel> - <PrimitiveLabel><String>B</String></PrimitiveLabel> - <PrimitiveLabel><String>C</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Integer>0</Integer></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Integer>1</Integer></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <initialState> - <PrimitiveLabel><String>S</String></PrimitiveLabel> - </initialState> - <finalStates> - <PrimitiveLabel><String>B</String></PrimitiveLabel> - <PrimitiveLabel><String>C</String></PrimitiveLabel> - </finalStates> - <transitions> - <transition> - <from><PrimitiveLabel><String>S</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>0</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>A</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>S</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>0</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>B</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>S</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>1</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>C</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>A</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>0</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>C</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>A</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>1</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>A</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>B</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>0</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>C</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>B</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>1</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>B</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>B</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>1</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>A</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>C</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>0</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>S</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>C</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>0</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>A</String></PrimitiveLabel></to> - </transition> - </transitions> + <states> + <String>S</String> + <String>A</String> + <String>B</String> + <String>C</String> + </states> + <inputAlphabet> + <Integer>0</Integer> + <Integer>1</Integer> + </inputAlphabet> + <initialState> + <String>S</String> + </initialState> + <finalStates> + <String>B</String> + <String>C</String> + </finalStates> + <transitions> + <transition> + <from> + <String>S</String> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <String>A</String> + </to> + </transition> + <transition> + <from> + <String>S</String> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <String>B</String> + </to> + </transition> + <transition> + <from> + <String>S</String> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <String>C</String> + </to> + </transition> + <transition> + <from> + <String>A</String> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <String>C</String> + </to> + </transition> + <transition> + <from> + <String>A</String> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <String>A</String> + </to> + </transition> + <transition> + <from> + <String>B</String> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <String>C</String> + </to> + </transition> + <transition> + <from> + <String>B</String> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <String>B</String> + </to> + </transition> + <transition> + <from> + <String>B</String> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <String>A</String> + </to> + </transition> + <transition> + <from> + <String>C</String> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <String>S</String> + </to> + </transition> + <transition> + <from> + <String>C</String> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <String>A</String> + </to> + </transition> + </transitions> </NFA> diff --git a/examples2/automaton/NFSM3.DET.xml b/examples2/automaton/NFSM3.DET.xml index a3a8ed334f8baf69939667040b48eb16a414d7d2..443d483e292c17f82634c8901abbea8de1215d8f 100644 --- a/examples2/automaton/NFSM3.DET.xml +++ b/examples2/automaton/NFSM3.DET.xml @@ -1,561 +1,307 @@ <?xml version="1.0"?> <DFA> - <states> - <Set> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </states> - <inputAlphabet> - <LabeledSymbol> - <PrimitiveLabel> - <Character>0</Character> - </PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel> - <Character>1</Character> - </PrimitiveLabel> - </LabeledSymbol> - </inputAlphabet> - <initialState> - <Set> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </initialState> - <finalStates> - <Set> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </finalStates> - <transitions> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>1</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>0</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>1</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>0</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>1</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>0</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>1</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>0</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>1</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>0</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>1</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>0</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>1</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>S</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - </transitions> + <states> + <Set> + <String>B</String> + </Set> + <Set> + <String>S</String> + </Set> + <Set> + <String>A</String> + <String>S</String> + </Set> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + </Set> + <Set> + <String>A</String> + <String>B</String> + <String>S</String> + </Set> + <Set> + <String>A</String> + <String>C</String> + <String>S</String> + </Set> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + <String>S</String> + </Set> + </states> + <inputAlphabet> + <Character>0</Character> + <Character>1</Character> + </inputAlphabet> + <initialState> + <Set> + <String>S</String> + </Set> + </initialState> + <finalStates> + <Set> + <String>B</String> + </Set> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + </Set> + <Set> + <String>A</String> + <String>B</String> + <String>S</String> + </Set> + <Set> + <String>A</String> + <String>C</String> + <String>S</String> + </Set> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + <String>S</String> + </Set> + </finalStates> + <transitions> + <transition> + <from> + <Set> + <String>B</String> + </Set> + </from> + <input> + <Character>1</Character> + </input> + <to> + <Set> + <String>S</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>S</String> + </Set> + </from> + <input> + <Character>0</Character> + </input> + <to> + <Set> + <String>A</String> + <String>S</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>S</String> + </Set> + </from> + <input> + <Character>1</Character> + </input> + <to> + <Set> + <String>B</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>S</String> + </Set> + </from> + <input> + <Character>0</Character> + </input> + <to> + <Set> + <String>A</String> + <String>S</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>S</String> + </Set> + </from> + <input> + <Character>1</Character> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + </Set> + </from> + <input> + <Character>0</Character> + </input> + <to> + <Set> + <String>B</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + </Set> + </from> + <input> + <Character>1</Character> + </input> + <to> + <Set> + <String>A</String> + <String>C</String> + <String>S</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + <String>S</String> + </Set> + </from> + <input> + <Character>0</Character> + </input> + <to> + <Set> + <String>A</String> + <String>S</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + <String>S</String> + </Set> + </from> + <input> + <Character>1</Character> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + <String>S</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>C</String> + <String>S</String> + </Set> + </from> + <input> + <Character>0</Character> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + <String>S</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>C</String> + <String>S</String> + </Set> + </from> + <input> + <Character>1</Character> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + <String>S</String> + </Set> + </from> + <input> + <Character>0</Character> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + <String>S</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + <String>S</String> + </Set> + </from> + <input> + <Character>1</Character> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + <String>S</String> + </Set> + </to> + </transition> + </transitions> </DFA> diff --git a/examples2/automaton/NFSM3.xml b/examples2/automaton/NFSM3.xml index 3333d144885763dff3fa18fa6da381ec4b3256e1..212cc806689dafebe8d5ba54d9d83effde99523c 100644 --- a/examples2/automaton/NFSM3.xml +++ b/examples2/automaton/NFSM3.xml @@ -1,56 +1,99 @@ +<?xml version="1.0"?> <NFA> - <states> - <PrimitiveLabel><String>S</String></PrimitiveLabel> - <PrimitiveLabel><String>A</String></PrimitiveLabel> - <PrimitiveLabel><String>B</String></PrimitiveLabel> - <PrimitiveLabel><String>C</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <initialState> - <PrimitiveLabel><String>S</String></PrimitiveLabel> - </initialState> - <finalStates> - <PrimitiveLabel><String>B</String></PrimitiveLabel> - <PrimitiveLabel><String>C</String></PrimitiveLabel> - </finalStates> - <transitions> - <transition> - <from><PrimitiveLabel><String>S</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>S</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>S</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>A</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>S</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>B</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>A</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>A</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>A</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>C</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>B</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>S</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>C</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>B</String></PrimitiveLabel></to> - </transition> - </transitions> + <states> + <String>S</String> + <String>A</String> + <String>B</String> + <String>C</String> + </states> + <inputAlphabet> + <Character>0</Character> + <Character>1</Character> + </inputAlphabet> + <initialState> + <String>S</String> + </initialState> + <finalStates> + <String>B</String> + <String>C</String> + </finalStates> + <transitions> + <transition> + <from> + <String>S</String> + </from> + <input> + <Character>0</Character> + </input> + <to> + <String>S</String> + </to> + </transition> + <transition> + <from> + <String>S</String> + </from> + <input> + <Character>0</Character> + </input> + <to> + <String>A</String> + </to> + </transition> + <transition> + <from> + <String>S</String> + </from> + <input> + <Character>1</Character> + </input> + <to> + <String>B</String> + </to> + </transition> + <transition> + <from> + <String>A</String> + </from> + <input> + <Character>1</Character> + </input> + <to> + <String>A</String> + </to> + </transition> + <transition> + <from> + <String>A</String> + </from> + <input> + <Character>1</Character> + </input> + <to> + <String>C</String> + </to> + </transition> + <transition> + <from> + <String>B</String> + </from> + <input> + <Character>1</Character> + </input> + <to> + <String>S</String> + </to> + </transition> + <transition> + <from> + <String>C</String> + </from> + <input> + <Character>0</Character> + </input> + <to> + <String>B</String> + </to> + </transition> + </transitions> </NFA> diff --git a/examples2/automaton/NFSM4.DET.xml b/examples2/automaton/NFSM4.DET.xml index 2f79c9a34a886ea2a9e3d3692183dd8317b325d9..193b4c5d425be90af0b74cc37e891f2fe7fd7add 100644 --- a/examples2/automaton/NFSM4.DET.xml +++ b/examples2/automaton/NFSM4.DET.xml @@ -1,708 +1,378 @@ <?xml version="1.0"?> <DFA> - <states> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>E</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>F</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>E</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>F</String> - </PrimitiveLabel> - </Set> - </states> - <inputAlphabet> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </inputAlphabet> - <initialState> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - </Set> - </initialState> - <finalStates> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>E</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>E</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>F</String> - </PrimitiveLabel> - </Set> - </finalStates> - <transitions> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>E</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>E</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>E</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>F</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>E</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>E</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>E</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>F</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>F</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>E</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>E</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>F</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>E</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>E</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>E</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>F</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>F</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>A</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>D</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>E</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - </transitions> + <states> + <Set> + <String>A</String> + </Set> + <Set> + <String>A</String> + <String>B</String> + </Set> + <Set> + <String>A</String> + <String>E</String> + </Set> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + </Set> + <Set> + <String>A</String> + <String>B</String> + <String>F</String> + </Set> + <Set> + <String>A</String> + <String>D</String> + <String>E</String> + </Set> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + <String>D</String> + </Set> + <Set> + <String>A</String> + <String>B</String> + <String>D</String> + <String>F</String> + </Set> + </states> + <inputAlphabet> + <Character>a</Character> + <Character>b</Character> + </inputAlphabet> + <initialState> + <Set> + <String>A</String> + </Set> + </initialState> + <finalStates> + <Set> + <String>A</String> + <String>E</String> + </Set> + <Set> + <String>A</String> + <String>D</String> + <String>E</String> + </Set> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + <String>D</String> + </Set> + <Set> + <String>A</String> + <String>B</String> + <String>D</String> + <String>F</String> + </Set> + </finalStates> + <transitions> + <transition> + <from> + <Set> + <String>A</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set> + <String>A</String> + <String>E</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set> + <String>A</String> + <String>E</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>E</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + <String>F</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>E</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set> + <String>A</String> + <String>D</String> + <String>E</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + <String>D</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set> + <String>A</String> + <String>D</String> + <String>E</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + <String>F</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + <String>F</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set> + <String>A</String> + <String>D</String> + <String>E</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>D</String> + <String>E</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + <String>D</String> + <String>F</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>D</String> + <String>E</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set> + <String>A</String> + <String>D</String> + <String>E</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + <String>D</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + <String>D</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + <String>D</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set> + <String>A</String> + <String>D</String> + <String>E</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + <String>D</String> + <String>F</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set> + <String>A</String> + <String>B</String> + <String>C</String> + <String>D</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>A</String> + <String>B</String> + <String>D</String> + <String>F</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set> + <String>A</String> + <String>D</String> + <String>E</String> + </Set> + </to> + </transition> + </transitions> </DFA> diff --git a/examples2/automaton/NFSM4.xml b/examples2/automaton/NFSM4.xml index 602a05d50d918f0691159b6983af53dbdbdc4cba..78015ada14a360bd81f3b092806b82643a79f556 100644 --- a/examples2/automaton/NFSM4.xml +++ b/examples2/automaton/NFSM4.xml @@ -1,83 +1,156 @@ +<?xml version="1.0"?> <NFA> - <states> - <PrimitiveLabel><String>A</String></PrimitiveLabel> - <PrimitiveLabel><String>B</String></PrimitiveLabel> - <PrimitiveLabel><String>C</String></PrimitiveLabel> - <PrimitiveLabel><String>D</String></PrimitiveLabel> - <PrimitiveLabel><String>E</String></PrimitiveLabel> - <PrimitiveLabel><String>F</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <initialState> - <PrimitiveLabel><String>A</String></PrimitiveLabel> - </initialState> - <finalStates> - <PrimitiveLabel><String>D</String></PrimitiveLabel> - <PrimitiveLabel><String>E</String></PrimitiveLabel> - </finalStates> - <transitions> - <transition> - <from><PrimitiveLabel><String>A</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>A</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>A</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>B</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>A</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>A</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>A</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>E</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>B</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>C</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>C</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>D</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>C</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>D</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>D</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>D</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>D</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>D</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>E</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>F</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>E</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>D</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>F</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>D</String></PrimitiveLabel></to> - </transition> - </transitions> + <states> + <String>A</String> + <String>B</String> + <String>C</String> + <String>D</String> + <String>E</String> + <String>F</String> + </states> + <inputAlphabet> + <Character>a</Character> + <Character>b</Character> + </inputAlphabet> + <initialState> + <String>A</String> + </initialState> + <finalStates> + <String>D</String> + <String>E</String> + </finalStates> + <transitions> + <transition> + <from> + <String>A</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>A</String> + </to> + </transition> + <transition> + <from> + <String>A</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>B</String> + </to> + </transition> + <transition> + <from> + <String>A</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>A</String> + </to> + </transition> + <transition> + <from> + <String>A</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>E</String> + </to> + </transition> + <transition> + <from> + <String>B</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>C</String> + </to> + </transition> + <transition> + <from> + <String>C</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>D</String> + </to> + </transition> + <transition> + <from> + <String>C</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>D</String> + </to> + </transition> + <transition> + <from> + <String>D</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>D</String> + </to> + </transition> + <transition> + <from> + <String>D</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>D</String> + </to> + </transition> + <transition> + <from> + <String>E</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>F</String> + </to> + </transition> + <transition> + <from> + <String>E</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>D</String> + </to> + </transition> + <transition> + <from> + <String>F</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>D</String> + </to> + </transition> + </transitions> </NFA> diff --git a/examples2/automaton/NFSM5.DET.xml b/examples2/automaton/NFSM5.DET.xml index 02d9328ae700278ec5327fb9df0102d317d31688..e22881281d72097e217ba5c55d609114b4809f24 100644 --- a/examples2/automaton/NFSM5.DET.xml +++ b/examples2/automaton/NFSM5.DET.xml @@ -1,486 +1,302 @@ <?xml version="1.0"?> <DFA> - <states> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>10</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>4</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>5</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>6</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>8</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>9</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>7</String> - </PrimitiveLabel> - </Set> - </states> - <inputAlphabet> - <LabeledSymbol> - <PrimitiveLabel> - <Character>f</Character> - </PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel> - <Character>i</Character> - </PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel> - <Character>l</Character> - </PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel> - <Character>z</Character> - </PrimitiveLabel> - </LabeledSymbol> - </inputAlphabet> - <initialState> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - </initialState> - <finalStates> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>10</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>6</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>8</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>9</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>7</String> - </PrimitiveLabel> - </Set> - </finalStates> - <transitions> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>l</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>5</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>l</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>10</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>z</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>10</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>f</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>l</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>7</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>f</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>10</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>4</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>l</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>4</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>z</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>5</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>i</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>6</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>5</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>l</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>4</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>5</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>z</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>8</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>l</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>7</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>f</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>9</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>7</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>i</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>8</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>7</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>l</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - </transitions> + <states> + <Set> + <String>0</String> + </Set> + <Set> + <String>1</String> + </Set> + <Set> + <String>10</String> + </Set> + <Set> + <String>2</String> + </Set> + <Set> + <String>3</String> + </Set> + <Set> + <String>4</String> + </Set> + <Set> + <String>5</String> + </Set> + <Set> + <String>6</String> + </Set> + <Set> + <String>8</String> + </Set> + <Set> + <String>9</String> + </Set> + <Set> + <String>1</String> + <String>7</String> + </Set> + </states> + <inputAlphabet> + <Character>f</Character> + <Character>i</Character> + <Character>l</Character> + <Character>z</Character> + </inputAlphabet> + <initialState> + <Set> + <String>0</String> + </Set> + </initialState> + <finalStates> + <Set> + <String>1</String> + </Set> + <Set> + <String>10</String> + </Set> + <Set> + <String>6</String> + </Set> + <Set> + <String>8</String> + </Set> + <Set> + <String>9</String> + </Set> + <Set> + <String>1</String> + <String>7</String> + </Set> + </finalStates> + <transitions> + <transition> + <from> + <Set> + <String>0</String> + </Set> + </from> + <input> + <Character>l</Character> + </input> + <to> + <Set> + <String>5</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>1</String> + </Set> + </from> + <input> + <Character>l</Character> + </input> + <to> + <Set> + <String>3</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>10</String> + </Set> + </from> + <input> + <Character>z</Character> + </input> + <to> + <Set> + <String>10</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>2</String> + </Set> + </from> + <input> + <Character>f</Character> + </input> + <to> + <Set> + <String>3</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>2</String> + </Set> + </from> + <input> + <Character>l</Character> + </input> + <to> + <Set> + <String>1</String> + <String>7</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>3</String> + </Set> + </from> + <input> + <Character>f</Character> + </input> + <to> + <Set> + <String>10</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>4</String> + </Set> + </from> + <input> + <Character>l</Character> + </input> + <to> + <Set> + <String>2</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>4</String> + </Set> + </from> + <input> + <Character>z</Character> + </input> + <to> + <Set> + <String>1</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>5</String> + </Set> + </from> + <input> + <Character>i</Character> + </input> + <to> + <Set> + <String>6</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>5</String> + </Set> + </from> + <input> + <Character>l</Character> + </input> + <to> + <Set> + <String>4</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>5</String> + </Set> + </from> + <input> + <Character>z</Character> + </input> + <to> + <Set> + <String>2</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>8</String> + </Set> + </from> + <input> + <Character>l</Character> + </input> + <to> + <Set> + <String>0</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>1</String> + <String>7</String> + </Set> + </from> + <input> + <Character>f</Character> + </input> + <to> + <Set> + <String>9</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>1</String> + <String>7</String> + </Set> + </from> + <input> + <Character>i</Character> + </input> + <to> + <Set> + <String>8</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>1</String> + <String>7</String> + </Set> + </from> + <input> + <Character>l</Character> + </input> + <to> + <Set> + <String>3</String> + </Set> + </to> + </transition> + </transitions> </DFA> diff --git a/examples2/automaton/NFSM5.xml b/examples2/automaton/NFSM5.xml index 66cdfd251eafad4bf93b9bb99be55e3f4db7308f..0fc18aedb9a49d03a4208ebcb8dd39394301741d 100644 --- a/examples2/automaton/NFSM5.xml +++ b/examples2/automaton/NFSM5.xml @@ -1,108 +1,199 @@ +<?xml version="1.0"?> <NFA> - <states> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - <PrimitiveLabel><String>10</String></PrimitiveLabel> - <PrimitiveLabel><String>2</String></PrimitiveLabel> - <PrimitiveLabel><String>3</String></PrimitiveLabel> - <PrimitiveLabel><String>4</String></PrimitiveLabel> - <PrimitiveLabel><String>5</String></PrimitiveLabel> - <PrimitiveLabel><String>6</String></PrimitiveLabel> - <PrimitiveLabel><String>7</String></PrimitiveLabel> - <PrimitiveLabel><String>8</String></PrimitiveLabel> - <PrimitiveLabel><String>9</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>f</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>i</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>l</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>z</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <initialState> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - </initialState> - <finalStates> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - <PrimitiveLabel><String>10</String></PrimitiveLabel> - <PrimitiveLabel><String>6</String></PrimitiveLabel> - <PrimitiveLabel><String>8</String></PrimitiveLabel> - <PrimitiveLabel><String>9</String></PrimitiveLabel> - </finalStates> - <transitions> - <transition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>l</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>5</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>l</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>3</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>10</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>z</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>10</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>f</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>3</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>l</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>l</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>7</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>3</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>f</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>10</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>4</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>l</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>2</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>4</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>z</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>5</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>i</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>6</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>5</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>l</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>4</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>5</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>z</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>2</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>7</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>f</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>9</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>7</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>i</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>8</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>8</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>l</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>0</String></PrimitiveLabel></to> - </transition> - </transitions> + <states> + <String>0</String> + <String>1</String> + <String>10</String> + <String>2</String> + <String>3</String> + <String>4</String> + <String>5</String> + <String>6</String> + <String>7</String> + <String>8</String> + <String>9</String> + </states> + <inputAlphabet> + <Character>f</Character> + <Character>i</Character> + <Character>l</Character> + <Character>z</Character> + </inputAlphabet> + <initialState> + <String>0</String> + </initialState> + <finalStates> + <String>1</String> + <String>10</String> + <String>6</String> + <String>8</String> + <String>9</String> + </finalStates> + <transitions> + <transition> + <from> + <String>0</String> + </from> + <input> + <Character>l</Character> + </input> + <to> + <String>5</String> + </to> + </transition> + <transition> + <from> + <String>1</String> + </from> + <input> + <Character>l</Character> + </input> + <to> + <String>3</String> + </to> + </transition> + <transition> + <from> + <String>10</String> + </from> + <input> + <Character>z</Character> + </input> + <to> + <String>10</String> + </to> + </transition> + <transition> + <from> + <String>2</String> + </from> + <input> + <Character>f</Character> + </input> + <to> + <String>3</String> + </to> + </transition> + <transition> + <from> + <String>2</String> + </from> + <input> + <Character>l</Character> + </input> + <to> + <String>1</String> + </to> + </transition> + <transition> + <from> + <String>2</String> + </from> + <input> + <Character>l</Character> + </input> + <to> + <String>7</String> + </to> + </transition> + <transition> + <from> + <String>3</String> + </from> + <input> + <Character>f</Character> + </input> + <to> + <String>10</String> + </to> + </transition> + <transition> + <from> + <String>4</String> + </from> + <input> + <Character>l</Character> + </input> + <to> + <String>2</String> + </to> + </transition> + <transition> + <from> + <String>4</String> + </from> + <input> + <Character>z</Character> + </input> + <to> + <String>1</String> + </to> + </transition> + <transition> + <from> + <String>5</String> + </from> + <input> + <Character>i</Character> + </input> + <to> + <String>6</String> + </to> + </transition> + <transition> + <from> + <String>5</String> + </from> + <input> + <Character>l</Character> + </input> + <to> + <String>4</String> + </to> + </transition> + <transition> + <from> + <String>5</String> + </from> + <input> + <Character>z</Character> + </input> + <to> + <String>2</String> + </to> + </transition> + <transition> + <from> + <String>7</String> + </from> + <input> + <Character>f</Character> + </input> + <to> + <String>9</String> + </to> + </transition> + <transition> + <from> + <String>7</String> + </from> + <input> + <Character>i</Character> + </input> + <to> + <String>8</String> + </to> + </transition> + <transition> + <from> + <String>8</String> + </from> + <input> + <Character>l</Character> + </input> + <to> + <String>0</String> + </to> + </transition> + </transitions> </NFA> diff --git a/examples2/automaton/NFTA.DET.xml b/examples2/automaton/NFTA.DET.xml index c3d15ec7a831a9e8077b99ade6468b5e268bb05d..5cbde5853dab9ea324fc205decbd8b103446f3bb 100644 --- a/examples2/automaton/NFTA.DET.xml +++ b/examples2/automaton/NFTA.DET.xml @@ -2,648 +2,390 @@ <DFTA> <states> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> </Set> <Set> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> + <Unsigned>2</Unsigned> </Set> <Set> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>3</Unsigned> </Set> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> </Set> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> </Set> </states> <rankedInputAlphabet> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>b</Character> <Unsigned>1</Unsigned> </RankedSymbol> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>c</Character> <Unsigned>0</Unsigned> </RankedSymbol> </rankedInputAlphabet> <finalStates> <Set> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>3</Unsigned> </Set> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> </Set> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> </Set> </finalStates> <transitions> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> </Set> <Set> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>3</Unsigned> </Set> </from> <to> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> </Set> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> </Set> </from> <to> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> </Set> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> </Set> </from> <to> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> <Set> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>3</Unsigned> </Set> <Set> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>3</Unsigned> </Set> </from> <to> <Set> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> + <Unsigned>2</Unsigned> </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> <Set> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>3</Unsigned> </Set> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> </Set> </from> <to> <Set> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> + <Unsigned>2</Unsigned> </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> <Set> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>3</Unsigned> </Set> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> </Set> </from> <to> <Set> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> + <Unsigned>2</Unsigned> </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> </Set> <Set> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>3</Unsigned> </Set> </from> <to> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> </Set> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> </Set> </from> <to> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> </Set> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> </Set> </from> <to> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> </Set> <Set> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>3</Unsigned> </Set> </from> <to> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> </Set> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> </Set> </from> <to> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> + </Set> + <Set> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> </Set> </from> <to> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>b</Character> <Unsigned>1</Unsigned> </RankedSymbol> </input> <from> <Set> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> + <Unsigned>2</Unsigned> </Set> </from> <to> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>b</Character> <Unsigned>1</Unsigned> </RankedSymbol> </input> <from> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> </Set> </from> <to> <Set> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> </Set> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>c</Character> <Unsigned>0</Unsigned> </RankedSymbol> </input> <from/> <to> <Set> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>3</Unsigned> </Set> </to> </transition> diff --git a/examples2/automaton/NFTA.xml b/examples2/automaton/NFTA.xml index c8c3c37b6b5c94210382e43ab2d497ce39385569..3973319026ec08349533a33d2ef9e5004d233b1f 100644 --- a/examples2/automaton/NFTA.xml +++ b/examples2/automaton/NFTA.xml @@ -1,161 +1,97 @@ <?xml version="1.0"?> <NFTA> <states> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>2</Unsigned> + <Unsigned>3</Unsigned> </states> <rankedInputAlphabet> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>b</Character> <Unsigned>1</Unsigned> </RankedSymbol> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>c</Character> <Unsigned>0</Unsigned> </RankedSymbol> </rankedInputAlphabet> <finalStates> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>3</Unsigned> </finalStates> <transitions> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> </from> <to> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> + <Unsigned>3</Unsigned> </from> <to> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>3</Unsigned> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>a</Character> <Unsigned>2</Unsigned> </RankedSymbol> </input> <from> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>3</Unsigned> + <Unsigned>3</Unsigned> </from> <to> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> + <Unsigned>2</Unsigned> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>b</Character> <Unsigned>1</Unsigned> </RankedSymbol> </input> <from> - <PrimitiveLabel> - <Unsigned>2</Unsigned> - </PrimitiveLabel> + <Unsigned>2</Unsigned> </from> <to> - <PrimitiveLabel> - <Unsigned>1</Unsigned> - </PrimitiveLabel> + <Unsigned>1</Unsigned> </to> </transition> <transition> <input> <RankedSymbol> -<LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> -</LabeledSymbol> + <Character>c</Character> <Unsigned>0</Unsigned> </RankedSymbol> </input> <from/> <to> - <PrimitiveLabel> - <Unsigned>3</Unsigned> - </PrimitiveLabel> + <Unsigned>3</Unsigned> </to> </transition> </transitions> diff --git a/examples2/automaton/NIDPDA0.DET.xml b/examples2/automaton/NIDPDA0.DET.xml index c3ea2422a3e10de1fc90e5f9d36ea69a8b453fec..cf2c9b8ed0e9ff43c3687f4e5f03402cd67ea0f2 100644 --- a/examples2/automaton/NIDPDA0.DET.xml +++ b/examples2/automaton/NIDPDA0.DET.xml @@ -1,254 +1,160 @@ <?xml version="1.0"?> <InputDrivenDPDA> - <states> - <Set/> - <Set> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <Integer>2</Integer> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - <PrimitiveLabel> - <Integer>3</Integer> - </PrimitiveLabel> - </Set> - </states> - <inputAlphabet> - <LabeledSymbol> - <PrimitiveLabel> - <String>a</String> - </PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel> - <String>b</String> - </PrimitiveLabel> - </LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol> - <PrimitiveLabel> - <Character>S</Character> - </PrimitiveLabel> - </LabeledSymbol> - </pushdownStoreAlphabet> - <initialState> - <Set> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - </Set> - </initialState> - <initialPushdownStoreSymbol> - <LabeledSymbol> - <PrimitiveLabel> - <Character>S</Character> - </PrimitiveLabel> - </LabeledSymbol> - </initialPushdownStoreSymbol> - <finalStates> - <Set> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - <PrimitiveLabel> - <Integer>3</Integer> - </PrimitiveLabel> - </Set> - </finalStates> - <inputToPushdownStoreOperations> - <operation> - <LabeledSymbol> - <PrimitiveLabel> - <String>a</String> - </PrimitiveLabel> - </LabeledSymbol> - <pop/> - <push/> - </operation> - <operation> - <LabeledSymbol> - <PrimitiveLabel> - <String>b</String> - </PrimitiveLabel> - </LabeledSymbol> - <pop/> - <push/> - </operation> - </inputToPushdownStoreOperations> - <transitions> - <transition> - <from> - <Set/> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <String>a</String> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set/> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <String>b</String> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <String>a</String> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <Integer>2</Integer> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <String>b</String> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <Integer>2</Integer> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <String>a</String> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <Integer>2</Integer> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <String>b</String> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - <PrimitiveLabel> - <Integer>3</Integer> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - <PrimitiveLabel> - <Integer>3</Integer> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <String>a</String> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <Integer>2</Integer> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <Integer>1</Integer> - </PrimitiveLabel> - <PrimitiveLabel> - <Integer>3</Integer> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <String>b</String> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - </transitions> + <states> + <Set/> + <Set> + <Integer>1</Integer> + </Set> + <Set> + <Integer>2</Integer> + </Set> + <Set> + <Integer>1</Integer> + <Integer>3</Integer> + </Set> + </states> + <inputAlphabet> + <String>a</String> + <String>b</String> + </inputAlphabet> + <pushdownStoreAlphabet> + <Character>S</Character> + </pushdownStoreAlphabet> + <initialState> + <Set> + <Integer>1</Integer> + </Set> + </initialState> + <initialPushdownStoreSymbol> + <Character>S</Character> + </initialPushdownStoreSymbol> + <finalStates> + <Set> + <Integer>1</Integer> + <Integer>3</Integer> + </Set> + </finalStates> + <inputToPushdownStoreOperations> + <operation> + <String>a</String> + <pop/> + <push/> + </operation> + <operation> + <String>b</String> + <pop/> + <push/> + </operation> + </inputToPushdownStoreOperations> + <transitions> + <transition> + <from> + <Set/> + </from> + <input> + <String>a</String> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set/> + </from> + <input> + <String>b</String> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <Integer>1</Integer> + </Set> + </from> + <input> + <String>a</String> + </input> + <to> + <Set> + <Integer>2</Integer> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <Integer>1</Integer> + </Set> + </from> + <input> + <String>b</String> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <Integer>2</Integer> + </Set> + </from> + <input> + <String>a</String> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <Integer>2</Integer> + </Set> + </from> + <input> + <String>b</String> + </input> + <to> + <Set> + <Integer>1</Integer> + <Integer>3</Integer> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <Integer>1</Integer> + <Integer>3</Integer> + </Set> + </from> + <input> + <String>a</String> + </input> + <to> + <Set> + <Integer>2</Integer> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <Integer>1</Integer> + <Integer>3</Integer> + </Set> + </from> + <input> + <String>b</String> + </input> + <to> + <Set/> + </to> + </transition> + </transitions> </InputDrivenDPDA> diff --git a/examples2/automaton/NIDPDA0.xml b/examples2/automaton/NIDPDA0.xml index 89257a4c777110365d07d32c21e3a97f836d8a0e..f15aa3a8ba1575797a4a3e79e3fb4f44117d0054 100644 --- a/examples2/automaton/NIDPDA0.xml +++ b/examples2/automaton/NIDPDA0.xml @@ -1,88 +1,71 @@ +<?xml version="1.0"?> <InputDrivenNPDA> - <states> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - <PrimitiveLabel><Integer>2</Integer></PrimitiveLabel> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol> - <PrimitiveLabel><String>a</String></PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel><String>b</String></PrimitiveLabel> - </LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol> - <PrimitiveLabel><Character>S</Character></PrimitiveLabel> - </LabeledSymbol> - </pushdownStoreAlphabet> - <initialState> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - </initialState> - <initialPushdownStoreSymbol> - <LabeledSymbol> - <PrimitiveLabel><Character>S</Character></PrimitiveLabel> - </LabeledSymbol> - </initialPushdownStoreSymbol> - <finalStates> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </finalStates> - <inputToPushdownStoreOperations> - <operation> - <LabeledSymbol> - <PrimitiveLabel><String>a</String></PrimitiveLabel> - </LabeledSymbol> - <pop/> - <push/> - </operation> - <operation> - <LabeledSymbol> - <PrimitiveLabel><String>b</String></PrimitiveLabel> - </LabeledSymbol> - <pop/> - <push/> - </operation> - </inputToPushdownStoreOperations> - <transitions> - <transition> - <from> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>a</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <PrimitiveLabel><Integer>2</Integer></PrimitiveLabel> - </to> - </transition> - <transition> - <from> - <PrimitiveLabel><Integer>2</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>b</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - </to> - </transition> - <transition> - <from> - <PrimitiveLabel><Integer>2</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>b</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </to> - </transition> - </transitions> + <states> + <Integer>1</Integer> + <Integer>2</Integer> + <Integer>3</Integer> + </states> + <inputAlphabet> + <String>a</String> + <String>b</String> + </inputAlphabet> + <pushdownStoreAlphabet> + <Character>S</Character> + </pushdownStoreAlphabet> + <initialState> + <Integer>1</Integer> + </initialState> + <initialPushdownStoreSymbol> + <Character>S</Character> + </initialPushdownStoreSymbol> + <finalStates> + <Integer>3</Integer> + </finalStates> + <inputToPushdownStoreOperations> + <operation> + <String>a</String> + <pop/> + <push/> + </operation> + <operation> + <String>b</String> + <pop/> + <push/> + </operation> + </inputToPushdownStoreOperations> + <transitions> + <transition> + <from> + <Integer>1</Integer> + </from> + <input> + <String>a</String> + </input> + <to> + <Integer>2</Integer> + </to> + </transition> + <transition> + <from> + <Integer>2</Integer> + </from> + <input> + <String>b</String> + </input> + <to> + <Integer>1</Integer> + </to> + </transition> + <transition> + <from> + <Integer>2</Integer> + </from> + <input> + <String>b</String> + </input> + <to> + <Integer>3</Integer> + </to> + </transition> + </transitions> </InputDrivenNPDA> diff --git a/examples2/automaton/NIDPDA1.DET.xml b/examples2/automaton/NIDPDA1.DET.xml index c49e9e12a34f747ad2538dd8aa8a07566d7216c5..0c295cd8e322049b8c30649eb4d841e1ad205f8a 100644 --- a/examples2/automaton/NIDPDA1.DET.xml +++ b/examples2/automaton/NIDPDA1.DET.xml @@ -1,636 +1,402 @@ <?xml version="1.0"?> <InputDrivenDPDA> - <states> - <Set/> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </states> - <inputAlphabet> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel> - <Character>d</Character> - </PrimitiveLabel> - </LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - <BottomOfTheStackSymbol/> - </pushdownStoreAlphabet> - <initialState> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - </initialState> - <initialPushdownStoreSymbol> - <BottomOfTheStackSymbol/> - </initialPushdownStoreSymbol> - <finalStates> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - </Set> - </finalStates> - <inputToPushdownStoreOperations> - <operation> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - <pop/> - <push> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </push> - </operation> - <operation> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - <pop/> - <push> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </push> - </operation> - <operation> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - <pop> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </pop> - <push/> - </operation> - <operation> - <LabeledSymbol> - <PrimitiveLabel> - <Character>d</Character> - </PrimitiveLabel> - </LabeledSymbol> - <pop> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </pop> - <push/> - </operation> - </inputToPushdownStoreOperations> - <transitions> - <transition> - <from> - <Set/> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set/> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set/> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set/> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>d</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>d</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>d</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>d</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>d</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>d</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - </transitions> + <states> + <Set/> + <Set> + <String>0</String> + </Set> + <Set> + <String>1</String> + </Set> + <Set> + <String>2</String> + </Set> + <Set> + <String>3</String> + </Set> + <Set> + <String>1</String> + <String>2</String> + </Set> + </states> + <inputAlphabet> + <Character>a</Character> + <Character>b</Character> + <Character>c</Character> + <Character>d</Character> + </inputAlphabet> + <pushdownStoreAlphabet> + <Character>a</Character> + <Character>b</Character> + <BottomOfTheStackSymbol/> + </pushdownStoreAlphabet> + <initialState> + <Set> + <String>0</String> + </Set> + </initialState> + <initialPushdownStoreSymbol> + <BottomOfTheStackSymbol/> + </initialPushdownStoreSymbol> + <finalStates> + <Set> + <String>3</String> + </Set> + </finalStates> + <inputToPushdownStoreOperations> + <operation> + <Character>a</Character> + <pop/> + <push> + <Character>a</Character> + </push> + </operation> + <operation> + <Character>b</Character> + <pop/> + <push> + <Character>b</Character> + </push> + </operation> + <operation> + <Character>c</Character> + <pop> + <Character>b</Character> + </pop> + <push/> + </operation> + <operation> + <Character>d</Character> + <pop> + <Character>a</Character> + </pop> + <push/> + </operation> + </inputToPushdownStoreOperations> + <transitions> + <transition> + <from> + <Set/> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set/> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set/> + </from> + <input> + <Character>c</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set/> + </from> + <input> + <Character>d</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>0</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set> + <String>1</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>0</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>0</String> + </Set> + </from> + <input> + <Character>c</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>0</String> + </Set> + </from> + <input> + <Character>d</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>1</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>1</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set> + <String>1</String> + <String>2</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>1</String> + </Set> + </from> + <input> + <Character>c</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>1</String> + </Set> + </from> + <input> + <Character>d</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>2</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>2</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>2</String> + </Set> + </from> + <input> + <Character>c</Character> + </input> + <to> + <Set> + <String>2</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>2</String> + </Set> + </from> + <input> + <Character>d</Character> + </input> + <to> + <Set> + <String>3</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>3</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>3</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>3</String> + </Set> + </from> + <input> + <Character>c</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>3</String> + </Set> + </from> + <input> + <Character>d</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>1</String> + <String>2</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>1</String> + <String>2</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set> + <String>1</String> + <String>2</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>1</String> + <String>2</String> + </Set> + </from> + <input> + <Character>c</Character> + </input> + <to> + <Set> + <String>2</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>1</String> + <String>2</String> + </Set> + </from> + <input> + <Character>d</Character> + </input> + <to> + <Set> + <String>3</String> + </Set> + </to> + </transition> + </transitions> </InputDrivenDPDA> diff --git a/examples2/automaton/NIDPDA1.xml b/examples2/automaton/NIDPDA1.xml index 19615161393f977f3a5d40c234163a062637955d..49e35cde8b9c836951eb51062aff972a4d241dd1 100644 --- a/examples2/automaton/NIDPDA1.xml +++ b/examples2/automaton/NIDPDA1.xml @@ -1,77 +1,116 @@ +<?xml version="1.0"?> <InputDrivenNPDA> - <states> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - <PrimitiveLabel><String>2</String></PrimitiveLabel> - <PrimitiveLabel><String>3</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>d</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <BottomOfTheStackSymbol /> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol> - </pushdownStoreAlphabet> - <initialState> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - </initialState> - <initialPushdownStoreSymbol> - <BottomOfTheStackSymbol /> - </initialPushdownStoreSymbol> - <finalStates> - <PrimitiveLabel><String>3</String></PrimitiveLabel> - </finalStates> - <inputToPushdownStoreOperations> - <operation> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <pop></pop> - <push><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></push> - </operation> - <operation> - <LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol> - <pop></pop> - <push><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></push> - </operation> - <operation> - <LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol> - <pop><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></pop> - <push></push> - </operation> - <operation> - <LabeledSymbol><PrimitiveLabel><Character>d</Character></PrimitiveLabel></LabeledSymbol> - <pop><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></pop> - <push></push> - </operation> - </inputToPushdownStoreOperations> - <transitions> - <transition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>2</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>2</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>d</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>3</String></PrimitiveLabel></to> - </transition> - </transitions> + <states> + <String>0</String> + <String>1</String> + <String>2</String> + <String>3</String> + </states> + <inputAlphabet> + <Character>a</Character> + <Character>b</Character> + <Character>c</Character> + <Character>d</Character> + </inputAlphabet> + <pushdownStoreAlphabet> + <BottomOfTheStackSymbol/> + <Character>a</Character> + <Character>b</Character> + </pushdownStoreAlphabet> + <initialState> + <String>0</String> + </initialState> + <initialPushdownStoreSymbol> + <BottomOfTheStackSymbol/> + </initialPushdownStoreSymbol> + <finalStates> + <String>3</String> + </finalStates> + <inputToPushdownStoreOperations> + <operation> + <Character>a</Character> + <pop/> + <push> + <Character>a</Character> + </push> + </operation> + <operation> + <Character>b</Character> + <pop/> + <push> + <Character>b</Character> + </push> + </operation> + <operation> + <Character>c</Character> + <pop> + <Character>b</Character> + </pop> + <push/> + </operation> + <operation> + <Character>d</Character> + <pop> + <Character>a</Character> + </pop> + <push/> + </operation> + </inputToPushdownStoreOperations> + <transitions> + <transition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>1</String> + </to> + </transition> + <transition> + <from> + <String>1</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>1</String> + </to> + </transition> + <transition> + <from> + <String>1</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>2</String> + </to> + </transition> + <transition> + <from> + <String>2</String> + </from> + <input> + <Character>c</Character> + </input> + <to> + <String>2</String> + </to> + </transition> + <transition> + <from> + <String>2</String> + </from> + <input> + <Character>d</Character> + </input> + <to> + <String>3</String> + </to> + </transition> + </transitions> </InputDrivenNPDA> diff --git a/examples2/automaton/NIDPDA2.DET.xml b/examples2/automaton/NIDPDA2.DET.xml index 1f26dfbcc9af36c54131dfddd82c5e2c30c263e3..91832becce5a4e3b78e64eb0927edb28c91ae755 100644 --- a/examples2/automaton/NIDPDA2.DET.xml +++ b/examples2/automaton/NIDPDA2.DET.xml @@ -1,496 +1,298 @@ <?xml version="1.0"?> <InputDrivenDPDA> - <states> - <Set/> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </states> - <inputAlphabet> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - <BottomOfTheStackSymbol/> - </pushdownStoreAlphabet> - <initialState> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - </initialState> - <initialPushdownStoreSymbol> - <BottomOfTheStackSymbol/> - </initialPushdownStoreSymbol> - <finalStates> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </finalStates> - <inputToPushdownStoreOperations> - <operation> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - <pop/> - <push> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </push> - </operation> - <operation> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - <pop> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </pop> - <push/> - </operation> - <operation> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - <pop> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </pop> - <push/> - </operation> - </inputToPushdownStoreOperations> - <transitions> - <transition> - <from> - <Set/> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set/> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set/> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>2</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - </transitions> + <states> + <Set/> + <Set> + <String>0</String> + </Set> + <Set> + <String>2</String> + </Set> + <Set> + <String>1</String> + <String>2</String> + </Set> + <Set> + <String>0</String> + <String>1</String> + <String>2</String> + </Set> + </states> + <inputAlphabet> + <Character>a</Character> + <Character>b</Character> + <Character>c</Character> + </inputAlphabet> + <pushdownStoreAlphabet> + <Character>a</Character> + <BottomOfTheStackSymbol/> + </pushdownStoreAlphabet> + <initialState> + <Set> + <String>0</String> + </Set> + </initialState> + <initialPushdownStoreSymbol> + <BottomOfTheStackSymbol/> + </initialPushdownStoreSymbol> + <finalStates> + <Set> + <String>0</String> + </Set> + <Set> + <String>2</String> + </Set> + <Set> + <String>1</String> + <String>2</String> + </Set> + <Set> + <String>0</String> + <String>1</String> + <String>2</String> + </Set> + </finalStates> + <inputToPushdownStoreOperations> + <operation> + <Character>a</Character> + <pop/> + <push> + <Character>a</Character> + </push> + </operation> + <operation> + <Character>b</Character> + <pop> + <Character>a</Character> + </pop> + <push/> + </operation> + <operation> + <Character>c</Character> + <pop> + <Character>a</Character> + </pop> + <push/> + </operation> + </inputToPushdownStoreOperations> + <transitions> + <transition> + <from> + <Set/> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set/> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set/> + </from> + <input> + <Character>c</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>0</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set> + <String>0</String> + <String>1</String> + <String>2</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>0</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>0</String> + </Set> + </from> + <input> + <Character>c</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>2</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>2</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>2</String> + </Set> + </from> + <input> + <Character>c</Character> + </input> + <to> + <Set> + <String>2</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>1</String> + <String>2</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>1</String> + <String>2</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set> + <String>1</String> + <String>2</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>1</String> + <String>2</String> + </Set> + </from> + <input> + <Character>c</Character> + </input> + <to> + <Set> + <String>2</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>0</String> + <String>1</String> + <String>2</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set> + <String>0</String> + <String>1</String> + <String>2</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>0</String> + <String>1</String> + <String>2</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set> + <String>1</String> + <String>2</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>0</String> + <String>1</String> + <String>2</String> + </Set> + </from> + <input> + <Character>c</Character> + </input> + <to> + <Set> + <String>2</String> + </Set> + </to> + </transition> + </transitions> </InputDrivenDPDA> diff --git a/examples2/automaton/NIDPDA2.xml b/examples2/automaton/NIDPDA2.xml index 2d9ac7bfad1febeaac7b36bafcb409ab2637824f..f8961d16a67514127f64c14a19c2f7361128ee89 100644 --- a/examples2/automaton/NIDPDA2.xml +++ b/examples2/automaton/NIDPDA2.xml @@ -1,76 +1,119 @@ +<?xml version="1.0"?> <InputDrivenNPDA> - <states> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - <PrimitiveLabel><String>2</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <BottomOfTheStackSymbol /> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - </pushdownStoreAlphabet> - <initialState> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - </initialState> - <initialPushdownStoreSymbol> - <BottomOfTheStackSymbol /> - </initialPushdownStoreSymbol> - <finalStates> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - <PrimitiveLabel><String>2</String></PrimitiveLabel> - </finalStates> - <inputToPushdownStoreOperations> - <operation> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <pop></pop> - <push><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></push> - </operation> - <operation> - <LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol> - <pop><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></pop> - <push></push> - </operation> - <operation> - <LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol> - <pop><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></pop> - <push></push> - </operation> - </inputToPushdownStoreOperations> - <transitions> - <transition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>0</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>2</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>2</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>2</String></PrimitiveLabel></to> - </transition> - </transitions> + <states> + <String>0</String> + <String>1</String> + <String>2</String> + </states> + <inputAlphabet> + <Character>a</Character> + <Character>b</Character> + <Character>c</Character> + </inputAlphabet> + <pushdownStoreAlphabet> + <BottomOfTheStackSymbol/> + <Character>a</Character> + </pushdownStoreAlphabet> + <initialState> + <String>0</String> + </initialState> + <initialPushdownStoreSymbol> + <BottomOfTheStackSymbol/> + </initialPushdownStoreSymbol> + <finalStates> + <String>0</String> + <String>1</String> + <String>2</String> + </finalStates> + <inputToPushdownStoreOperations> + <operation> + <Character>a</Character> + <pop/> + <push> + <Character>a</Character> + </push> + </operation> + <operation> + <Character>b</Character> + <pop> + <Character>a</Character> + </pop> + <push/> + </operation> + <operation> + <Character>c</Character> + <pop> + <Character>a</Character> + </pop> + <push/> + </operation> + </inputToPushdownStoreOperations> + <transitions> + <transition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>0</String> + </to> + </transition> + <transition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>1</String> + </to> + </transition> + <transition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>2</String> + </to> + </transition> + <transition> + <from> + <String>1</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>1</String> + </to> + </transition> + <transition> + <from> + <String>1</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>2</String> + </to> + </transition> + <transition> + <from> + <String>2</String> + </from> + <input> + <Character>c</Character> + </input> + <to> + <String>2</String> + </to> + </transition> + </transitions> </InputDrivenNPDA> diff --git a/examples2/automaton/NIDPDA3.DET.xml b/examples2/automaton/NIDPDA3.DET.xml index dfa0f8f5d817d0f2e7f3350a0eb0d0d1428c7ff9..8b09d98a8c112a9992504c5e25edfbe196ef1b4a 100644 --- a/examples2/automaton/NIDPDA3.DET.xml +++ b/examples2/automaton/NIDPDA3.DET.xml @@ -1,898 +1,548 @@ <?xml version="1.0"?> <InputDrivenDPDA> - <states> - <Set/> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>4</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C2</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>B1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B2</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C1</String> - </PrimitiveLabel> - </Set> - <Set> - <PrimitiveLabel> - <String>B1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B2</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C2</String> - </PrimitiveLabel> - </Set> - </states> - <inputAlphabet> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel> - <Character>d</Character> - </PrimitiveLabel> - </LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - <BottomOfTheStackSymbol/> - </pushdownStoreAlphabet> - <initialState> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - </initialState> - <initialPushdownStoreSymbol> - <BottomOfTheStackSymbol/> - </initialPushdownStoreSymbol> - <finalStates> - <Set> - <PrimitiveLabel> - <String>4</String> - </PrimitiveLabel> - </Set> - </finalStates> - <inputToPushdownStoreOperations> - <operation> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - <pop/> - <push> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </push> - </operation> - <operation> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - <pop> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </pop> - <push/> - </operation> - <operation> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - <pop> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </pop> - <push/> - </operation> - <operation> - <LabeledSymbol> - <PrimitiveLabel> - <Character>d</Character> - </PrimitiveLabel> - </LabeledSymbol> - <pop/> - <push/> - </operation> - </inputToPushdownStoreOperations> - <transitions> - <transition> - <from> - <Set/> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set/> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set/> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set/> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>d</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C1</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>d</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>d</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>4</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>4</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>4</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>4</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>4</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>d</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C2</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>d</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>4</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>B1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>B1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>B1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B2</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>B1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>B1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>d</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C1</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C1</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C1</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>B1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B2</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C2</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C1</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>0</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C1</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>d</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>B1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B2</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>a</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>B1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B2</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>b</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>B1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B2</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>B1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B2</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>c</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set> - <PrimitiveLabel> - <String>3</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C2</String> - </PrimitiveLabel> - </Set> - </to> - </transition> - <transition> - <from> - <Set> - <PrimitiveLabel> - <String>B1</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>B2</String> - </PrimitiveLabel> - <PrimitiveLabel> - <String>C2</String> - </PrimitiveLabel> - </Set> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel> - <Character>d</Character> - </PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <Set/> - </to> - </transition> - </transitions> + <states> + <Set/> + <Set> + <String>0</String> + </Set> + <Set> + <String>3</String> + </Set> + <Set> + <String>4</String> + </Set> + <Set> + <String>3</String> + <String>C2</String> + </Set> + <Set> + <String>B1</String> + <String>B2</String> + </Set> + <Set> + <String>0</String> + <String>B1</String> + <String>C1</String> + </Set> + <Set> + <String>B1</String> + <String>B2</String> + <String>C2</String> + </Set> + </states> + <inputAlphabet> + <Character>a</Character> + <Character>b</Character> + <Character>c</Character> + <Character>d</Character> + </inputAlphabet> + <pushdownStoreAlphabet> + <Character>a</Character> + <BottomOfTheStackSymbol/> + </pushdownStoreAlphabet> + <initialState> + <Set> + <String>0</String> + </Set> + </initialState> + <initialPushdownStoreSymbol> + <BottomOfTheStackSymbol/> + </initialPushdownStoreSymbol> + <finalStates> + <Set> + <String>4</String> + </Set> + </finalStates> + <inputToPushdownStoreOperations> + <operation> + <Character>a</Character> + <pop/> + <push> + <Character>a</Character> + </push> + </operation> + <operation> + <Character>b</Character> + <pop> + <Character>a</Character> + </pop> + <push/> + </operation> + <operation> + <Character>c</Character> + <pop> + <Character>a</Character> + </pop> + <push/> + </operation> + <operation> + <Character>d</Character> + <pop/> + <push/> + </operation> + </inputToPushdownStoreOperations> + <transitions> + <transition> + <from> + <Set/> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set/> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set/> + </from> + <input> + <Character>c</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set/> + </from> + <input> + <Character>d</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>0</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set> + <String>0</String> + <String>B1</String> + <String>C1</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>0</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>0</String> + </Set> + </from> + <input> + <Character>c</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>0</String> + </Set> + </from> + <input> + <Character>d</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>3</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>3</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>3</String> + </Set> + </from> + <input> + <Character>c</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>3</String> + </Set> + </from> + <input> + <Character>d</Character> + </input> + <to> + <Set> + <String>4</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>4</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>4</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>4</String> + </Set> + </from> + <input> + <Character>c</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>4</String> + </Set> + </from> + <input> + <Character>d</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>3</String> + <String>C2</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>3</String> + <String>C2</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>3</String> + <String>C2</String> + </Set> + </from> + <input> + <Character>c</Character> + </input> + <to> + <Set> + <String>3</String> + <String>C2</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>3</String> + <String>C2</String> + </Set> + </from> + <input> + <Character>d</Character> + </input> + <to> + <Set> + <String>4</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>B1</String> + <String>B2</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>B1</String> + <String>B2</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set> + <String>B1</String> + <String>B2</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>B1</String> + <String>B2</String> + </Set> + </from> + <input> + <Character>c</Character> + </input> + <to> + <Set> + <String>3</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>B1</String> + <String>B2</String> + </Set> + </from> + <input> + <Character>d</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>0</String> + <String>B1</String> + <String>C1</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set> + <String>0</String> + <String>B1</String> + <String>C1</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>0</String> + <String>B1</String> + <String>C1</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set> + <String>B1</String> + <String>B2</String> + <String>C2</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>0</String> + <String>B1</String> + <String>C1</String> + </Set> + </from> + <input> + <Character>c</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>0</String> + <String>B1</String> + <String>C1</String> + </Set> + </from> + <input> + <Character>d</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>B1</String> + <String>B2</String> + <String>C2</String> + </Set> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Set/> + </to> + </transition> + <transition> + <from> + <Set> + <String>B1</String> + <String>B2</String> + <String>C2</String> + </Set> + </from> + <input> + <Character>b</Character> + </input> + <to> + <Set> + <String>B1</String> + <String>B2</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>B1</String> + <String>B2</String> + <String>C2</String> + </Set> + </from> + <input> + <Character>c</Character> + </input> + <to> + <Set> + <String>3</String> + <String>C2</String> + </Set> + </to> + </transition> + <transition> + <from> + <Set> + <String>B1</String> + <String>B2</String> + <String>C2</String> + </Set> + </from> + <input> + <Character>d</Character> + </input> + <to> + <Set/> + </to> + </transition> + </transitions> </InputDrivenDPDA> diff --git a/examples2/automaton/NIDPDA3.xml b/examples2/automaton/NIDPDA3.xml index 3a894774ac1b025f7b0aeb3d596809f468ce593e..b862242849036bbdca744fa85d1b4c68f486135c 100644 --- a/examples2/automaton/NIDPDA3.xml +++ b/examples2/automaton/NIDPDA3.xml @@ -1,104 +1,171 @@ +<?xml version="1.0"?> <InputDrivenNPDA> - <states> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - <PrimitiveLabel><String>B1</String></PrimitiveLabel> - <PrimitiveLabel><String>B2</String></PrimitiveLabel> - <PrimitiveLabel><String>C1</String></PrimitiveLabel> - <PrimitiveLabel><String>C2</String></PrimitiveLabel> - <PrimitiveLabel><String>3</String></PrimitiveLabel> - <PrimitiveLabel><String>4</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>d</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <BottomOfTheStackSymbol /> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - </pushdownStoreAlphabet> - <initialState> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - </initialState> - <initialPushdownStoreSymbol> - <BottomOfTheStackSymbol /> - </initialPushdownStoreSymbol> - <finalStates> - <PrimitiveLabel><String>4</String></PrimitiveLabel> - </finalStates> - <inputToPushdownStoreOperations> - <operation> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <pop></pop> - <push><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></push> - </operation> - <operation> - <LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol> - <pop><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></pop> - <push></push> - </operation> - <operation> - <LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol> - <pop><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></pop> - <push></push> - </operation> - <operation> - <LabeledSymbol><PrimitiveLabel><Character>d</Character></PrimitiveLabel></LabeledSymbol> - <pop></pop> - <push></push> - </operation> - </inputToPushdownStoreOperations> - <transitions> - <transition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>0</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>B1</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>C1</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>B1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>B1</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>B1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>B2</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>B2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>3</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>C1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>C2</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>C2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>C2</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>C2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>3</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>3</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>d</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>4</String></PrimitiveLabel></to> - </transition> - </transitions> + <states> + <String>0</String> + <String>B1</String> + <String>B2</String> + <String>C1</String> + <String>C2</String> + <String>3</String> + <String>4</String> + </states> + <inputAlphabet> + <Character>a</Character> + <Character>b</Character> + <Character>c</Character> + <Character>d</Character> + </inputAlphabet> + <pushdownStoreAlphabet> + <BottomOfTheStackSymbol/> + <Character>a</Character> + </pushdownStoreAlphabet> + <initialState> + <String>0</String> + </initialState> + <initialPushdownStoreSymbol> + <BottomOfTheStackSymbol/> + </initialPushdownStoreSymbol> + <finalStates> + <String>4</String> + </finalStates> + <inputToPushdownStoreOperations> + <operation> + <Character>a</Character> + <pop/> + <push> + <Character>a</Character> + </push> + </operation> + <operation> + <Character>b</Character> + <pop> + <Character>a</Character> + </pop> + <push/> + </operation> + <operation> + <Character>c</Character> + <pop> + <Character>a</Character> + </pop> + <push/> + </operation> + <operation> + <Character>d</Character> + <pop/> + <push/> + </operation> + </inputToPushdownStoreOperations> + <transitions> + <transition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>0</String> + </to> + </transition> + <transition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>B1</String> + </to> + </transition> + <transition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>C1</String> + </to> + </transition> + <transition> + <from> + <String>B1</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>B1</String> + </to> + </transition> + <transition> + <from> + <String>B1</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>B2</String> + </to> + </transition> + <transition> + <from> + <String>B2</String> + </from> + <input> + <Character>c</Character> + </input> + <to> + <String>3</String> + </to> + </transition> + <transition> + <from> + <String>C1</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>C2</String> + </to> + </transition> + <transition> + <from> + <String>C2</String> + </from> + <input> + <Character>c</Character> + </input> + <to> + <String>C2</String> + </to> + </transition> + <transition> + <from> + <String>C2</String> + </from> + <input> + <Character>c</Character> + </input> + <to> + <String>3</String> + </to> + </transition> + <transition> + <from> + <String>3</String> + </from> + <input> + <Character>d</Character> + </input> + <to> + <String>4</String> + </to> + </transition> + </transitions> </InputDrivenNPDA> diff --git a/examples2/automaton/NPDA1.DET.xml b/examples2/automaton/NPDA1.DET.xml index d0cd70b9208e0478d4197dfe8ed9c15cd995a053..b4c44cfb3f6e3c28994cb915222f738100bc94bf 100644 --- a/examples2/automaton/NPDA1.DET.xml +++ b/examples2/automaton/NPDA1.DET.xml @@ -1,4300 +1,4288 @@ <?xml version="1.0"?> -<DPDA ref="0"> +<DPDA> <states> - <Integer ref="1">0</Integer> - <Integer ref="2">1</Integer> - <Integer ref="3">2</Integer> - <Integer ref="4">3</Integer> - <Integer ref="5">4</Integer> - <Integer ref="6">5</Integer> - <Integer ref="7">6</Integer> - <Integer ref="8">7</Integer> - <Integer ref="9">8</Integer> - <Integer ref="10">9</Integer> - <Integer ref="11">10</Integer> - <Integer ref="12">11</Integer> - <Integer ref="13">12</Integer> - <Integer ref="14">13</Integer> - <Integer ref="15">14</Integer> - <Integer ref="16">15</Integer> - <Integer ref="17">16</Integer> - <Integer ref="18">17</Integer> + <Integer>0</Integer> + <Integer>1</Integer> + <Integer>2</Integer> + <Integer>3</Integer> + <Integer>4</Integer> + <Integer>5</Integer> + <Integer>6</Integer> + <Integer>7</Integer> + <Integer>8</Integer> + <Integer>9</Integer> + <Integer>10</Integer> + <Integer>11</Integer> + <Integer>12</Integer> + <Integer>13</Integer> + <Integer>14</Integer> + <Integer>15</Integer> + <Integer>16</Integer> + <Integer>17</Integer> </states> <inputAlphabet> - <LabeledSymbol ref="19"> - <PrimitiveLabel ref="20"> - <String ref="21">a0</String> - </PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol ref="22"> - <PrimitiveLabel ref="23"> - <String ref="24">a1</String> - </PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol ref="25"> - <PrimitiveLabel ref="26"> - <String ref="27">a2</String> - </PrimitiveLabel> - </LabeledSymbol> + <String>a0</String> + <String>a1</String> + <String>a2</String> </inputAlphabet> <pushdownStoreAlphabet> - <Integer ref="28">0</Integer> - <Integer ref="29">1</Integer> - <Integer ref="30">2</Integer> - <Integer ref="31">3</Integer> - <Integer ref="32">4</Integer> - <Integer ref="33">5</Integer> - <Integer ref="34">6</Integer> - <Integer ref="35">7</Integer> - <Integer ref="36">8</Integer> - <Integer ref="37">9</Integer> - <Integer ref="38">10</Integer> - <Integer ref="39">11</Integer> - <Integer ref="40">12</Integer> - <Integer ref="41">13</Integer> - <Integer ref="42">14</Integer> - <Integer ref="43">15</Integer> - <Integer ref="44">16</Integer> - <Integer ref="45">17</Integer> - <Integer ref="46">18</Integer> - <Integer ref="47">19</Integer> - <Integer ref="48">20</Integer> - <Integer ref="49">21</Integer> - <Integer ref="50">22</Integer> - <Integer ref="51">23</Integer> - <Integer ref="52">24</Integer> - <Integer ref="53">25</Integer> - <Integer ref="54">26</Integer> - <Integer ref="55">27</Integer> - <Integer ref="56">28</Integer> - <Integer ref="57">29</Integer> - <Integer ref="58">30</Integer> - <Integer ref="59">31</Integer> - <Integer ref="60">32</Integer> - <Integer ref="61">33</Integer> - <Integer ref="62">34</Integer> - <Integer ref="63">35</Integer> - <Integer ref="64">36</Integer> - <Integer ref="65">37</Integer> - <Integer ref="66">38</Integer> - <Integer ref="67">39</Integer> - <Integer ref="68">40</Integer> - <Integer ref="69">41</Integer> + <Integer>0</Integer> + <Integer>1</Integer> + <Integer>2</Integer> + <Integer>3</Integer> + <Integer>4</Integer> + <Integer>5</Integer> + <Integer>6</Integer> + <Integer>7</Integer> + <Integer>8</Integer> + <Integer>9</Integer> + <Integer>10</Integer> + <Integer>11</Integer> + <Integer>12</Integer> + <Integer>13</Integer> + <Integer>14</Integer> + <Integer>15</Integer> + <Integer>16</Integer> + <Integer>17</Integer> + <Integer>18</Integer> + <Integer>19</Integer> + <Integer>20</Integer> + <Integer>21</Integer> + <Integer>22</Integer> + <Integer>23</Integer> + <Integer>24</Integer> + <Integer>25</Integer> + <Integer>26</Integer> + <Integer>27</Integer> + <Integer>28</Integer> + <Integer>29</Integer> + <Integer>30</Integer> + <Integer>31</Integer> + <Integer>32</Integer> + <Integer>33</Integer> + <Integer>34</Integer> + <Integer>35</Integer> + <Integer>36</Integer> + <Integer>37</Integer> + <Integer>38</Integer> + <Integer>39</Integer> + <Integer>40</Integer> + <Integer>41</Integer> </pushdownStoreAlphabet> <initialState> - <Ref id="1"/> + <Integer>0</Integer> </initialState> <initialPushdownStoreSymbol> - <Integer ref="70">0</Integer> + <Integer>0</Integer> </initialPushdownStoreSymbol> <finalStates> - <Ref id="12"/> - <Ref id="13"/> - <Ref id="14"/> - <Ref id="15"/> - <Ref id="16"/> - <Ref id="17"/> - <Ref id="18"/> + <Integer>11</Integer> + <Integer>12</Integer> + <Integer>13</Integer> + <Integer>14</Integer> + <Integer>15</Integer> + <Integer>16</Integer> + <Integer>17</Integer> </finalStates> <transitions> <transition> <from> - <Ref id="1"/> + <Integer>0</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="71">0</Integer> + <Integer>0</Integer> </pop> <to> - <Ref id="2"/> + <Integer>1</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="1"/> + <Integer>0</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="72">1</Integer> + <Integer>1</Integer> </pop> <to> - <Ref id="2"/> + <Integer>1</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="1"/> + <Integer>0</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="73">0</Integer> + <Integer>0</Integer> </pop> <to> - <Ref id="1"/> + <Integer>0</Integer> </to> <push> - <Integer ref="74">1</Integer> + <Integer>1</Integer> </push> </transition> <transition> <from> - <Ref id="1"/> + <Integer>0</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="29"/> + <Integer>1</Integer> </pop> <to> - <Ref id="1"/> + <Integer>0</Integer> </to> <push> - <Ref id="29"/> + <Integer>1</Integer> </push> </transition> <transition> <from> - <Ref id="1"/> + <Integer>0</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="28"/> + <Integer>0</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Integer ref="75">2</Integer> - <Integer ref="76">3</Integer> + <Integer>2</Integer> + <Integer>3</Integer> </push> </transition> <transition> <from> - <Ref id="1"/> + <Integer>0</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="29"/> + <Integer>1</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Integer ref="77">2</Integer> - <Integer ref="78">3</Integer> + <Integer>2</Integer> + <Integer>3</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="79">2</Integer> + <Integer>2</Integer> </pop> <to> - <Ref id="4"/> + <Integer>3</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="80">4</Integer> + <Integer>4</Integer> </pop> <to> - <Ref id="4"/> + <Integer>3</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="81">5</Integer> + <Integer>5</Integer> </pop> <to> - <Ref id="5"/> + <Integer>4</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="82">7</Integer> + <Integer>7</Integer> </pop> <to> - <Ref id="5"/> + <Integer>4</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="83">9</Integer> + <Integer>9</Integer> </pop> <to> - <Ref id="6"/> + <Integer>5</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="84">10</Integer> + <Integer>10</Integer> </pop> <to> - <Ref id="7"/> + <Integer>6</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="85">12</Integer> + <Integer>12</Integer> </pop> <to> - <Ref id="7"/> + <Integer>6</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="86">13</Integer> + <Integer>13</Integer> </pop> <to> - <Ref id="10"/> + <Integer>9</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="87">15</Integer> + <Integer>15</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="88">16</Integer> + <Integer>16</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="89">19</Integer> + <Integer>19</Integer> </pop> <to> - <Ref id="10"/> + <Integer>9</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="90">2</Integer> + <Integer>2</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="32"/> + <Integer>4</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="32"/> + <Integer>4</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="32"/> + <Integer>4</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="91">5</Integer> + <Integer>5</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Integer ref="92">7</Integer> + <Integer>7</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="35"/> + <Integer>7</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="35"/> + <Integer>7</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="37"/> + <Integer>9</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="37"/> + <Integer>9</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="93">10</Integer> + <Integer>10</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="40"/> + <Integer>12</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="40"/> + <Integer>12</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="40"/> + <Integer>12</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="94">13</Integer> + <Integer>13</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Integer ref="95">19</Integer> + <Integer>19</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="43"/> + <Integer>15</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="43"/> + <Integer>15</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="44"/> + <Integer>16</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="44"/> + <Integer>16</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="47"/> + <Integer>19</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="47"/> + <Integer>19</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="30"/> + <Integer>2</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Integer ref="96">5</Integer> - <Integer ref="97">6</Integer> + <Integer>5</Integer> + <Integer>6</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="32"/> + <Integer>4</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Integer ref="98">5</Integer> - <Integer ref="99">6</Integer> + <Integer>5</Integer> + <Integer>6</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="33"/> + <Integer>5</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="33"/> - <Integer ref="100">8</Integer> + <Integer>5</Integer> + <Integer>8</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="35"/> + <Integer>7</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="33"/> - <Integer ref="101">8</Integer> + <Integer>5</Integer> + <Integer>8</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="37"/> + <Integer>9</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Integer ref="102">10</Integer> - <Integer ref="103">11</Integer> + <Integer>10</Integer> + <Integer>11</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="104">10</Integer> + <Integer>10</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Integer ref="105">13</Integer> - <Integer ref="106">14</Integer> + <Integer>13</Integer> + <Integer>14</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="40"/> + <Integer>12</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Integer ref="107">13</Integer> - <Integer ref="108">14</Integer> + <Integer>13</Integer> + <Integer>14</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="41"/> + <Integer>13</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Integer ref="109">20</Integer> + <Integer>13</Integer> + <Integer>20</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="43"/> + <Integer>15</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Integer ref="110">13</Integer> - <Integer ref="111">17</Integer> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="44"/> + <Integer>16</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Integer ref="112">18</Integer> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="3"/> + <Integer>2</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="47"/> + <Integer>19</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Integer ref="113">20</Integer> + <Integer>13</Integer> + <Integer>20</Integer> </push> </transition> <transition> <from> - <Ref id="4"/> + <Integer>3</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="114">3</Integer> + <Integer>3</Integer> </pop> <to> - <Ref id="6"/> + <Integer>5</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="4"/> + <Integer>3</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="115">3</Integer> + <Integer>3</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="37"/> + <Integer>9</Integer> </push> </transition> <transition> <from> - <Ref id="4"/> + <Integer>3</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="116">3</Integer> + <Integer>3</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Integer ref="117">10</Integer> - <Integer ref="118">11</Integer> + <Integer>10</Integer> + <Integer>11</Integer> </push> </transition> <transition> <from> - <Ref id="5"/> + <Integer>4</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="119">6</Integer> + <Integer>6</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="5"/> + <Integer>4</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="120">8</Integer> + <Integer>8</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="5"/> + <Integer>4</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="121">6</Integer> + <Integer>6</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="43"/> + <Integer>15</Integer> </push> </transition> <transition> <from> - <Ref id="5"/> + <Integer>4</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="122">8</Integer> + <Integer>8</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="44"/> + <Integer>16</Integer> </push> </transition> <transition> <from> - <Ref id="5"/> + <Integer>4</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="123">6</Integer> + <Integer>6</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Integer ref="124">17</Integer> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="5"/> + <Integer>4</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="125">8</Integer> + <Integer>8</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Integer ref="126">18</Integer> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="7"/> + <Integer>6</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Ref id="39"/> + <Integer>11</Integer> </pop> <to> - <Ref id="6"/> + <Integer>5</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="7"/> + <Integer>6</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="39"/> + <Integer>11</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="127">21</Integer> + <Integer>21</Integer> </push> </transition> <transition> <from> - <Ref id="7"/> + <Integer>6</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="39"/> + <Integer>11</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Integer ref="128">10</Integer> - <Ref id="39"/> + <Integer>10</Integer> + <Integer>11</Integer> </push> </transition> <transition> <from> - <Ref id="8"/> + <Integer>7</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="129">3</Integer> + <Integer>3</Integer> </pop> <to> - <Ref id="6"/> + <Integer>5</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="8"/> + <Integer>7</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="130">11</Integer> + <Integer>11</Integer> </pop> <to> - <Ref id="6"/> + <Integer>5</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="8"/> + <Integer>7</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="131">32</Integer> + <Integer>32</Integer> </pop> <to> - <Ref id="6"/> + <Integer>5</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="8"/> + <Integer>7</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="132">3</Integer> + <Integer>3</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="133">21</Integer> + <Integer>21</Integer> </push> </transition> <transition> <from> - <Ref id="8"/> + <Integer>7</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="134">11</Integer> + <Integer>11</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="135">21</Integer> + <Integer>21</Integer> </push> </transition> <transition> <from> - <Ref id="8"/> + <Integer>7</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="136">32</Integer> + <Integer>32</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="137">21</Integer> + <Integer>21</Integer> </push> </transition> <transition> <from> - <Ref id="8"/> + <Integer>7</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="138">3</Integer> + <Integer>3</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Integer ref="139">10</Integer> - <Integer ref="140">11</Integer> + <Integer>10</Integer> + <Integer>11</Integer> </push> </transition> <transition> <from> - <Ref id="8"/> + <Integer>7</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="39"/> + <Integer>11</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Integer ref="141">10</Integer> - <Ref id="39"/> + <Integer>10</Integer> + <Integer>11</Integer> </push> </transition> <transition> <from> - <Ref id="8"/> + <Integer>7</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="142">32</Integer> + <Integer>32</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Integer ref="143">10</Integer> - <Ref id="39"/> + <Integer>10</Integer> + <Integer>11</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="144">6</Integer> + <Integer>6</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="145">8</Integer> + <Integer>8</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="146">14</Integer> + <Integer>14</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="147">17</Integer> + <Integer>17</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="148">18</Integer> + <Integer>18</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="149">20</Integer> + <Integer>20</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="150">34</Integer> + <Integer>34</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="151">35</Integer> + <Integer>35</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="152">36</Integer> + <Integer>36</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="153">37</Integer> + <Integer>37</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="154">40</Integer> + <Integer>40</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="155">41</Integer> + <Integer>41</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="156">6</Integer> + <Integer>6</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="157">22</Integer> + <Integer>22</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="158">8</Integer> + <Integer>8</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="159">23</Integer> + <Integer>23</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="160">14</Integer> + <Integer>14</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="161">22</Integer> + <Integer>22</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="162">17</Integer> + <Integer>17</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="163">22</Integer> + <Integer>22</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="164">18</Integer> + <Integer>18</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="165">23</Integer> + <Integer>23</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="166">20</Integer> + <Integer>20</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="167">23</Integer> + <Integer>23</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="168">34</Integer> + <Integer>34</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="169">22</Integer> + <Integer>22</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="170">35</Integer> + <Integer>35</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="171">23</Integer> + <Integer>23</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="172">36</Integer> + <Integer>36</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="173">22</Integer> + <Integer>22</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="174">37</Integer> + <Integer>37</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="175">23</Integer> + <Integer>23</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="176">40</Integer> + <Integer>40</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="177">22</Integer> + <Integer>22</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="178">41</Integer> + <Integer>41</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="179">23</Integer> + <Integer>23</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="180">6</Integer> + <Integer>6</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Integer ref="181">17</Integer> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="182">8</Integer> + <Integer>8</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Integer ref="183">18</Integer> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="184">14</Integer> + <Integer>14</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="45"/> + <Integer>17</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="46"/> + <Integer>18</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="185">20</Integer> + <Integer>20</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="186">34</Integer> + <Integer>34</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="187">35</Integer> + <Integer>35</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="188">36</Integer> + <Integer>36</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="189">37</Integer> + <Integer>37</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="190">40</Integer> + <Integer>40</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="9"/> + <Integer>8</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="191">41</Integer> + <Integer>41</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="10"/> + <Integer>9</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="192">14</Integer> + <Integer>14</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="10"/> + <Integer>9</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Ref id="45"/> + <Integer>17</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="10"/> + <Integer>9</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Ref id="46"/> + <Integer>18</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="10"/> + <Integer>9</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="193">20</Integer> + <Integer>20</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="10"/> + <Integer>9</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="194">14</Integer> + <Integer>14</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="195">24</Integer> + <Integer>24</Integer> </push> </transition> <transition> <from> - <Ref id="10"/> + <Integer>9</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="45"/> + <Integer>17</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="196">22</Integer> + <Integer>22</Integer> </push> </transition> <transition> <from> - <Ref id="10"/> + <Integer>9</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="46"/> + <Integer>18</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="197">23</Integer> + <Integer>23</Integer> </push> </transition> <transition> <from> - <Ref id="10"/> + <Integer>9</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="198">20</Integer> + <Integer>20</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="199">25</Integer> + <Integer>25</Integer> </push> </transition> <transition> <from> - <Ref id="10"/> + <Integer>9</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="200">14</Integer> + <Integer>14</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="10"/> + <Integer>9</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="45"/> + <Integer>17</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="10"/> + <Integer>9</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="46"/> + <Integer>18</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="10"/> + <Integer>9</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="201">20</Integer> + <Integer>20</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="202">21</Integer> + <Integer>21</Integer> </pop> <to> - <Ref id="12"/> + <Integer>11</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="203">22</Integer> + <Integer>22</Integer> </pop> <to> - <Ref id="13"/> + <Integer>12</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="204">23</Integer> + <Integer>23</Integer> </pop> <to> - <Ref id="14"/> + <Integer>13</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="205">24</Integer> + <Integer>24</Integer> </pop> <to> - <Ref id="15"/> + <Integer>14</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="206">25</Integer> + <Integer>25</Integer> </pop> <to> - <Ref id="16"/> + <Integer>15</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="207">26</Integer> + <Integer>26</Integer> </pop> <to> - <Ref id="12"/> + <Integer>11</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="208">27</Integer> + <Integer>27</Integer> </pop> <to> - <Ref id="13"/> + <Integer>12</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="209">28</Integer> + <Integer>28</Integer> </pop> <to> - <Ref id="14"/> + <Integer>13</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="210">29</Integer> + <Integer>29</Integer> </pop> <to> - <Ref id="15"/> + <Integer>14</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="211">30</Integer> + <Integer>30</Integer> </pop> <to> - <Ref id="16"/> + <Integer>15</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="212">31</Integer> + <Integer>31</Integer> </pop> <to> - <Ref id="17"/> + <Integer>16</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="213">33</Integer> + <Integer>33</Integer> </pop> <to> - <Ref id="18"/> + <Integer>17</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="214">38</Integer> + <Integer>38</Integer> </pop> <to> - <Ref id="17"/> + <Integer>16</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="215">39</Integer> + <Integer>39</Integer> </pop> <to> - <Ref id="18"/> + <Integer>17</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="216">21</Integer> + <Integer>21</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="217">26</Integer> + <Integer>26</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="218">22</Integer> + <Integer>22</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="219">27</Integer> + <Integer>27</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="220">23</Integer> + <Integer>23</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="221">28</Integer> + <Integer>28</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="222">24</Integer> + <Integer>24</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="223">29</Integer> + <Integer>29</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="224">25</Integer> + <Integer>25</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="225">30</Integer> + <Integer>30</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="54"/> + <Integer>26</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Ref id="54"/> + <Integer>26</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="55"/> + <Integer>27</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Ref id="55"/> + <Integer>27</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="56"/> + <Integer>28</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Ref id="56"/> + <Integer>28</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="57"/> + <Integer>29</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Ref id="57"/> + <Integer>29</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="58"/> + <Integer>30</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Ref id="58"/> + <Integer>30</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="226">31</Integer> + <Integer>31</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Ref id="66"/> + <Integer>38</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="227">33</Integer> + <Integer>33</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="228">39</Integer> + <Integer>39</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="66"/> + <Integer>38</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Ref id="66"/> + <Integer>38</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="67"/> + <Integer>39</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Ref id="67"/> + <Integer>39</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="229">21</Integer> + <Integer>21</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="230">31</Integer> - <Integer ref="231">32</Integer> + <Integer>31</Integer> + <Integer>32</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="232">22</Integer> + <Integer>22</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="233">33</Integer> - <Integer ref="234">34</Integer> + <Integer>33</Integer> + <Integer>34</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="235">23</Integer> + <Integer>23</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Ref id="61"/> - <Integer ref="236">35</Integer> + <Integer>33</Integer> + <Integer>35</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="237">24</Integer> + <Integer>24</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="238">33</Integer> - <Integer ref="239">36</Integer> + <Integer>33</Integer> + <Integer>36</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="240">25</Integer> + <Integer>25</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Ref id="61"/> - <Integer ref="241">37</Integer> + <Integer>33</Integer> + <Integer>37</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="54"/> + <Integer>26</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="242">31</Integer> - <Integer ref="243">32</Integer> + <Integer>31</Integer> + <Integer>32</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="55"/> + <Integer>27</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="244">33</Integer> - <Integer ref="245">34</Integer> + <Integer>33</Integer> + <Integer>34</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="56"/> + <Integer>28</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Ref id="61"/> - <Integer ref="246">35</Integer> + <Integer>33</Integer> + <Integer>35</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="57"/> + <Integer>29</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="247">33</Integer> - <Integer ref="248">36</Integer> + <Integer>33</Integer> + <Integer>36</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="58"/> + <Integer>30</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Ref id="61"/> - <Integer ref="249">37</Integer> + <Integer>33</Integer> + <Integer>37</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="59"/> + <Integer>31</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="250">33</Integer> - <Integer ref="251">40</Integer> + <Integer>33</Integer> + <Integer>40</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="61"/> + <Integer>33</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Ref id="61"/> - <Integer ref="252">41</Integer> + <Integer>33</Integer> + <Integer>41</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="66"/> + <Integer>38</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="253">33</Integer> - <Integer ref="254">40</Integer> + <Integer>33</Integer> + <Integer>40</Integer> </push> </transition> <transition> <from> - <Ref id="11"/> + <Integer>10</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="67"/> + <Integer>39</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Ref id="61"/> - <Integer ref="255">41</Integer> + <Integer>33</Integer> + <Integer>41</Integer> </push> </transition> <transition> <from> - <Ref id="13"/> + <Integer>12</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="256">3</Integer> + <Integer>3</Integer> </pop> <to> - <Ref id="6"/> + <Integer>5</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="13"/> + <Integer>12</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Ref id="39"/> + <Integer>11</Integer> </pop> <to> - <Ref id="6"/> + <Integer>5</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="13"/> + <Integer>12</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="257">32</Integer> + <Integer>32</Integer> </pop> <to> - <Ref id="6"/> + <Integer>5</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="13"/> + <Integer>12</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="258">3</Integer> + <Integer>3</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="259">21</Integer> + <Integer>21</Integer> </push> </transition> <transition> <from> - <Ref id="13"/> + <Integer>12</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="39"/> + <Integer>11</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="260">21</Integer> + <Integer>21</Integer> </push> </transition> <transition> <from> - <Ref id="13"/> + <Integer>12</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="261">32</Integer> + <Integer>32</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="262">21</Integer> + <Integer>21</Integer> </push> </transition> <transition> <from> - <Ref id="13"/> + <Integer>12</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="31"/> + <Integer>3</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Integer ref="263">10</Integer> - <Ref id="39"/> + <Integer>10</Integer> + <Integer>11</Integer> </push> </transition> <transition> <from> - <Ref id="13"/> + <Integer>12</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="39"/> + <Integer>11</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Integer ref="264">10</Integer> - <Ref id="39"/> + <Integer>10</Integer> + <Integer>11</Integer> </push> </transition> <transition> <from> - <Ref id="13"/> + <Integer>12</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="265">32</Integer> + <Integer>32</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Integer ref="266">10</Integer> - <Ref id="39"/> + <Integer>10</Integer> + <Integer>11</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="267">6</Integer> + <Integer>6</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="268">8</Integer> + <Integer>8</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="269">14</Integer> + <Integer>14</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Ref id="45"/> + <Integer>17</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Ref id="46"/> + <Integer>18</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="270">20</Integer> + <Integer>20</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="271">34</Integer> + <Integer>34</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="272">35</Integer> + <Integer>35</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="273">36</Integer> + <Integer>36</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="274">37</Integer> + <Integer>37</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="275">40</Integer> + <Integer>40</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="276">41</Integer> + <Integer>41</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="277">6</Integer> + <Integer>6</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="278">22</Integer> + <Integer>22</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="279">8</Integer> + <Integer>8</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="280">23</Integer> + <Integer>23</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="281">14</Integer> + <Integer>14</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="282">22</Integer> + <Integer>22</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="45"/> + <Integer>17</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="283">22</Integer> + <Integer>22</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="46"/> + <Integer>18</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="284">23</Integer> + <Integer>23</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="285">20</Integer> + <Integer>20</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="286">23</Integer> + <Integer>23</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="287">34</Integer> + <Integer>34</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="288">22</Integer> + <Integer>22</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="289">35</Integer> + <Integer>35</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="290">23</Integer> + <Integer>23</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="291">36</Integer> + <Integer>36</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="292">22</Integer> + <Integer>22</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="293">37</Integer> + <Integer>37</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="294">23</Integer> + <Integer>23</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="295">40</Integer> + <Integer>40</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="296">22</Integer> + <Integer>22</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="297">41</Integer> + <Integer>41</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="298">23</Integer> + <Integer>23</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="34"/> + <Integer>6</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="36"/> + <Integer>8</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="299">14</Integer> + <Integer>14</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="45"/> + <Integer>17</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="46"/> + <Integer>18</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="300">20</Integer> + <Integer>20</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="301">34</Integer> + <Integer>34</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="302">35</Integer> + <Integer>35</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="303">36</Integer> + <Integer>36</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="304">37</Integer> + <Integer>37</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="305">40</Integer> + <Integer>40</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="14"/> + <Integer>13</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="306">41</Integer> + <Integer>41</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="15"/> + <Integer>14</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Ref id="39"/> + <Integer>11</Integer> </pop> <to> - <Ref id="6"/> + <Integer>5</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="15"/> + <Integer>14</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="307">32</Integer> + <Integer>32</Integer> </pop> <to> - <Ref id="6"/> + <Integer>5</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="15"/> + <Integer>14</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="39"/> + <Integer>11</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="308">21</Integer> + <Integer>21</Integer> </push> </transition> <transition> <from> - <Ref id="15"/> + <Integer>14</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="309">32</Integer> + <Integer>32</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Ref id="49"/> + <Integer>21</Integer> </push> </transition> <transition> <from> - <Ref id="15"/> + <Integer>14</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="39"/> + <Integer>11</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Integer ref="310">10</Integer> - <Ref id="39"/> + <Integer>10</Integer> + <Integer>11</Integer> </push> </transition> <transition> <from> - <Ref id="15"/> + <Integer>14</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="60"/> + <Integer>32</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="38"/> - <Ref id="39"/> + <Integer>10</Integer> + <Integer>11</Integer> </push> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="311">14</Integer> + <Integer>14</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Ref id="45"/> + <Integer>17</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Ref id="46"/> + <Integer>18</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="312">20</Integer> + <Integer>20</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="313">34</Integer> + <Integer>34</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="314">35</Integer> + <Integer>35</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="315">36</Integer> + <Integer>36</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="316">37</Integer> + <Integer>37</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="317">40</Integer> + <Integer>40</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="318">41</Integer> + <Integer>41</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="319">14</Integer> + <Integer>14</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="320">22</Integer> + <Integer>22</Integer> </push> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="45"/> + <Integer>17</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="321">22</Integer> + <Integer>22</Integer> </push> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Ref id="46"/> + <Integer>18</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="322">23</Integer> + <Integer>23</Integer> </push> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="323">20</Integer> + <Integer>20</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="324">23</Integer> + <Integer>23</Integer> </push> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="325">34</Integer> + <Integer>34</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="326">22</Integer> + <Integer>22</Integer> </push> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="327">35</Integer> + <Integer>35</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="328">23</Integer> + <Integer>23</Integer> </push> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="329">36</Integer> + <Integer>36</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Ref id="50"/> + <Integer>22</Integer> </push> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="330">37</Integer> + <Integer>37</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Ref id="51"/> + <Integer>23</Integer> </push> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="331">40</Integer> + <Integer>40</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="332">22</Integer> + <Integer>22</Integer> </push> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="333">41</Integer> + <Integer>41</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="334">23</Integer> + <Integer>23</Integer> </push> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="42"/> + <Integer>14</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="45"/> + <Integer>17</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="46"/> + <Integer>18</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="48"/> + <Integer>20</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="62"/> + <Integer>34</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="63"/> + <Integer>35</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="64"/> + <Integer>36</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="65"/> + <Integer>37</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="68"/> + <Integer>40</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="16"/> + <Integer>15</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Ref id="69"/> + <Integer>41</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="17"/> + <Integer>16</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="335">32</Integer> + <Integer>32</Integer> </pop> <to> - <Ref id="6"/> + <Integer>5</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="17"/> + <Integer>16</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="336">32</Integer> + <Integer>32</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="337">21</Integer> + <Integer>21</Integer> </push> </transition> <transition> <from> - <Ref id="17"/> + <Integer>16</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="338">32</Integer> + <Integer>32</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Integer ref="339">10</Integer> - <Ref id="39"/> + <Integer>10</Integer> + <Integer>11</Integer> </push> </transition> <transition> <from> - <Ref id="18"/> + <Integer>17</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="340">34</Integer> + <Integer>34</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="18"/> + <Integer>17</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="341">35</Integer> + <Integer>35</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="18"/> + <Integer>17</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="342">36</Integer> + <Integer>36</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="18"/> + <Integer>17</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="343">37</Integer> + <Integer>37</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="18"/> + <Integer>17</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="344">40</Integer> + <Integer>40</Integer> </pop> <to> - <Ref id="8"/> + <Integer>7</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="18"/> + <Integer>17</Integer> </from> <input> - <Ref id="19"/> + <String>a0</String> </input> <pop> - <Integer ref="345">41</Integer> + <Integer>41</Integer> </pop> <to> - <Ref id="9"/> + <Integer>8</Integer> </to> <push/> </transition> <transition> <from> - <Ref id="18"/> + <Integer>17</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="346">34</Integer> + <Integer>34</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="347">22</Integer> + <Integer>22</Integer> </push> </transition> <transition> <from> - <Ref id="18"/> + <Integer>17</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="348">35</Integer> + <Integer>35</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="349">23</Integer> + <Integer>23</Integer> </push> </transition> <transition> <from> - <Ref id="18"/> + <Integer>17</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="350">36</Integer> + <Integer>36</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="351">22</Integer> + <Integer>22</Integer> </push> </transition> <transition> <from> - <Ref id="18"/> + <Integer>17</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="352">37</Integer> + <Integer>37</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Integer ref="353">23</Integer> + <Integer>23</Integer> </push> </transition> <transition> <from> - <Ref id="18"/> + <Integer>17</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="354">40</Integer> + <Integer>40</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Ref id="52"/> + <Integer>24</Integer> </push> </transition> <transition> <from> - <Ref id="18"/> + <Integer>17</Integer> </from> <input> - <Ref id="22"/> + <String>a1</String> </input> <pop> - <Integer ref="355">41</Integer> + <Integer>41</Integer> </pop> <to> - <Ref id="11"/> + <Integer>10</Integer> </to> <push> - <Ref id="53"/> + <Integer>25</Integer> </push> </transition> <transition> <from> - <Ref id="18"/> + <Integer>17</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="356">34</Integer> + <Integer>34</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="18"/> + <Integer>17</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="357">35</Integer> + <Integer>35</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="18"/> + <Integer>17</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="358">36</Integer> + <Integer>36</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="18"/> + <Integer>17</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="359">37</Integer> + <Integer>37</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> <transition> <from> - <Ref id="18"/> + <Integer>17</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="360">40</Integer> + <Integer>40</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="45"/> + <Integer>13</Integer> + <Integer>17</Integer> </push> </transition> <transition> <from> - <Ref id="18"/> + <Integer>17</Integer> </from> <input> - <Ref id="25"/> + <String>a2</String> </input> <pop> - <Integer ref="361">41</Integer> + <Integer>41</Integer> </pop> <to> - <Ref id="3"/> + <Integer>2</Integer> </to> <push> - <Ref id="41"/> - <Ref id="46"/> + <Integer>13</Integer> + <Integer>18</Integer> </push> </transition> </transitions> diff --git a/examples2/automaton/NPDA1.xml b/examples2/automaton/NPDA1.xml index da63e32d2181e72cf34aa7f862c5d543b0a9be01..d14543103158c98f894291df12475e29e22d0853 100644 --- a/examples2/automaton/NPDA1.xml +++ b/examples2/automaton/NPDA1.xml @@ -1,431 +1,315 @@ <?xml version="1.0"?> <NPDA> - <states> - <PrimitiveLabel><Integer>0</Integer></PrimitiveLabel> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - <PrimitiveLabel><Integer>2</Integer></PrimitiveLabel> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - <PrimitiveLabel><Integer>4</Integer></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol> - <PrimitiveLabel><String>a0</String></PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel><String>a1</String></PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel><String>a2</String></PrimitiveLabel> - </LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol> - <PrimitiveLabel><String>R</String></PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </pushdownStoreAlphabet> - <initialState> - <PrimitiveLabel><Integer>0</Integer></PrimitiveLabel> - </initialState> - <initialPushdownStoreSymbol> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </initialPushdownStoreSymbol> - <finalStates> - <PrimitiveLabel><Integer>4</Integer></PrimitiveLabel> - </finalStates> - <transitions> - <transition> - <from> - <PrimitiveLabel><Integer>0</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>a0</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>0</Integer></PrimitiveLabel> - </to> - <push/> - </transition> - <transition> - <from> - <PrimitiveLabel><Integer>0</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>a1</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>0</Integer></PrimitiveLabel> - </to> - <push> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </push> - </transition> - <transition> - <from> - <PrimitiveLabel><Integer>0</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>a2</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>0</Integer></PrimitiveLabel> - </to> - <push> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </push> - </transition> - <transition> - <from> - <PrimitiveLabel><Integer>0</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>a2</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - </to> - <push> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel><String>R</String></PrimitiveLabel> - </LabeledSymbol> - </push> - </transition> - <transition> - <from> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>a0</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><String>R</String></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>2</Integer></PrimitiveLabel> - </to> - <push/> - </transition> - <transition> - <from> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>a0</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - </to> - <push/> - </transition> - <transition> - <from> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>a1</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><String>R</String></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - </to> - <push> - <LabeledSymbol> - <PrimitiveLabel><String>R</String></PrimitiveLabel> - </LabeledSymbol> - </push> - </transition> - <transition> - <from> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>a1</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - </to> - <push> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </push> - </transition> - <transition> - <from> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>a2</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><String>R</String></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - </to> - <push> - <LabeledSymbol> - <PrimitiveLabel><String>R</String></PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </push> - </transition> - <transition> - <from> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>a2</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - </to> - <push> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </push> - </transition> - <transition> - <from> - <PrimitiveLabel><Integer>2</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>a1</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </to> - <push> - <LabeledSymbol> - <PrimitiveLabel><String>R</String></PrimitiveLabel> - </LabeledSymbol> - </push> - </transition> - <transition> - <from> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>a0</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><String>R</String></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>4</Integer></PrimitiveLabel> - </to> - <push/> - </transition> - <transition> - <from> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>a0</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </to> - <push/> - </transition> - <transition> - <from> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>a1</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><String>R</String></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </to> - <push> - <LabeledSymbol> - <PrimitiveLabel><String>R</String></PrimitiveLabel> - </LabeledSymbol> - </push> - </transition> - <transition> - <from> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>a1</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </to> - <push> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </push> - </transition> - <transition> - <from> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>a2</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><String>R</String></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </to> - <push> - <LabeledSymbol> - <PrimitiveLabel><String>R</String></PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </push> - </transition> - <transition> - <from> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>a2</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </to> - <push> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel><String>T</String></PrimitiveLabel> - </LabeledSymbol> - </push> - </transition> - </transitions> + <states> + <Integer>0</Integer> + <Integer>1</Integer> + <Integer>2</Integer> + <Integer>3</Integer> + <Integer>4</Integer> + </states> + <inputAlphabet> + <String>a0</String> + <String>a1</String> + <String>a2</String> + </inputAlphabet> + <pushdownStoreAlphabet> + <String>R</String> + <String>T</String> + </pushdownStoreAlphabet> + <initialState> + <Integer>0</Integer> + </initialState> + <initialPushdownStoreSymbol> + <String>T</String> + </initialPushdownStoreSymbol> + <finalStates> + <Integer>4</Integer> + </finalStates> + <transitions> + <transition> + <from> + <Integer>0</Integer> + </from> + <input> + <String>a0</String> + </input> + <pop> + <String>T</String> + </pop> + <to> + <Integer>0</Integer> + </to> + <push/> + </transition> + <transition> + <from> + <Integer>0</Integer> + </from> + <input> + <String>a1</String> + </input> + <pop> + <String>T</String> + </pop> + <to> + <Integer>0</Integer> + </to> + <push> + <String>T</String> + </push> + </transition> + <transition> + <from> + <Integer>0</Integer> + </from> + <input> + <String>a2</String> + </input> + <pop> + <String>T</String> + </pop> + <to> + <Integer>0</Integer> + </to> + <push> + <String>T</String> + <String>T</String> + </push> + </transition> + <transition> + <from> + <Integer>0</Integer> + </from> + <input> + <String>a2</String> + </input> + <pop> + <String>T</String> + </pop> + <to> + <Integer>1</Integer> + </to> + <push> + <String>T</String> + <String>R</String> + </push> + </transition> + <transition> + <from> + <Integer>1</Integer> + </from> + <input> + <String>a0</String> + </input> + <pop> + <String>R</String> + </pop> + <to> + <Integer>2</Integer> + </to> + <push/> + </transition> + <transition> + <from> + <Integer>1</Integer> + </from> + <input> + <String>a0</String> + </input> + <pop> + <String>T</String> + </pop> + <to> + <Integer>1</Integer> + </to> + <push/> + </transition> + <transition> + <from> + <Integer>1</Integer> + </from> + <input> + <String>a1</String> + </input> + <pop> + <String>R</String> + </pop> + <to> + <Integer>1</Integer> + </to> + <push> + <String>R</String> + </push> + </transition> + <transition> + <from> + <Integer>1</Integer> + </from> + <input> + <String>a1</String> + </input> + <pop> + <String>T</String> + </pop> + <to> + <Integer>1</Integer> + </to> + <push> + <String>T</String> + </push> + </transition> + <transition> + <from> + <Integer>1</Integer> + </from> + <input> + <String>a2</String> + </input> + <pop> + <String>R</String> + </pop> + <to> + <Integer>1</Integer> + </to> + <push> + <String>R</String> + <String>T</String> + </push> + </transition> + <transition> + <from> + <Integer>1</Integer> + </from> + <input> + <String>a2</String> + </input> + <pop> + <String>T</String> + </pop> + <to> + <Integer>1</Integer> + </to> + <push> + <String>T</String> + <String>T</String> + </push> + </transition> + <transition> + <from> + <Integer>2</Integer> + </from> + <input> + <String>a1</String> + </input> + <pop> + <String>T</String> + </pop> + <to> + <Integer>3</Integer> + </to> + <push> + <String>R</String> + </push> + </transition> + <transition> + <from> + <Integer>3</Integer> + </from> + <input> + <String>a0</String> + </input> + <pop> + <String>R</String> + </pop> + <to> + <Integer>4</Integer> + </to> + <push/> + </transition> + <transition> + <from> + <Integer>3</Integer> + </from> + <input> + <String>a0</String> + </input> + <pop> + <String>T</String> + </pop> + <to> + <Integer>3</Integer> + </to> + <push/> + </transition> + <transition> + <from> + <Integer>3</Integer> + </from> + <input> + <String>a1</String> + </input> + <pop> + <String>R</String> + </pop> + <to> + <Integer>3</Integer> + </to> + <push> + <String>R</String> + </push> + </transition> + <transition> + <from> + <Integer>3</Integer> + </from> + <input> + <String>a1</String> + </input> + <pop> + <String>T</String> + </pop> + <to> + <Integer>3</Integer> + </to> + <push> + <String>T</String> + </push> + </transition> + <transition> + <from> + <Integer>3</Integer> + </from> + <input> + <String>a2</String> + </input> + <pop> + <String>R</String> + </pop> + <to> + <Integer>3</Integer> + </to> + <push> + <String>R</String> + <String>T</String> + </push> + </transition> + <transition> + <from> + <Integer>3</Integer> + </from> + <input> + <String>a2</String> + </input> + <pop> + <String>T</String> + </pop> + <to> + <Integer>3</Integer> + </to> + <push> + <String>T</String> + <String>T</String> + </push> + </transition> + </transitions> </NPDA> diff --git a/examples2/automaton/NPDA2.fix.xml b/examples2/automaton/NPDA2.fix.xml index c8435f14dd240aa7983db120a9671c62411e71ba..ddce3eab04d8fa55baffad119d7ca4b573f4eb21 100644 --- a/examples2/automaton/NPDA2.fix.xml +++ b/examples2/automaton/NPDA2.fix.xml @@ -1,3 +1,4 @@ +<?xml version="1.0"?> <!-- RHPDA stackops: A -> B @@ -10,328 +11,463 @@ VPDA stackops: to RHPDA stackops eps -> eps Z -> Z dtto --> <NPDA> - <states> - <PrimitiveLabel><String>q0</String></PrimitiveLabel> - <PrimitiveLabel><String>a1</String></PrimitiveLabel> - <PrimitiveLabel><String>b5</String></PrimitiveLabel> - <PrimitiveLabel><String>|6</String></PrimitiveLabel> - <PrimitiveLabel><String>|4</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>|</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>Z</String></PrimitiveLabel></LabeledSymbol> - </pushdownStoreAlphabet> - <initialState> - <PrimitiveLabel><String>q0</String></PrimitiveLabel> - </initialState> - <initialPushdownStoreSymbol> - <LabeledSymbol><PrimitiveLabel><String>Z</String></PrimitiveLabel></LabeledSymbol> - </initialPushdownStoreSymbol> - <finalStates> - <PrimitiveLabel><String>|4</String></PrimitiveLabel> - </finalStates> - <transitions> - <!-- (q0, a, eps) -> (a1, eps) --> - <!-- na tri: stackops: SQ2->SQ2 a SQ3->SQ3 Z->Z --> - <transition> - <from><PrimitiveLabel><String>q0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>a1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> + <states> + <String>q0</String> + <String>a1</String> + <String>b5</String> + <String>|6</String> + <String>|4</String> + </states> + <inputAlphabet> + <Character>a</Character> + <Character>b</Character> + <Character>|</Character> + </inputAlphabet> + <pushdownStoreAlphabet> + <String>SQ2</String> + <String>SQ3</String> + <String>Z</String> + </pushdownStoreAlphabet> + <initialState> + <String>q0</String> + </initialState> + <initialPushdownStoreSymbol> + <String>Z</String> + </initialPushdownStoreSymbol> + <finalStates> + <String>|4</String> + </finalStates> + <transitions> + <!-- (q0, a, eps) -> (a1, eps) --> + <!-- na tri: stackops: SQ2->SQ2 a SQ3->SQ3 Z->Z --> + <transition> + <from> + <String>q0</String> + </from> + <input> + <Character>a</Character> + </input> + <pop> + <String>SQ2</String> + </pop> + <to> + <String>a1</String> + </to> + <push> + <String>SQ2</String> + </push> + </transition> + <transition> + <from> + <String>q0</String> + </from> + <input> + <Character>a</Character> + </input> + <pop> + <String>SQ3</String> + </pop> + <to> + <String>a1</String> + </to> + <push> + <String>SQ3</String> + </push> + </transition> + <transition> + <from> + <String>q0</String> + </from> + <input> + <Character>a</Character> + </input> + <pop> + <String>Z</String> + </pop> + <to> + <String>a1</String> + </to> + <push> + <String>Z</String> + </push> + </transition> + <!-- (a1, b, eps) -> (b5, eps) --> + <!-- na tri: Z->Z a SQ2->SQ2 a SQ3->SQ3 --> + <transition> + <from> + <String>a1</String> + </from> + <input> + <Character>b</Character> + </input> + <pop> + <String>SQ3</String> + </pop> + <to> + <String>b5</String> + </to> + <push> + <String>SQ3</String> + </push> + </transition> + <transition> + <from> + <String>a1</String> + </from> + <input> + <Character>b</Character> + </input> + <pop> + <String>SQ2</String> + </pop> + <to> + <String>b5</String> + </to> + <push> + <String>SQ2</String> + </push> + </transition> + <transition> + <from> + <String>a1</String> + </from> + <input> + <Character>b</Character> + </input> + <pop> + <String>Z</String> + </pop> + <to> + <String>b5</String> + </to> + <push> + <String>Z</String> + </push> + </transition> + <!-- (a1, a, eps) -> (a1, SQ2) --> + <!-- na tri: SQ2 -> SQ2 SQ2 a SQ3 -> SQ3 SQ2 a Z -> Z SQ3 --> + <transition> + <from> + <String>a1</String> + </from> + <input> + <Character>a</Character> + </input> + <pop> + <String>SQ2</String> + </pop> + <to> + <String>a1</String> + </to> + <push> + <String>SQ2</String> + <String>SQ2</String> + </push> + </transition> + <transition> + <from> + <String>a1</String> + </from> + <input> + <Character>a</Character> + </input> + <pop> + <String>SQ3</String> + </pop> + <to> + <String>a1</String> + </to> + <push> + <String>SQ2</String> + <String>SQ3</String> + </push> + </transition> + <transition> + <from> + <String>a1</String> + </from> + <input> + <Character>a</Character> + </input> + <pop> + <String>Z</String> + </pop> + <to> + <String>a1</String> + </to> + <push> + <String>SQ2</String> + <String>Z</String> + </push> + </transition> + <!-- (b5, |, eps) -> (|6, eps) --> + <!-- na tri: SQ2->SQ2 a SQ3->SQ3 a Z->Z --> + <transition> + <from> + <String>b5</String> + </from> + <input> + <Character>|</Character> + </input> + <pop> + <String>SQ2</String> + </pop> + <to> + <String>|6</String> + </to> + <push> + <String>SQ2</String> + </push> + </transition> + <transition> + <from> + <String>b5</String> + </from> + <input> + <Character>|</Character> + </input> + <pop> + <String>SQ3</String> + </pop> + <to> + <String>|6</String> + </to> + <push> + <String>SQ3</String> + </push> + </transition> + <transition> + <from> + <String>b5</String> + </from> + <input> + <Character>|</Character> + </input> + <pop> + <String>Z</String> + </pop> + <to> + <String>|6</String> + </to> + <push> + <String>Z</String> + </push> + </transition> + <!-- (|6, b, eps) -> (b5, eps) --> + <!-- na tri: SQ2->SQ2 a SQ3->SQ3 a Z->Z --> + <transition> + <from> + <String>|6</String> + </from> + <input> + <Character>b</Character> + </input> + <pop> + <String>SQ2</String> + </pop> + <to> + <String>b5</String> + </to> + <push> + <String>SQ2</String> + </push> + </transition> + <transition> + <from> + <String>|6</String> + </from> + <input> + <Character>b</Character> + </input> + <pop> + <String>SQ3</String> + </pop> + <to> + <String>b5</String> + </to> + <push> + <String>SQ3</String> + </push> + </transition> + <transition> + <from> + <String>|6</String> + </from> + <input> + <Character>b</Character> + </input> + <pop> + <String>Z</String> + </pop> + <to> + <String>b5</String> + </to> + <push> + <String>Z</String> + </push> + </transition> + <!-- (|6, a, eps) -> (a1, SQ3) --> + <!-- na tri: SQ2 -> SQ2 SQ3 a SQ3 -> SQ3 SQ3 a Z->Z SQ3 --> + <transition> + <from> + <String>|6</String> + </from> + <input> + <Character>a</Character> + </input> + <pop> + <String>SQ2</String> + </pop> + <to> + <String>a1</String> + </to> + <push> + <String>SQ3</String> + <String>SQ2</String> + </push> + </transition> + <transition> + <from> + <String>|6</String> + </from> + <input> + <Character>a</Character> + </input> + <pop> + <String>SQ3</String> + </pop> + <to> + <String>a1</String> + </to> + <push> + <String>SQ3</String> + <String>SQ3</String> + </push> + </transition> + <transition> + <from> + <String>|6</String> + </from> + <input> + <Character>a</Character> + </input> + <pop> + <String>Z</String> + </pop> + <to> + <String>a1</String> + </to> + <push> + <String>SQ3</String> + <String>Z</String> + </push> + </transition> + <!-- (|6, |, eps) -> (|4, eps) --> + <!-- na tri: SQ2 -> SQ2 a SQ3 -> SQ3 a Z->Z --> + <transition> + <from> + <String>|6</String> + </from> + <input> + <Character>|</Character> + </input> + <pop> + <String>SQ2</String> + </pop> + <to> + <String>|4</String> + </to> + <push> + <String>SQ2</String> + </push> + </transition> + <transition> + <from> + <String>|6</String> + </from> + <input> + <Character>|</Character> + </input> + <pop> + <String>SQ3</String> + </pop> + <to> + <String>|4</String> + </to> + <push> + <String>SQ3</String> + </push> + </transition> + <transition> + <from> + <String>|6</String> + </from> + <input> + <Character>|</Character> + </input> + <pop> + <String>Z</String> + </pop> + <to> + <String>|4</String> + </to> + <push> + <String>Z</String> + </push> + </transition> + <!-- (|4, b, SQ2) -> (b5, eps) --> + <!-- ok --> + <transition> + <from> + <String>|4</String> + </from> + <input> + <Character>b</Character> + </input> + <pop> + <String>SQ2</String> + </pop> + <to> + <String>b5</String> + </to> + <push> </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>a1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> + </transition> + <!-- (|4, |, SQ3) -> (|4, eps) --> + <!-- ok --> + <transition> + <from> + <String>|4</String> + </from> + <input> + <Character>|</Character> + </input> + <pop> + <String>SQ3</String> + </pop> + <to> + <String>|4</String> + </to> + <push> </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>Z</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>a1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>Z</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - - <!-- (a1, b, eps) -> (b5, eps) --> - <!-- na tri: Z->Z a SQ2->SQ2 a SQ3->SQ3 --> - <transition> - <from><PrimitiveLabel><String>a1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>b5</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>a1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>b5</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>a1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>Z</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>b5</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>Z</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - - <!-- (a1, a, eps) -> (a1, SQ2) --> - <!-- na tri: SQ2 -> SQ2 SQ2 a SQ3 -> SQ3 SQ2 a Z -> Z SQ3 --> - <transition> - <from><PrimitiveLabel><String>a1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>a1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>a1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>a1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>a1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>Z</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>a1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>Z</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - - <!-- (b5, |, eps) -> (|6, eps) --> - <!-- na tri: SQ2->SQ2 a SQ3->SQ3 a Z->Z --> - <transition> - <from><PrimitiveLabel><String>b5</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>|</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>|6</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>b5</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>|</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>|6</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>b5</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>|</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>Z</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>|6</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>Z</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - - <!-- (|6, b, eps) -> (b5, eps) --> - <!-- na tri: SQ2->SQ2 a SQ3->SQ3 a Z->Z --> - <transition> - <from><PrimitiveLabel><String>|6</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>b5</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>|6</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>b5</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>|6</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>Z</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>b5</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>Z</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - - <!-- (|6, a, eps) -> (a1, SQ3) --> - <!-- na tri: SQ2 -> SQ2 SQ3 a SQ3 -> SQ3 SQ3 a Z->Z SQ3 --> - <transition> - <from><PrimitiveLabel><String>|6</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>a1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>|6</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>a1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>|6</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>Z</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>a1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>Z</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - - <!-- (|6, |, eps) -> (|4, eps) --> - <!-- na tri: SQ2 -> SQ2 a SQ3 -> SQ3 a Z->Z --> - <transition> - <from><PrimitiveLabel><String>|6</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>|</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>|4</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>|6</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>|</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>|4</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>|6</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>|</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>Z</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>|4</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>Z</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - - <!-- (|4, b, SQ2) -> (b5, eps) --> - <!-- ok --> - <transition> - <from><PrimitiveLabel><String>|4</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>b5</String></PrimitiveLabel></to> - <push> - </push> - </transition> - - <!-- (|4, |, SQ3) -> (|4, eps) --> - <!-- ok --> - <transition> - <from><PrimitiveLabel><String>|4</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>|</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>|4</String></PrimitiveLabel></to> - <push> - </push> - </transition> - - <!-- (|4, a, SQ2) -> (a1, SQ3) --> - <transition> - <from><PrimitiveLabel><String>|4</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>a1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - </transitions> + </transition> + <!-- (|4, a, SQ2) -> (a1, SQ3) --> + <transition> + <from> + <String>|4</String> + </from> + <input> + <Character>a</Character> + </input> + <pop> + <String>SQ2</String> + </pop> + <to> + <String>a1</String> + </to> + <push> + <String>SQ3</String> + </push> + </transition> + </transitions> </NPDA> diff --git a/examples2/automaton/NPDA2.xml b/examples2/automaton/NPDA2.xml index 2be699df2718e17f6429bf260aa99ba90d1e1f4f..34edaeb273f80a4d4d78b4976b0ce145734984c8 100644 --- a/examples2/automaton/NPDA2.xml +++ b/examples2/automaton/NPDA2.xml @@ -1,126 +1,187 @@ +<?xml version="1.0"?> <NPDA> - <states> - <PrimitiveLabel><String>q0</String></PrimitiveLabel> - <PrimitiveLabel><String>a1</String></PrimitiveLabel> - <PrimitiveLabel><String>b5</String></PrimitiveLabel> - <PrimitiveLabel><String>|6</String></PrimitiveLabel> - <PrimitiveLabel><String>|4</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>|</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>Z</String></PrimitiveLabel></LabeledSymbol> - </pushdownStoreAlphabet> - <initialState> - <PrimitiveLabel><String>q0</String></PrimitiveLabel> - </initialState> - <initialPushdownStoreSymbol> - <LabeledSymbol><PrimitiveLabel><String>Z</String></PrimitiveLabel></LabeledSymbol> - </initialPushdownStoreSymbol> - <finalStates> - <PrimitiveLabel><String>|4</String></PrimitiveLabel> - </finalStates> - <transitions> - <transition> - <from><PrimitiveLabel><String>q0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> + <states> + <String>q0</String> + <String>a1</String> + <String>b5</String> + <String>|6</String> + <String>|4</String> + </states> + <inputAlphabet> + <Character>a</Character> + <Character>b</Character> + <Character>|</Character> + </inputAlphabet> + <pushdownStoreAlphabet> + <String>SQ2</String> + <String>SQ3</String> + <String>Z</String> + </pushdownStoreAlphabet> + <initialState> + <String>q0</String> + </initialState> + <initialPushdownStoreSymbol> + <String>Z</String> + </initialPushdownStoreSymbol> + <finalStates> + <String>|4</String> + </finalStates> + <transitions> + <transition> + <from> + <String>q0</String> + </from> + <input> + <Character>a</Character> + </input> + <pop> </pop> - <to><PrimitiveLabel><String>a1</String></PrimitiveLabel></to> - <push> + <to> + <String>a1</String> + </to> + <push> </push> - </transition> - <transition> - <from><PrimitiveLabel><String>a1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> + </transition> + <transition> + <from> + <String>a1</String> + </from> + <input> + <Character>b</Character> + </input> + <pop> </pop> - <to><PrimitiveLabel><String>b5</String></PrimitiveLabel></to> - <push> + <to> + <String>b5</String> + </to> + <push> </push> - </transition> - <transition> - <from><PrimitiveLabel><String>a1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> + </transition> + <transition> + <from> + <String>a1</String> + </from> + <input> + <Character>a</Character> + </input> + <pop> </pop> - <to><PrimitiveLabel><String>a1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>b5</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>|</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - </pop> - <to><PrimitiveLabel><String>|6</String></PrimitiveLabel></to> - <push> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>|6</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> + <to> + <String>a1</String> + </to> + <push> + <String>SQ2</String> + </push> + </transition> + <transition> + <from> + <String>b5</String> + </from> + <input> + <Character>|</Character> + </input> + <pop> </pop> - <to><PrimitiveLabel><String>b5</String></PrimitiveLabel></to> - <push> + <to> + <String>|6</String> + </to> + <push> </push> - </transition> - <transition> - <from><PrimitiveLabel><String>|6</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> + </transition> + <transition> + <from> + <String>|6</String> + </from> + <input> + <Character>b</Character> + </input> + <pop> </pop> - <to><PrimitiveLabel><String>a1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> + <to> + <String>b5</String> + </to> + <push> </push> - </transition> - <transition> - <from><PrimitiveLabel><String>|6</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>|</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> + </transition> + <transition> + <from> + <String>|6</String> + </from> + <input> + <Character>a</Character> + </input> + <pop> </pop> - <to><PrimitiveLabel><String>|4</String></PrimitiveLabel></to> - <push> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>|4</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> + <to> + <String>a1</String> + </to> + <push> + <String>SQ3</String> + </push> + </transition> + <transition> + <from> + <String>|6</String> + </from> + <input> + <Character>|</Character> + </input> + <pop> </pop> - <to><PrimitiveLabel><String>b5</String></PrimitiveLabel></to> - <push> + <to> + <String>|4</String> + </to> + <push> </push> - </transition> - <transition> - <from><PrimitiveLabel><String>|4</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>|</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>|4</String></PrimitiveLabel></to> - <push> + </transition> + <transition> + <from> + <String>|4</String> + </from> + <input> + <Character>b</Character> + </input> + <pop> + <String>SQ2</String> + </pop> + <to> + <String>b5</String> + </to> + <push> </push> - </transition> - <transition> - <from><PrimitiveLabel><String>|4</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>SQ2</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>a1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>SQ3</String></PrimitiveLabel></LabeledSymbol> + </transition> + <transition> + <from> + <String>|4</String> + </from> + <input> + <Character>|</Character> + </input> + <pop> + <String>SQ3</String> + </pop> + <to> + <String>|4</String> + </to> + <push> </push> - </transition> - </transitions> + </transition> + <transition> + <from> + <String>|4</String> + </from> + <input> + <Character>a</Character> + </input> + <pop> + <String>SQ2</String> + </pop> + <to> + <String>a1</String> + </to> + <push> + <String>SQ3</String> + </push> + </transition> + </transitions> </NPDA> diff --git a/examples2/automaton/NPDA4.xml b/examples2/automaton/NPDA4.xml index 276ecb356d100d3d587790511ce3017596c205a9..607e5c06c9a690414c89256c78c9f2fcdb9ffed8 100644 --- a/examples2/automaton/NPDA4.xml +++ b/examples2/automaton/NPDA4.xml @@ -1,238 +1,334 @@ <?xml version="1.0"?> <NPDA> - <states> - <PrimitiveLabel><String>q</String></PrimitiveLabel> - <PrimitiveLabel><String>f</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><String>a2</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>b0</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>EOF</String></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>a2_2</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>b0_3</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>b0_4</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>Z0</String></PrimitiveLabel></LabeledSymbol> - </pushdownStoreAlphabet> - <initialState> - <PrimitiveLabel><String>q</String></PrimitiveLabel> - </initialState> - <initialPushdownStoreSymbol> - <LabeledSymbol><PrimitiveLabel><String>Z0</String></PrimitiveLabel></LabeledSymbol> - </initialPushdownStoreSymbol> - <finalStates> - <PrimitiveLabel><String>f</String></PrimitiveLabel> - </finalStates> - <transitions> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>a2</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> + <states> + <String>q</String> + <String>f</String> + </states> + <inputAlphabet> + <String>a2</String> + <String>b0</String> + <String>EOF</String> + </inputAlphabet> + <pushdownStoreAlphabet> + <String>a2_1</String> + <String>a2_2</String> + <String>b0_3</String> + <String>b0_4</String> + <String>Z0</String> + </pushdownStoreAlphabet> + <initialState> + <String>q</String> + </initialState> + <initialPushdownStoreSymbol> + <String>Z0</String> + </initialPushdownStoreSymbol> + <finalStates> + <String>f</String> + </finalStates> + <transitions> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>a2</String> + </input> + <pop> + <String>a2_1</String> + <String>a2_1</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>a2_1</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>a2</String> + </input> + <pop> + <String>a2_2</String> + <String>a2_1</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>a2_1</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>a2</String> + </input> + <pop> + <String>a2_1</String> + <String>a2_2</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>a2_1</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>a2</String> + </input> + <pop> + <String>a2_2</String> + <String>a2_2</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>a2_1</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>a2</String> + </input> + <pop> + <String>b0_4</String> + <String>b0_3</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>a2_2</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>b0</String> + </input> + <pop> + <String>Z0</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>b0_4</String> + <String>Z0</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>b0</String> + </input> + <pop> + <String>a2_1</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>b0_4</String> + <String>a2_1</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>b0</String> + </input> + <pop> + <String>a2_2</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>b0_4</String> + <String>a2_2</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>b0</String> + </input> + <pop> + <String>b0_3</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>b0_4</String> + <String>b0_3</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>b0</String> + </input> + <pop> + <String>b0_4</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>b0_4</String> + <String>b0_4</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>b0</String> + </input> + <pop> + <String>Z0</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>b0_3</String> + <String>Z0</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>b0</String> + </input> + <pop> + <String>a2_1</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>b0_3</String> + <String>a2_1</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>b0</String> + </input> + <pop> + <String>a2_2</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>b0_3</String> + <String>a2_2</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>b0</String> + </input> + <pop> + <String>b0_3</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>b0_3</String> + <String>b0_3</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>b0</String> + </input> + <pop> + <String>b0_4</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>b0_3</String> + <String>b0_4</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>EOF</String> + </input> + <pop> + <String>a2_1</String> + <String>Z0</String> + </pop> + <to> + <String>f</String> + </to> + <push> </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>a2</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>a2_2</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>EOF</String> + </input> + <pop> + <String>a2_2</String> + <String>Z0</String> + </pop> + <to> + <String>f</String> + </to> + <push> </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>a2</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>a2_2</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>a2</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>a2_2</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>a2_2</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - - - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>a2</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>b0_4</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>b0_3</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>a2_2</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - - - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>b0</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>Z0</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>b0_4</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>Z0</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>b0</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>b0_4</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>b0</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>a2_2</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>b0_4</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>a2_2</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>b0</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>b0_3</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>b0_4</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>b0_3</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>b0</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>b0_4</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>b0_4</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>b0_4</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>b0</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>Z0</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>b0_3</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>Z0</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>b0</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>b0_3</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>b0</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>a2_2</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>b0_3</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>a2_2</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>b0</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>b0_3</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>b0_3</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>b0_3</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>b0</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>b0_4</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>b0_3</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>b0_4</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - - - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>EOF</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>Z0</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>f</String></PrimitiveLabel></to> - <push> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>EOF</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>a2_2</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>Z0</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>f</String></PrimitiveLabel></to> - <push> - </push> - </transition> - </transitions> + </transition> + </transitions> </NPDA> diff --git a/examples2/automaton/NPDA5.xml b/examples2/automaton/NPDA5.xml index 98dcb9f81bea1acdc5611ffc805d515b81a9bb23..708276799bca316c35404bda10a1895bebe828ef 100644 --- a/examples2/automaton/NPDA5.xml +++ b/examples2/automaton/NPDA5.xml @@ -1,138 +1,186 @@ <?xml version="1.0"?> <NPDA> - <states> - <PrimitiveLabel><String>q</String></PrimitiveLabel> - <PrimitiveLabel><String>f</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><String>a2</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>b0</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>EOF</String></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>a2_2</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>b0_3</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>b0_4</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>Z0</String></PrimitiveLabel></LabeledSymbol> - </pushdownStoreAlphabet> - <initialState> - <PrimitiveLabel><String>q</String></PrimitiveLabel> - </initialState> - <initialPushdownStoreSymbol> - <LabeledSymbol><PrimitiveLabel><String>Z0</String></PrimitiveLabel></LabeledSymbol> - </initialPushdownStoreSymbol> - <finalStates> - <PrimitiveLabel><String>f</String></PrimitiveLabel> - </finalStates> - <transitions> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>a2</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> + <states> + <String>q</String> + <String>f</String> + </states> + <inputAlphabet> + <String>a2</String> + <String>b0</String> + <String>EOF</String> + </inputAlphabet> + <pushdownStoreAlphabet> + <String>a2_1</String> + <String>a2_2</String> + <String>b0_3</String> + <String>b0_4</String> + <String>Z0</String> + </pushdownStoreAlphabet> + <initialState> + <String>q</String> + </initialState> + <initialPushdownStoreSymbol> + <String>Z0</String> + </initialPushdownStoreSymbol> + <finalStates> + <String>f</String> + </finalStates> + <transitions> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>a2</String> + </input> + <pop> + <String>a2_1</String> + <String>a2_1</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>a2_1</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>a2</String> + </input> + <pop> + <String>a2_2</String> + <String>a2_1</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>a2_1</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>a2</String> + </input> + <pop> + <String>a2_1</String> + <String>a2_2</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>a2_1</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>a2</String> + </input> + <pop> + <String>a2_2</String> + <String>a2_2</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>a2_1</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>a2</String> + </input> + <pop> + <String>b0_4</String> + <String>b0_3</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>a2_2</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>b0</String> + </input> + <pop> </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>a2</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>a2_2</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>a2</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>a2_2</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>a2</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>a2_2</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>a2_2</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - - - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>a2</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>b0_4</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>b0_3</String></PrimitiveLabel></LabeledSymbol> + <to> + <String>q</String> + </to> + <push> + <String>b0_3</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>b0</String> + </input> + <pop> </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>a2_2</String></PrimitiveLabel></LabeledSymbol> + <to> + <String>q</String> + </to> + <push> + <String>b0_4</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>EOF</String> + </input> + <pop> + <String>a2_1</String> + <String>Z0</String> + </pop> + <to> + <String>f</String> + </to> + <push> </push> - </transition> - - - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>b0</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>b0_3</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>b0</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>b0_4</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - - - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>EOF</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>Z0</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>f</String></PrimitiveLabel></to> - <push> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>EOF</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>a2_2</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>Z0</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>f</String></PrimitiveLabel></to> - <push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>EOF</String> + </input> + <pop> + <String>a2_2</String> + <String>Z0</String> + </pop> + <to> + <String>f</String> + </to> + <push> </push> - </transition> - </transitions> + </transition> + </transitions> </NPDA> diff --git a/examples2/automaton/NPDA6.xml b/examples2/automaton/NPDA6.xml index a042c569847c15288da45a060cf0196fc789fee7..ff03515f028fde55a44fa91e54317e51bbfb690d 100644 --- a/examples2/automaton/NPDA6.xml +++ b/examples2/automaton/NPDA6.xml @@ -1,99 +1,131 @@ <?xml version="1.0"?> <NPDA> - <states> - <PrimitiveLabel><String>q</String></PrimitiveLabel> - <PrimitiveLabel><String>f</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><String>a2</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>b0</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>EOF</String></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>b0_2</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>b0_3</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>Z0</String></PrimitiveLabel></LabeledSymbol> - </pushdownStoreAlphabet> - <initialState> - <PrimitiveLabel><String>q</String></PrimitiveLabel> - </initialState> - <initialPushdownStoreSymbol> - <LabeledSymbol><PrimitiveLabel><String>Z0</String></PrimitiveLabel></LabeledSymbol> - </initialPushdownStoreSymbol> - <finalStates> - <PrimitiveLabel><String>f</String></PrimitiveLabel> - </finalStates> - <transitions> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>a2</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>b0_2</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>b0_3</String></PrimitiveLabel></LabeledSymbol> + <states> + <String>q</String> + <String>f</String> + </states> + <inputAlphabet> + <String>a2</String> + <String>b0</String> + <String>EOF</String> + </inputAlphabet> + <pushdownStoreAlphabet> + <String>a2_1</String> + <String>b0_2</String> + <String>b0_3</String> + <String>Z0</String> + </pushdownStoreAlphabet> + <initialState> + <String>q</String> + </initialState> + <initialPushdownStoreSymbol> + <String>Z0</String> + </initialPushdownStoreSymbol> + <finalStates> + <String>f</String> + </finalStates> + <transitions> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>a2</String> + </input> + <pop> + <String>b0_2</String> + <String>b0_3</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>a2_1</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>a2</String> + </input> + <pop> + <String>a2_1</String> + <String>b0_3</String> + </pop> + <to> + <String>q</String> + </to> + <push> + <String>a2_1</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>b0</String> + </input> + <pop> </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>a2</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>b0_3</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>a2_1</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - - - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>b0</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>b0_2</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>b0</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - </pop> - <to><PrimitiveLabel><String>q</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><String>b0_3</String></PrimitiveLabel></LabeledSymbol> - </push> - </transition> - - - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>EOF</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>b0_3</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>Z0</String></PrimitiveLabel></LabeledSymbol> + <to> + <String>q</String> + </to> + <push> + <String>b0_2</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>b0</String> + </input> + <pop> </pop> - <to><PrimitiveLabel><String>f</String></PrimitiveLabel></to> - <push> + <to> + <String>q</String> + </to> + <push> + <String>b0_3</String> + </push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>EOF</String> + </input> + <pop> + <String>b0_3</String> + <String>Z0</String> + </pop> + <to> + <String>f</String> + </to> + <push> </push> - </transition> - <transition> - <from><PrimitiveLabel><String>q</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><String>EOF</String></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><String>b0_2</String></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><String>Z0</String></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>f</String></PrimitiveLabel></to> - <push> + </transition> + <transition> + <from> + <String>q</String> + </from> + <input> + <String>EOF</String> + </input> + <pop> + <String>b0_2</String> + <String>Z0</String> + </pop> + <to> + <String>f</String> + </to> + <push> </push> - </transition> - </transitions> + </transition> + </transitions> </NPDA> diff --git a/examples2/automaton/NVPA1.xml b/examples2/automaton/NVPA1.xml index 1cbf94fe207d4319e4676c60b181a094669ae4c7..0bff982ea8be69a1c6f2c7449e13e441520514ab 100644 --- a/examples2/automaton/NVPA1.xml +++ b/examples2/automaton/NVPA1.xml @@ -1,64 +1,95 @@ +<?xml version="1.0"?> <VisiblyPushdownNPDA> - <states> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - </states> - <callInputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - </callInputAlphabet> - <returnInputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol> - </returnInputAlphabet> - <localInputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol> - </localInputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>s</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>⊥</Character></PrimitiveLabel></LabeledSymbol> - </pushdownStoreAlphabet> - <initialStates> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - </initialStates> - <bottomOfTheStackSymbol> - <LabeledSymbol><PrimitiveLabel><Character>⊥</Character></PrimitiveLabel></LabeledSymbol> - </bottomOfTheStackSymbol> - <finalStates> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - </finalStates> - <transitions> - <callTransition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>0</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><Character>s</Character></PrimitiveLabel></LabeledSymbol> - </push> - </callTransition> - <callTransition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><Character>s</Character></PrimitiveLabel></LabeledSymbol> - </push> - </callTransition> - <returnTransition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><Character>s</Character></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </returnTransition> - <localTransition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </localTransition> - <localTransition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>0</String></PrimitiveLabel></to> - </localTransition> - </transitions> + <states> + <String>0</String> + <String>1</String> + </states> + <callInputAlphabet> + <Character>a</Character> + </callInputAlphabet> + <returnInputAlphabet> + <Character>b</Character> + </returnInputAlphabet> + <localInputAlphabet> + <Character>c</Character> + </localInputAlphabet> + <pushdownStoreAlphabet> + <Character>s</Character> + <Character>⊥</Character> + </pushdownStoreAlphabet> + <initialStates> + <String>0</String> + </initialStates> + <bottomOfTheStackSymbol> + <Character>⊥</Character> + </bottomOfTheStackSymbol> + <finalStates> + <String>1</String> + </finalStates> + <transitions> + <callTransition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>0</String> + </to> + <push> + <Character>s</Character> + </push> + </callTransition> + <callTransition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>1</String> + </to> + <push> + <Character>s</Character> + </push> + </callTransition> + <returnTransition> + <from> + <String>1</String> + </from> + <input> + <Character>b</Character> + </input> + <pop> + <Character>s</Character> + </pop> + <to> + <String>1</String> + </to> + </returnTransition> + <localTransition> + <from> + <String>1</String> + </from> + <input> + <Character>c</Character> + </input> + <to> + <String>1</String> + </to> + </localTransition> + <localTransition> + <from> + <String>1</String> + </from> + <input> + <Character>c</Character> + </input> + <to> + <String>0</String> + </to> + </localTransition> + </transitions> </VisiblyPushdownNPDA> diff --git a/examples2/automaton/NVPA2.xml b/examples2/automaton/NVPA2.xml index 8ff3be5d44dd9e1e81b055f42b553b74ed30596b..23f6b34623c88d0af68944e8337c5d41da4522cf 100644 --- a/examples2/automaton/NVPA2.xml +++ b/examples2/automaton/NVPA2.xml @@ -1,69 +1,100 @@ +<?xml version="1.0"?> <VisiblyPushdownNPDA> - <states> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - </states> - <callInputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - </callInputAlphabet> - <returnInputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>d</Character></PrimitiveLabel></LabeledSymbol> - </returnInputAlphabet> - <localInputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol> - </localInputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>⊥</Character></PrimitiveLabel></LabeledSymbol> - </pushdownStoreAlphabet> - <initialStates> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - </initialStates> - <bottomOfTheStackSymbol> - <LabeledSymbol><PrimitiveLabel><Character>⊥</Character></PrimitiveLabel></LabeledSymbol> - </bottomOfTheStackSymbol> - <finalStates> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - </finalStates> - <transitions> - <callTransition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>0</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol> - </push> - </callTransition> - <localTransition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </localTransition> - <callTransition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol> - </push> - </callTransition> - <returnTransition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </returnTransition> - <returnTransition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>d</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </returnTransition> - </transitions> + <states> + <String>0</String> + <String>1</String> + </states> + <callInputAlphabet> + <Character>a</Character> + </callInputAlphabet> + <returnInputAlphabet> + <Character>b</Character> + <Character>d</Character> + </returnInputAlphabet> + <localInputAlphabet> + <Character>c</Character> + </localInputAlphabet> + <pushdownStoreAlphabet> + <Character>A</Character> + <Character>B</Character> + <Character>⊥</Character> + </pushdownStoreAlphabet> + <initialStates> + <String>0</String> + </initialStates> + <bottomOfTheStackSymbol> + <Character>⊥</Character> + </bottomOfTheStackSymbol> + <finalStates> + <String>1</String> + </finalStates> + <transitions> + <callTransition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>0</String> + </to> + <push> + <Character>A</Character> + </push> + </callTransition> + <localTransition> + <from> + <String>0</String> + </from> + <input> + <Character>c</Character> + </input> + <to> + <String>1</String> + </to> + </localTransition> + <callTransition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>1</String> + </to> + <push> + <Character>B</Character> + </push> + </callTransition> + <returnTransition> + <from> + <String>1</String> + </from> + <input> + <Character>b</Character> + </input> + <pop> + <Character>A</Character> + </pop> + <to> + <String>1</String> + </to> + </returnTransition> + <returnTransition> + <from> + <String>1</String> + </from> + <input> + <Character>d</Character> + </input> + <pop> + <Character>B</Character> + </pop> + <to> + <String>1</String> + </to> + </returnTransition> + </transitions> </VisiblyPushdownNPDA> diff --git a/examples2/automaton/NVPA3.xml b/examples2/automaton/NVPA3.xml index 9d46b8a5820f6561398b80b0073138c055988797..199d0cae139f8dcea0e236856309ce51810fbd90 100644 --- a/examples2/automaton/NVPA3.xml +++ b/examples2/automaton/NVPA3.xml @@ -1,72 +1,103 @@ +<?xml version="1.0"?> <VisiblyPushdownNPDA> - <states> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - <PrimitiveLabel><String>2</String></PrimitiveLabel> - </states> - <callInputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - </callInputAlphabet> - <returnInputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol> - </returnInputAlphabet> - <localInputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol> - </localInputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>#</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>⊥</Character></PrimitiveLabel></LabeledSymbol> - </pushdownStoreAlphabet> - <initialStates> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - </initialStates> - <bottomOfTheStackSymbol> - <LabeledSymbol><PrimitiveLabel><Character>⊥</Character></PrimitiveLabel></LabeledSymbol> - </bottomOfTheStackSymbol> - <finalStates> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - </finalStates> - <transitions> - <callTransition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><Character>#</Character></PrimitiveLabel></LabeledSymbol> - </push> - </callTransition> - <callTransition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - </push> - </callTransition> - <callTransition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>2</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - </push> - </callTransition> - <returnTransition> - <from><PrimitiveLabel><String>2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>2</String></PrimitiveLabel></to> - </returnTransition> - <returnTransition> - <from><PrimitiveLabel><String>2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><Character>#</Character></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>0</String></PrimitiveLabel></to> - </returnTransition> - </transitions> + <states> + <String>0</String> + <String>1</String> + <String>2</String> + </states> + <callInputAlphabet> + <Character>a</Character> + </callInputAlphabet> + <returnInputAlphabet> + <Character>c</Character> + </returnInputAlphabet> + <localInputAlphabet> + <Character>b</Character> + </localInputAlphabet> + <pushdownStoreAlphabet> + <Character>a</Character> + <Character>#</Character> + <Character>⊥</Character> + </pushdownStoreAlphabet> + <initialStates> + <String>0</String> + </initialStates> + <bottomOfTheStackSymbol> + <Character>⊥</Character> + </bottomOfTheStackSymbol> + <finalStates> + <String>0</String> + </finalStates> + <transitions> + <callTransition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>1</String> + </to> + <push> + <Character>#</Character> + </push> + </callTransition> + <callTransition> + <from> + <String>1</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>1</String> + </to> + <push> + <Character>a</Character> + </push> + </callTransition> + <callTransition> + <from> + <String>1</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>2</String> + </to> + <push> + <Character>a</Character> + </push> + </callTransition> + <returnTransition> + <from> + <String>2</String> + </from> + <input> + <Character>c</Character> + </input> + <pop> + <Character>a</Character> + </pop> + <to> + <String>2</String> + </to> + </returnTransition> + <returnTransition> + <from> + <String>2</String> + </from> + <input> + <Character>c</Character> + </input> + <pop> + <Character>#</Character> + </pop> + <to> + <String>0</String> + </to> + </returnTransition> + </transitions> </VisiblyPushdownNPDA> diff --git a/examples2/automaton/NVPA4.xml b/examples2/automaton/NVPA4.xml index 05245afc9ae7ec130e5c936c5aaa14a4c9f81fc3..5eef0257717a26e98b00aad39d001a6f0f11179c 100644 --- a/examples2/automaton/NVPA4.xml +++ b/examples2/automaton/NVPA4.xml @@ -1,274 +1,208 @@ <?xml version="1.0"?> <VisiblyPushdownNPDA> - <states> - <PrimitiveLabel><Integer>0</Integer></PrimitiveLabel> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - <PrimitiveLabel><Integer>2</Integer></PrimitiveLabel> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - <PrimitiveLabel><Integer>4</Integer></PrimitiveLabel> - <PrimitiveLabel><Integer>5</Integer></PrimitiveLabel> - <PrimitiveLabel><Integer>6</Integer></PrimitiveLabel> - </states> - <callInputAlphabet> - <LabeledSymbol> - <PrimitiveLabel><Character>a</Character></PrimitiveLabel> - </LabeledSymbol> - </callInputAlphabet> - <returnInputAlphabet> - <LabeledSymbol> - <PrimitiveLabel><Character>^</Character></PrimitiveLabel> - </LabeledSymbol> - </returnInputAlphabet> - <localInputAlphabet/> - <pushdownStoreAlphabet> - <LabeledSymbol> - <PrimitiveLabel><Character>A</Character></PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel><Character>B</Character></PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel><Character>C</Character></PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel><Character>D</Character></PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel><Character>E</Character></PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel><Character>F</Character></PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel><Character>T</Character></PrimitiveLabel> - </LabeledSymbol> - <BottomOfTheStackSymbol/> - </pushdownStoreAlphabet> - <initialStates> - <PrimitiveLabel><Integer>0</Integer></PrimitiveLabel> - </initialStates> - <bottomOfTheStackSymbol> - <BottomOfTheStackSymbol/> - </bottomOfTheStackSymbol> - <finalStates> - <PrimitiveLabel><Integer>6</Integer></PrimitiveLabel> - </finalStates> - <transitions> - <callTransition> - <from> - <PrimitiveLabel><Integer>0</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><Character>a</Character></PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <PrimitiveLabel><Integer>0</Integer></PrimitiveLabel> - </to> - <push> - <LabeledSymbol> - <PrimitiveLabel><Character>A</Character></PrimitiveLabel> - </LabeledSymbol> - </push> - </callTransition> - <callTransition> - <from> - <PrimitiveLabel><Integer>0</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><Character>a</Character></PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - </to> - <push> - <LabeledSymbol> - <PrimitiveLabel><Character>B</Character></PrimitiveLabel> - </LabeledSymbol> - </push> - </callTransition> - <callTransition> - <from> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><Character>a</Character></PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <PrimitiveLabel><Integer>2</Integer></PrimitiveLabel> - </to> - <push> - <LabeledSymbol> - <PrimitiveLabel><Character>C</Character></PrimitiveLabel> - </LabeledSymbol> - </push> - </callTransition> - <callTransition> - <from> - <PrimitiveLabel><Integer>2</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><Character>a</Character></PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <PrimitiveLabel><Integer>2</Integer></PrimitiveLabel> - </to> - <push> - <LabeledSymbol> - <PrimitiveLabel><Character>D</Character></PrimitiveLabel> - </LabeledSymbol> - </push> - </callTransition> - <callTransition> - <from> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><Character>a</Character></PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <PrimitiveLabel><Integer>4</Integer></PrimitiveLabel> - </to> - <push> - <LabeledSymbol> - <PrimitiveLabel><Character>E</Character></PrimitiveLabel> - </LabeledSymbol> - </push> - </callTransition> - <callTransition> - <from> - <PrimitiveLabel><Integer>4</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><Character>a</Character></PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <PrimitiveLabel><Integer>4</Integer></PrimitiveLabel> - </to> - <push> - <LabeledSymbol> - <PrimitiveLabel><Character>F</Character></PrimitiveLabel> - </LabeledSymbol> - </push> - </callTransition> - <returnTransition> - <from> - <PrimitiveLabel><Integer>0</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><Character>^</Character></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><Character>A</Character></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>0</Integer></PrimitiveLabel> - </to> - </returnTransition> - <returnTransition> - <from> - <PrimitiveLabel><Integer>2</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><Character>^</Character></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><Character>C</Character></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </to> - </returnTransition> - <returnTransition> - <from> - <PrimitiveLabel><Integer>2</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><Character>^</Character></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><Character>D</Character></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>2</Integer></PrimitiveLabel> - </to> - </returnTransition> - <returnTransition> - <from> - <PrimitiveLabel><Integer>4</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><Character>^</Character></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><Character>E</Character></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>5</Integer></PrimitiveLabel> - </to> - </returnTransition> - <returnTransition> - <from> - <PrimitiveLabel><Integer>4</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><Character>^</Character></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><Character>F</Character></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>4</Integer></PrimitiveLabel> - </to> - </returnTransition> - <returnTransition> - <from> - <PrimitiveLabel><Integer>5</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><Character>^</Character></PrimitiveLabel> - </LabeledSymbol> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><Character>B</Character></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>6</Integer></PrimitiveLabel> - </to> - </returnTransition> - </transitions> + <states> + <Integer>0</Integer> + <Integer>1</Integer> + <Integer>2</Integer> + <Integer>3</Integer> + <Integer>4</Integer> + <Integer>5</Integer> + <Integer>6</Integer> + </states> + <callInputAlphabet> + <Character>a</Character> + </callInputAlphabet> + <returnInputAlphabet> + <Character>^</Character> + </returnInputAlphabet> + <localInputAlphabet/> + <pushdownStoreAlphabet> + <Character>A</Character> + <Character>B</Character> + <Character>C</Character> + <Character>D</Character> + <Character>E</Character> + <Character>F</Character> + <Character>T</Character> + <BottomOfTheStackSymbol/> + </pushdownStoreAlphabet> + <initialStates> + <Integer>0</Integer> + </initialStates> + <bottomOfTheStackSymbol> + <BottomOfTheStackSymbol/> + </bottomOfTheStackSymbol> + <finalStates> + <Integer>6</Integer> + </finalStates> + <transitions> + <callTransition> + <from> + <Integer>0</Integer> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Integer>0</Integer> + </to> + <push> + <Character>A</Character> + </push> + </callTransition> + <callTransition> + <from> + <Integer>0</Integer> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Integer>1</Integer> + </to> + <push> + <Character>B</Character> + </push> + </callTransition> + <callTransition> + <from> + <Integer>1</Integer> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Integer>2</Integer> + </to> + <push> + <Character>C</Character> + </push> + </callTransition> + <callTransition> + <from> + <Integer>2</Integer> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Integer>2</Integer> + </to> + <push> + <Character>D</Character> + </push> + </callTransition> + <callTransition> + <from> + <Integer>3</Integer> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Integer>4</Integer> + </to> + <push> + <Character>E</Character> + </push> + </callTransition> + <callTransition> + <from> + <Integer>4</Integer> + </from> + <input> + <Character>a</Character> + </input> + <to> + <Integer>4</Integer> + </to> + <push> + <Character>F</Character> + </push> + </callTransition> + <returnTransition> + <from> + <Integer>0</Integer> + </from> + <input> + <Character>^</Character> + </input> + <pop> + <Character>A</Character> + </pop> + <to> + <Integer>0</Integer> + </to> + </returnTransition> + <returnTransition> + <from> + <Integer>2</Integer> + </from> + <input> + <Character>^</Character> + </input> + <pop> + <Character>C</Character> + </pop> + <to> + <Integer>3</Integer> + </to> + </returnTransition> + <returnTransition> + <from> + <Integer>2</Integer> + </from> + <input> + <Character>^</Character> + </input> + <pop> + <Character>D</Character> + </pop> + <to> + <Integer>2</Integer> + </to> + </returnTransition> + <returnTransition> + <from> + <Integer>4</Integer> + </from> + <input> + <Character>^</Character> + </input> + <pop> + <Character>E</Character> + </pop> + <to> + <Integer>5</Integer> + </to> + </returnTransition> + <returnTransition> + <from> + <Integer>4</Integer> + </from> + <input> + <Character>^</Character> + </input> + <pop> + <Character>F</Character> + </pop> + <to> + <Integer>4</Integer> + </to> + </returnTransition> + <returnTransition> + <from> + <Integer>5</Integer> + </from> + <input> + <Character>^</Character> + </input> + <pop> + <Character>B</Character> + </pop> + <to> + <Integer>6</Integer> + </to> + </returnTransition> + </transitions> </VisiblyPushdownNPDA> diff --git a/examples2/automaton/RHDPDA1.xml b/examples2/automaton/RHDPDA1.xml index 6c1b3407c51f9229faf9666a58e5ddddc5f51424..e03aa243b4a0146913ce8004c5e2576ee74e94ab 100644 --- a/examples2/automaton/RHDPDA1.xml +++ b/examples2/automaton/RHDPDA1.xml @@ -1,65 +1,96 @@ +<?xml version="1.0"?> <RealTimeHeightDeterministicNPDA> - <states> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>d</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>_</Character></PrimitiveLabel></LabeledSymbol> - </pushdownStoreAlphabet> - <initialStates> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - </initialStates> - <bottomOfTheStackSymbol> - <LabeledSymbol><PrimitiveLabel><Character>_</Character></PrimitiveLabel></LabeledSymbol> - </bottomOfTheStackSymbol> - <finalStates> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - </finalStates> - <transitions> - <callTransition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>0</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol> - </push> - </callTransition> - <localTransition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </localTransition> - <callTransition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol> - </push> - </callTransition> - <returnTransition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </returnTransition> - <returnTransition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>d</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </returnTransition> - </transitions> + <states> + <String>0</String> + <String>1</String> + </states> + <inputAlphabet> + <Character>a</Character> + <Character>b</Character> + <Character>c</Character> + <Character>d</Character> + </inputAlphabet> + <pushdownStoreAlphabet> + <Character>A</Character> + <Character>B</Character> + <Character>_</Character> + </pushdownStoreAlphabet> + <initialStates> + <String>0</String> + </initialStates> + <bottomOfTheStackSymbol> + <Character>_</Character> + </bottomOfTheStackSymbol> + <finalStates> + <String>1</String> + </finalStates> + <transitions> + <callTransition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>0</String> + </to> + <push> + <Character>A</Character> + </push> + </callTransition> + <localTransition> + <from> + <String>0</String> + </from> + <input> + <Character>c</Character> + </input> + <to> + <String>1</String> + </to> + </localTransition> + <callTransition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>1</String> + </to> + <push> + <Character>B</Character> + </push> + </callTransition> + <returnTransition> + <from> + <String>1</String> + </from> + <input> + <Character>b</Character> + </input> + <pop> + <Character>A</Character> + </pop> + <to> + <String>1</String> + </to> + </returnTransition> + <returnTransition> + <from> + <String>1</String> + </from> + <input> + <Character>d</Character> + </input> + <pop> + <Character>B</Character> + </pop> + <to> + <String>1</String> + </to> + </returnTransition> + </transitions> </RealTimeHeightDeterministicNPDA> diff --git a/examples2/automaton/RHDPDA2.xml b/examples2/automaton/RHDPDA2.xml index 36e4305400cc521eaddbb2a63d9efe438ba63f71..fc5e7923e973782a92eb3983d796baa00c8fe3e9 100644 --- a/examples2/automaton/RHDPDA2.xml +++ b/examples2/automaton/RHDPDA2.xml @@ -1,96 +1,163 @@ +<?xml version="1.0"?> <RealTimeHeightDeterministicNPDA> - <states> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - <PrimitiveLabel><String>2</String></PrimitiveLabel> - <PrimitiveLabel><String>3</String></PrimitiveLabel> - <PrimitiveLabel><String>ERR</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>x</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>_</Character></PrimitiveLabel></LabeledSymbol> - </pushdownStoreAlphabet> - <initialStates> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - </initialStates> - <bottomOfTheStackSymbol> - <LabeledSymbol><PrimitiveLabel><Character>_</Character></PrimitiveLabel></LabeledSymbol> - </bottomOfTheStackSymbol> - <finalStates> - <PrimitiveLabel><String>3</String></PrimitiveLabel> - </finalStates> - <transitions> - <callTransition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><Character>x</Character></PrimitiveLabel></LabeledSymbol> - </push> - </callTransition> - <localTransition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>3</String></PrimitiveLabel></to> - </localTransition> - <callTransition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - </push> - </callTransition> - <localTransition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>2</String></PrimitiveLabel></to> - </localTransition> - <returnTransition> - <from><PrimitiveLabel><String>2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>2</String></PrimitiveLabel></to> - </returnTransition> - <returnTransition> - <from><PrimitiveLabel><String>2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><Character>x</Character></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>3</String></PrimitiveLabel></to> - </returnTransition> - <localTransition> - <from><PrimitiveLabel><String>2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>ERR</String></PrimitiveLabel></to> - </localTransition> - <localTransition> - <from><PrimitiveLabel><String>3</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>ERR</String></PrimitiveLabel></to> - </localTransition> - <localTransition> - <from><PrimitiveLabel><String>3</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>ERR</String></PrimitiveLabel></to> - </localTransition> - <localTransition> - <from><PrimitiveLabel><String>ERR</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>ERR</String></PrimitiveLabel></to> - </localTransition> - <localTransition> - <from><PrimitiveLabel><String>ERR</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>ERR</String></PrimitiveLabel></to> - </localTransition> - </transitions> + <states> + <String>0</String> + <String>1</String> + <String>2</String> + <String>3</String> + <String>ERR</String> + </states> + <inputAlphabet> + <Character>a</Character> + <Character>b</Character> + </inputAlphabet> + <pushdownStoreAlphabet> + <Character>a</Character> + <Character>x</Character> + <Character>_</Character> + </pushdownStoreAlphabet> + <initialStates> + <String>0</String> + </initialStates> + <bottomOfTheStackSymbol> + <Character>_</Character> + </bottomOfTheStackSymbol> + <finalStates> + <String>3</String> + </finalStates> + <transitions> + <callTransition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>1</String> + </to> + <push> + <Character>x</Character> + </push> + </callTransition> + <localTransition> + <from> + <String>0</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>3</String> + </to> + </localTransition> + <callTransition> + <from> + <String>1</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>1</String> + </to> + <push> + <Character>a</Character> + </push> + </callTransition> + <localTransition> + <from> + <String>1</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>2</String> + </to> + </localTransition> + <returnTransition> + <from> + <String>2</String> + </from> + <input> + <Character>a</Character> + </input> + <pop> + <Character>a</Character> + </pop> + <to> + <String>2</String> + </to> + </returnTransition> + <returnTransition> + <from> + <String>2</String> + </from> + <input> + <Character>a</Character> + </input> + <pop> + <Character>x</Character> + </pop> + <to> + <String>3</String> + </to> + </returnTransition> + <localTransition> + <from> + <String>2</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>ERR</String> + </to> + </localTransition> + <localTransition> + <from> + <String>3</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>ERR</String> + </to> + </localTransition> + <localTransition> + <from> + <String>3</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>ERR</String> + </to> + </localTransition> + <localTransition> + <from> + <String>ERR</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>ERR</String> + </to> + </localTransition> + <localTransition> + <from> + <String>ERR</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>ERR</String> + </to> + </localTransition> + </transitions> </RealTimeHeightDeterministicNPDA> diff --git a/examples2/automaton/RHDPDA3.xml b/examples2/automaton/RHDPDA3.xml index 78c0d048cc6dcb0a8b9acbd4753c010e51b3cbd8..d1d4f69d45440be6147c4f7ff2fe0979e1426d82 100644 --- a/examples2/automaton/RHDPDA3.xml +++ b/examples2/automaton/RHDPDA3.xml @@ -1,56 +1,81 @@ +<?xml version="1.0"?> <RealTimeHeightDeterministicNPDA> - <states> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>_</Character></PrimitiveLabel></LabeledSymbol> - </pushdownStoreAlphabet> - <initialStates> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - </initialStates> - <bottomOfTheStackSymbol> - <LabeledSymbol><PrimitiveLabel><Character>_</Character></PrimitiveLabel></LabeledSymbol> - </bottomOfTheStackSymbol> - <finalStates> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - </finalStates> - <transitions> - <callTransition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - </push> - </callTransition> - <callTransition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>0</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - </push> - </callTransition> - <returnTransition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>0</String></PrimitiveLabel></to> - </returnTransition> - <returnTransition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </returnTransition> - </transitions> + <states> + <String>0</String> + <String>1</String> + </states> + <inputAlphabet> + <Character>a</Character> + </inputAlphabet> + <pushdownStoreAlphabet> + <Character>a</Character> + <Character>_</Character> + </pushdownStoreAlphabet> + <initialStates> + <String>0</String> + </initialStates> + <bottomOfTheStackSymbol> + <Character>_</Character> + </bottomOfTheStackSymbol> + <finalStates> + <String>0</String> + </finalStates> + <transitions> + <callTransition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>1</String> + </to> + <push> + <Character>a</Character> + </push> + </callTransition> + <callTransition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>0</String> + </to> + <push> + <Character>a</Character> + </push> + </callTransition> + <returnTransition> + <from> + <String>1</String> + </from> + <input> + <Character>a</Character> + </input> + <pop> + <Character>a</Character> + </pop> + <to> + <String>0</String> + </to> + </returnTransition> + <returnTransition> + <from> + <String>1</String> + </from> + <input> + <Character>a</Character> + </input> + <pop> + <Character>a</Character> + </pop> + <to> + <String>1</String> + </to> + </returnTransition> + </transitions> </RealTimeHeightDeterministicNPDA> diff --git a/examples2/automaton/RHDPDA4.xml b/examples2/automaton/RHDPDA4.xml index ffab7238fa0562447ee92e56a7c1d2811f3e6159..1d7548821cd63f2272e216c862bd196b43dc8756 100644 --- a/examples2/automaton/RHDPDA4.xml +++ b/examples2/automaton/RHDPDA4.xml @@ -1,40 +1,53 @@ +<?xml version="1.0"?> <RealTimeHeightDeterministicNPDA> - <states> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>_</Character></PrimitiveLabel></LabeledSymbol> - </pushdownStoreAlphabet> - <initialStates> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - </initialStates> - <bottomOfTheStackSymbol> - <LabeledSymbol><PrimitiveLabel><Character>_</Character></PrimitiveLabel></LabeledSymbol> - </bottomOfTheStackSymbol> - <finalStates> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - </finalStates> - <transitions> - <callTransition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - </push> - </callTransition> - <returnTransition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>0</String></PrimitiveLabel></to> - </returnTransition> - </transitions> + <states> + <String>0</String> + <String>1</String> + </states> + <inputAlphabet> + <Character>a</Character> + </inputAlphabet> + <pushdownStoreAlphabet> + <Character>a</Character> + <Character>_</Character> + </pushdownStoreAlphabet> + <initialStates> + <String>0</String> + </initialStates> + <bottomOfTheStackSymbol> + <Character>_</Character> + </bottomOfTheStackSymbol> + <finalStates> + <String>0</String> + </finalStates> + <transitions> + <callTransition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>1</String> + </to> + <push> + <Character>a</Character> + </push> + </callTransition> + <returnTransition> + <from> + <String>1</String> + </from> + <input> + <Character>a</Character> + </input> + <pop> + <Character>a</Character> + </pop> + <to> + <String>0</String> + </to> + </returnTransition> + </transitions> </RealTimeHeightDeterministicNPDA> diff --git a/examples2/automaton/RHDPDA5.xml b/examples2/automaton/RHDPDA5.xml index c8a98feb625e43be21f0656db3c920a0583bb714..a5c7cda4a31e2b8859ece661d7c8eddefa0e11a9 100644 --- a/examples2/automaton/RHDPDA5.xml +++ b/examples2/automaton/RHDPDA5.xml @@ -1,86 +1,70 @@ <?xml version="1.0"?> <RealTimeHeightDeterministicNPDA> - <states> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - <PrimitiveLabel><Integer>2</Integer></PrimitiveLabel> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol> - <PrimitiveLabel><String>a</String></PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel><String>b</String></PrimitiveLabel> - </LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol> - <PrimitiveLabel><String>X</String></PrimitiveLabel> - </LabeledSymbol> - <LabeledSymbol> - <PrimitiveLabel><String>Y</String></PrimitiveLabel> - </LabeledSymbol> - <BottomOfTheStackSymbol/> - </pushdownStoreAlphabet> - <initialStates> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - </initialStates> - <bottomOfTheStackSymbol> - <BottomOfTheStackSymbol/> - </bottomOfTheStackSymbol> - <finalStates> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </finalStates> - <transitions> - <callTransition> - <from> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - </from> - <input> - <LabeledSymbol> - <PrimitiveLabel><String>a</String></PrimitiveLabel> - </LabeledSymbol> - </input> - <to> - <PrimitiveLabel><Integer>2</Integer></PrimitiveLabel> - </to> - <push> - <LabeledSymbol> - <PrimitiveLabel><String>X</String></PrimitiveLabel> - </LabeledSymbol> - </push> - </callTransition> - <callTransition> - <from> - <PrimitiveLabel><Integer>2</Integer></PrimitiveLabel> - </from> - <input> - <epsilon/> - </input> - <to> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </to> - <push> - <LabeledSymbol> - <PrimitiveLabel><String>X</String></PrimitiveLabel> - </LabeledSymbol> - </push> - </callTransition> - <returnTransition> - <from> - <PrimitiveLabel><Integer>3</Integer></PrimitiveLabel> - </from> - <input> - <epsilon/> - </input> - <pop> - <LabeledSymbol> - <PrimitiveLabel><String>Y</String></PrimitiveLabel> - </LabeledSymbol> - </pop> - <to> - <PrimitiveLabel><Integer>1</Integer></PrimitiveLabel> - </to> - </returnTransition> - </transitions> + <states> + <Integer>1</Integer> + <Integer>2</Integer> + <Integer>3</Integer> + </states> + <inputAlphabet> + <String>a</String> + <String>b</String> + </inputAlphabet> + <pushdownStoreAlphabet> + <String>X</String> + <String>Y</String> + <BottomOfTheStackSymbol/> + </pushdownStoreAlphabet> + <initialStates> + <Integer>1</Integer> + </initialStates> + <bottomOfTheStackSymbol> + <BottomOfTheStackSymbol/> + </bottomOfTheStackSymbol> + <finalStates> + <Integer>3</Integer> + </finalStates> + <transitions> + <callTransition> + <from> + <Integer>1</Integer> + </from> + <input> + <String>a</String> + </input> + <to> + <Integer>2</Integer> + </to> + <push> + <String>X</String> + </push> + </callTransition> + <callTransition> + <from> + <Integer>2</Integer> + </from> + <input> + <epsilon/> + </input> + <to> + <Integer>3</Integer> + </to> + <push> + <String>X</String> + </push> + </callTransition> + <returnTransition> + <from> + <Integer>3</Integer> + </from> + <input> + <epsilon/> + </input> + <pop> + <String>Y</String> + </pop> + <to> + <Integer>1</Integer> + </to> + </returnTransition> + </transitions> </RealTimeHeightDeterministicNPDA> diff --git a/examples2/automaton/RHDPDA6.xml b/examples2/automaton/RHDPDA6.xml index 9963f8d8fdcb62710b523355c6da620ec4849e6e..c78e9c62b06346577bc47f7d95532de78bceb146 100644 --- a/examples2/automaton/RHDPDA6.xml +++ b/examples2/automaton/RHDPDA6.xml @@ -1,64 +1,95 @@ +<?xml version="1.0"?> <RealTimeHeightDeterministicNPDA> - <states> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>d</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <pushdownStoreAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>_</Character></PrimitiveLabel></LabeledSymbol> - </pushdownStoreAlphabet> - <initialStates> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - </initialStates> - <bottomOfTheStackSymbol> - <LabeledSymbol><PrimitiveLabel><Character>_</Character></PrimitiveLabel></LabeledSymbol> - </bottomOfTheStackSymbol> - <finalStates> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - </finalStates> - <transitions> - <callTransition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>0</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol> - </push> - </callTransition> - <localTransition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </localTransition> - <callTransition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - <push> - <LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol> - </push> - </callTransition> - <returnTransition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </returnTransition> - <returnTransition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>d</Character></PrimitiveLabel></LabeledSymbol></input> - <pop> - <LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol> - </pop> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </returnTransition> - </transitions> + <states> + <String>0</String> + <String>1</String> + </states> + <inputAlphabet> + <Character>a</Character> + <Character>c</Character> + <Character>d</Character> + </inputAlphabet> + <pushdownStoreAlphabet> + <Character>A</Character> + <Character>B</Character> + <Character>_</Character> + </pushdownStoreAlphabet> + <initialStates> + <String>0</String> + </initialStates> + <bottomOfTheStackSymbol> + <Character>_</Character> + </bottomOfTheStackSymbol> + <finalStates> + <String>1</String> + </finalStates> + <transitions> + <callTransition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>0</String> + </to> + <push> + <Character>A</Character> + </push> + </callTransition> + <localTransition> + <from> + <String>0</String> + </from> + <input> + <Character>c</Character> + </input> + <to> + <String>1</String> + </to> + </localTransition> + <callTransition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>1</String> + </to> + <push> + <Character>B</Character> + </push> + </callTransition> + <returnTransition> + <from> + <String>1</String> + </from> + <input> + <Character>a</Character> + </input> + <pop> + <Character>A</Character> + </pop> + <to> + <String>1</String> + </to> + </returnTransition> + <returnTransition> + <from> + <String>1</String> + </from> + <input> + <Character>d</Character> + </input> + <pop> + <Character>B</Character> + </pop> + <to> + <String>1</String> + </to> + </returnTransition> + </transitions> </RealTimeHeightDeterministicNPDA> diff --git a/examples2/automaton/TM1.xml b/examples2/automaton/TM1.xml index 125013344ba76151825f8e013a352617f9bf56df..a12f183da3a88402d7a412ad8a05bd57a92b2c84 100644 --- a/examples2/automaton/TM1.xml +++ b/examples2/automaton/TM1.xml @@ -1,53 +1,88 @@ +<?xml version="1.0"?> <OneTapeDTM> - <states> - <PrimitiveLabel><String>a1</String></PrimitiveLabel> - <PrimitiveLabel><String>a2</String></PrimitiveLabel> - <PrimitiveLabel><String>a3</String></PrimitiveLabel> - <PrimitiveLabel><String>a4</String></PrimitiveLabel> - </states> - <tapeAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol> - </tapeAlphabet> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <blankSymbol><LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol></blankSymbol> - <initialState> - <PrimitiveLabel><String>a1</String></PrimitiveLabel> - </initialState> - <finalStates> + <states> + <String>a1</String> + <String>a2</String> + <String>a3</String> + <String>a4</String> + </states> + <tapeAlphabet> + <Character>0</Character> + <Character>1</Character> + <Character>B</Character> + </tapeAlphabet> + <inputAlphabet> + <Character>0</Character> + <Character>1</Character> + </inputAlphabet> + <blankSymbol> + <Character>B</Character> + </blankSymbol> + <initialState> + <String>a1</String> + </initialState> + <finalStates> </finalStates> - <transitions> - <transition> - <from><PrimitiveLabel><String>a1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>a2</String></PrimitiveLabel></to> - <output><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol></output> - <shift>right</shift> - </transition> - <transition> - <from><PrimitiveLabel><String>a2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>a3</String></PrimitiveLabel></to> - <output><LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol></output> - <shift>right</shift> - </transition> - <transition> - <from><PrimitiveLabel><String>a3</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>a4</String></PrimitiveLabel></to> - <output><LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol></output> - <shift>right</shift> - </transition> - <transition> - <from><PrimitiveLabel><String>a4</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>a1</String></PrimitiveLabel></to> - <output><LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol></output> - <shift>right</shift> - </transition> - </transitions> + <transitions> + <transition> + <from> + <String>a1</String> + </from> + <input> + <Character>B</Character> + </input> + <to> + <String>a2</String> + </to> + <output> + <Character>0</Character> + </output> + <shift>right</shift> + </transition> + <transition> + <from> + <String>a2</String> + </from> + <input> + <Character>B</Character> + </input> + <to> + <String>a3</String> + </to> + <output> + <Character>B</Character> + </output> + <shift>right</shift> + </transition> + <transition> + <from> + <String>a3</String> + </from> + <input> + <Character>B</Character> + </input> + <to> + <String>a4</String> + </to> + <output> + <Character>1</Character> + </output> + <shift>right</shift> + </transition> + <transition> + <from> + <String>a4</String> + </from> + <input> + <Character>B</Character> + </input> + <to> + <String>a1</String> + </to> + <output> + <Character>B</Character> + </output> + <shift>right</shift> + </transition> + </transitions> </OneTapeDTM> diff --git a/examples2/automaton/TM2.xml b/examples2/automaton/TM2.xml index 90141af90a646f959e558e59689c1a23fa36c97e..c834024477b11fef2664937ed17e47f714882473 100644 --- a/examples2/automaton/TM2.xml +++ b/examples2/automaton/TM2.xml @@ -1,99 +1,182 @@ +<?xml version="1.0"?> <OneTapeDTM> - <states> - <PrimitiveLabel><String>q0</String></PrimitiveLabel> - <PrimitiveLabel><String>q1</String></PrimitiveLabel> - <PrimitiveLabel><String>q2</String></PrimitiveLabel> - <PrimitiveLabel><String>q3</String></PrimitiveLabel> - <PrimitiveLabel><String>q4</String></PrimitiveLabel> - </states> - <tapeAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>X</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>Y</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol> - </tapeAlphabet> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <blankSymbol><LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol></blankSymbol> - <initialState> - <PrimitiveLabel><String>q0</String></PrimitiveLabel> - </initialState> - <finalStates> - <PrimitiveLabel><String>q4</String></PrimitiveLabel> - </finalStates> - <transitions> - <transition> - <from><PrimitiveLabel><String>q0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>q1</String></PrimitiveLabel></to> - <output><LabeledSymbol><PrimitiveLabel><Character>X</Character></PrimitiveLabel></LabeledSymbol></output> - <shift>right</shift> - </transition> - <transition> - <from><PrimitiveLabel><String>q1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>q1</String></PrimitiveLabel></to> - <output><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol></output> - <shift>right</shift> - </transition> - <transition> - <from><PrimitiveLabel><String>q1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>Y</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>q1</String></PrimitiveLabel></to> - <output><LabeledSymbol><PrimitiveLabel><Character>Y</Character></PrimitiveLabel></LabeledSymbol></output> - <shift>right</shift> - </transition> - <transition> - <from><PrimitiveLabel><String>q1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>q2</String></PrimitiveLabel></to> - <output><LabeledSymbol><PrimitiveLabel><Character>Y</Character></PrimitiveLabel></LabeledSymbol></output> - <shift>left</shift> - </transition> - <transition> - <from><PrimitiveLabel><String>q2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>Y</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>q2</String></PrimitiveLabel></to> - <output><LabeledSymbol><PrimitiveLabel><Character>Y</Character></PrimitiveLabel></LabeledSymbol></output> - <shift>left</shift> - </transition> - <transition> - <from><PrimitiveLabel><String>q2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>q2</String></PrimitiveLabel></to> - <output><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol></output> - <shift>left</shift> - </transition> - <transition> - <from><PrimitiveLabel><String>q2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>X</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>q0</String></PrimitiveLabel></to> - <output><LabeledSymbol><PrimitiveLabel><Character>X</Character></PrimitiveLabel></LabeledSymbol></output> - <shift>right</shift> - </transition> - <transition> - <from><PrimitiveLabel><String>q0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>Y</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>q3</String></PrimitiveLabel></to> - <output><LabeledSymbol><PrimitiveLabel><Character>Y</Character></PrimitiveLabel></LabeledSymbol></output> - <shift>right</shift> - </transition> - <transition> - <from><PrimitiveLabel><String>q3</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>Y</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>q3</String></PrimitiveLabel></to> - <output><LabeledSymbol><PrimitiveLabel><Character>Y</Character></PrimitiveLabel></LabeledSymbol></output> - <shift>right</shift> - </transition> - <transition> - <from><PrimitiveLabel><String>q3</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>q4</String></PrimitiveLabel></to> - <output><LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol></output> - <shift>right</shift> - </transition> - </transitions> + <states> + <String>q0</String> + <String>q1</String> + <String>q2</String> + <String>q3</String> + <String>q4</String> + </states> + <tapeAlphabet> + <Character>0</Character> + <Character>1</Character> + <Character>X</Character> + <Character>Y</Character> + <Character>B</Character> + </tapeAlphabet> + <inputAlphabet> + <Character>0</Character> + <Character>1</Character> + </inputAlphabet> + <blankSymbol> + <Character>B</Character> + </blankSymbol> + <initialState> + <String>q0</String> + </initialState> + <finalStates> + <String>q4</String> + </finalStates> + <transitions> + <transition> + <from> + <String>q0</String> + </from> + <input> + <Character>0</Character> + </input> + <to> + <String>q1</String> + </to> + <output> + <Character>X</Character> + </output> + <shift>right</shift> + </transition> + <transition> + <from> + <String>q1</String> + </from> + <input> + <Character>0</Character> + </input> + <to> + <String>q1</String> + </to> + <output> + <Character>0</Character> + </output> + <shift>right</shift> + </transition> + <transition> + <from> + <String>q1</String> + </from> + <input> + <Character>Y</Character> + </input> + <to> + <String>q1</String> + </to> + <output> + <Character>Y</Character> + </output> + <shift>right</shift> + </transition> + <transition> + <from> + <String>q1</String> + </from> + <input> + <Character>1</Character> + </input> + <to> + <String>q2</String> + </to> + <output> + <Character>Y</Character> + </output> + <shift>left</shift> + </transition> + <transition> + <from> + <String>q2</String> + </from> + <input> + <Character>Y</Character> + </input> + <to> + <String>q2</String> + </to> + <output> + <Character>Y</Character> + </output> + <shift>left</shift> + </transition> + <transition> + <from> + <String>q2</String> + </from> + <input> + <Character>0</Character> + </input> + <to> + <String>q2</String> + </to> + <output> + <Character>0</Character> + </output> + <shift>left</shift> + </transition> + <transition> + <from> + <String>q2</String> + </from> + <input> + <Character>X</Character> + </input> + <to> + <String>q0</String> + </to> + <output> + <Character>X</Character> + </output> + <shift>right</shift> + </transition> + <transition> + <from> + <String>q0</String> + </from> + <input> + <Character>Y</Character> + </input> + <to> + <String>q3</String> + </to> + <output> + <Character>Y</Character> + </output> + <shift>right</shift> + </transition> + <transition> + <from> + <String>q3</String> + </from> + <input> + <Character>Y</Character> + </input> + <to> + <String>q3</String> + </to> + <output> + <Character>Y</Character> + </output> + <shift>right</shift> + </transition> + <transition> + <from> + <String>q3</String> + </from> + <input> + <Character>B</Character> + </input> + <to> + <String>q4</String> + </to> + <output> + <Character>B</Character> + </output> + <shift>right</shift> + </transition> + </transitions> </OneTapeDTM> diff --git a/examples2/automaton/TM3.xml b/examples2/automaton/TM3.xml index 191ab7b657684949b98f1cf4d187f7b4093b55df..852d9f28d69ddc007702778f6e8170ca4d585f36 100644 --- a/examples2/automaton/TM3.xml +++ b/examples2/automaton/TM3.xml @@ -1,44 +1,71 @@ +<?xml version="1.0"?> <OneTapeDTM> - <states> - <PrimitiveLabel><String>a1</String></PrimitiveLabel> - <PrimitiveLabel><String>a2</String></PrimitiveLabel> - </states> - <tapeAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol> - </tapeAlphabet> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <blankSymbol><LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol></blankSymbol> - <initialState> - <PrimitiveLabel><String>a1</String></PrimitiveLabel> - </initialState> - <finalStates> + <states> + <String>a1</String> + <String>a2</String> + </states> + <tapeAlphabet> + <Character>0</Character> + <Character>1</Character> + <Character>B</Character> + </tapeAlphabet> + <inputAlphabet> + <Character>0</Character> + <Character>1</Character> + </inputAlphabet> + <blankSymbol> + <Character>B</Character> + </blankSymbol> + <initialState> + <String>a1</String> + </initialState> + <finalStates> </finalStates> - <transitions> - <transition> - <from><PrimitiveLabel><String>a1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>a2</String></PrimitiveLabel></to> - <output><LabeledSymbol><PrimitiveLabel><Character>0</Character></PrimitiveLabel></LabeledSymbol></output> - <shift>right</shift> - </transition> - <transition> - <from><PrimitiveLabel><String>a2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>a1</String></PrimitiveLabel></to> - <output><LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol></output> - <shift>left</shift> - </transition> - <transition> - <from><PrimitiveLabel><String>a2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>a2</String></PrimitiveLabel></to> - <output><LabeledSymbol><PrimitiveLabel><Character>1</Character></PrimitiveLabel></LabeledSymbol></output> - <shift>none</shift> - </transition> - </transitions> + <transitions> + <transition> + <from> + <String>a1</String> + </from> + <input> + <Character>0</Character> + </input> + <to> + <String>a2</String> + </to> + <output> + <Character>0</Character> + </output> + <shift>right</shift> + </transition> + <transition> + <from> + <String>a2</String> + </from> + <input> + <Character>1</Character> + </input> + <to> + <String>a1</String> + </to> + <output> + <Character>1</Character> + </output> + <shift>left</shift> + </transition> + <transition> + <from> + <String>a2</String> + </from> + <input> + <Character>B</Character> + </input> + <to> + <String>a2</String> + </to> + <output> + <Character>1</Character> + </output> + <shift>none</shift> + </transition> + </transitions> </OneTapeDTM> diff --git a/examples2/automaton/aconversion.test.1.xml b/examples2/automaton/aconversion.test.1.xml index 8430fb9f1f32a7077891915c9c3002ff514cad17..88d1f6f17b1edbc3c66defa1faf31cfafd0f68cd 100644 --- a/examples2/automaton/aconversion.test.1.xml +++ b/examples2/automaton/aconversion.test.1.xml @@ -1,59 +1,108 @@ +<?xml version="1.0"?> <DFA> - <states> - <PrimitiveLabel><String>one</String></PrimitiveLabel> - <PrimitiveLabel><String>two</String></PrimitiveLabel> - <PrimitiveLabel><String>three</String></PrimitiveLabel> - <PrimitiveLabel><String>four</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Integer>0</Integer></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Integer>1</Integer></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <initialState> - <PrimitiveLabel><String>one</String></PrimitiveLabel> - </initialState> - <finalStates> + <states> + <String>one</String> + <String>two</String> + <String>three</String> + <String>four</String> + </states> + <inputAlphabet> + <Integer>0</Integer> + <Integer>1</Integer> + </inputAlphabet> + <initialState> + <String>one</String> + </initialState> + <finalStates> </finalStates> - <transitions> - <transition> - <from><PrimitiveLabel><String>four</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>1</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>four</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>four</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>0</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>one</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>one</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>0</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>two</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>one</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>1</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>one</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>three</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>0</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>four</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>three</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>1</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>three</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>two</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>0</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>three</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>two</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Integer>1</Integer></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>two</String></PrimitiveLabel></to> - </transition> - </transitions> + <transitions> + <transition> + <from> + <String>four</String> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <String>four</String> + </to> + </transition> + <transition> + <from> + <String>four</String> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <String>one</String> + </to> + </transition> + <transition> + <from> + <String>one</String> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <String>two</String> + </to> + </transition> + <transition> + <from> + <String>one</String> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <String>one</String> + </to> + </transition> + <transition> + <from> + <String>three</String> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <String>four</String> + </to> + </transition> + <transition> + <from> + <String>three</String> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <String>three</String> + </to> + </transition> + <transition> + <from> + <String>two</String> + </from> + <input> + <Integer>0</Integer> + </input> + <to> + <String>three</String> + </to> + </transition> + <transition> + <from> + <String>two</String> + </from> + <input> + <Integer>1</Integer> + </input> + <to> + <String>two</String> + </to> + </transition> + </transitions> </DFA> diff --git a/examples2/automaton/aconversion.test.2.xml b/examples2/automaton/aconversion.test.2.xml index 578fd725dccea69e1468ed904b4b92982b7d76eb..b37a5de772b21ea565307c1304ea8234844928a9 100644 --- a/examples2/automaton/aconversion.test.2.xml +++ b/examples2/automaton/aconversion.test.2.xml @@ -1,76 +1,137 @@ +<?xml version="1.0"?> <DFA> - <states> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - <PrimitiveLabel><String>2</String></PrimitiveLabel> - <PrimitiveLabel><String>3</String></PrimitiveLabel> - <PrimitiveLabel><String>4</String></PrimitiveLabel> - <PrimitiveLabel><String>5</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <initialState> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - </initialState> - <finalStates> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - <PrimitiveLabel><String>3</String></PrimitiveLabel> - <PrimitiveLabel><String>4</String></PrimitiveLabel> - <PrimitiveLabel><String>5</String></PrimitiveLabel> - </finalStates> - <transitions> - <transition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>2</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>3</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>4</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>3</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>5</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>2</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>4</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>3</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>4</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>4</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>5</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>5</String></PrimitiveLabel></to> - </transition> - </transitions> + <states> + <String>0</String> + <String>1</String> + <String>2</String> + <String>3</String> + <String>4</String> + <String>5</String> + </states> + <inputAlphabet> + <Character>a</Character> + <Character>b</Character> + <Character>c</Character> + </inputAlphabet> + <initialState> + <String>0</String> + </initialState> + <finalStates> + <String>1</String> + <String>3</String> + <String>4</String> + <String>5</String> + </finalStates> + <transitions> + <transition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>1</String> + </to> + </transition> + <transition> + <from> + <String>0</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>2</String> + </to> + </transition> + <transition> + <from> + <String>1</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>3</String> + </to> + </transition> + <transition> + <from> + <String>1</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>4</String> + </to> + </transition> + <transition> + <from> + <String>1</String> + </from> + <input> + <Character>c</Character> + </input> + <to> + <String>3</String> + </to> + </transition> + <transition> + <from> + <String>2</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>5</String> + </to> + </transition> + <transition> + <from> + <String>2</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>2</String> + </to> + </transition> + <transition> + <from> + <String>4</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>3</String> + </to> + </transition> + <transition> + <from> + <String>4</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>4</String> + </to> + </transition> + <transition> + <from> + <String>5</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>5</String> + </to> + </transition> + </transitions> </DFA> diff --git a/examples2/automaton/aconversion.test.3.xml b/examples2/automaton/aconversion.test.3.xml index 49516abd61dad0ae8bf1579b63feca8e49d4d2f8..04625af4ff59e42c79d9b200840e88077c4f4ed4 100644 --- a/examples2/automaton/aconversion.test.3.xml +++ b/examples2/automaton/aconversion.test.3.xml @@ -1,60 +1,109 @@ +<?xml version="1.0"?> <DFA> - <states> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - <PrimitiveLabel><String>2</String></PrimitiveLabel> - <PrimitiveLabel><String>3</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <initialState> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - </initialState> - <finalStates> - <PrimitiveLabel><String>3</String></PrimitiveLabel> - </finalStates> - <transitions> - <transition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>0</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>2</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>3</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>0</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>3</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>3</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>2</String></PrimitiveLabel></to> - </transition> - </transitions> + <states> + <String>0</String> + <String>1</String> + <String>2</String> + <String>3</String> + </states> + <inputAlphabet> + <Character>a</Character> + <Character>b</Character> + </inputAlphabet> + <initialState> + <String>0</String> + </initialState> + <finalStates> + <String>3</String> + </finalStates> + <transitions> + <transition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>1</String> + </to> + </transition> + <transition> + <from> + <String>0</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>0</String> + </to> + </transition> + <transition> + <from> + <String>1</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>1</String> + </to> + </transition> + <transition> + <from> + <String>1</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>2</String> + </to> + </transition> + <transition> + <from> + <String>2</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>3</String> + </to> + </transition> + <transition> + <from> + <String>2</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>0</String> + </to> + </transition> + <transition> + <from> + <String>3</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>1</String> + </to> + </transition> + <transition> + <from> + <String>3</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>2</String> + </to> + </transition> + </transitions> </DFA> diff --git a/examples2/automaton/aconversion.test.4.xml b/examples2/automaton/aconversion.test.4.xml index 0fdd99a794bb7d2db690dad9bacb11e3376d323c..cc99fec58cf16bd095707fcf0b4f0524030544db 100644 --- a/examples2/automaton/aconversion.test.4.xml +++ b/examples2/automaton/aconversion.test.4.xml @@ -1,30 +1,43 @@ +<?xml version="1.0"?> <DFA> - <states> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - <PrimitiveLabel><String>2</String></PrimitiveLabel> - <PrimitiveLabel><String>3</String></PrimitiveLabel> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <initialState> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - </initialState> - <finalStates> - <PrimitiveLabel><String>3</String></PrimitiveLabel> - </finalStates> - <transitions> - <transition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>3</String></PrimitiveLabel></to> - </transition> - </transitions> + <states> + <String>1</String> + <String>2</String> + <String>3</String> + <String>0</String> + </states> + <inputAlphabet> + <Character>a</Character> + <Character>b</Character> + </inputAlphabet> + <initialState> + <String>0</String> + </initialState> + <finalStates> + <String>3</String> + </finalStates> + <transitions> + <transition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>1</String> + </to> + </transition> + <transition> + <from> + <String>2</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>3</String> + </to> + </transition> + </transitions> </DFA> diff --git a/examples2/automaton/aconversion.test.5.xml b/examples2/automaton/aconversion.test.5.xml index 2debc8d58377d936fed10338343f70ca6d0e59bb..8deca2dd93ad962c99fa34fcb986b2b9f3be20a2 100644 --- a/examples2/automaton/aconversion.test.5.xml +++ b/examples2/automaton/aconversion.test.5.xml @@ -1,76 +1,137 @@ +<?xml version="1.0"?> <NFA> - <states> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - <PrimitiveLabel><String>2</String></PrimitiveLabel> - <PrimitiveLabel><String>3</String></PrimitiveLabel> - <PrimitiveLabel><String>4</String></PrimitiveLabel> - <PrimitiveLabel><String>5</String></PrimitiveLabel> - </states> - <inputAlphabet> - <LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol> - <LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol> - </inputAlphabet> - <initialState> - <PrimitiveLabel><String>0</String></PrimitiveLabel> - </initialState> - <finalStates> - <PrimitiveLabel><String>1</String></PrimitiveLabel> - <PrimitiveLabel><String>3</String></PrimitiveLabel> - <PrimitiveLabel><String>4</String></PrimitiveLabel> - <PrimitiveLabel><String>5</String></PrimitiveLabel> - </finalStates> - <transitions> - <transition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>1</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>0</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>2</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>3</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>4</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>1</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>3</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>5</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>2</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>2</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>4</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>3</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>4</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>4</String></PrimitiveLabel></to> - </transition> - <transition> - <from><PrimitiveLabel><String>5</String></PrimitiveLabel></from> - <input><LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol></input> - <to><PrimitiveLabel><String>5</String></PrimitiveLabel></to> - </transition> - </transitions> + <states> + <String>0</String> + <String>1</String> + <String>2</String> + <String>3</String> + <String>4</String> + <String>5</String> + </states> + <inputAlphabet> + <Character>a</Character> + <Character>b</Character> + <Character>c</Character> + </inputAlphabet> + <initialState> + <String>0</String> + </initialState> + <finalStates> + <String>1</String> + <String>3</String> + <String>4</String> + <String>5</String> + </finalStates> + <transitions> + <transition> + <from> + <String>0</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>1</String> + </to> + </transition> + <transition> + <from> + <String>0</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>2</String> + </to> + </transition> + <transition> + <from> + <String>1</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>3</String> + </to> + </transition> + <transition> + <from> + <String>1</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>4</String> + </to> + </transition> + <transition> + <from> + <String>1</String> + </from> + <input> + <Character>c</Character> + </input> + <to> + <String>3</String> + </to> + </transition> + <transition> + <from> + <String>2</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>5</String> + </to> + </transition> + <transition> + <from> + <String>2</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>2</String> + </to> + </transition> + <transition> + <from> + <String>4</String> + </from> + <input> + <Character>a</Character> + </input> + <to> + <String>3</String> + </to> + </transition> + <transition> + <from> + <String>4</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>4</String> + </to> + </transition> + <transition> + <from> + <String>5</String> + </from> + <input> + <Character>b</Character> + </input> + <to> + <String>5</String> + </to> + </transition> + </transitions> </NFA>