Skip to content

Breaking changes

  • Some runtime properties for dynamically configuring LearnLib have been renamed. There now exists the LearnLibProperty enum as a single reference point for all available properties.
  • The node iterators for discrimination trees are now hidden behind the DiscriminationTreeIterators factory.
  • Parallel Oracles:
    • The withDefault* methods have been removed from the {Dynamic,Static}PrallelOracleBuilders. If needed, use the regular with* methods and supply the public default values from {Dynamic,Static}PrallelOracle.
    • The new*ParallelOracle methods from the ParallelOracleBuilders factory no longer interpret a single membership oracle parameter as a supplier to a shared oracle, but rather as a single oracle (and thus return a builder for a parallel oracle with fixed pool size).
  • Refactored the following packages/classes:
    • de.learnlib.api.algorithm.feature.SupportsGrowingAlphabet -> net.automatalib.SupportsGrowingAlphabet
    • de.learnlib.api.algorithm.feature.ResumableLearner -> de.learnlib.api.Resumable
  • Adding new symbols to learning algorithms (via the SupportsGrowingAlphabet interface) now requires the learner to be initialized with a GrowingAlphabet instance. This is to make sure that the user has full control over which alphabet instance should be used instead of LearnLib making decisions on behalf of the user.
  • Also, see the changes in AutomataLib

New features

  • Discrimination-Tree based Learners (DT, KV, TTT) now batch queries whenever possible, thus allowing to fully utilize parallel oracles.
  • Added support for black-box-checking (thanks to Jeroen Meijer).
  • Added support for learning partial Mealy Machines via L* (thanks to Maren Geske).
  • Added support for resumable caches.


  • Support for Java 11. Note: LearnLib/AutomataLib still targets Java 8, and thus needs classes provided by this environment (specifically: annotations from javax.annotation). If you plan to use LearnLib/AutomataLib in a Java 11+ environment, make sure to provide these classes. They are not shipped with LearnLib/AutomataLib.
  • DynamicParallelOracles can now be constructed from a collection of independent oracles.
Assets 2
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.