Releases: fast-reflexes/BirthdayProblem-Python
Releases · fast-reflexes/BirthdayProblem-Python
Version 1.4.2
- Fix bug where wrong method flag was returned when using combinations (
-cflag) andDcould not be calculated due to size. - Replaced calculation of
Dwhen combinations is used (flag-c) with an exact method in all cases except for when both binary and combinations are used (-band-cflag) and inputDis larger than 15 (e.g. resultingDis(2^(15))!).
Version 1.4.1
- Documentation, text and smaller fixes forgotten in v. 1.4.
- Added tests where the project is used as a library (previous tests only used the project's command line API).
Version 1.4
- Added exact method for calculating
NgivenDandPusing a numerical approach, this means that from now on
multiple solution strategies can be used for this calculation as well (earlier this calculation always used Taylor
approximation). - Fixed bug in method
facultyLogfor when input is 0. Since 0! = 1 and the return value is in log space, the
correct answer is 0 and not 1. - Added trivial use case for calculating
NusingDandPwhenDis 1 andPis neither 0 nor 1 (in this case
the answer is always 2).
Version 1.3
- Improved exception handling:
- Error codes
- Exception class
- Improved checks on input sizes before starting calculations
- Returning error codes when terminating program with an error
- Returning more specific error messages when a method fails
- Simplified conversion to log10 form in
_BirthdayProblemNumberFormatter.toLog10ReprOrNone. - Corrected precision bug in
_BirthdayProblemSolverChecked.birthdayProblemInv. - Corrected minor bug in
_BirthdayProblemTextFormatter.methodToText. - Simplified
_BirthdayProblemTextFormatter.methodToTextand_BirthdayProblemTextFormatter.methodToDescription.
Version 1.2
- Corrected calculation of adjusted precision during calculations.
- Added constants for repeatedly used values and replaced relevant uses.
- Corrected exact / naive calculation of
mtaken. - Adjusted method using Stirling's formula so that it always returns probablity 0 or more (can otherwise return slightly less than 0 due to precision errors).
- Changed preprocessing so that the application fails whenever the max precision is insufficient to represent the resulting log of set size
D. - Small vocabular fixes in descriptions and comments.
- Fixed tests.
Version 1.1
- Added rounding upwards (ceiling) instead of regular rounding (half up) on non-logarithmic solutions for
N. - Removed output approximation character on non-logarithmic solutions for
N. - Added flag
--precfor command-line interface allowing the user to choose output precision, where applicable, in [0, 10] with default 10.