-
Notifications
You must be signed in to change notification settings - Fork 172
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use bit search for max epsilon #1429
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does Android use this algorithm in its implementation? If so, could we add some analogous deterministic test cases to make it easier to verify and reproduce the behavior here?
What do you think about adding a validation that adding anything in the double range to epsilon would result in too high info gain (still using random tests)? This would prove correctness. |
Property-based testing is good, but I still think some deterministic test cases would be beneficial as well as they are more easily ported between implementations. |
Android does not use an epsilon search presently. I'll add the extra validation, log some of its results and add those as deterministic. |
Done. |
The bit search looks fine but why keep the binary search verison too? |
I first thought it can help validate but what Andrew termed the "property" assertion seems similarly good. |
Removed. |
Bit search can yield higher precision than binary search in constant time and
avoid the use of a tolerance.