To: J3 J3/24-179 From: Malcolm Cohen Subject: Not an interp on mathematical equivalence Date: 2024-October-27 Reference: 24-158 /INTERP subgroup declines to accept 24-158 as a defect report, as it is not reporting a defect, and for the following other reasons: 1. This question of how the result of a complex operation is calculated is excluded by Clause 1 paragraph 4, which states "[The Fortran standard] does not specify... the method of rounding, approximating, or computing numeric values on a particular processor, except by reference to ISO/IEC 60559:2020". ISO/IEC 60559:2020 contains no specification of complex arithmetic, therefore the Fortran standard itself says it does not specify how this is done. 2. In 7.4.3 Numeric intrinsic types, we have the normative statements "The set of values for the integer type is a subset of the mathematical integers.", "The real type has values that approximate the mathematical real numbers.", and "The complex type has values that approximate the mathematical complex numbers." There is no question that the mathematical integers, real numbers, and complex numbers, do not include the IEEE special values of infinity or NaN. Thus any question of "mathematical equivalence" must inevitably exclude consideration thereof. 3. Quite apart from the fact of the exclusion, the Fortran standard itself contains no specification or requirement on the algorithm used to calculate complex multiplication. As was pointed out in email, there are algorithms for complex multiply other than the "traditional" one. One such algorithm omits parts of the traditional calculation when the real or imaginary part of one of the operands is known to be zero. Furthermore, as the standard contains no specification or requirement, it thus contains no requirement that the same algorithm be used at all times. Thus anything "processor-dependent" can depend on "the phase of the moon" or indeed anything else. It is thus valid for the processor to use a different algorithm for complex multiply when the operation is on an odd-numbered line of the source file, the operation involves a real value promoted to complex, or on alternate Tuesdays. That is because there is literally no specification or requirement on the algorithmic calculation of complex multiplication. There is not even any accuracy or consistency requirement on such calculations. 4. It is long-standing policy that it is inappropriate to use the very expensive defect reporting mechanism to answer a question that is easily answered in the standard. The question as to whether the standard requires a particular calculation method is clearly answered in the negative by Clause 1. ===END===