org.mindswap.pellet.utils.fsm
Class TransitionGraph<T>

java.lang.Object
  extended by org.mindswap.pellet.utils.fsm.TransitionGraph<T>

public class TransitionGraph<T>
extends java.lang.Object

Title:

Description:

Copyright: Copyright (c) 2006

Company: Clark & Parsia, LLC.

Author:
Evren Sirin

Constructor Summary
TransitionGraph()
           
 
Method Summary
 boolean accepts(java.util.List<T> str)
           
 void addFinalState(State<T> s)
           
 void addTransition(State<T> begin, State<T> end)
           
 void addTransition(State<T> begin, T transition, State<T> end)
           
 TransitionGraph<T> choice(TransitionGraph<T> t)
           
 TransitionGraph<T> closure()
           
 TransitionGraph<T> concat(TransitionGraph<T> t)
           
 TransitionGraph<T> determinize()
           
 TransitionGraph<T> epsilon()
           
 java.util.Set<State<T>> epsilonClosure(java.util.Set<State<T>> stateSet)
           
 java.util.Set<State<T>> epsilonClosure(State<T> s, java.util.Set<State<T>> result)
           
 java.util.List<Pair<State<T>,State<T>>> findTransitions(T transition)
           
 java.util.Set<State<T>> getAllStates()
           
 java.util.Set<T> getAlpahabet()
           
 State<T> getFinalState()
           
 java.util.Set<State<T>> getFinalStates()
           
 State<T> getInitialState()
           
 TransitionGraph<T> insert(TransitionGraph<T> tg, State<T> i, State<T> f)
           
 boolean isAnyFinal(java.util.Set<State<T>> ss)
           
 boolean isConnected()
           
 boolean isDeterministic()
           
 boolean isFinal(State<T> st)
           
 boolean isInitial(State<T> st)
           
 TransitionGraph<T> minimize()
           
 java.util.Set<State<T>> move(java.util.Set<State<T>> stateSet, T c)
           
 State<T> newState()
           
 TransitionGraph<T> renumber()
           
 void setInitialState(State<T> s)
           
 void setPartition(java.util.Set<State<T>> stateSet, int num, java.util.Map<State<T>,java.lang.Integer> partitions)
           
 int size()
          Returns the number of states in this transition graph
static
<T> TransitionGraph<T>
symbol(T transition)
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

TransitionGraph

public TransitionGraph()
Method Detail

size

public int size()
Returns the number of states in this transition graph

Returns:

newState

public State<T> newState()

getAlpahabet

public java.util.Set<T> getAlpahabet()

getAllStates

public java.util.Set<State<T>> getAllStates()

setInitialState

public void setInitialState(State<T> s)

getInitialState

public State<T> getInitialState()

addFinalState

public void addFinalState(State<T> s)

getFinalStates

public java.util.Set<State<T>> getFinalStates()

getFinalState

public State<T> getFinalState()

addTransition

public void addTransition(State<T> begin,
                          T transition,
                          State<T> end)

addTransition

public void addTransition(State<T> begin,
                          State<T> end)

findTransitions

public java.util.List<Pair<State<T>,State<T>>> findTransitions(T transition)

isInitial

public boolean isInitial(State<T> st)

isFinal

public boolean isFinal(State<T> st)

isAnyFinal

public boolean isAnyFinal(java.util.Set<State<T>> ss)

epsilon

public TransitionGraph<T> epsilon()

symbol

public static <T> TransitionGraph<T> symbol(T transition)

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

renumber

public TransitionGraph<T> renumber()

accepts

public boolean accepts(java.util.List<T> str)

choice

public TransitionGraph<T> choice(TransitionGraph<T> t)

concat

public TransitionGraph<T> concat(TransitionGraph<T> t)

closure

public TransitionGraph<T> closure()

insert

public TransitionGraph<T> insert(TransitionGraph<T> tg,
                                 State<T> i,
                                 State<T> f)

move

public java.util.Set<State<T>> move(java.util.Set<State<T>> stateSet,
                                    T c)

epsilonClosure

public java.util.Set<State<T>> epsilonClosure(State<T> s,
                                              java.util.Set<State<T>> result)

epsilonClosure

public java.util.Set<State<T>> epsilonClosure(java.util.Set<State<T>> stateSet)

isDeterministic

public boolean isDeterministic()

isConnected

public boolean isConnected()

determinize

public TransitionGraph<T> determinize()

setPartition

public void setPartition(java.util.Set<State<T>> stateSet,
                         int num,
                         java.util.Map<State<T>,java.lang.Integer> partitions)

minimize

public TransitionGraph<T> minimize()


Copyright © 2004 Evren Sirin. All Rights Reserved.