summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/tablor/tablor.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/tablor/tablor.sty')
-rw-r--r--Master/texmf-dist/tex/latex/tablor/tablor.sty724
1 files changed, 509 insertions, 215 deletions
diff --git a/Master/texmf-dist/tex/latex/tablor/tablor.sty b/Master/texmf-dist/tex/latex/tablor/tablor.sty
index b759961e1a3..bbcc38c8837 100644
--- a/Master/texmf-dist/tex/latex/tablor/tablor.sty
+++ b/Master/texmf-dist/tex/latex/tablor/tablor.sty
@@ -1,12 +1,12 @@
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{tablor}[08/10/2008 v4.00 la machine a creer des tableaux de signes et variations]
+\ProvidesPackage{tablor}[21/10/2008 v4.02 la machine a creer des tableaux de signes et variations]
% \copyleft Connan le Barbare (aka Guillaume Connan) \copyright
% This work may be distributed and/or mofified under the conditions
% or the LaTeX Project Public Licence, either v1.3 or (at your option)
% any later version. The latest version is in
% http://www.latex-project.org/lppl/
-% This work consists of the files tablor.sty, tablor.cfg, tablor.tex,
+% This work consists of the files tablor.sty, tablor-xetex.sty, tablor.cfg, tablor.tex,
% tablor.pdf and tablor.html
@@ -27,6 +27,12 @@
%%\end{TSq}
% un tableau de variation :
%
+% pour les tableaux de signes à une seule ligne
+% \begin{TSc}
+% TSc((x+10)/((x-5)*(x-2)),[-10,5],[2,5],n,0)
+% \end{TSc}
+%
+%
% \begin{TV}
% TV([0,+infinity],[0],"h","x",ln(x)-(ln(x))^2,1,n,\tv)
% \end{TV}
@@ -71,6 +77,15 @@
% \end{TVP}
% %
+% Fonctions prolongeables par continuité
+% TVPC([intervalles d'étude],[valeurs prolongeables],[valeurs interdites pour f'],"g","t",e^(-1/x^2),1,n,\tv);
+
+
+% \begin{TVPC}
+% TVPC([-infinity,+infinity],[0],[0],"g","t",e^(-1/x^2),1,n,\tv);
+% \end{TVPC}
+
+
@@ -228,7 +243,7 @@
TV(L,F,nom,nomv,f,ftt,trigo,nmr):={
nl:=size(L);
f:=unapply(f,x);
-fp:=fonction_derivee(f);
+fp:=function_diff(f);
Z:=concat(L,F);
S:=[];
@@ -236,26 +251,26 @@ S:=[];
if(trigo==t){
all_trig_solutions:=1;
reset_solve_counter(-1,-1);
-SS:=resoudre(factor(simplifier(fp(x))),x);
+SS:=solve(factor(simplify(fp(x))),x);
ns:=size(SS);
for(k:=0;k<ns;k++){
m:=0;
-while(evalf(simplifier(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){
-S:=concat(S,simplifier(subst(SS[k],n_1=m)));m:=m+1;
+while(evalf(simplify(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){
+S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m+1;
};m:=-1;
while(evalf(subst(SS[k],n_1=m))>=L[0]){
-S:=concat(S,simplifier(subst(SS[k],n_1=m)));m:=m-1;
+S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m-1;
}
}
}else{
-S:=resoudre(fp(x),x);
+S:=solve(fp(x),x);
}
si size(S)>0 alors pour j de 0 jusque size(S)-1 faire
- qq:=member(simplifier(S[j]),Z)==0;
+ qq:=member(simplify(S[j]),Z)==0;
kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
- if(kk==1){if(qq==1){Z:=append(Z,simplifier(S[j]))}};
+ if(kk==1){if(qq==1){Z:=append(Z,simplify(S[j]))}};
fpour
fsi;
Z:=sort(Z);
@@ -273,7 +288,7 @@ nz:=size(Z);
si size(S)>0 alors pour j de 0 jusque size(S)-1 faire
kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
- if(kk==1){Z:=append(Z,simplifier(S[j]))};
+ if(kk==1){Z:=append(Z,simplify(S[j]))};
fpour
fsi;
@@ -290,8 +305,8 @@ l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
";fpour;
- k0:= evalf(limite(f(x),x=Z[0],1))> evalf(limite(f(x),x=Z[1],-1));
- kz:=evalf(limite(f(x),x=Z[nz-1],-1))> evalf(limite(f(x),x=Z[nz-2],1));
+ k0:= evalf(limit(f(x),x=Z[0],1))> evalf(limit(f(x),x=Z[1],-1));
+ kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1));
lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
@@ -299,38 +314,47 @@ lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
if(sign(fp((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }}
-if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.01))>0;
+if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.1))>0;
lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(ksp==1){"plus;"}else{"moins;"}
}; }
-lsf:=if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;
+lsf:=if(member(Z[nz-1],F)==0){""}else{"nonDefBarre;
"}
-lm0:=limite(f(x),x=Z[0],1)==-infinity;
+lm0:=limit(f(x),x=Z[0],1)==-infinity;
li:=lvic+nom+"}$ etex);"+
- if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}
- else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}+
+ if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}
+ else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}+
if(k0==1){"1"}else{"0"}+
");";
- if(nz>2){ for(r:=1; r<=nz-2;r++){ krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1));
- krp:=evalf(limite(f(x),x=Z[r],1))> evalf(limite(f(x),x=Z[r+1],-1)) ;
- lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
+ if(nz>2){ for(r:=1; r<=nz-2;r++){ krm:=evalf(limit(f(x),x=Z[r-1],1))< evalf(limit(f(x),x=Z[r],-1));
+ krp:=evalf(limit(f(x),x=Z[r],1))> evalf(limit(f(x),x=Z[r+1],-1)) ;
+ lmrm:=limit(f(x),x=Z[r],-1)==-infinity;lmrp:=limit(f(x),x=Z[r],1)==-infinity;
lp:=lp+if(member(Z[r],F)){
"limGauche(btex
- $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$
- etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
- else{"valPos(btex $"+latex(simplifier(f(Z[r])))+"$
+ $"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],-1)))}+"$
+ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
+ else{"valPos(btex $"+latex(simplify(f(Z[r])))+"$
etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
"}}}
}; }
-lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
- lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}else{"nonDefBarre;limGauche(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}+
- if(kz==1){"1);"}else{"0);
-"};
+lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
+
+
+
+lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
+ if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+
+ if(kz==1){"1);"}else{"0);"}}
+ else{"limGauche(btex $"+
+ if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+
+ if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};
+
+
+
MetaLfc:=if(ftt==2){if(nz>2){"
beginTableau("+nmr+")"+
@@ -392,6 +416,210 @@ fclose(sortie);
\end{VerbatimOut}
+
+
+
+
+%%%%
+
+
+%
+%
+% TVPC : pour les fonctions prolongeables par continuité.
+%%
+%%
+
+
+
+
+\begin{VerbatimOut}{XcasTVPC.cxx}
+TVPC(L,F,FP,nom,nomv,f,ftt,trigo,nmr):={
+nl:=size(L);
+f:=unapply(f,x);
+fp:=function_diff(f);
+Z:=concat(L,F);
+Z:=concat(Z,FP);
+S:=[];
+
+
+if(trigo==t){
+all_trig_solutions:=1;
+reset_solve_counter(-1,-1);
+SS:=solve(factor(simplify(fp(x))),x);
+ns:=size(SS);
+for(k:=0;k<ns;k++){
+m:=0;
+while(evalf(simplify(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){
+S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m+1;
+};m:=-1;
+while(evalf(subst(SS[k],n_1=m))>=L[0]){
+S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m-1;
+}
+}
+}else{
+S:=solve(fp(x),x);
+}
+
+
+ si size(S)>0 alors pour j de 0 jusque size(S)-1 faire
+ qq:=member(simplify(S[j]),Z)==0;
+ kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
+ if(kk==1){if(qq==1){Z:=append(Z,simplify(S[j]))}};
+ fpour
+ fsi;
+Z:=sort(Z);
+nz:=size(Z);
+
+
+ tantque evalf(Z[0])==evalf(Z[1]) faire Z:=Z[1..nz-1];nz:=size(Z);
+ ftantque;
+
+
+
+
+
+
+
+ si size(S)>0 alors pour j de 0 jusque size(S)-1 faire
+ kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
+ if(kk==1){Z:=append(Z,simplify(S[j]))};
+ fpour
+ fsi;
+
+Z:=sort(Z);
+nz:=size(Z);
+ si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
+ fsi;
+pour u de 1 jusque nz-2 faire
+ si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
+ fsi;
+fpour;
+nz:=size(Z);
+l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
+pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
+";fpour;
+
+ k0:= evalf(limit(f(x),x=Z[0],1))> evalf(limit(f(x),x=Z[1],-1));
+ kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1));
+
+lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
+ if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],FP)==0){
+ if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
+ if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
+ if(sign(fp((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }}
+
+if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.1))>0;
+ lsp:=lsp+if(member(Z[r],FP)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+ if(ksp==1){"plus;"}else{"moins;"}
+ }; }
+
+lsf:=if(member(Z[nz-1],FP)==0){""}else{"nonDefBarre;
+"}
+lm0:=limit(f(x),x=Z[0],1)==-infinity;
+ li:=lvic+nom+"}$ etex);"+
+ if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}
+ else{"limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}+
+ if(k0==1){"1"}else{"0"}+
+ ");";
+
+ if(nz>2){ for(r:=1; r<=nz-2;r++){ krm:=evalf(limit(f(x),x=Z[r-1],1))< evalf(limit(f(x),x=Z[r],-1));
+ krp:=evalf(limit(f(x),x=Z[r],1))> evalf(limit(f(x),x=Z[r+1],-1)) ;
+ lmrm:=limit(f(x),x=Z[r],-1)==-infinity;lmrp:=limit(f(x),x=Z[r],1)==-infinity;
+ lp:=lp+if(member(Z[r],F)){
+ "valPos(btex
+ $"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],-1)))}+"$
+ etex,"+if(krm==1){"1);"}else{"0);"} }
+ else{"valPos(btex $"+latex(simplify(f(Z[r])))+"$
+ etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
+"}}}
+ }; }
+
+lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
+
+
+
+lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
+ if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+
+ if(kz==1){"1);"}else{"0);"}}
+ else{"limGauche(btex $"+
+ if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+
+ if(kz==1){"1);"}else{"0);"}};
+
+
+
+
+
+MetaLfc:=if(ftt==2){if(nz>2){"
+
+beginTableau("+nmr+")"+
+ l0+lsi+lsp+lsf+"
+endTableau;
+
+";}else{
+intro+"beginTableau("+nmr+")"+
+ l0+
+lsi+lsf+"
+endTableau;
+
+";
+}
+}else{ if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+
+ l0+
+li+
+lp+
+lf
++"
+endTableau;
+
+";}else{"beginTableau("+nmr+")"+
+ l0+
+li+
+lf
++"
+endTableau;
+
+";}}else{
+if(nz>2){"beginTableau("+nmr+")"+
+ l0+
+lsi+lsp+lsf+
+li+
+lp+
+lf
++"
+endTableau;
+
+";}else{"beginTableau("+nmr+")"+
+ l0+
+lsi+lsf+
+li+
+lf
++"
+endTableau;
+
+";}
+}}
+
+
+sortie:=fopen("XCasmpfc.mp");
+fprint(sortie,Unquoted,MetaLfc);
+fclose(sortie);
+
+
+ }:;
+
+\end{VerbatimOut}
+
+
+
+
+
+
+
+
+
+
+
+
%%
%%
%% TV avec une zone interdite : on rajoute comme argument la liste des intervalles interdits
@@ -416,7 +644,7 @@ if(FF[k][1]<L[1]){Imax[k]:=FF[k][1];LL:=L}else{Imax[k]:=L[1];LL:=[L[0]]};
IMIN:=[IMIN];
IMAX:=[IMAX];
f:=unapply(f,x);
-fp:=fonction_derivee(f);
+fp:=function_diff(f);
Z:=concat(LL,F);
for(k:=0;k<nf;k++){
@@ -429,19 +657,19 @@ S:=[];
if(trigo==t){
all_trig_solutions:=1;
reset_solve_counter(-1,-1);
-SS:=resoudre(factor(simplifier(fp(x))),x);
+SS:=solve(factor(simplify(fp(x))),x);
ns:=size(SS);
for(k:=0;k<ns;k++){
m:=0;
-while(evalf(simplifier(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){
-S:=concat(S,simplifier(subst(SS[k],n_1=m)));m:=m+1;
+while(evalf(simplify(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){
+S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m+1;
};m:=-1;
while(evalf(subst(SS[k],n_1=m))>=L[0]){
-S:=concat(S,simplifier(subst(SS[k],n_1=m)));m:=m-1;
+S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m-1;
}
}
}else{
-S:=resoudre(fp(x),x);
+S:=solve(fp(x),x);
}
@@ -454,7 +682,7 @@ S:=resoudre(fp(x),x);
kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
kK:=(evalf(S[j])<evalf(Imin[k])) or (evalf(S[j])>evalf(Imax[k]));
Kk:=(kk) and kK;
- if(Kk==1){Z:=append(Z,simplifier(S[j]))};
+ if(Kk==1){Z:=append(Z,simplify(S[j]))};
}
fpour
fsi;
@@ -484,8 +712,8 @@ l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
";fpour;
- k0:= evalf(limite(f(x),x=Z[0],1))> evalf(limite(f(x),x=Z[1],-1));
- kz:=evalf(limite(f(x),x=Z[nz-1],-1))> evalf(limite(f(x),x=Z[nz-2],1));
+ k0:= evalf(limit(f(x),x=Z[0],1))> evalf(limit(f(x),x=Z[1],-1));
+ kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1));
lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
if(member(Z[0],IMIN)!=0){"debutNonDef;"}else{if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
@@ -505,33 +733,33 @@ if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.01))>0;
-lsf:=if(member(Z[0],IMAX)!=0){"finNonDef;"}else{if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;
+lsf:=if(member(Z[0],IMAX)!=0){"finNonDef;"}else{if(member(Z[nz-1],F)==0){""}else{"nonDefBarre;
"}}
-lm0:=limite(f(x),x=Z[0],1)==-infinity;
+lm0:=limit(f(x),x=Z[0],1)==-infinity;
li:=lvic +nom+"}$ etex);"+
- if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}
- else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}+
+ if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}
+ else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}+
if(k0==1){"1"}else{"0"}+
");";
if(nz>2){
for(r:=1; r<=nz-2;r++){
- krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1));
- krp:=evalf(limite(f(x),x=Z[r],1))> evalf(limite(f(x),x=Z[r+1],-1)) ;
- lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
+ krm:=evalf(limit(f(x),x=Z[r-1],1))< evalf(limit(f(x),x=Z[r],-1));
+ krp:=evalf(limit(f(x),x=Z[r],1))> evalf(limit(f(x),x=Z[r+1],-1)) ;
+ lmrm:=limit(f(x),x=Z[r],-1)==-infinity;lmrp:=limit(f(x),x=Z[r],1)==-infinity;
lp:=lp+if(member(Z[r],IMIN)!=0){"limGauche(btex $"+if(lmrm==1){
"-\\infty"}else{
- latex(simplifier(limite(f(x),x=Z[r],-1)))}
+ latex(simplify(limit(f(x),x=Z[r],-1)))}
+"$ etex,"+if(krm==1){
"1);"}else{"0);"}
+"debutNonDef;"
}//fsi Zr=Imin
else{
if (member(Z[r],IMAX)!=0) {"finNonDef;limDroite(btex $"+if(lmrp==1){
- "-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}
+ "-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],1)))}
+"$ etex,"+if(krp==1){
"1);"}else{"0);"}
}
@@ -539,15 +767,15 @@ if(nz>2){
if(member(Z[r],F)){
"limGauche(btex $"+if(lmrm==1){
"-\\infty"}else{
- latex(simplifier(limite(f(x),x=Z[r],-1)))}
+ latex(simplify(limit(f(x),x=Z[r],-1)))}
+"$ etex,"+if(krm==1){
"1);"}else{"0);"}
+"nonDefBarre;limDroite(btex $"+if(lmrp==1){
- "-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}
+ "-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],1)))}
+"$ etex,"+if(krp==1){
"1);"}else{"0);"}
}//fsi (member Zr F)
- else{"valPos(btex$"+latex(simplifier(f(Z[r])))+"$etex,"+
+ else{"valPos(btex$"+latex(simplify(f(Z[r])))+"$etex,"+
if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){
"0.5);"}else{
if(krp==1){
@@ -559,10 +787,19 @@ if(nz>2){
};//ffor
}//fsi nz
-lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
- lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}else{"nonDefBarre;limGauche(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}+
- if(kz==1){"1);"}else{"0);
-"};
+lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
+
+
+
+lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
+ if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+
+ if(kz==1){"1);"}else{"0);"}}
+ else{"limGauche(btex $"+
+ if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+
+ if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};
+
+
+
MetaLfc:=if(ftt==2){if(nz>2){"
@@ -647,7 +884,7 @@ TVapp(L,F,nom,nomv,f,ftt,nmr):={
nl:=size(L);
f:=unapply(f,x);
-fp:=fonction_derivee(f);
+fp:=function_diff(f);
z0:=concat(L,F);z:=sort(z0);
nz:=size(z);
@@ -668,7 +905,7 @@ else{ j:=[seq(k,k=floor(z[0])..floor(z[nz-1]))] minus F;for k in j do S:=S,fsolv
si size(S)>0 alors pour j de 0 jusque size(S)-1 faire
kk:=(re(S[j])==S[j]);kok:=(evalf(S[j])>=L[0]) and (evalf(S[j])<=L[1]);
- if(kk==1){if(kok==1){z:=append(z,simplifier(S[j]))}};
+ if(kk==1){if(kok==1){z:=append(z,simplify(S[j]))}};
fpour;
fsi;
@@ -698,8 +935,8 @@ l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
";fpour;
- k0:= evalf(limite(f(x),x=Z[0],1))> evalf(limite(f(x),x=Z[1],-1));
- kz:=evalf(limite(f(x),x=Z[nz-1],-1))> evalf(limite(f(x),x=Z[nz-2],1));
+ k0:= evalf(limit(f(x),x=Z[0],1))> evalf(limit(f(x),x=Z[1],-1));
+ kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1));
lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
@@ -712,32 +949,35 @@ if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.01))>0;
if(ksp==1){"plus;"}else{"moins;"}
}; }
-lsf:=if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;
+lsf:=if(member(Z[nz-1],F)==0){""}else{"nonDefBarre;
"}
-lm0:=limite(f(x),x=Z[0],1)==-infinity;
+lm0:=limit(f(x),x=Z[0],1)==-infinity;
li:=lvic+nom+"}$ etex);"+
- if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}
- else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}+
+ if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}
+ else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}+
if(k0==1){"1"}else{"0"}+
");";
- if(nz>2){ for(r:=1; r<=nz-2;r++){ krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1));
- krp:=evalf(limite(f(x),x=Z[r],1))> evalf(limite(f(x),x=Z[r+1],-1)) ;
- lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
+ if(nz>2){ for(r:=1; r<=nz-2;r++){ krm:=evalf(limit(f(x),x=Z[r-1],1))< evalf(limit(f(x),x=Z[r],-1));
+ krp:=evalf(limit(f(x),x=Z[r],1))> evalf(limit(f(x),x=Z[r+1],-1)) ;
+ lmrm:=limit(f(x),x=Z[r],-1)==-infinity;lmrp:=limit(f(x),x=Z[r],1)==-infinity;
lp:=lp+if(member(Z[r],F)){
- "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
- else{"valPos(btex $"+latex(simplifier(f(Z[r])))+"$
+ "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
+ else{"valPos(btex $"+latex(simplify(f(Z[r])))+"$
etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
"}}}
}; }
-lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
- lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}else{"nonDefBarre;limGauche(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}+
- if(kz==1){"1);"}else{"0);
-"};
-
-
+lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
+
+lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
+ if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+
+ if(kz==1){"1);"}else{"0);"}}
+ else{"limGauche(btex $"+
+ if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+
+ if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};
+
MetaLfc:=if(ftt==2){if(nz>2){"
@@ -827,7 +1067,7 @@ fclose(sortie);
TVI(L,F,nom,nomv,f,ftt,ao,trigo,nmr):={
nl:=size(L);
f:=unapply(f,x);
-fp:=fonction_derivee(f);
+fp:=function_diff(f);
Z:=concat(L,F);
S:=[];
@@ -835,24 +1075,24 @@ S:=[];
if(trigo==t){
all_trig_solutions:=1;
reset_solve_counter(-1,-1);
-SS:=resoudre(factor(simplifier(fp(x))),x);
+SS:=solve(factor(simplify(fp(x))),x);
ns:=size(SS);
for(k:=0;k<ns;k++){
m:=0;
-while(evalf(simplifier(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){
-S:=concat(S,simplifier(subst(SS[k],n_1=m)));m:=m+1;
+while(evalf(simplify(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){
+S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m+1;
};m:=-1;
while(evalf(subst(SS[k],n_1=m))>=L[0]){
-S:=concat(S,simplifier(subst(SS[k],n_1=m)));m:=m-1;
+S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m-1;
}
}
}else{
-S:=resoudre(fp(x),x);
+S:=solve(fp(x),x);
}
si size(S)>0 alors pour j de 0 jusque size(S)-1 faire
kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
- if(kk==1){Z:=append(Z,simplifier(S[j]))};
+ if(kk==1){Z:=append(Z,simplify(S[j]))};
fpour
fsi;
@@ -869,10 +1109,10 @@ l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
-LI:=limite(f(x),x,Z[0],1);
-LF:=limite(f(x),x,Z[nz-1],-1);
+LI:=limit(f(x),x,Z[0],1);
+LF:=limit(f(x),x,Z[nz-1],-1);
LP:=NULL;
-if(nz>2){ for(r:=1; r<=nz-2;r++){LP:=LP,if(member(Z[r],F)){limite(f(x),x,Z[r],-1),limite(f(x),x,Z[r],1)}else{f(Z[r])}}};
+if(nz>2){ for(r:=1; r<=nz-2;r++){LP:=LP,if(member(Z[r],F)){limit(f(x),x,Z[r],-1),limit(f(x),x,Z[r],1)}else{f(Z[r])}}};
if(nz>2){ LL:=[LI,LP,LF]}else{LL:=[LI,LF]};
NL:=size(LL);
@@ -892,8 +1132,8 @@ l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);
TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
- k0:= evalf(limite(f(x),x=Z[0],1))> evalf(limite(f(x),x=Z[1],-1));
- kz:=evalf(limite(f(x),x=Z[nz-1],-1))> evalf(limite(f(x),x=Z[nz-2],1));
+ k0:= evalf(limit(f(x),x=Z[0],1))> evalf(limit(f(x),x=Z[1],-1));
+ kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1));
lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
@@ -922,43 +1162,43 @@ else{for(r:=1; r<=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))>0;TestS:=(sign(evalf(LL[
-lsf:=if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;"}
-lm0:=limite(f(x),x=Z[0],1)==-infinity;
+lsf:=if(member(Z[nz-1],F)==0){""}else{"nonDefBarre;"}
+lm0:=limit(f(x),x=Z[0],1)==-infinity;
TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
li:=lvic+nom+"}$ etex);
-"+ if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}
- else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}+
+"+ if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}
+ else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}+
if(k0==1){"1);"}else{"0);"}+if(TestS==0){"valPos(btex $ "+ao+" $ etex,0.5);"}else{" "};
if(nz>2){if(nz==NL){for(r:=1; r<=nz-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
- krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1));
- krp:=evalf(limite(f(x),x=Z[r],1))> evalf(limite(f(x),x=Z[r+1],-1)) ;
- lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
+ krm:=evalf(limit(f(x),x=Z[r-1],1))< evalf(limit(f(x),x=Z[r],-1));
+ krp:=evalf(limit(f(x),x=Z[r],1))> evalf(limit(f(x),x=Z[r+1],-1)) ;
+ lmrm:=limit(f(x),x=Z[r],-1)==-infinity;lmrp:=limit(f(x),x=Z[r],1)==-infinity;
lp:=lp+if(member(Z[r],F)) {
- "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
- else{"valPos(btex $"+latex(simplifier(f(Z[r])))+"$
+ "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
+ else{"valPos(btex $"+latex(simplify(f(Z[r])))+"$
etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+if(TestS==0){"valPos(btex
$ "+ao+" $ etex,0.5);"
}else{" "};
};//for
}else{rr:=1;for(r:=1; r<=NL-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
- krm:=evalf(limite(f(x),x=Z[rr-1],1))< evalf(limite(f(x),x=Z[rr],-1));
- krp:=evalf(limite(f(x),x=Z[rr],1))> evalf(limite(f(x),x=Z[rr+1],-1)) ;
- lmrm:=limite(f(x),x=Z[rr],-1)==-infinity;lmrp:=limite(f(x),x=Z[rr],1)==-infinity; TestL:=(abs(LL[r])==abs(LL[r+1]));
+ krm:=evalf(limit(f(x),x=Z[rr-1],1))< evalf(limit(f(x),x=Z[rr],-1));
+ krp:=evalf(limit(f(x),x=Z[rr],1))> evalf(limit(f(x),x=Z[rr+1],-1)) ;
+ lmrm:=limit(f(x),x=Z[rr],-1)==-infinity;lmrp:=limit(f(x),x=Z[rr],1)==-infinity; TestL:=(abs(LL[r])==abs(LL[r+1]));
if(TestS==0){if( TestL==1 ){lp:=lp}else{ lp:=lp+if(member(Z[rr],F)) {
- "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
- else{"valPos(btex $"+latex(simplifier(f(Z[rr])))+"$
+ "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
+ else{"valPos(btex $"+latex(simplify(f(Z[rr])))+"$
etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+"valPos(btex
$ "+ao+" $ etex,0.5);
";rr:=rr+1;
}// else testL==1
}//testS==0
else{lp:=lp+if(member(Z[rr],F)){
- "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
- else{"valPos(btex $"+latex(simplifier(f(Z[rr])))+"$
+ "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
+ else{"valPos(btex $"+latex(simplify(f(Z[rr])))+"$
etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
"}}};rr:=rr+1;
}//else testS==0
@@ -968,9 +1208,15 @@ else{lp:=lp+if(member(Z[rr],F)){
};//if nz>2
-lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
- lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}else{"nonDefBarre;limGauche(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}+
- if(kz==1){"1);"}else{"0);"};
+lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
+
+
+lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
+ if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+
+ if(kz==1){"1);"}else{"0);"}}
+ else{"limGauche(btex $"+
+ if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+
+ if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};
@@ -1058,7 +1304,7 @@ TVIapp(L,F,nom,nomv,f,ftt,ao,nmr):={
nl:=size(L);
f:=unapply(f,x);
-fp:=fonction_derivee(f);
+fp:=function_diff(f);
z0:=concat(L,F);z:=sort(z0);
nz:=size(z);
@@ -1081,7 +1327,7 @@ else{ j:=[seq(k,k=floor(z[0])..floor(z[nz-1]))] minus F;for k in j do S:=S,fsolv
si size(S)>0 alors pour j de 0 jusque size(S)-1 faire
kk:=(re(S[j])==S[j]);kok:=(evalf(S[j])>=L[0]) and (evalf(S[j])<=L[1]);
- if(kk==1){if(kok==1){z:=append(z,simplifier(S[j]))}};
+ if(kk==1){if(kok==1){z:=append(z,simplify(S[j]))}};
fpour;
fsi;
@@ -1113,10 +1359,10 @@ l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
-LI:=limite(f(x),x,Z[0],1);
-LF:=limite(f(x),x,Z[nz-1],-1);
+LI:=limit(f(x),x,Z[0],1);
+LF:=limit(f(x),x,Z[nz-1],-1);
LP:=NULL;
-if(nz>2){ for(r:=1; r<=nz-2;r++){LP:=LP,if(member(Z[r],F)){limite(f(x),x,Z[r],-1),limite(f(x),x,Z[r],1)}else{f(Z[r])}}};
+if(nz>2){ for(r:=1; r<=nz-2;r++){LP:=LP,if(member(Z[r],F)){limit(f(x),x,Z[r],-1),limit(f(x),x,Z[r],1)}else{f(Z[r])}}};
if(nz>2){ LL:=[LI,LP,LF]}else{LL:=[LI,LF]};
NL:=size(LL);
@@ -1136,8 +1382,8 @@ l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);
TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
- k0:= evalf(limite(f(x),x=Z[0],1))> evalf(limite(f(x),x=Z[1],-1));
- kz:=evalf(limite(f(x),x=Z[nz-1],-1))> evalf(limite(f(x),x=Z[nz-2],1));
+ k0:= evalf(limit(f(x),x=Z[0],1))> evalf(limit(f(x),x=Z[1],-1));
+ kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1));
lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
@@ -1166,43 +1412,43 @@ else{for(r:=1; r<=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))>0;TestS:=(sign(evalf(LL[
-lsf:=if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;"}
-lm0:=limite(f(x),x=Z[0],1)==-infinity;
+lsf:=if(member(Z[nz-1],F)==0){""}else{"nonDefBarre;"}
+lm0:=limit(f(x),x=Z[0],1)==-infinity;
TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
li:=lvic+nom+"}$ etex);
-"+ if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}
- else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}+
+"+ if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}
+ else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}+
if(k0==1){"1);"}else{"0);"}+if(TestS==0){"valPos(btex $ "+ao+" $ etex,0.5);"}else{" "};
if(nz>2){if(nz==NL){for(r:=1; r<=nz-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
- krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1));
- krp:=evalf(limite(f(x),x=Z[r],1))> evalf(limite(f(x),x=Z[r+1],-1)) ;
- lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
+ krm:=evalf(limit(f(x),x=Z[r-1],1))< evalf(limit(f(x),x=Z[r],-1));
+ krp:=evalf(limit(f(x),x=Z[r],1))> evalf(limit(f(x),x=Z[r+1],-1)) ;
+ lmrm:=limit(f(x),x=Z[r],-1)==-infinity;lmrp:=limit(f(x),x=Z[r],1)==-infinity;
lp:=lp+if(member(Z[r],F)) {
- "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
- else{"valPos(btex $"+latex(simplifier(f(Z[r])))+"$
+ "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
+ else{"valPos(btex $"+latex(simplify(f(Z[r])))+"$
etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+if(TestS==0){"valPos(btex
$ "+ao+" $ etex,0.5);"
}else{" "};
};//for
}else{rr:=1;for(r:=1; r<=NL-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
- krm:=evalf(limite(f(x),x=Z[rr-1],1))< evalf(limite(f(x),x=Z[rr],-1));
- krp:=evalf(limite(f(x),x=Z[rr],1))> evalf(limite(f(x),x=Z[rr+1],-1)) ;
- lmrm:=limite(f(x),x=Z[rr],-1)==-infinity;lmrp:=limite(f(x),x=Z[rr],1)==-infinity; TestL:=(abs(LL[r])==abs(LL[r+1]));
+ krm:=evalf(limit(f(x),x=Z[rr-1],1))< evalf(limit(f(x),x=Z[rr],-1));
+ krp:=evalf(limit(f(x),x=Z[rr],1))> evalf(limit(f(x),x=Z[rr+1],-1)) ;
+ lmrm:=limit(f(x),x=Z[rr],-1)==-infinity;lmrp:=limit(f(x),x=Z[rr],1)==-infinity; TestL:=(abs(LL[r])==abs(LL[r+1]));
if(TestS==0){if( TestL==1 ){lp:=lp}else{ lp:=lp+if(member(Z[rr],F)) {
- "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
- else{"valPos(btex $"+latex(simplifier(f(Z[rr])))+"$
+ "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
+ else{"valPos(btex $"+latex(simplify(f(Z[rr])))+"$
etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+"valPos(btex
$ "+ao+" $ etex,0.5);
";rr:=rr+1;
}// else testL==1
}//testS==0
else{lp:=lp+if(member(Z[rr],F)){
- "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
- else{"valPos(btex $"+latex(simplifier(f(Z[rr])))+"$
+ "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
+ else{"valPos(btex $"+latex(simplify(f(Z[rr])))+"$
etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
"}}};rr:=rr+1;
}//else testS==0
@@ -1212,13 +1458,23 @@ else{lp:=lp+if(member(Z[rr],F)){
};//if nz>2
-lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
- lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}else{"nonDefBarre;limGauche(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}+
- if(kz==1){"1);"}else{"0);"};
+lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
+
+
+
+lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
+ if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+
+ if(kz==1){"1);"}else{"0);"}}
+ else{"limGauche(btex $"+
+ if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+
+ if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};
+
+
+
MetaLfc:= if(ftt==2){if(nz>2){"beginTableau("+nmr+")"+
l0+lsi+lsp+lsf+"
endTableau;
@@ -1313,23 +1569,23 @@ reset_solve_counter(-1,-1);
for(d:=0;d<=1;d++){
f:=subst(f,f[d]=unapply(f[d],t));
-fp:=append(fp,fonction_derivee(f[d]));
+fp:=append(fp,function_diff(f[d]));
LLL:=concat(L,F[d]);
Z:=LLL union Z;
-SS:=resoudre(factor(simplifier(fp[d](t))),t);
+SS:=solve(factor(simplify(fp[d](t))),t);
ns:=size(SS);
for(k:=0;k<ns;k++){
if(trigo==t){
m:=0;
-while(evalf(simplifier(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){
+while(evalf(simplify(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){
-S:=concat(S,simplifier(subst(SS[k],n_1=m)));m:=m+1;
+S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m+1;
};m:=-1;
while(evalf(subst(SS[k],n_1=m))>=L[0]){
-S:=concat(S,simplifier(subst(SS[k],n_1=m)));m:=m-1;
+S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m-1;
}
}else{
@@ -1339,9 +1595,9 @@ S:=concat(S,SS);
si size(S)>0 alors pour j de 0 jusque size(S)-1 faire
- qq:=member(simplifier(S[j]),Z)==0;
+ qq:=member(simplify(S[j]),Z)==0;
kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
- if(kk==1){if(qq==1){Z:=append(Z,simplifier(S[j]))}};
+ if(kk==1){if(qq==1){Z:=append(Z,simplify(S[j]))}};
fpour
fsi;
Z:=sort(Z);
@@ -1381,22 +1637,22 @@ FFF:=[[],[]];
for(d:=0;d<=1;d++){
FFF[d]:=concat(F[d],[-infinity,+infinity]);
- k0:= evalf(limite(f[d](x),x=Z[0],1))> evalf(limite(f[d](x),x=Z[1],-1));
- kz:=evalf(limite(f[d](x),x=Z[nz-1],-1))> evalf(limite(f[d](x),x=Z[nz-2],1));
+ k0:= evalf(limit(f[d](x),x=Z[0],1))> evalf(limit(f[d](x),x=Z[1],-1));
+ kz:=evalf(limit(f[d](x),x=Z[nz-1],-1))> evalf(limit(f[d](x),x=Z[nz-2],1));
//}
//$
- lsi[d]:=lsic+nom[d]+"'("+nomv+")}$ etex);"+if(member(Z[0],FFF[d])==0){"valBarre(btex $"+latex(simplifier(fp[d](Z[0])))+"$ etex);"}else{if(Z[0]==-infinity){" "}else{"nonDefBarre;
+ lsi[d]:=lsic+nom[d]+"'("+nomv+")}$ etex);"+if(member(Z[0],FFF[d])==0){"valBarre(btex $"+latex(simplify(fp[d](Z[0])))+"$ etex);"}else{if(Z[0]==-infinity){" "}else{"nonDefBarre;
"}}+
if(Z[0]==-infinity){if(sign(evalf(fp[d](if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F[d])==0){
if(sign(fp[d](Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{
if(sign(fp[d]((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }}
if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp[d](Z[r]+0.01))>0;
- lsp[d]:=lsp[d]+if(member(Z[r],F[d])==0){"valBarre(btex $"+latex(simplifier(fp[d](Z[r])))+"$ etex);"}else{"nonDefBarre;"}+
+ lsp[d]:=lsp[d]+if(member(Z[r],F[d])==0){"valBarre(btex $"+latex(simplify(fp[d](Z[r])))+"$ etex);"}else{"nonDefBarre;"}+
if(ksp==1){"plus;"}else{"moins;"}
}; }
-lsf[d]:=if(member(Z[nz-1],FFF[d])==0){"valBarre(btex $"+latex(simplifier(fp[d](Z[nz-1])))+"$ etex);"}else{if(Z[nz-1]==+infinity){" "}else{"nonDefBarre;"}}
+lsf[d]:=if(member(Z[nz-1],FFF[d])==0){"valBarre(btex $"+latex(simplify(fp[d](Z[nz-1])))+"$ etex);"}else{if(Z[nz-1]==+infinity){" "}else{"nonDefBarre;"}}
@@ -1417,33 +1673,39 @@ lsf[d]:=if(member(Z[nz-1],FFF[d])==0){"valBarre(btex $"+latex(simplifier(fp[d](Z
for(d:=0;d<=1;d++){
- K0[d]:= evalf(limite(f[d](x),x=Z[0],1))> evalf(limite(f[d](x),x=Z[1],-1));
- Kz[d]:=evalf(limite(f[d](x),x,Z[nz-1],-1))> evalf(limite(f[d](x),x,Z[nz-2],1));
+ K0[d]:= evalf(limit(f[d](x),x=Z[0],1))> evalf(limit(f[d](x),x=Z[1],-1));
+ Kz[d]:=evalf(limit(f[d](x),x,Z[nz-1],-1))> evalf(limit(f[d](x),x,Z[nz-2],1));
//{
//$
-lm0[d]:=limite(f[d](x),x,Z[0],1)==-infinity;
+lm0[d]:=limit(f[d](x),x,Z[0],1)==-infinity;
li[d]:=lvic+nom[d]+"}$ etex);"+
- if(member(Z[0],F[d])==0){"valPos(btex $"+if(lm0[d]==1){"-\\infty"}else{latex(simplifier(limite(f[d](x),x,Z[0],1)))}+"$ etex,"}
- else{"nonDefBarre;limDroite(btex $"+if(lm0[d]==1){"-\\infty"}else{latex(simplifier(limite(f[d](x),x,Z[0],1)))}+"$ etex,"}+
+ if(member(Z[0],F[d])==0){"valPos(btex $"+if(lm0[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x,Z[0],1)))}+"$ etex,"}
+ else{"nonDefBarre;limDroite(btex $"+if(lm0[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x,Z[0],1)))}+"$ etex,"}+
if(K0[d]==1){"1"}else{"0"}+
");";
- if(nz>2){ for(r:=1; r<=nz-2;r++){ krm[d]:=evalf(limite(f[d](x),x=Z[r-1],1))< evalf(limite(f[d](x),x=Z[r],-1));
- krp[d]:=evalf(limite(f[d](x),x=Z[r],1))> evalf(limite(f[d](x),x,Z[r+1],-1)) ;
- lmrm[d]:=limite(f[d](x),x,Z[r],-1)==-infinity;lmrp[d]:=limite(f[d](x),x,Z[r],1)==-infinity;
+ if(nz>2){ for(r:=1; r<=nz-2;r++){ krm[d]:=evalf(limit(f[d](x),x=Z[r-1],1))< evalf(limit(f[d](x),x=Z[r],-1));
+ krp[d]:=evalf(limit(f[d](x),x=Z[r],1))> evalf(limit(f[d](x),x,Z[r+1],-1)) ;
+ lmrm[d]:=limit(f[d](x),x,Z[r],-1)==-infinity;lmrp[d]:=limit(f[d](x),x,Z[r],1)==-infinity;
lp[d]:=lp[d]+if(member(Z[r],F[d])){
"limGauche(btex
- $"+if(lmrm[d]==1){"-\\infty"}else{latex(simplifier(limite(f[d](x),x,Z[r],-1)))}+"$
- etex,"+if(krm[d]==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp[d]==1){"-\\infty"}else{latex(simplifier(limite(f[d](x),x,Z[r],1)))}+"$ etex,"+if(krp[d]==1){"1);"}else{"0);"}}
- else{"valPos(btex $"+latex(simplifier(f[d](Z[r])))+"$
+ $"+if(lmrm[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x,Z[r],-1)))}+"$
+ etex,"+if(krm[d]==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x,Z[r],1)))}+"$ etex,"+if(krp[d]==1){"1);"}else{"0);"}}
+ else{"valPos(btex $"+latex(simplify(f[d](Z[r])))+"$
etex,"+if(sign(evalf(fp[d](Z[r]-0.001)))==sign(evalf((fp[d](Z[r]+0.001))) )){"0.5);"}else{if(krp[d]==1){"1);"}else{"0);
"}}}
}; }
-lnz[d]:=limite(f[d](x),x=Z[nz-1],-1)==-infinity;
- lf[d]:=if(member(Z[nz-1],F[d])==0){"valPos(btex $"+if(lnz[d]==1){"-\\infty"}else{latex(simplifier(limite(f[d](x),x,Z[nz-1],-1)))}+"$ etex,"}else{"nonDefBarre;limGauche(btex $"+if(lnz[d]==1){"-\\infty"}else{latex(simplifier(limite(f[d](x),x,Z[nz-1],-1)))}+"$ etex,"}+
- if(Kz[d]==1){"1);"}else{"0);
-"};
+lnz[d]:=limit(f[d](x),x=Z[nz-1],-1)==-infinity;
+
+
+lf[d]:=if(member(Z[nz-1],F[d])==0){"valPos(btex $"+
+ if(lnz[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x=Z[nz-1],-1)))}+"$ etex,"+
+ if(Kz[d]==1){"1);"}else{"0);"}}
+ else{"limGauche(btex $"+
+ if(lnz[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x=Z[nz-1],-1)))}+"$ etex,"+
+ if(Kz[d]==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};
+
@@ -1557,27 +1819,27 @@ pour k de 0 jusque n-1 faire
if(trigo==t){
all_trig_solutions:=1;
reset_solve_counter(-1,-1);
-SS:=resoudre(factor(simplifier(L[k](x))),x);
+SS:=solve(factor(simplify(L[k](x))),x);
ns:=size(SS);
for(j:=0;j<ns;j++){
m:=0;
-while(evalf(simplifier(subst(SS[j],n_1=m)))<=evalf(maxi)){
-S:=concat(S,simplifier(subst(SS[j],n_1=m)));m:=m+1;
+while(evalf(simplify(subst(SS[j],n_1=m)))<=evalf(maxi)){
+S:=concat(S,simplify(subst(SS[j],n_1=m)));m:=m+1;
};m:=-1;
while(evalf(subst(SS[j],n_1=m))>=evalf(mini)){
-S:=concat(S,simplifier(subst(SS[j],n_1=m)));m:=m-1;
+S:=concat(S,simplify(subst(SS[j],n_1=m)));m:=m-1;
}
}
}else{
-S:=resoudre(L[k](x),x);
+S:=solve(L[k](x),x);
}
si size(S)>0 alors pour j de 0 jusque size(S)-1 faire
- if(S[j]>mini and S[j]<maxi){Z:=Z,simplifier(S[j]);}
+ if(S[j]>mini and S[j]<maxi){Z:=Z,simplify(S[j]);}
fpour;
fsi;
fpour;
@@ -1641,12 +1903,12 @@ for(p:=0;p<=n-1;p++){lp:="";
if(L[p](Z[0]-0.01)>0){"plus;"}else{"moins;"};
for(r:=0; r<=nz-2;r++){
- lp:=lp+if(simplifier(L[p](Z[r]))==0){"
+ lp:=lp+if(simplify(L[p](Z[r]))==0){"
valBarre(btex 0 etex);"}else{"barre;
"}+
if(L[p]((Z[r]+Z[r+1])*.5)>0){"plus;"}else{"moins;"}};
- li:=li+lp+ if(simplifier(L[p](Z[nz-1]))==0){"valBarre(btex 0 etex);"}else{"barre;"}+
+ li:=li+lp+ if(simplify(L[p](Z[nz-1]))==0){"valBarre(btex 0 etex);"}else{"barre;"}+
if(L[p](Z[nz-1]+1.0)>0){"plus;"}else{"moins;
"}+if(maxi!=+infinity and L[p](maxi)==0){"
valBarre(btex 0 etex);"}else{"
@@ -1713,20 +1975,20 @@ pour k de 0 jusque n-1 faire
if(trigo==t){
all_trig_solutions:=1;
reset_solve_counter(-1,-1);
-SS:=resoudre(factor(simplifier(L[k](x))),x);
+SS:=solve(factor(simplify(L[k](x))),x);
ns:=size(SS);
for(j:=0;j<ns;j++){
mm:=0;
-while(evalf(simplifier(subst(SS[j],n_1=mm)))<=evalf(maxi)){
-S:=concat(S,simplifier(subst(SS[j],n_1=mm)));mm:=mm+1;
+while(evalf(simplify(subst(SS[j],n_1=mm)))<=evalf(maxi)){
+S:=concat(S,simplify(subst(SS[j],n_1=mm)));mm:=mm+1;
};mm:=-1;
while(evalf(subst(SS[j],n_1=mm))>=evalf(mini)){
-S:=concat(S,simplifier(subst(SS[j],n_1=mm)));mm:=mm-1;
+S:=concat(S,simplify(subst(SS[j],n_1=mm)));mm:=mm-1;
}
}
}else{
-S:=resoudre(L[k](x),x);
+S:=solve(L[k](x),x);
}
@@ -1734,7 +1996,7 @@ S:=resoudre(L[k](x),x);
si size(S)>0 alors pour j de 0 jusque size(S)-1 faire
- if(S[j]>mini and S[j]<maxi){Z:=Z,simplifier(S[j]);}
+ if(S[j]>mini and S[j]<maxi){Z:=Z,simplify(S[j]);}
fpour;
fsi;
fpour;
@@ -1744,28 +2006,28 @@ pour k de 0 jusque m-1 faire
-if(trigo==1){
+if(trigo==t){
all_trig_solutions:=1;
reset_solve_counter(-1,-1);
-SSF:=resoudre(factor(simplifier(Fo[k](x))),x);
+SSF:=solve(factor(simplify(Fo[k](x))),x);
nsf:=size(SSF);
for(j:=0;j<nsf;j++){
mm:=0;
-while(evalf(simplifier(subst(SSF[j],n_1=mm)))<=evalf(maxi)){
-SF:=concat(SF,simplifier(subst(SSF[j],n_1=mm)));mm:=mm+1;
+while(evalf(simplify(subst(SSF[j],n_1=mm)))<=evalf(maxi)){
+SF:=concat(SF,simplify(subst(SSF[j],n_1=mm)));mm:=mm+1;
};mm:=-1;
while(evalf(subst(SSF[j],n_1=mm))>=evalf(mini)){
-SF:=concat(SF,simplifier(subst(SSF[j],n_1=mm)));mm:=mm-1;
+SF:=concat(SF,simplify(subst(SSF[j],n_1=mm)));mm:=mm-1;
}
}
}else{
-SF:=resoudre(Fo[j](x),x);
+SF:=solve(Fo[j](x),x);
}
si size(SF)>0 alors pour j de 0 jusque size(SF)-1 faire
- FF:=FF,simplifier(SF[j]);
- if(SF[j]>mini and SF[j]<maxi){F:=F,simplifier(SF[j]);}
+ FF:=FF,simplify(SF[j]);
+ if(SF[j]>mini and SF[j]<maxi){F:=F,simplify(SF[j]);}
fpour;
fsi;
fpour;
@@ -1839,12 +2101,12 @@ for(p:=0;p<=n-1;p++){lp:="";
if(L[p](Z[0]-0.01)>0){"plus;"}else{"moins;"};
for(r:=0; r<=nz-2;r++){
- lp:=lp+if(simplifier(L[p](Z[r]))==0){"
+ lp:=lp+if(simplify(L[p](Z[r]))==0){"
valBarre(btex 0 etex);"}else{"barre;
"}+
if(L[p]((Z[r]+Z[r+1])*.5)>0){"plus;"}else{"moins;"}};
- li:=li+lp+ if(simplifier(L[p](Z[nz-1]))==0){"valBarre(btex 0 etex);"}else{"barre;"}+
+ li:=li+lp+ if(simplify(L[p](Z[nz-1]))==0){"valBarre(btex 0 etex);"}else{"barre;"}+
if(L[p](Z[nz-1]+1.0)>0){"plus;"}else{"moins;
"}+if(maxi!=+infinity and L[p](maxi)==0){"
valBarre(btex 0 etex);"}else{" "}
@@ -1910,8 +2172,8 @@ fclose(sortie);
\begin{VerbatimOut}{XcasTabSigna.cxx}
TSa(a,b,c,d,nmr):={
-zA:=resoudre(a*x+b=0,x)[0];
-zB:=resoudre(c*x+d=0,x)[0];
+zA:=solve(a*x+b=0,x)[0];
+zB:=solve(c*x+d=0,x)[0];
zmin:=min(zA,zB);
zmax:=max(zA,zB);
Meta:= "
@@ -1968,11 +2230,10 @@ fclose(sortie);
\begin{VerbatimOut}{XcasTSc.cxx}
-TSc(g,D,trigo,nmr):={
+TSc(g,D,F,trigo,nmr):={
f:=unapply(g,x);
-Z:=NULL;
mini:=D[0]; maxi:=D[1];lm:=" ";
-
+Z:=mini,maxi;
S:=[];
@@ -1980,20 +2241,20 @@ S:=[];
if(trigo==t){
all_trig_solutions:=1;
reset_solve_counter(-1,-1);
-SS:=resoudre(factor(simplifier(f(x))),x);
+SS:=solve(factor(simplify(f(x))),x);
ns:=size(SS);
for(j:=0;j<ns;j++){
m:=0;
-while(evalf(simplifier(subst(SS[j],n_1=m)))<=evalf(maxi)){
-S:=concat(S,simplifier(subst(SS[j],n_1=m)));m:=m+1;
+while(evalf(simplify(subst(SS[j],n_1=m)))<=evalf(maxi)){
+S:=concat(S,simplify(subst(SS[j],n_1=m)));m:=m+1;
};m:=-1;
while(evalf(subst(SS[j],n_1=m))>=evalf(mini)){
-S:=concat(S,simplifier(subst(SS[j],n_1=m)));m:=m-1;
+S:=concat(S,simplify(subst(SS[j],n_1=m)));m:=m-1;
}
}
}else{
-S:=resoudre(f(x),x);
+S:=solve(f(x),x);
}
@@ -2002,56 +2263,60 @@ S:=resoudre(f(x),x);
if(size(S)==0){
l0:="val(btex $"+latex(D[0])+"$ etex);val(btex $"+latex(D[1])+"$ etex);";
-li:=if(mini!=-infinity and f(mini)==0){"
+li:=if(member(mini,F)!=0){"nonDefBarre;"}else{if(mini!=-infinity and f(mini)==0){"
valBarre(btex 0 etex);"}else{"
- "}+
+ "}}+
if(mini!=-infinity or maxi!=+infinity){if(f((mini+maxi)*0.5>0)){"plus;"}else{"moins;"}}else{if(f(0)>0){"plus;"}else{"moins;"}};
-lf:=if(maxi!=+infinity and f(maxi)==0){"
+lf:=if(member(maxi,F)!=0){"nonDefBarre;"}else{if(maxi!=+infinity and f(maxi)==0){"
valBarre(btex 0 etex);"}else{"
- "};
+ "}};
}
else{pour j de 0 jusque size(S)-1 faire
- if(S[j]>mini and S[j]<maxi){Z:=Z,simplifier(S[j])};
+ if(S[j]>mini and S[j]<maxi){Z:=Z,simplify(S[j])};
fpour;
-
+Z:=concat([Z],F);
Z:=sort(Z);
nz:=size(Z);
if(nz>2){pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=Z[0..u-1],Z[u+1..nz-1];nz:=nz-1;
+ si Z[u]==Z[u+1] alors Z:=concat(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
fsi;
fpour;}
+if(Z[0]==Z[1]){Z:=Z[1..nz-1];nz:=nz-1;}
+if(Z[nz-2]==Z[nz-1]){Z:=Z[0..nz-2];nz:=nz-1;}
nz:=size(Z);
l0:=" ";li:=" ";lr:=" ";
-if(nz==0){l0:="val(btex $"+latex(D[0])+"$ etex);val(btex $"+latex(D[1])+"$ etex);";
+if(nz==2){l0:="val(btex $"+latex(D[0])+"$ etex);val(btex $"+latex(D[1])+"$ etex);";
li:=if(mini!=-infinity and f(mini)==0){"
- valBarre(btex 0 etex);"}else{"
- "}+
-if(f((mini+maxi)*0.5>0)){"plus;"}else{"moins;"};
+ valBarre(btex 0 etex);"}else{if(member(mini,F)==0){"
+ "}else{"nonDefBarre;"}}+
+if(f((mini+maxi)*0.5)>0){"plus;"}else{"moins;"};
lf:=if(maxi!=+infinity and f(maxi)==0){"
- valBarre(btex 0 etex);"}else{"
- "};
+ valBarre(btex 0 etex);"}else{if(member(maxi,F)==0){"
+ "}else{"nonDefBarre;"}
+ };
}else{
-l0:="val(btex $"+latex(D[0])+"$ etex);";li:=" ";
-pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
+l0:="val(btex $"+latex(Z[0])+"$ etex);";li:=" ";
+pour m de 1 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
";
fpour;
-l0:=l0+"val(btex $"+latex(D[1])+"$ etex);";
+
li:= if(mini!=-infinity and f(mini)==0){"
- valBarre(btex 0 etex);"}else{"
- "}+
-if(f(Z[0]-0.01)>0){"plus;"}else{"moins;"}+"valBarre(btex 0 etex);";
+ valBarre(btex 0 etex);"}else{if(member(mini,F)==0){"
+ "}else{"nonDefBarre;"}
+ }
-lm:=if(nz>=2){for(r:=0; r<=nz-2;r++){lm:=lm+if(f((Z[r]+Z[r+1])*.5)>0){"plus;"}else{"moins;"}+
- "valBarre(btex 0 etex);"
+lm:=if(nz>2){for(r:=0; r<nz-2;r++){lm:=lm+if(f((Z[r]+Z[r+1])*.5)>0){"plus;"}else{"moins;"}+
+ if(member(Z[r+1],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}
}}else{" "};
-lf:=if(f(Z[nz-1]+1.0)>0){"plus;"}else{"moins;"}+if(maxi!=+infinity and f(maxi)==0){"valBarre(btex 0 etex);"}else{"
- "};
+lf:=if(f(Z[nz-2]+0.1)>0){"plus;"}else{"moins;"}+if(maxi!=+infinity and f(maxi)==0){"valBarre(btex 0 etex);"}else{if(member(maxi,F)==0){"
+ "}else{"nonDefBarre;"}
+ };
}};
@@ -2076,8 +2341,6 @@ sortie:=fopen("XCasmpfc.mp");
fprint(sortie,Unquoted,MetaLfc);
fclose(sortie);
-
-
}:;
\end{VerbatimOut}
@@ -2414,6 +2677,37 @@ read("XCasTVIapp.user");
+
+
+\begin{VerbatimOut}{XCasTVPC.giac}
+maple_mode(0);
+read("config.cxx");
+read("XcasTVPC.cxx");
+read("XCasTVPC.user");
+\end{VerbatimOut}
+
+\newenvironment{TVPC}%
+{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVPC.user}}%
+{\end{VerbatimOut}
+\dresse{TVPC}}
+
+\newenvironment{TVPC*}[1]{%
+\setcounter{TVnbis}{\theTVn}
+\setcounter{TVn}{#1}
+\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVPC.user}}%
+{\end{VerbatimOut}\dressetoile{TVPC}}
+
+
+
+
+
+
+
+
+
+
+
+
%% pour nettoyer les fichiers auxiliaires
\AtEndDocument{\immediate\write18{\cat queue.mp >> \nomtravail.Tab.mp}