Skip to content

Conversation

@FredrikTaquist
Copy link
Collaborator

This PR completely reworks the implementation for SL lambda to align it more closely with the SL lambda algorithm. The new implementation aims to be more modular in order to facilitate future additions and expansions to the SL lambda algorithm. By aligning the implementation more closely with the algorithm, this PR also fixes issues involving non-determinacy during learning, such as non-determinacy problems revealed when examining issue #78 (which is fixed with this PR). This PR also fixes a number of bugs in ralib.

Among the contributions made by this PR are the following:

  • New, more modular, data structure for classification trees
  • Closedness and consistency checks moved to classification tree
  • Learning algorithm more closely adheres to the theory
  • New RARun data structure allows for extracting runs on a hypothesis over a data word
  • Paths taken during hypothesis traversals now consistent between CE analysis and equivalence testing
  • Fixes a bug that caused SDT::isEquivalent to sometimes return false for SDTs that are equivalent
  • Fixes a bug where data values are sometimes not compared numerically
  • Fixes a null-pointer exception eror in RemappingIterator::next

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants