Type Parameters:
I - input symbol type
All Known Implementing Classes:
DefaultATRManager, OptimizingATRManager

public interface ATRManager<I>
A manager of access sequences, terminating sequences, and return sequences of SPAs during the learning process.
  • Method Details

    • getAccessSequence

      Word<I> getAccessSequence(I procedure)
      Returns an access sequence for the given procedure.
      Parameters:
      procedure - the call symbol that identifies the procedure
      Returns:
      the access sequence for the given procedure
    • getTerminatingSequence

      Word<I> getTerminatingSequence(I procedure)
      Returns a terminating sequence for the given procedure.
      Parameters:
      procedure - the call symbol that identifies the procedure
      Returns:
      the terminating sequence for the given procedure
    • getReturnSequence

      Word<I> getReturnSequence(I procedure)
      Returns a return sequence for the given procedure. Note that the sequence must match the access sequence in order to provide an admissible context for query expansion.
      Parameters:
      procedure - the call symbol that identifies the procedure
      Returns:
      the return sequence for the given procedure
    • scanPositiveCounterexample

      Set<I> scanPositiveCounterexample(Word<I> counterexample)
      Extracts from a positive counterexample (potentially new) access sequences, terminating sequences, and return sequences.
      Parameters:
      counterexample - the counterexample
      Returns:
      a Set of procedures (identified by their respective call symbols) for which new access, terminating, and return sequences could be extracted and for which previously none of the sequences were available.
    • scanProcedures

      void scanProcedures(Map<I,? extends DFA<?,I>> procedures, Map<I,? extends AccessSequenceTransformer<I>> providers, Collection<I> inputs)
      Scans a set of (hypothesis) procedures in order to potentially extract new access sequences, terminating sequences, and return sequences.
      Parameters:
      procedures - a Map from call symbols to the respective procedural (hypothesis) models
      providers - a Map from call symbols to AccessSequenceTransformers
      inputs - a Collection of input symbols which should be used for finding new access sequences, terminating sequences, and return sequences