3
$\begingroup$

Bug introduced in 12.3 or earlier, fixed in 13.0.


Suppose I have a normalized numerical 1D array, B1,

    B1 = {0.9269939990888411` - 0.22888585272824927` I, 
   1.3877787807814457`*^-17 + 0.` I, -2.7755575615628914`*^-17 - 
    1.8041124150158794`*^-16 I, 
   0.05746221176648221` + 
    0.10518387310098759` I, -1.3877787807814457`*^-17 - 
    9.020562075079397`*^-17 I, 
   0.0574622117664822` + 0.10518387310098762` I, 
   0.0574622117664822` + 0.10518387310098765` I, 
   2.0816681711721685`*^-17 - 3.469446951953614`*^-17 I, 
   0.` - 1.3877787807814457`*^-16 I, 
   0.057462211766482196` + 0.10518387310098765` I, 
   0.05746221176648217` + 0.10518387310098765` I, 
   2.7755575615628914`*^-17 - 6.938893903907228`*^-17 I, 
   0.05746221176648225` + 0.1051838731009876` I, 
   3.469446951953614`*^-17 - 3.469446951953614`*^-17 I, 
   5.0306980803327406`*^-17 - 
    3.469446951953614`*^-17 I, -0.04191842262180526` + 
    0.01851810652627404` I};

Then $Version == "12.3.0 for Mac OS X x86 (64-bit) (May 10, 2021)" gives the very sensible

Conjugate[B1] . B1
Transpose[Conjugate[B1]] . B1

as both 1. + 0. I. However

ConjugateTranspose[B1] . B1

gives 0.761773 - 0.353375 I, which is the same as what I get for B1.B1.

Questions:

  • What gives?
  • Is this known / expected behavior?
  • Is this a bug?
$\endgroup$
6
  • 1
    $\begingroup$ ConjugateTranspose needs a matrix as input. If you give it a vector, it leaves it alone. Try: ConjugateTranspose[{1,I}] If this is a bug or a misuse of the command, I do not know. $\endgroup$ Commented Nov 12, 2021 at 17:39
  • $\begingroup$ Questions that might help diagnose or confirm this: Is Conjugate[Transpose[B1]]==ConjugateTranspose[B1] as the docs claim? Is B1==Transpose[B1]] ? Is Conjugate[B1]==Transpose[Conjugate[B1]] And do some or all of those work as expected if B1 is a well behaved matrix instead of a vector? $\endgroup$
    – Bill
    Commented Nov 12, 2021 at 17:39
  • $\begingroup$ @DanielHuber the docs say "ConjugateTranspose[m] is equivalent to Conjugate[Transpose[m]]. »" which clearly isn't true in the above case. $\endgroup$
    – evanb
    Commented Nov 12, 2021 at 17:41
  • $\begingroup$ Maybe it would help if you report this to [email protected] $\endgroup$ Commented Nov 12, 2021 at 17:43
  • $\begingroup$ @Bill, ConjugateTranspose[B1] == Conjugate[Transpose[B1]] gives False. B1==Transpose[B1] gives True. Conjugate[B1]==Transpose[Conjugate[B1]] gives True. To test the matrix case, you can try ConjugateTranspose[{B1, B1}] == Conjugate[Transpose[{B1, B1}]] which gives True. $\endgroup$
    – evanb
    Commented Nov 12, 2021 at 17:43

1 Answer 1

3
$\begingroup$

This bug is resolved in version 13.0 ($Version == "13.0.0 for Mac OS X x86 (64-bit) (December 3, 2021)").

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.