Можно ли переопределить сложение (плюс)?

Форум пользователей пакета Mathematica

Модератор: Admin

dims12
Сообщения: 37
Зарегистрирован: Чт янв 30, 2003 1:23 am

Можно ли переопределить сложение (плюс)?

Сообщение dims12 » Пн апр 26, 2010 2:24 pm

Допускает ли Mathematica перегрузку операторов? Если "да", то как?

Ниже приведён лог неудачной попытки переопределить сложение:

In[13]:= Unprotect[Plus]

Out[13]= {"Plus"}

In[14]:= Plus[2, 3] = 12

Out[14]= 12

In[15]:= 2 + 3

Out[15]= 5

In[16]:= Plus[2, 3]

Out[16]= 5

V.Belotelov
Сообщения: 17
Зарегистрирован: Чт апр 08, 2004 11:16 am

Сообщение V.Belotelov » Ср июл 14, 2010 6:06 pm

Нельзя. "В отличие от других команд, Plus применяет встроенные правила перед правилами, определенными пользователем, поэтому нельзя определить, скажем, 2+2=5". (с) Mathematica Help