2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 [Mathematica 8.0] Странное вычисление
Сообщение10.02.2014, 22:58 
Заслуженный участник


27/04/09
28128
Вот я пишу:
Код:
Unprotect[NonCommutativeMultiply];
NonCommutativeMultiply[as___, x_?NumericQ, bs___] := g[x, {as}, {bs}]
Protect[NonCommutativeMultiply];
и потом предлагаю вычислить хотя бы просто a ** b — а в результате это вычисляется и вычисляется в себя бесконечно, пока позволено. Не пойму поведение.

Я убрал все другие определения и перезапустил kernel, если что.

 Профиль  
                  
 
 Posted automatically
Сообщение11.02.2014, 00:00 
Админ форума
Аватара пользователя


19/03/10
8952
 i  Тема перемещена из форума «Программирование» в форум «Околонаучный софт»

 Профиль  
                  
 
 Re: [Mathematica 8.0] Странное вычисление
Сообщение11.02.2014, 11:32 
Заслуженный участник


27/04/09
28128
Если убрать атрибут Flat, чудеса прекращаются. Но всё равно непонятно, как он с этим связан.

 Профиль  
                  
 
 Re: [Mathematica 8.0] Странное вычисление
Сообщение20.03.2014, 22:32 


25/01/11
23
Код:
Unprotect[NonCommutativeMultiply];
NonCommutativeMultiply[as__, x_?NumericQ, bs___] := g[x, {as}, {bs}]
NonCommutativeMultiply[as___, x_?NumericQ, bs__] := g[x, {as}, {bs}]
Protect[NonCommutativeMultiply];


Иначе см.
Код:
Trace[a**b]

 Профиль  
                  
 
 Re: [Mathematica 8.0] Странное вычисление
Сообщение20.03.2014, 23:28 
Заслуженный участник


27/04/09
28128
Спасибо, если это работает, хотя я уже просто снял все атрибуты с NonCommutativeMultiply и написал всё, чем они были полезны, через шаблоны. :-)

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group