Author 
Comment/Response 
yehuda

11/25/12 08:38am
Try this one
It is base on leaving L1 and L2 as symbols, but defined as non constants, so derivatives according to x will not return 0 and the derivative of multiplication will be carried
then replace only the terms of the derivatives
l1 = a1 + b1*x + c1*y;
l2 = a2 + b2*x + c2*y;
l3 = a3 + b3*x + c3*y;
D[L1 L2, x,
NonConstants > {L1 , L2}] /. {D[L1, x, NonConstants > {L1, L2}] >
D[l1, x], D[L2, x, NonConstants > {L1, L2}] > D[l2, x]}
This will also work with expressions such as
D[L1^2 Sin[ L2^3], x,
NonConstants > {L1 , L2}] /. {D[L1, x, NonConstants > {L1, L2}] >
D[l1, x], D[L2, x, NonConstants > {L1, L2}] > D[l2, x]}
Try it
yehuda
URL: , 
