Submitting author: @MrMinimal64 (Jannik Michelfeit)
Repository: https://github.com/MrMinimal64/multivar_horner
Version: 2.1.1
Editor: @dpsanders
Reviewers: @henrik227, @saschatimme
Archive: 10.5281/zenodo.4062422
:warning: JOSS reduced service mode :warning:
Due to the challenges of the COVID-19 pandemic, JOSS is currently operating in a "reduced service mode". You can read more about what that means in our blog post.
Status badge code:
HTML: <a href="https://joss.theoj.org/papers/0b514c6894780f3cc81ed88c141631d4"><img src="https://joss.theoj.org/papers/0b514c6894780f3cc81ed88c141631d4/status.svg"></a>
Markdown: [](https://joss.theoj.org/papers/0b514c6894780f3cc81ed88c141631d4)
Reviewers and authors:
Please avoid lengthy details of difficulties in the review thread. Instead, please create a new issue in the target repository and link to those issues (especially acceptance-blockers) by leaving comments in the review thread below. (For completists: if the target issue tracker is also on GitHub, linking the review thread in the issue or vice versa will create corresponding breadcrumb trails in the link target.)
@henrik227, @alex-konovalov and @saschatimme, please carry out your review in this issue by updating the checklist below. If you cannot edit the checklist please:
The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @dpsanders know.
✨ Please try and complete your review in the next six weeks ✨
Hello human, I'm @whedon, a robot that can help you with some common editorial tasks. @henrik227, @alex-konovalov it looks like you're currently assigned to review this paper :tada:.
:warning: JOSS reduced service mode :warning:
Due to the challenges of the COVID-19 pandemic, JOSS is currently operating in a "reduced service mode". You can read more about what that means in our blog post.
:star: Important :star:
If you haven't already, you should seriously consider unsubscribing from GitHub notifications for this (https://github.com/openjournals/joss-reviews) repository. As a reviewer, you're probably currently watching this repository which means for GitHub's default behaviour you will receive notifications (emails) for all reviews 😿
To fix this do the following two things:
For a list of things I can do to help you, just type:
@whedon commands
For example, to regenerate the paper pdf after making changes in the paper's md or bib files, type:
@whedon generate pdf
Reference check summary:
OK DOIs
- 10.1109/MCSE.2011.37 is OK
- 10.1145/2833157.2833162 is OK
MISSING DOIs
- https://doi.org/10.1098/rstl.1819.0023 may be missing for title: XXI. A new method of solving numerical equations of all orders, by continuous approximation
- https://doi.org/10.1201/9781315120195-1 may be missing for title: Introduction to numerical analysis
- https://doi.org/10.1007/978-3-030-01177-2_5 may be missing for title: Fast Interpolation and Fourier Transform in High-Dimensional Spaces
- https://doi.org/10.1145/980175.980179 may be missing for title: Greedy algorithms for optimizing multivariate Horner schemes
- https://doi.org/10.1007/s006070070002 may be missing for title: On the multivariate Horner scheme II: running error analysis
- https://doi.org/10.15807/jorsj.51.29 may be missing for title: Efficient evaluation of polynomials and their partial derivatives in homotopy continuation methods
- https://doi.org/10.1090/s0025-5718-1990-0993925-1 may be missing for title: Evaluation of multivariate polynomials and their derivatives
- https://doi.org/10.1016/j.cpc.2013.05.008 may be missing for title: Improving multivariate Horner schemes with Monte Carlo tree search
- https://doi.org/10.1007/978-3-642-15582-6_55 may be missing for title: Efficient evaluation of large polynomials
INVALID DOIs
- None
@whedon generate pdf
@whedon set v2.1.0 as version
I'm sorry @MrMinimal64, I'm afraid I can't do that. That's something only editors are allowed to do.
@dpsanders please bump the sofware version to v2.1.0 (latest release). Some useful API changes/clarifications have been included: https://github.com/MrMinimal64/multivar_horner/blob/master/CHANGELOG.rst#210-2020-06-15
@MrMinimal64 I don't think we need to do anything about the versioning until the review is complete.
I am concerned that multivar_horner does not qualify as a `substantial scholarly effort' as described in the review criteria, for the following reasons:
However, I do believe that multivar_horner is useful for anyone who needs to evaluate large multivariate polynomials.
Initially, I thought that the search-based approach mention in the `further reading' section could be a major contribution of multivar_horner. However, according to the documentation, this approach does not seem to have any practical benefits (yet?).
hello @henrik227 and @dpsanders,
@henrik227, I do respect your opinion, but I would like to briefly argue against it in the following.
The project is not very large (see the statistics here).
How large a project needs to be in order to fulfil the JOSS review criteria is open for discussion.
What can be said definitively however, is that many projects with a similar or even smaller footprint are being considered:
https://github.com/openjournals/joss-reviews/issues/2428#issuecomment-653255875
https://github.com/openjournals/joss-reviews/issues/2438#issuecomment-653794412
It seems to be a rather straight-forward implementation of an existing algorithm (described in Ceberio & Kreinovich, 2004).
First of all I would like to point out that multivar_horner
contains many computational aspects not included in the solely theoretical outline of the algorithm in (Ceberio & Kreinovich, 2004).
The mathematical considerations only comprise the factorisation process.
How a found Horner factorisation can be represented and evaluated in a computationally efficient way is not within the scope of the literature.
Whether or not an implementation is “straight-forward”, in the end always remains highly subjective and even if it was, I think it could very well still qualify as “substantial scholarly effort”.
multivar_horner
can be considered as a substantial scholarly effort due to the following reasons:
As an open source package helpful for a large part of the scientific community multivar_horner
is a valid candidate for being published in the JOSS.
[1] Floater, Michael S., and Kai Hormann. "Barycentric rational interpolation with no poles and high rates of approximation." Numerische Mathematik 107.2 (2007): 315-331.
[2] Cools, Ronald. "Constructing cubature formulae: the science behind the art." Acta numerica 6 (1997): 1-54.
[3] Temlyakov, Vladimir N. "Cubature formulas, discrepancy, and nonlinear approximation." Journal of Complexity 19.3 (2003): 352-391.
[4] Cools, Ronald. "Advances in multidimensional integration." Journal of computational and applied mathematics 149.1 (2002): 1-12.
To clarify: I do not question that the package is useful. However, I cannot say for sure that this package "represent[s] not less than three months of work for an individual", and from the review criteria it is not clear to me how the usefulness of the software is weighed against the effort that went into it. I am well aware that it is difficult to objectively quantify the development effort of software.
I do not have a strong opinion on this; I just want to make sure that the package meets the standards of JOSS. If @dpsanders and @alex-konovalov consider the package a "substantial scholarly effort", I am ok with that.
@henrik227 Thanks for expressing your concern.
I am waiting for @alex-konovalov's input, and for a further opinion which I hope to get next week.
@whedon add saschatimme as reviewer
OK, saschatimme is now a reviewer
@whedon add @saschatimme as reviewer
OK, @saschatimme is now a reviewer
@whedon generate pdf
in the meantime a preprint version has been published on arXiv.org
The current paper version now contains some additional aspects:
Maple
as a software already supporting multivariate Horner factorisationsMathematica
offering 1D Horner factorisationsmultivar_horner
factorisation process is coefficient agnostic)@saschatimme, @alex-konovalov, what is the status of the review?
@whedon generate pdf
@whedon generate pdf
Hello @dpsanders, @saschatimme, @alex-konovalov, @henrik227,
This review already started 2 month ago.
What is the current status and the timeline for the next steps?
With kind regards,
Jannik Michelfeit
👋 @MrMinimal64, apologies for my absence.
👋 @henrik227, @alex-konovalov, @saschatimme: How are your reviews of this submission coming along? Hopefully we can have a first round of comments finished, say, by the end of August? Thanks!
@dpsanders I was waiting on a decision regarding whether this project is considered a "substantial scholarly effort". Wouldn't it make sense to decide on that first?
@henrik227 That's a fair point. In my opinion this submission does meet the criteria for a "substantial scholarly effort" and should be reviewed.
@whedon generate pdf
@whedon generate pdf
I tried to incorporate all the objections made by the reviewers in the latest version of the paper.
@whedon generate pdf
👋 @alex-konovalov: Will you be able to complete your review of this paper soon?
👋 @saschatimme and @henrik227: Many thanks for your very useful feedback in the issues on the repo! Are you happy with the current version?
@whedon generate pdf
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
👋 @saschatimme and @henrik227: Many thanks for your very useful feedback in the issues on the repo! Are you happy with the current version?
I still disagree with how operations are counted in this package, but I think it's ok since it's explained both in the paper and the documentation.
I am in the same boat as @henrik227 that I disagree with the way operations are counted in the package. The article states
multivar_horner implements a multivariate Horner scheme using the greedy heuristic presented in (Ceberio & Kreinovich, 2004).
However, looking into (Ceberio & Kreinovich, 2004) the way operations are counted there is actually how @henrik227 and I suggest they are supposed to be counted (to compute x^3
takes 2 operations) and not as the author implemented it and describes it in the article where x^3
only requires single operation.
@whedon generate pdf
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
The operations are now being counted as you suggest (solely the number of multiplications).
The optimal search heuristic now minimises the new operation count and finds "optimal" factorisations in this sense.
I also evaluate the relative numerical error in the benchmarks.
The paper as well as the documentation have been updated accordingly.
@whedon generate pdf
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
I updated the placement of the figures (now the paper has a length of 8 pages again)
@whedon generate pdf
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
@saschatimme, can you please check off the remaining items from your review checklist?
I guess @alex-konovalov is busy at the moment and won't finish his review.
@dpsanders, are there any remaining issues or objections?
I don't see a discussion in the paper about how the number of operations is counted.
@saschatimme and @henrik227, are you happy with the current version?
@alex-konovalov: Are you able to complete your review? If not, I will remove you as a reviewer.
I don't see a discussion in the paper about how the number of operations is counted.
it started here:
https://github.com/MrMinimal64/multivar_horner/issues/17#issuecomment-681935918
Now the method of counting the operations is as the reviewers have suggested.
Yes thanks; I would like the paper to describe the implemented choice for counting operations. (Maybe it's already there but I didn't see it.)
Yes thanks; I would like the paper to describe the implemented choice for counting operations. (Maybe it's already there but I didn't see it.)
It's in the middle of page 2.
@henrik227, are you happy with the current version?
I have some minor comments:
I have some minor comments:
I tried to address all of your remarks. Please check if your concerns persist.
@whedon generate pdf
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
I tried to address all of your remarks. Please check if your concerns persist.
Looks good!
@MrMinimal64 @dpsanders This now also looks good for me!
Thanks for the fair review!
@dpsanders are there any open points?
@whedon commands
Here are some things you can ask me to do:
# List all of Whedon's capabilities
@whedon commands
# Assign a GitHub user as the sole reviewer of this submission
@whedon assign @username as reviewer
# Add a GitHub user to the reviewers of this submission
@whedon add @username as reviewer
# Re-invite a reviewer (if they can't update checklists)
@whedon re-invite @username as reviewer
# Remove a GitHub user from the reviewers of this submission
@whedon remove @username as reviewer
# List of editor GitHub usernames
@whedon list editors
# List of reviewers together with programming language preferences and domain expertise
@whedon list reviewers
# Change editorial assignment
@whedon assign @username as editor
# Set the software archive DOI at the top of the issue e.g.
@whedon set 10.0000/zenodo.00000 as archive
# Set the software version at the top of the issue e.g.
@whedon set v1.0.1 as version
# Open the review issue
@whedon start review
EDITORIAL TASKS
# All commands can be run on a non-default branch, to do this pass a custom
# branch name by following the command with `from branch custom-branch-name`.
# For example:
# Compile the paper
@whedon generate pdf
# Compile the paper from alternative branch
@whedon generate pdf from branch custom-branch-name
# Remind an author or reviewer to return to a review after a
# certain period of time (supported units days and weeks)
@whedon remind @reviewer in 2 weeks
# Ask Whedon to do a dry run of accepting the paper and depositing with Crossref
@whedon accept
# Ask Whedon to check the references for missing DOIs
@whedon check references
# Ask Whedon to check repository statistics for the submitted software
@whedon check repository
EiC TASKS
# Invite an editor to edit a submission (sending them an email)
@whedon invite @editor as editor
# Reject a paper
@whedon reject
# Withdraw a paper
@whedon withdraw
# Ask Whedon to actually accept the paper and deposit with Crossref
@whedon accept deposit=true
@whedon generate pdf
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
It looks good to me!
Could you please create a software archive, e.g. at zenodo.org, and paste the version number and the DOI here? Thanks!
@whedon check references
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):
OK DOIs
- 10.1109/MCSE.2011.37 is OK
- 10.1145/2833157.2833162 is OK
MISSING DOIs
- 10.1098/rstl.1819.0023 may be a valid DOI for title: XXI. A new method of solving numerical equations of all orders, by continuous approximation
- 10.1201/9781315120195-1 may be a valid DOI for title: Introduction to numerical analysis
- 10.1007/978-3-030-01177-2_5 may be a valid DOI for title: Fast Interpolation and Fourier Transform in High-Dimensional Spaces
- 10.1145/980175.980179 may be a valid DOI for title: Greedy algorithms for optimizing multivariate Horner schemes
- 10.1007/s006070070002 may be a valid DOI for title: On the multivariate Horner scheme II: running error analysis
- 10.15807/jorsj.51.29 may be a valid DOI for title: Efficient evaluation of polynomials and their partial derivatives in homotopy continuation methods
- 10.1090/s0025-5718-1990-0993925-1 may be a valid DOI for title: Evaluation of multivariate polynomials and their derivatives
- 10.1016/j.cpc.2013.05.008 may be a valid DOI for title: Improving multivariate Horner schemes with Monte Carlo tree search
- 10.1007/978-3-642-15582-6_55 may be a valid DOI for title: Efficient evaluation of large polynomials
- 10.1016/s0377-0427(02)00517-4 may be a valid DOI for title: Advances in multidimensional integration
INVALID DOIs
- None
@whedon check references
Checking the BibTeX entries failed with the following error:
Failed to parse BibTeX on value "doi" (NAME) [#
@whedon check references
I guess you're fixing the missing DOIs, thanks!
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):
OK DOIs
- 10.1109/MCSE.2011.37 is OK
- 10.1145/2833157.2833162 is OK
- 10.1098/rstl.1819.0023 is OK
- 10.1007/978-3-030-01177-2_5 is OK
- 10.1145/980175.980179 is OK
- 10.1007/s006070070002 is OK
- 10.15807/jorsj.51.29 is OK
- 10.1090/s0025-5718-1990-0993925-1 is OK
- 10.1016/j.cpc.2013.05.008 is OK
- 10.1007/978-3-642-15582-6_55 is OK
- 10.1016/s0377-0427(02)00517-4 is OK
MISSING DOIs
- 10.1201/9781315120195-1 may be a valid DOI for title: Introduction to numerical analysis
INVALID DOIs
- None
The last remaining DOI is actually incorrect. Many books have this name.
It seems to be https://doi.org/10.1017/CBO9780511612916 ?
Indeed. Thanks. I will add it.
The current version number is v2.1.1
and the DOI 10.5281/zenodo.4060365
https://zenodo.org/record/4060365
@whedon set version as 2.1.1
I'm sorry human, I don't understand that. You can see what commands I support by typing:
@whedon commands
@whedon set archive as 10.5281/zenodo.4060365
I'm sorry human, I don't understand that. You can see what commands I support by typing:
@whedon commands
@whedon set 2.1.1 as version
OK. 2.1.1 is the version.
@whedon set 10.5281/zenodo.4060365 as archive
OK. 10.5281/zenodo.4060365 is the archive.
@whedon accept
Attempting dry run of processing paper acceptance...
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):
OK DOIs
- 10.1109/MCSE.2011.37 is OK
- 10.1145/2833157.2833162 is OK
- 10.1098/rstl.1819.0023 is OK
- 10.1017/CBO9780511612916 is OK
- 10.1007/978-3-030-01177-2_5 is OK
- 10.1145/980175.980179 is OK
- 10.1007/s006070070002 is OK
- 10.15807/jorsj.51.29 is OK
- 10.1090/s0025-5718-1990-0993925-1 is OK
- 10.1016/j.cpc.2013.05.008 is OK
- 10.1007/978-3-642-15582-6_55 is OK
- 10.1016/s0377-0427(02)00517-4 is OK
MISSING DOIs
- None
INVALID DOIs
- None
:wave: @openjournals/joss-eics, this paper is ready to be accepted and published.
Check final proof :point_right: https://github.com/openjournals/joss-papers/pull/1767
If the paper PDF and Crossref deposit XML look good in https://github.com/openjournals/joss-papers/pull/1767, then you can now move forward with accepting the submission by compiling again with the flag deposit=true
e.g.
@whedon accept deposit=true
@MrMinimal64 I'm processing your paper for acceptance in JOSS. I have read your paper and ask you to work on the remaining minor points below:
[x] Make edit the ZENODO archive meta-data and make sure that in terms of title and author list it matches that of the paper
[x] The version tag for the archived version should also match the reviewed software version tag. Should we update the version tag of the reviewed software to v2.1.1-zenodo
(we can do this for you) or should the ZENODO archive version tag be changed to v2.1.1
?
[x] Please add city and country information to your affiliations
[x] Your paper is about to be processed for acceptance. I suggest you also proofread the draft one more time before we move on, and make any minor changes needed. In particular make sure the authors, affiliations, and acknowledgements are accurate/complete.
Kevin Moerman
_AEiC JOSS_
@whedon remove @alex-konovalov as reviewer
OK, @alex-konovalov is no longer a reviewer
I uploaded the version v2.1.1
to zenodo. The difference is just one missing DOI in a reference, but this should not make a difference for the software archive right? I think this version tag is preferable.
The DOI now changed to:
10.5281/zenodo.4062422
https://zenodo.org/record/4062422
I updated the metadata of the software archive and added city and country to my affiliations.
The authors, affiliations, and acknowledgements should now be complete.
@whedon set 10.5281/zenodo.4062422 as archive
OK. 10.5281/zenodo.4062422 is the archive.
@whedon accept
Attempting dry run of processing paper acceptance...
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):
OK DOIs
- 10.1109/MCSE.2011.37 is OK
- 10.1145/2833157.2833162 is OK
- 10.1098/rstl.1819.0023 is OK
- 10.1017/CBO9780511612916 is OK
- 10.1007/978-3-030-01177-2_5 is OK
- 10.1145/980175.980179 is OK
- 10.1007/s006070070002 is OK
- 10.15807/jorsj.51.29 is OK
- 10.1090/s0025-5718-1990-0993925-1 is OK
- 10.1016/j.cpc.2013.05.008 is OK
- 10.1007/978-3-642-15582-6_55 is OK
- 10.1016/s0377-0427(02)00517-4 is OK
MISSING DOIs
- None
INVALID DOIs
- None
:wave: @openjournals/joss-eics, this paper is ready to be accepted and published.
Check final proof :point_right: https://github.com/openjournals/joss-papers/pull/1774
If the paper PDF and Crossref deposit XML look good in https://github.com/openjournals/joss-papers/pull/1774, then you can now move forward with accepting the submission by compiling again with the flag deposit=true
e.g.
@whedon accept deposit=true
@whedon accept deposit=true
Doing it live! Attempting automated processing of paper acceptance...
🐦🐦🐦 👉 Tweet for this paper 👈 🐦🐦🐦
🚨🚨🚨 THIS IS NOT A DRILL, YOU HAVE JUST ACCEPTED A PAPER INTO JOSS! 🚨🚨🚨
Here's what you must now do:
Party like you just published a paper! 🎉🌈🦄💃👻🤘
Any issues? Notify your editorial technical team...
:tada::tada::tada: Congratulations on your paper acceptance! :tada::tada::tada:
If you would like to include a link to your paper from your README use the following code snippets:
Markdown:
[](https://doi.org/10.21105/joss.02392)
HTML:
<a style="border-width:0" href="https://doi.org/10.21105/joss.02392">
<img src="https://joss.theoj.org/papers/10.21105/joss.02392/status.svg" alt="DOI badge" >
</a>
reStructuredText:
.. image:: https://joss.theoj.org/papers/10.21105/joss.02392/status.svg
:target: https://doi.org/10.21105/joss.02392
This is how it will look in your documentation:
We need your help!
Journal of Open Source Software is a community-run journal and relies upon volunteer effort. If you'd like to support us please consider doing either one (or both) of the the following:
Congratulations on your accepted paper @MrMinimal64 ! :tada:
Thanks for your review efforts @henrik227, @saschatimme!!!
And thank you @dpsanders for editing this submission!
Thanks @Kevin-Mattheus-Moerman!
Congratulations @MrMinimal64 on your paper!
And many thanks to @henrik227 and @saschatimme for your hard work on the reviews!
Thank you all for enabling my first sole publication!
One thing I noticed. Since there is an underscore in the title, using the linked BibTex silently breaks a latex document.
I think it is very important to fix this, since the readers otherwise search for errors in their documents forever.
All underscores need to be escaped:
title = {multivar\_horner: A Python package for computing Horner factorisations of multivariate polynomials},
@MrMinimal64 congratulations! Thanks to the reviewers - sorry, haven't been checking as active on github recently, missed reminders.
Most helpful comment
@MrMinimal64 @dpsanders This now also looks good for me!