Add methods negate() / reciprocal() to the FieldElement interface
-----------------------------------------------------------------

                 Key: MATH-686
                 URL: https://issues.apache.org/jira/browse/MATH-686
             Project: Commons Math
          Issue Type: New Feature
            Reporter: Sébastien Brisard
            Priority: Trivial
             Fix For: 3.0


As discussed on the mailing list, it is proposed to add two methods to the 
{{FieldElement}} interface
* {{negate()}} : returns the additive inverse of {{this}} element.
* {{reciprocal()}} : returns the multiplicative inverse of {{this}} element.

Several name couples have been proposed by Phil
# {{negate}}, {{invert}}
# {{opposite}}, {{reciprocal}}
# {{additiveInverse}}, {{multiplicativeInverse}}

Looking at the classes implementing this interface in the core CM library, we 
find that
* {{Complex}}, {{Dfp}}, {{BigFraction}} and {{Fraction}} already have a 
{{negate()}} method.
* Besides, {{BigFraction}} and {{Fraction}} already have a {{reciprocal()}} 
method.

So the best naming option would seem to be (for the time being) a mixture of 
what Phil proposed. I realize it's not completely satisfactory because one is a 
noun and one a verb. However that's what would induce the least changes to the 
CM library. As a second step, it will be easier to change consistently the 
names of all classes implementing {{FieldElement}}.

So I propose to introduce {{negate()}} and {{reciprocal()}} in the 
{{FieldElement}} interface.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


Reply via email to