Menu

#4745 not necessarily a bug but why the inconsistency and what all does kill do or not do ?

None
open
nobody
None
5
2 days ago
4 days ago
dan hayes
No

WxMaxima version: 26.01.0_MSW
Using wxWidgets version: wxWidgets 3.2.9
Maxima version: 5.49.0
Maxima build date: 2026-01-02 21:27:51
Host type: x86_64-w64-mingw32
System type: Win32 10.0.19041 X86-64
Lisp implementation type: SBCL
Lisp implementation version: 2.6.0
to be done whenever wxMaxima starts Maxima:
(assume_pos:true, file_output_append:true, ratprint:false, showtime:true, load(simplify_sum), intanalysis:false, simpsum:true, load("lrats"), letrat:true,ratfac:true, algebraic:true,rootsconmode=super, algexact:true,fpprintprec:4);

(kill(ff,x,dx,y,dy,t),ff:xsqrt(1-y^2)+ysqrt(1-x^2),t1:diff(ff,x)dx+diff(ff,y)dy,t2:(sqrt((1-x^2)(1-y^2))
-x
y)*(dx/sqrt(1-x^2)+dy/sqrt(1-y^2)),disp(["t1"=t1,"t2"=t2]),t:radcan(t1-t2),disp(["t"=t]) );

At first run or after restart maxima the above does NOT give t=0 as it should. Though now if put in an extra assume... eg

(kill(ff,x,dx,y,dy,t),assume(x<1),ff:xsqrt(1-y^2)+ysqrt(1-x^2),t1:diff(ff,x)dx+diff(ff,y)dy,t2:(sqrt((1-x^2)(1-y^2)) -xy)*(dx/sqrt(1-x^2)+dy/sqrt(1-y^2)),disp(["t1"=t1,"t2"=t2]),t:radcan(t1-t2),disp(["t"=t]) );
Then sometimes it does give t=0 but not always. I do exactly the same thing and it sometimes does and sometimes does NOT give t=0. Now without writing the same things over again i just change the assume to assume(x>1) and again sometimes gives t=0 and sometimes not. And sometimes i have to do
assume(x<1,y<1) and again sometimes does or does not give t=0. sometimes have to use
assume(x<1,x>-1,y<1) before it gives t=0 and etc. .and if all else fails then must use assume(x<1,x>-1,y<1,y>-1) and that usually always works even though i recall once even that did not give t=0. I cannot figure why the inconsistency.

OK now here is the next issue. Whatever i had to put for the assume then i next take it out completely
and just put the original in again,

(kill(ff,x,dx,y,dy,t),ff:xsqrt(1-y^2)+ysqrt(1-x^2),t1:diff(ff,x)dx+diff(ff,y)dy,t2:(sqrt((1-x^2)(1-y^2))
-x
y)*(dx/sqrt(1-x^2)+dy/sqrt(1-y^2)),disp(["t1"=t1,"t2"=t2]),t:radcan(t1-t2),disp(["t"=t]) );

Without restarting maxima and it always gives t=0 in that case. It seems in this case the
kill(ff,x,dx,y,dy,t) should give the same as restarting maxima but it doesn't . Why ?

What does it do on someone eleses computer ? And do you get inconsistent results doing exactly the same thing over and over again ?

Discussion

  • Raymond Toy

    Raymond Toy - 4 days ago

    Just curious and irrelevant to the bug, but do you really type in huge long lines into maxima? I find them really hard to read and therefore hard to figure what what is the setup and what is the bug. Hence that discourages me from looking at the issue.

     
  • Gunter Königsmann

    The fact that kill(all) doesn't remove stuff from the facts database feels counterintuitive to me, as well. But perhaps it is logical as you can do a assume(U>0); without ever defining U (and therefore put U into the scope of the kill(all);.

     
  • dan hayes

    dan hayes - 2 days ago

    what do u mean huge long lines exactly or do you mean should do a carriage return after fewer
    characters and have more shorter single lines ?

     

Log in to post a comment.

MongoDB Logo MongoDB