Class AbstractOptimalTTT<M,​I,​D>

    • Method Detail

      • maxSearchIndex

        protected abstract int maxSearchIndex​(int ceLength)
      • hypOutput

        protected abstract D hypOutput​(Word<I> word,
                                       int length)
      • getState

        protected abstract DTLeaf<I,​D> getState​(Word<I> prefix)
      • suffix

        protected abstract D suffix​(D output,
                                    int length)
      • isCanonical

        protected abstract boolean isCanonical()
      • startLearning

        public void startLearning()
        Description copied from interface: LearningAlgorithm
        Starts the model inference process, creating an initial hypothesis in the provided model object. Please note that it should be illegal to invoke this method twice.
        Specified by:
        startLearning in interface LearningAlgorithm<M,​I,​D>
      • refineHypothesis

        public boolean refineHypothesis​(DefaultQuery<I,​D> counterexample)
        Description copied from interface: LearningAlgorithm
        Triggers a refinement of the model by providing a counterexample. A counterexample is a query which exposes different behavior of the real SUL compared to the hypothesis. Please note that invoking this method before an initial invocation of LearningAlgorithm.startLearning() should be illegal.
        Specified by:
        refineHypothesis in interface LearningAlgorithm<M,​I,​D>
        Parameters:
        counterexample - the query which exposes diverging behavior, as posed to the real SUL (i.e. with the SULs output).
        Returns:
        true if the counterexample triggered a refinement of the hypothesis, false otherwise (i.e., it was no counterexample).