commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Benedikt Ritter <brit...@apache.org>
Subject Re: [math] Creating a class of number theory tools
Date Sun, 11 Sep 2016 12:32:36 GMT
Gilles <gilles@harfang.homelinux.org> schrieb am So., 11. Sep. 2016 um
13:33 Uhr:

> Hello.
>
> On Sat, 10 Sep 2016 19:18:32 -0600, Shane S wrote:
> > Hi Gilles,
> >
> > Thank you for your response. These methods are used primarily in
> > computational number theory applications. I myself came across the
> > need for
> > these algorithms when studying and implementing traditional and
> > proposed
> > variants of the Quadratic Sieve integer factorisation algorithm. But
> > these
> > methods are also required for other factorisation algorithms such as
> > the
> > number field sieve. As a result, the library additions I propose
> > would also
> > have cryptographic applications.
>
> Lacking the necessary knowledge, I have no clear view of who
> would be potential users of your proposed contributions.
> For example, assuming that this code were available for use,
> how much would still be necessary in order to build a
> cryptographic application?
>
> > These methods are no more complex than  modInverse() in BigInteger
> > and from
> > my limited experience, have found the use cases to be similar in
> > general.
>
> Given that most (and perhaps all) current uses of Commons Math
> are in applications that deal with "double", I'd guess that
> extensions of "BigInteger" would be better located in their own
> component.
>

To me this (again) raises the question whether we need a dedicated Math
TLP...

Benedikt


>
> [In line with all the reasoning about monolithic vs modular which
> you can find in the ML archive discussions that happened around
> last May.]
>
> > I can certainly understand the reluctance in light of the limited
> > human
> > resources. I would like to contribute to the maintenance of the code
> > base
> > in any way I can. I have no experience in open source projects like
> > this,
> > but I am willing to learn.
>
> My idea is to create a module that would collect all
> functionalities that deal with "higher" precision and
> "big" numbers.
> Candidates for this component could be
>   o.a.c.math4.util.BigReal
>   o.a.c.math4.dfp
>   o.a.c.math4.primes
>   o.a.c.math4.fraction
>
> Would you be interested in working on that?
>
> > If it is agreed that the functionality I propose is useful,
>
> I don't doubt that it is interesting functionality; I have
> no idea whether it is useful (in the sense that it would
> more users than just you).
>
> > I could also
> > commit to maintaining it
>
> That is usually a requirement for incorporating code in Commons
> (but we failed spectacularly in that respect in Commons Math!).
>
>
> Best regards,
> Gilles
>
> >
> > Thank you
> >
> > On Sep 9, 2016 5:24 PM, "Gilles" <gilles@harfang.homelinux.org>
> > wrote:
> >
> >> Hi.
> >>
> >> Thanks for offering to contribute to Commons Math.
> >>
> >> However, this is a quite advanced topic, and I don't
> >> know whether Commons Math is the right place for this
> >> functionality.
> >> Could you provide more background information about
> >> who (or what applications) are the potential users
> >> for these algorithms?
> >>
> >> Please note that this is not outright rejection, but
> >> we are severely lacking human resources to manage the
> >> existing codebase[1] and discussions are ongoing as to
> >> how best continue this project.
> >>
> >> My personal opinion is that all well-defined topics
> >> (such as your proposal might be) should be developed
> >> in their own component.[2]
> >>
> >> Best regards,
> >> Gilles
> >>
> >> [1] See the "dev" ML archives if you'd like to know
> >>     how this happened.
> >> [2] See the archives, too.
> >>
> >> On Thu, 8 Sep 2016 11:16:03 -0600, Shane S wrote:
> >>
> >>> Hello all,
> >>>
> >>> I would like to create a class of some common number theory methods
> >>> for
> >>> the
> >>> Commons Math library (or add methods the the BigInteger class). I
> >>> am
> >>> motivated to do this following a summer research project at my
> >>> university
> >>> (University of Calgary). I was/am implementing some factoring
> >>> algorithms
> >>> for cryptographic applications and found that there were no
> >>> libraries to
> >>> do
> >>> things such as:
> >>> - Determining quadratic residuocity by way of Jacobi/Legendre
> >>> symbol
> >>> calculation
> >>> - Determining the square root (mod p)
> >>> - variations of the Sieve of Eratosthenes for producing a list of
> >>> primes
> >>>
> >>> I also noticed the lack of library support for these operations
> >>> while
> >>> doing
> >>> my first math based crypto course, as did many of my peers. I think
> >>> that
> >>> the increasing practical use of these methods warrants their
> >>> inclusion in
> >>> the Commons Math library.
> >>> I implemented Java methods for these operations for my own use and
> >>> would
> >>> like to contribute them to Commons Math. I am looking for any
> >>> comments
> >>> about this, specifically if the developer and commiter community
> >>> here
> >>> would
> >>> support this. I am completely new to open source projects and
> >>> welcome any
> >>> advise.
> >>>
> >>> Sincerely,
> >>>
> >>>     Shane Sims
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
> For additional commands, e-mail: dev-help@commons.apache.org
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message