Если все ваши переменные будут (например) Real
, тогда вы можете перехватить создание новых символов и добавить это предположение к $Assumptions
. Э.Г.
$Assumptions = True;
$NewSymbol = If[#2 === "Global`",
Print["Created new Global` variable named ", #1, ". It is assumed to be real."];
$Assumptions = $Assumptions && Element[Symbol[#2 <> #1], Reals],
Null (* other, probably a system symbol is created *)] &;
Тогда, если вы создадите новый символ, который не хотите быть реальным, вы можете получить что-то вроде $Assumptions = Most[$Assumptions]
.
Примечание: я не обязательно утверждаю, что этот подход - хорошая идея ...
Вероятно, лучше всего просто определить $Assumptions
для переменных, которые вы собираетесь использовать. Это можно сделать программно, используя Map
, Table
и т. Д.