gh-37699: Add `approximate_closest_vector` to `IntegerLattice`, using Babai's nearest plane algorithm
This PR implements Babai's nearest plane algorithm to find vectors close
to a given vector in an integer lattice.
I would appreciate if someone could verify the bound stated in the
docstring, it is inferred from Babai's original paper but parameterized
to use the `delta` parameter of the LLL algorithm.
Ideas for improvements:
- The doctest is currently the same as for `closest_vector`, this could
be expanded
- The `delta` parameter for LLL needs to be kept track of by the user.
How "much" the basis has been reduced (i.e to how high a `delta` value)
could be kept track of by the class and if a further reduction is needed
for some given bound then it could be performed.
### :memo: Checklist
<!-- Put an `x` in all the boxes that apply. -->
- [x] The title is concise and informative.
- [x] The description explains in detail what this PR is about.
- [ ] I have linked a relevant issue or discussion.
- [x] I have created tests covering the changes.
- [x] I have updated the documentation accordingly.
URL: https://github.com/sagemath/sage/pull/37699
Reported by: TheBlupper
Reviewer(s): grhkm21, TheBlupper