Class Pebble<S>
- java.lang.Object
-
- owl.automaton.algorithm.simulations.Pebble<S>
-
- Type Parameters:
S
- The type of state for the underlying automaton.
public abstract class Pebble<S> extends Object
Abstraction of a single pebble in a multipebble simulation game. This holds a state on an automaton as well as a flag indicating whether the pebble has seen a final state.
-
-
Constructor Summary
Constructors Constructor Description Pebble()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract boolean
flag()
Set<Pebble<S>>
predecessors(Automaton<S,? extends BuchiAcceptance> aut, BitSet val)
Set<Pebble<S>>
predecessors(Automaton<S,? extends BuchiAcceptance> aut, BddSet valSet)
abstract S
state()
Set<Pebble<S>>
successors(Automaton<S,? extends BuchiAcceptance> aut, BitSet val)
Computes set of successor pebbles for a single valuation.Set<Pebble<S>>
successors(Automaton<S,? extends BuchiAcceptance> aut, BddSet valSet)
Computes the set of successor pebbles for a set of valuations.String
toString()
static <S> Set<Pebble<S>>
universe(Automaton<S,BuchiAcceptance> aut)
Computes the set of all possible pebbles for an automaton.static <S> Set<Pebble<S>>
universe(S state)
Computes the set of all possible pebbles for a given state.Pebble<S>
withFlag(boolean b)
Sets the flag of a pebble.
-
-
-
Method Detail
-
universe
public static <S> Set<Pebble<S>> universe(S state)
Computes the set of all possible pebbles for a given state.- Type Parameters:
S
- The type of the state.- Parameters:
state
- A state in an automaton- Returns:
- Set of possible Pebbles on this state, i.e. with flag set to true and set to false.
-
universe
public static <S> Set<Pebble<S>> universe(Automaton<S,BuchiAcceptance> aut)
Computes the set of all possible pebbles for an automaton.- Type Parameters:
S
- Type of state of the automaton.- Parameters:
aut
- Automaton the pebbles should be on.- Returns:
- A set of all possible pebbles on all states with all possible flag values.
-
state
public abstract S state()
-
flag
public abstract boolean flag()
-
withFlag
public Pebble<S> withFlag(boolean b)
Sets the flag of a pebble.- Parameters:
b
- Value the flag should be set to.- Returns:
- A pebble on the same state with its flag set to the argument.
-
successors
public Set<Pebble<S>> successors(Automaton<S,? extends BuchiAcceptance> aut, BddSet valSet)
Computes the set of successor pebbles for a set of valuations.- Parameters:
aut
- Automaton the pebble is placed on.valSet
- Set of valuations to advance the pebble by.- Returns:
- A set of possible successor pebbles for the given valuation set.
-
predecessors
public Set<Pebble<S>> predecessors(Automaton<S,? extends BuchiAcceptance> aut, BddSet valSet)
-
successors
public Set<Pebble<S>> successors(Automaton<S,? extends BuchiAcceptance> aut, BitSet val)
Computes set of successor pebbles for a single valuation.- Parameters:
aut
- Automaton to advance the pebble in.val
- Valuation to advance the pebble by.- Returns:
- Set of possible successor pebbles.
-
-