### Related

##### op-part

u:(6*x+7)/(9*x+2);

part(u,1);

op(part(u,1));

Calculate

##### op-part

u:(6*x+7)/(9*x+2);

part(u,1);

op(part(u,1));

Calculate

eq1:x/(4+y-2);

eq2:x+2=y;

op(eq1);

Calculate

##### op

x: a*b;

y: a=bis(op(x)="=");

is(op(y)="=");

Calculate

a(x):=b*x+c;

op(a(x));

Calculate

##### op-part

u:(6*x+7)/(9*x+2);

part(u,1);

op(part(u,1));

Calculate

##### op-sin

f(x):=a*cos[((2*pi*t)...

Calculate

##### op-part-sum

s: sum(a[i],i,0,n);

part(s,0);

part(s,1);

Calculate

##### op

x: a*b;

y: a=bis(op(x)="=");

is(op(y)="=");

Calculate

##### op-prefix-sin-stringdisp-true

stringdisp: true;

op (a * b * c);

op (a * b + c);

Calculate

### op

Run Example
(%i1)_split_args(pe_expr):=block(	if mapatom(pe_expr)=true then return(["atom",[pe_expr]]),	return([op(pe_expr),args(pe_expr)]));
(%o1) _split_args(pe_expr) := block(if mapatom(pe_expr) = true
then return(["atom", [pe_expr]]), return([op(pe_expr), args(pe_expr)]))
(%i2) _split_args(%pi);
(%o2)                            [atom, [%pi]]
(%i3) _split_args(a*x);
(%o3)                             [*, [a, x]]
(%i4) _split_args(a+x);
(%o4)                             [+, [x, a]]
(%i5) _split_args(fct(x));
(%o5)                             [fct, [x]]
(%i6) _split_args(x!);
(%o6)                              [!, [x]]
(%i7) _split_args(x!!);
x
(%o7)                        [genfact, [x, -, 2]]
2
(%i8) _split_args(x^(1/2));
(%o8)                             [sqrt, [x]]
(%i9) _split_args(x^a);
(%o9)                             [^, [x, a]]
(%i10) _split_args(1/x);
(%o10)                            [/, [1, x]]
(%i11) _split_args(1/x^a);
a
(%o11)                           [/, [1, x ]]
(%i12) _split_args(-x);
(%o12)                             [-, [x]]
(%i13) _split_args([x,a]);
(%o13)                            [[, [x, a]]
(%i14) _split_args({x,a});
(%o14)                           [set, [a, x]]
(%i15)
Run Example
pe(x1,y1,z1,x2,y2,z2):=x1*x2+y1*y2+z1*z2;
(%o1)         pe(x1, y1, z1, x2, y2, z2) := x1 x2 + y1 y2 + z1 z2
(%i2) modulo(x,y,z):=sqrt(pe(x,y,z,x,y,z));
(%o2)            modulo(x, y, z) := sqrt(pe(x, y, z, x, y, z))
(%i3) uv:pe(2,1,0,3,-1,2);
(%o3)                                  5
(%i4) uw:[2,1,0].[4,0,3];
(%o4)                                  8
(%i5) vw:[3,-1,2].[4,0,3];
(%o5)                                 18
(%i6) um:modulo(2,1,0);
(%o6)                               sqrt(5)
(%i7) vm:modulo(3,-1,2);
(%o7)                              sqrt(14)
(%i8) op:um*vm;
(%o8)                          sqrt(5) sqrt(14)
(%i9)
Run Example
expr: x . dx . dy + z . dy . dz + y . dx . dz;
(%o1)               z . dy . dz + y . dx . dz + x . dx . dy
(%i2) expr2: x . [dx, dy] + z . [dy, dz] + y . [dx, dz];
(%o2)             z . [dy, dz] + y . [dx, dz] + x . [dx, dy]
(%i3) expr3: x * [dx, dy] + z * [dy, dz] + y * [dx, dz];
(%o3)              [dy z + dx y + dx x, dz z + dz y + dy x]
(%i4) expr4: [x, dx, dy] + [z, dy, dz] + [y, dx, dz];
(%o4)                  [z + y + x, dy + 2 dx, 2 dz + dy]
(%i5) expr5: [[x, dx, dy], [z, dy, dz], [y, dx, dz]];
(%o5)               [[x, dx, dy], [z, dy, dz], [y, dx, dz]]
(%i6) expr6: x . del(x) . del(y) + z . del(y) . del(z) + y . del(x) . del(z);
(%o6)   z . del(y) . del(z) + y . del(x) . del(z) + x . del(x) . del(y)
(%i7) part(expr, 1);
(%o7)                             z . dy . dz
(%i8) length(expr);
(%o8)                                  3
(%i9) op(expr);
(%o9)                                  +
(%i10) args(expr);
(%o10)              [z . dy . dz, y . dx . dz, x . dx . dy]
(%i11) map(op, args(expr));
(%o11)                             [., ., .]
(%i12) map(args, args(expr));
(%o12)              [[z, dy, dz], [y, dx, dz], [x, dx, dy]]
(%i13) map(args, args(expr6));
(%o13)  [[z, del(y), del(z)], [y, del(x), del(z)], [x, del(x), del(y)]]
(%i14) diffform(vars, expr) := block(    [n, k],    0);
(%o14)             diffform(vars, expr) := block([n, k], 0)
(%i15) diff(x + y);
(%o15)                          del(y) + del(x)
(%i16)

Help for Op