1
$\begingroup$

Suppose I have a normalized numerical 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$ Nov 12 '21 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
    Nov 12 '21 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
    Nov 12 '21 at 17:41
  • $\begingroup$ Maybe it would help if you report this to support@wolfram.com $\endgroup$ Nov 12 '21 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
    Nov 12 '21 at 17:43
1
$\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, privacy policy and cookie policy

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