6
$\begingroup$

Bug introduced in 10.0 or earlier and fixed in 11.3


I found a deterministic way to crash the kernel of Mathematica 11.0.1 at both Windows 8 and Windows 10.

The crash appears when I run the following code:

testvec = {0.18746673492062105` + 0.07179896380864931` I, 
   0.10271089033292742` + 0.29743889409731045` I, 
   0.14718709404615468` + 0.19088958403002848` I, 
   0.12205003155893783` + 0.05721359003080298` I, 
   0.022886875150098424` + 0.06926066019534503` I, 
   0.2286466187044286` + 0.021886715310015535` I, 
   0.3000933170709555` + 0.08213327207615487` I, 
   0.27275542569463435` + 0.2021236544928293` I, 
   0.09282290144945393` + 0.06710608870159725` I, 
   0.18321947106989928` + 0.19079872835899886` I, 
   0.07103005932536283` + 0.2664541533372109` I, 
   0.1000573663951961` + 0.24319769942599498` I, 
   0.07439123195876386` + 0.19025514766872914` I, 
   0.09333733294822154` + 0.2799084917039692` I, 
   0.27152323358174535` + 0.0883256922927881` I, 
   0.2383215861152127` - 0.13737179264951108` I};
testnewvec = testvec;
value = -0.9206729702180169` - 1.6708036090286889` I;
testnewvec[[0]] = testnewvec[[0]]*value;
testnewvec = Normalize[testnewvec];

I found this problem when tracking down a bug in a code, i.e. I understand that overwriting testnewvec[[0]] does not make sense. Anyway, I think the Kernel should never crash so I thought it might be useful to report here and wonder whether other people can reproduce it.

$\endgroup$
6
  • $\begingroup$ "I thought it might be useful to report here" These sorts of problems should be reported to Wolfram instead, to make sure they will get fixed. Can you please do that? The crash happens with 11.1 too. $\endgroup$
    – Szabolcs
    Commented Aug 7, 2017 at 11:32
  • $\begingroup$ @Szabolcs thanks for your answer. I thought there are mathematica developers on SE, in particular checking the "bug" section? For instance ilian has commented on some other bug-reports here. $\endgroup$ Commented Aug 7, 2017 at 11:40
  • $\begingroup$ I don't know how Wolfram works internally, but the same people have suggested on occasion that for a bug to get attention, it should be formally reported. $\endgroup$
    – Szabolcs
    Commented Aug 7, 2017 at 12:17
  • $\begingroup$ @Nico, you can ask here for workarounds, but even if Wolfram employees browse this site, they are in no way acting in an official capacity here. You still need to report to them if you want this to get attention. $\endgroup$ Commented Aug 7, 2017 at 15:02
  • 4
    $\begingroup$ I have filed a bug report, thanks for this example. $\endgroup$
    – ilian
    Commented Aug 7, 2017 at 15:45

1 Answer 1

4
$\begingroup$

This bug has been fixed as of version 11.3.0.

testvec = {0.18746673492062105` + 0.07179896380864931` I, 
   0.10271089033292742` + 0.29743889409731045` I, 
   0.14718709404615468` + 0.19088958403002848` I, 
   0.12205003155893783` + 0.05721359003080298` I, 
   0.022886875150098424` + 0.06926066019534503` I, 
   0.2286466187044286` + 0.021886715310015535` I, 
   0.3000933170709555` + 0.08213327207615487` I, 
   0.27275542569463435` + 0.2021236544928293` I, 
   0.09282290144945393` + 0.06710608870159725` I, 
   0.18321947106989928` + 0.19079872835899886` I, 
   0.07103005932536283` + 0.2664541533372109` I, 
   0.1000573663951961` + 0.24319769942599498` I, 
   0.07439123195876386` + 0.19025514766872914` I, 
   0.09333733294822154` + 0.2799084917039692` I, 
   0.27152323358174535` + 0.0883256922927881` I, 
   0.2383215861152127` - 0.13737179264951108` I};
testnewvec = testvec;
value = -0.9206729702180169` - 1.6708036090286889` I;
testnewvec[[0]] = testnewvec[[0]]*value;
testnewvec = Normalize[testnewvec] // Head

During evaluation of Norm::nvm: The first Norm argument should be a scalar, vector, or matrix.

(* Normalize *)
$\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.