## 1555 Reputation

19 years, 226 days

## Algebraic equations....

A pure algebraic equation. You should try it with Groebner package:

S:={ x^2=2, x^3=2*sqrt(2) } ;
Groebner:-Solve(map(lhs-rhs, S));

Thumb if you like.

## N-Sphere...

Maybe this works:

 nmSphere := proc(L::list, x::list)    local n, m, mu, v, F, E;    description "Convert n distinct points:(L) in m-space:(x) into equations about (n-1)-sphere in m-space";    n := nops(L);    m := nops(x);    F := map(unapply, [add(v[i]^2, i = 1 .. m), seq(v[i], i = 1 .. m), 1], v);    E := [seq(F[i](x) - add(F[i](L[j])*mu[j], j = 1 .. n), i = 1 .. m + 2)], [seq(mu[j], j = 1 .. n)];    eliminate(E)[2]; end proc: nmSphere([[-1,0,0], [0,1,0], [0,0,1]], [x,y,z]); V := [x, y, z]; P := [-1, 0, 0], [0, 1, 0], [0, 0, 1]; E := nmSphere([P], V); S := map(subs, ([solve])(E, {x, y}, explicit), V); R := z = (proc (R) options operator, arrow; op([1, 1], R) .. op([2, 1], R) end proc)(solve(0 < discrim(eliminate(E, {y})[2][1], x), z)); plots[display](plots[pointplot3d]([P], symbol = CIRCLE, color = red), seq(plots[spacecurve](L, evalf(R), color = grey, thickness = 3, transparency = .5), L = S), axes = boxed, scaling = constrained, orientation = [-150, 60, 60], labels = ["x", "y", "z"]); V := [x, y]; P := [-1, 0], [0, 1], [0, 0]; E := nmSphere([P], V); S := map(subs, ([solve])(E, {x}, explicit), V); R := y = (proc (R) options operator, arrow; op([1, 1], R) .. op([2, 1], R) end proc)(solve(0 < discrim(E[1], x), y)); plots[display](plots[pointplot]([P], symbol = CIRCLE, color = red), plot([[S[1][], R], [S[2][], R]], color = grey, thickness = 3, transparency = .5), axes = boxed); ;;

Thumb if you like.

## Use basic methods....

You are given a rational polynomial so this is the basic for Maple. Manipulate directly.

A := - lv*(dw - lw)/(dw - hw);
- A*(dw - hw)/(hw - dw);

But most likely you are considering an automated method. Consider the code that follows with different values of S, like [lw,dw], [dw,lw] and other.

A := solve(hv*hw + lv*lw = dw*(lv + hv), hv);
T := table([(i = op(i, A)) \$ (i = 1 .. nops(A))]);
T := map(proc(x) if type(x, anything^integer) then op(x) else x, 1 fi end, T);
#make changes here:
S := [lw, dw];
T := map(proc(x, p, S) local l; l := lcoeff(x, S); l, normal(x/l), p end, T, S);
mul(T[i][1]^T[i][3], i = 1 .. nops(A)), mul(T[i][2]^T[i][3], i = 1 .. nops(A))

Look up:

?issqr
?isqrt

## All of it....

If you want a random, uniform distribution then use: "stats[random,uniform[0,1]](10);"
About your method, it should be "r:=rand(1..2)()" which will give you a randomly selected integer in range 1..2 and "r:=rand(1..2)" would give you the generator for said toss. So: "f(1):=H;f(2):=T; a:=map(f@rand(1..2),Vector[row](10));" is your method.

Thumb it if you like.

Simply:

 expand(applyop(radnormal, 1, f)); evalc(applyop(radnormal, 1, f)); #for the larger samples: F := f -> evalc(applyop(radnormal, 1, f)); G := ((x, s) -> map(collect, x, s, distributed)), (x, s) -> collect(x, s, distributed); t := ln(anything); factor(evalindets(f, t, F)); G[1]('%', indets('%', t));

Thumb if you like.

## Delete....

Before "GCD3:=" you have the "proc". Delete it.

## Tests....

A very low order test is implemented in `combine/polylog`.

You can see it with:
stopat(`combine/polylog`, 17);
showstat(`combine/polylog`);

Line 17 in "type(x,'complex(numeric)') and 1 <= abs(x) or is(1 <= x) or is(x <= -1)" replace with
with say "1<=abs(x)^2" or "signum(1-abs(x))=-1" or "is(1<=abs(x))", whichever is preferred.

## You missed it....

Look at the line:

 x[2] := unapply(invlaplace(laplace(t^(alpha-1), t, s)*laplace(y[2](t)-20*y[13](t)+(19/2)*y[14]-60*y[16](t)+21*y[17](t)-y[13](t)*(6*(3*y[2](t)-y[5](t)))+y[15](t)*(12*(3*y[1](t)-y[4](t))-2*(2*y[1](t)-y[4](t)))-y[16](t)*(12*(3*y[2](t)-y[5](t)))+y[18](t)*(24*(3*y[1](t)-y[4](t))-6*(2*y[1](t)-y[4](t))), t, s), s, t), t);

Instead of (19/2)*y[14] it should be (19/2)*y[14](t). This is my best bet. Replace with:

 x[2] := unapply((subs(y[14] = y[14](t), eval(x[2])))(t), t); #or simply x[2] := unapply(invlaplace(laplace(t^(alpha-1), t, s)*laplace(y[2](t)-20*y[13](t)+(19/2)*y[14](t)-60*y[16](t)+21*y[17](t)-y[13](t)*(6*(3*y[2](t)-y[5](t)))+y[15](t)*(12*(3*y[1](t)-y[4](t))-2*(2*y[1](t)-y[4](t)))-y[16](t)*(12*(3*y[2](t)-y[5](t)))+y[18](t)*(24*(3*y[1](t)-y[4](t))-6*(2*y[1](t)-y[4](t))), t, s), s, t), t);

Thumb if you like.

## Solve then plot...

gives this:

 R := z = RootOf(-8649 + 270100*_Z + 9000*_Z^2 + 100*_Z^3, .3198736765e-1) .. .1; A := [[3/2 + 1/10*(-8649+270100*z + 9000*z^2 + 100*z^3)^(1/2), z, 'R'], [3/2 - 1/10*(-8649 + 270100*z + 9000*z^2 + 100*z^3)^(1/2), z, 'R']]; plot(A);

Thumb if you like.

## Just rename....

If you dont want something expanded, then name it:

 CG:=proc(E) map(q -> collect(q, G, proc(E) if type(E, `*`) then map(collect, E, [F], factor) else collect(E, [F], factor) end if end@factor), E); end: eqn := 5*(x*y)^2 + x/G = 2*F^3 + x^2, F = 3*x^3 + y^2, G^2 = y, G = sqrt(y); #implicitdiff({eqn[1..-2]}, {y, F, G}(x), {y}, x): implicitdiff({eqn[1..-2]}, {x, F, G}(y), {x}, y): simplify(%, [eqn[-2]]); applyop(CG, [1,2], convert(%, parfrac, G)); subs([eqn[2..-1]], %);

Thumb if you like.

## Domains package....

Maybe this is what you need:

 with(Domains): GI := Gaussian(Z): F:=proc(a,b)    local i, s, t, g;    g := op('procname');    i := g[Input](a), g[Input](b);    i, PrincipalIdeal(g, i, 's, t'), s, t; end proc; F[GI](-87+47*I, -90+43*I);

Thumb if you like.

## Not algsubs....

What you are trying to do is specifically intended for the command simplify:

 simplify(expr, [expression = V1]);

Thumb if you like.

## Two ways:...

Two ways:

 GST := AE + AI - ANB - AR - CP; GSTf := evalindets(GST, name, unapply('unapply(a[i], i), a')); GSTf ~ ([\$1..3]); GSTg := evalindets(GST, name, unapply('G[a], a')); G := () -> op(procname)['args']; GSTg ~ ([\$1..3]); ;

Thumb if you like.

## Algebra....

Replace the capital I in your formulas with lower case i and the problem will disappear. Capital I means (-1)^(1/2) which in algebraic formulas will be transformed by simplifications.

Thumb if You like.

 First 14 15 16 17 18 19 20 Page 16 of 21
﻿