I did go on to discuss this on the Maxima mailing list: https://sourceforge.net/p/maxima/mailman/maxima-discuss/thread/CADB8Zm56axVDFXRLbJnxm7xnnbQiixBzg4VX1T91ucj%2B-tuGvA%40mail.gmail.com/#msg58347791
Apparently domain:complex as used by Sage is not a very well tested configuration of Maxima. There are most likely other effects besides the documented one about sqrt(x^2) not simplifying to abs(x): $ git grep domain src/simp.lisp src/simp.lisp:(defmvar $limitdomain '$complex) src/simp.lisp: (cond ((or (and $logexpand (eq $domain '$real)) src/simp.lisp: (cond ((or $numer_pbranch (eq $domain '$complex)) src/simp.lisp: (or (and (eq $domain '$real) (not (apparently-complex-to-judge-by-$csign-p (cadr gr)))) src/simp.lisp: (and (eq $domain '$complex) (apparently-real-to-judge-by-$csign-p (cadr gr))))) src/simp.lisp: (or (and (eq $domain '$real) (not (apparently-complex-to-judge-by-$csign-p (cadr gr)))) src/simp.lisp: (and (eq $domain '$complex) (apparently-real-to-judge-by-$csign-p (cadr gr))))) src/simp.lisp: (and (eq $domain '$real) $radexpand)) src/simp.lisp: ((or (eq $domain '$complex) (not $radexpand)) (go up))) src/simp.lisp: (and (eq $domain '$complex) src/simp.lisp: (and (eq $domain '$real) src/simp.lisp: (eq $domain '$real)) src/simp.lisp: (eq $domain '$real) src/simp.lisp: ((and (eq $domain '$real) src/simp.lisp: (eq $domain '$real) src/simp.lisp: (and (eq $domain '$real) (ratnump e) (oddp (caddr e))))) src/simp.lisp: ((eq $domain '$real) -- Oscar On Mon, 1 Jan 2024 at 21:55, Nils Bruin <nbr...@sfu.ca> wrote: > > The documented effect is usually of most impact: > > https://maxima.sourceforge.io/docs/manual/maxima_46.html#index-domain > > there may be other undocumented effects, but the one above tends to explain a > lot already. > > On Sunday 3 December 2023 at 06:26:20 UTC-8 Oscar Benjamin wrote: >> >> What does "set domain to complex" mean in terms of Maxima's settings? >> >> Maxima's solve seems to compute complex solutions by default: >> >> (%i21) solve(x^2 + 1); >> (%o21) [x = - %i, x = %i] >> >> On Sun, 3 Dec 2023 at 13:37, Dima Pasechnik <dim...@gmail.com> wrote: >> > >> > Yes, Sage modifies the defaults of Maxima, in particular we set domain to >> > complex. >> > >> > On 3 December 2023 12:28:45 GMT, Oscar Benjamin <oscar.j....@gmail.com> >> > wrote: >> > >On Wed, 29 Nov 2023 at 12:40, Eric Gourgoulhon <egourg...@gmail.com> >> > >wrote: >> > >> >> > >> Le mardi 28 novembre 2023 à 18:25:04 UTC+1, kcrisman a écrit : >> > >> >> > >> Yes. Maxima's attitude is that the square root of negative one is an >> > >> expression which might have multiple values, rather than just picking >> > >> one you hope might be consistent over branch points. >> > >> >> > >> To enforce Maxima to work in the real domain, avoiding to play too much >> > >> with complex square roots, one can add at the beginning of the Sage >> > >> session: >> > >> >> > >> maxima_calculus.eval("domain: real;") >> > >> >> > >> Then the second example in the initial message of this thread yields >> > >> >> > >> [[x == 2/5*sqrt(6)*sqrt(5), y == 16, l == 1/9*18750^(1/6)], [x == >> > >> -2/5*sqrt(6)*sqrt(5), y == 16, l == -1/9*18750^(1/6)]] >> > >> >> > >> instead of an empty list. >> > > >> > >When using Maxima (5.45.1) directly I get this result with default >> > >settings: >> > > >> > >(%i1) f: 10*x^(1/3)*y^(2/3)$ >> > > >> > >(%i2) g: 5*x^2 + 6*y$ >> > > >> > >(%i3) solve([diff(f,x)=l*diff(g,x), diff(f,y)=l*diff(g,y), g=120], >> > >[x,y,l]); >> > > 1/6 >> > > 2 sqrt(6) 18750 >> > >(%o3) [[x = ---------, y = 16, l = --------], >> > > sqrt(5) 9 >> > > 1/6 >> > > 2 sqrt(6) 18750 >> > > [x = - ---------, y = 16, l = - --------]] >> > > sqrt(5) 9 >> > > >> > >Does Sage modify some Maxima settings related to this or does it call >> > >something other than solve? >> > > >> > >-- >> > >Oscar >> > > >> > >> > -- >> > You received this message because you are subscribed to the Google Groups >> > "sage-support" group. >> > To unsubscribe from this group and stop receiving emails from it, send an >> > email to sage-support...@googlegroups.com. >> > To view this discussion on the web visit >> > https://groups.google.com/d/msgid/sage-support/6F4839F2-38B6-40F2-B080-EFCC1C0C3B65%40gmail.com. > > -- > You received this message because you are subscribed to the Google Groups > "sage-support" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to sage-support+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/sage-support/454c0dbc-ead3-45c4-9557-fdb2391a9ce9n%40googlegroups.com. -- You received this message because you are subscribed to the Google Groups "sage-support" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-support+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-support/CAHVvXxQ_XBUnvordM9BB0qES6bUYxnPEGu7QeaDAKDr9BVLYUA%40mail.gmail.com.