@@ -233,19 +233,26 @@ def substitute_input_symbols(exprs, params):
233
233
234
234
substitutions = [(expr , expr ) for expr in params .get ("reserved_keywords" ,[])]
235
235
236
+ input_symbols = params .get ("symbols" ,dict ())
237
+
238
+ input_symbols_alternatives = []
239
+ for (code , definition ) in input_symbols .items ():
240
+ input_symbols_alternatives += definition ["aliases" ]
241
+
236
242
if params .get ("elementary_functions" , False ) is True :
237
243
alias_substitutions = []
238
244
for expr in exprs :
239
245
for (name , alias_list ) in elementary_functions_names + special_symbols_names :
240
- if name in expr :
241
- alias_substitutions += [(name , " " + name )]
242
- for alias in alias_list :
243
- if alias in expr :
244
- alias_substitutions += [(alias , " " + name )]
246
+ if name in input_symbols_alternatives :
247
+ continue
248
+ else :
249
+ if (name in expr ) and not (name in input_symbols_alternatives ):
250
+ alias_substitutions += [(name , " " + name )]
251
+ for alias in alias_list :
252
+ if (alias in expr ) and not (alias in input_symbols_alternatives ):
253
+ alias_substitutions += [(alias , " " + name )]
245
254
substitutions += alias_substitutions
246
255
247
- input_symbols = params .get ("symbols" ,dict ())
248
-
249
256
if "symbols" in params .keys ():
250
257
# Removing invalid input symbols
251
258
input_symbols_to_remove = []
0 commit comments