﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
5934	alias state in der-call	Philip Hannebohm	Lennart Ochel	"Currently arguments of the der-call like in {{{der(sin(x)*y) = 1}}} are differentiated symbolically until single variables are reached, yielding something like
{{{
cos(x)*der(x)*y + sin(x)*der(y) = 1
}}}
In cases like {{{der(y^x)}}} this may even result in pretty ugly residual equations.

Instead we could introduce an auxiliary variable {{{$aux = sin(x)*y}}}, s.t. {{{der($aux) = 1}}}. I believe Karim has some convincing arguments towards this approach. I'll try to recap them from what I understand:
a. If {{{x}}} and {{{y}}} appear only algebraically elsewhere, introducing an auxiliary results in fewer states, thus a lower index.
b. Otherwise ({{{der(x)}}} and {{{der(y)}}} exist elsewhere) the system may need index reduction anyways, because the states {{{x}}} and {{{y}}} are connected somehow. The alias might allow index reduction to pick a better choice.

I personally think differentiating the interior of {{{der(...)}}} is a cool feature. But there may be practical reasons against it.
I have no idea how academic this issue is. Opinions?"	discussion	new	high	Future	Backend				Karim Adbdelhak Lennart Ochel Francesco Casella
