summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2009-01-30 00:04:41 +0000
committerKarl Berry <karl@freefriends.org>2009-01-30 00:04:41 +0000
commit308a0af8573a8c98d928c70da0ae23af2a9efc9c (patch)
tree4286dabd335223f38e8680edd82f3d7f9f94e1aa
parent57dc228a8a25fbb466bb7be4fe4ca0ba310c16f2 (diff)
tablor 4.02c
git-svn-id: svn://tug.org/texlive/trunk@12009 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/tablor/tablor.html426
-rw-r--r--Master/texmf-dist/tex/latex/tablor/tablor-xetex.sty181
-rw-r--r--Master/texmf-dist/tex/latex/tablor/tablor.sty181
3 files changed, 449 insertions, 339 deletions
diff --git a/Master/texmf-dist/doc/latex/tablor/tablor.html b/Master/texmf-dist/doc/latex/tablor/tablor.html
index fde38cb5681..7841bf6b493 100644
--- a/Master/texmf-dist/doc/latex/tablor/tablor.html
+++ b/Master/texmf-dist/doc/latex/tablor/tablor.html
@@ -22,7 +22,7 @@
}
.constant {
/* font-lock-constant-face */
- color: #68228b;
+ color: #9932cc;
font-weight: bold;
}
.flyspell-duplicate {
@@ -31,6 +31,12 @@
font-weight: bold;
text-decoration: underline;
}
+ .flyspell-incorrect {
+ /* flyspell-incorrect-face */
+ color: #ff4500;
+ font-weight: bold;
+ text-decoration: underline;
+ }
.font-latex-math {
/* font-latex-math-face */
color: #436eee;
@@ -54,11 +60,11 @@
}
.function-name {
/* font-lock-function-name-face */
- color: #6ca6cd;
+ color: #87ceeb;
}
.keyword {
/* font-lock-keyword-face */
- color: #32cd32;
+ color: #6495ed;
font-weight: bold;
}
.variable-name {
@@ -81,10 +87,10 @@
<body>
<pre>
<span class="font-latex-sedate">\NeedsTeXFormat</span>{LaTeX2e}[1995/12/01]
-<span class="font-latex-sedate">\ProvidesPackage</span>{<span class="flyspell-duplicate">tablor</span>}[24/11/2008 v4.02b la machine a creer des tableaux de signes et variations]
+<span class="font-latex-sedate">\ProvidesPackage</span>{<span class="flyspell-duplicate">tablor</span>}[29/01/2009 v4.02c la machine a creer des tableaux de signes et variations]
<span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\copyleft</span></span><span class="comment"> Connan le Barbare (aka Guillaume Connan) </span><span class="font-latex-sedate"><span class="comment">\copyright</span></span><span class="comment">
-</span><span class="comment-delimiter">% </span><span class="comment"><span class="flyspell-duplicate">This</span></span><span class="comment"> work may be distributed and/or mofified under the conditions
+</span><span class="comment-delimiter">% </span><span class="comment">This work may be distributed and/or mofified under the conditions
</span><span class="comment-delimiter">% </span><span class="comment">or the LaTeX Project Public Licence, either v1.3 or (at your option)
</span><span class="comment-delimiter">% </span><span class="comment">any later version. The latest version is in
</span><span class="comment-delimiter">% </span><span class="comment">http://www.latex-project.org/lppl/
@@ -105,7 +111,7 @@
</span><span class="comment-delimiter">%</span><span class="comment">
</span><span class="comment-delimiter">% </span><span class="comment">pour les tableaux de signes avec quotient
</span><span class="comment-delimiter">%</span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TSq}
-</span><span class="comment-delimiter">%</span><span class="comment"><span class="flyspell-duplicate">TSq</span></span><span class="comment">("Q",[-2*x+3,-4*x+5],[x^2-16,x-2],[a,b],n,</span><span class="font-latex-sedate"><span class="comment">\tv</span></span><span class="comment">)
+</span><span class="comment-delimiter">%</span><span class="comment">TSq("Q",[-2*x+3,-4*x+5],[x^2-16,x-2],[a,b],n,</span><span class="font-latex-sedate"><span class="comment">\tv</span></span><span class="comment">)
</span><span class="comment-delimiter">%%</span><span class="font-latex-sedate"><span class="comment">\end</span></span><span class="comment">{TSq}
</span><span class="comment-delimiter">% </span><span class="comment">un tableau de variation :
</span><span class="comment-delimiter">%</span><span class="comment">
@@ -196,14 +202,14 @@
<span class="comment-delimiter">%% </span><span class="comment">Initialisation du choix d'OS
-</span><span class="font-latex-sedate">\newboolean</span>{windows}<span class="font-latex-sedate">\setboolean</span>{windows}{false}
+</span><span class="font-latex-sedate">\newboolean</span>{windows}<span class="font-latex-sedate">\setboolean</span>{windows}{<span class="flyspell-duplicate">false</span>}
<span class="comment-delimiter">%% </span><span class="comment">on configure tablor dans un fichier exterieur pour la plateforme
</span><span class="comment-delimiter">%% </span><span class="comment">et l'editeur
</span>
-<span class="font-latex-sedate">\IfFileExists</span>{tablor.cfg}{<span class="font-latex-sedate"><span class="keyword">\input</span></span><span class="constant">{tablor.cfg}</span>}<span class="comment">%</span><span class="font-latex-sedate"><span class="comment">\typeout</span></span><span class="comment">{pas de fichier tablor.cfg}}
+<span class="font-latex-sedate">\IfFileExists</span>{tablor.cfg}{<span class="font-latex-sedate"><span class="keyword">\input</span></span><span class="constant">{tablor.cfg}</span>}<span class="comment">%</span><span class="font-latex-sedate"><span class="comment">\typeout</span></span><span class="comment">{pas de fichier tablor.</span><span class="comment"><span class="flyspell-duplicate">cfg</span></span><span class="comment">}}
</span>
<span class="comment-delimiter">%% </span><span class="comment">Definit des commandes disque selon l'OS utilise
@@ -211,7 +217,7 @@
</span> {<span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\rem</span></span><span class="function-name">}</span>{DEL } <span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\cat</span></span><span class="function-name">}</span>{TYPE }
<span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\cp</span></span><span class="function-name">}</span>{COPY }}<span class="comment">%
</span> {<span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\rem</span></span><span class="function-name">}</span>{rm }<span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\cat</span></span><span class="function-name">}</span>{cat }
- <span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\cp</span></span><span class="function-name">}</span>{cp }}
+ <span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\cp</span></span><span class="function-name">}</span>{<span class="flyspell-duplicate">cp</span> }}
@@ -219,7 +225,7 @@
-<span class="comment-delimiter">%% </span><span class="comment">pour ceux compilant via pdflatex
+<span class="comment-delimiter">%% </span><span class="comment">pour ceux compilant via </span><span class="comment"><span class="flyspell-incorrect">pdflatex</span></span><span class="comment">
</span>
<span class="font-latex-sedate">\ifpdf</span>
<span class="font-latex-sedate">\DeclareGraphicsRule</span>{*}{mps}{*}{}
@@ -227,7 +233,7 @@
<span class="comment-delimiter">%% </span><span class="comment">pour nettoyer les fichiers auxiliaires
</span>
-<span class="font-latex-sedate">\AtEndDocument</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\rem</span> *.user XCas* Xcas* *.mpx}
+<span class="font-latex-sedate">\AtEndDocument</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\rem</span> *.user XCas* Xcas* *.<span class="flyspell-incorrect">mpx</span>}
}
@@ -238,7 +244,7 @@
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{queue.mp}
- end
+ <span class="flyspell-duplicate">end</span>
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
@@ -251,7 +257,7 @@
<span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\nettoyer</span></span><span class="function-name">}</span>[1][<span class="font-latex-sedate">\jobname</span>]<span class="comment">%
-</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\rem</span> #1.Tab.log queue.mp enteteMP.cfg session.tex config.cxx}
+</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\rem</span> #1.Tab.log queue.mp enteteMP.cfg session.tex config.<span class="flyspell-duplicate">cxx</span>}
}
@@ -267,30 +273,30 @@
<span class="font-latex-sedate"><span class="keyword">\newcounter</span></span><span class="function-name">{TVn}</span>
<span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\tv</span></span><span class="function-name">}</span>{<span class="font-latex-sedate">\theTVn</span>}
-<span class="font-latex-sedate"><span class="keyword">\newcounter</span></span><span class="function-name">{TVnbis}</span>
+<span class="font-latex-sedate"><span class="keyword">\newcounter</span></span><span class="function-name">{</span><span class="function-name"><span class="flyspell-duplicate">TVnbis</span></span><span class="function-name">}</span>
<span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\tvbis</span></span><span class="function-name">}</span>{<span class="font-latex-sedate">\theTVnbis</span>}
<span class="comment-delimiter">%% </span><span class="comment">permet de donner un prefixe aux tableaux produits (</span><span class="font-latex-sedate"><span class="comment">\jobname</span></span><span class="comment"> par defaut)
-</span><span class="comment-delimiter">%% </span><span class="comment">effectue quelques verifications :
+</span><span class="comment-delimiter">%% </span><span class="comment">effectue quelques </span><span class="comment"><span class="flyspell-incorrect">verifications</span></span><span class="comment"> :
</span>
<span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\initablor</span></span><span class="function-name">}</span>[1][<span class="font-latex-sedate">\jobname</span>]{<span class="comment">%
</span><span class="font-latex-sedate"><span class="keyword">\renewcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\nomtravail</span></span><span class="function-name">}</span>{#1}<span class="comment">% Arret du nom des tableaux
</span><span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{0}</span><span class="comment">% Initialisation du compteur de tableaux.
-</span><span class="font-latex-sedate">\ifthenelse</span>{<span class="font-latex-sedate">\boolean</span>{xcas}}<span class="comment">% Avec l'option XCas
+</span><span class="font-latex-sedate">\ifthenelse</span>{<span class="font-latex-sedate">\boolean</span>{xcas}}<span class="comment">% Avec l'option </span><span class="comment"><span class="flyspell-duplicate">XCas</span></span><span class="comment">
</span>{<span class="font-latex-sedate">\IfFileExists</span>{<span class="font-latex-sedate">\nomtravail</span>.Tab.mp}<span class="comment">% Si Tableaux.mp est present...
</span> {<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\rem</span> <span class="font-latex-sedate">\nomtravail</span>.Tab.mp}}<span class="comment">% le detruire
</span> {}<span class="comment">%
-</span> <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cp</span> enteteMP.cfg <span class="font-latex-sedate">\nomtravail</span>.Tab.mp}<span class="comment">% Reconstituer l'ent&#234;te de Tableaux.mp
+</span> <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cp</span> enteteMP.cfg <span class="font-latex-sedate">\nomtravail</span>.Tab.mp}<span class="comment">% Reconstituer l'ent&#234;te de Tableaux.</span><span class="comment"><span class="flyspell-duplicate">mp</span></span><span class="comment">
</span>}
{<span class="font-latex-sedate">\IfFileExists</span>{<span class="font-latex-sedate">\nomtravail</span>.Tab.mp}<span class="comment">% Sans l'option XCas, si
</span> <span class="comment">% Tableaux.mp existe
</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost -interaction=batchmode <span class="font-latex-sedate">\nomtravail</span>.Tab}}<span class="comment">% l'executer pour reconstituer les figures
</span>{<span class="font-latex-sedate">\PackageWarning</span>{tablor}{Pas de source metapost pour creer les tableaux.}}<span class="comment">% sinon message d'erreur
</span> <span class="comment">% (mais pas d'arret car les tableaux
-</span> <span class="comment">% peuvent &#234;tre presents )
+</span> <span class="comment">% peuvent &#234;tre </span><span class="comment"><span class="flyspell-incorrect">presents</span></span><span class="comment"> )
</span>}}<span class="comment">%
</span>
@@ -300,7 +306,7 @@
<span class="font-latex-sedate">\makeatletter</span>
<span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\executGiacmp</span></span><span class="function-name">}</span>[1]{<span class="comment">%
</span><span class="font-latex-sedate">\ifthenelse</span>{<span class="font-latex-sedate">\boolean</span>{windows}}<span class="comment">%
-</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{giac #1 }}<span class="comment">%
+</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="flyspell-duplicate">giac</span> #1 }}<span class="comment">%
</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{giac &lt;#1 }}}
<span class="font-latex-sedate">\makeatother</span>
@@ -325,19 +331,19 @@
TV(L,F,nom,nomv,f,ftt,trigo,nmr):={
nl:=size(L);
f:=unapply(f,x);
-fp:=function_diff(f);
+<span class="flyspell-duplicate">fp</span>:=function_diff(f);
Z:=concat(L,F);
S:=[];
if(trigo==t){
-all_trig_solutions:=1;
+<span class="flyspell-duplicate">all</span>_trig_solutions:=1;
reset_solve_counter(-1,-1);
SS:=solve(factor(simplify(fp(x))),x);
ns:=size(SS);
for(k:=0;k&lt;ns;k++){
m:=0;
-while(evalf(simplify(subst(SS[k],n_1=m)))&lt;=evalf(L[nl-1])){
+<span class="flyspell-duplicate">while</span>(evalf(simplify(subst(SS[k],n_1=m)))&lt;=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))&gt;=L[0]){
@@ -353,14 +359,14 @@ S:=solve(fp(x),x);
qq:=member(simplify(S[j]),Z)==0;
kk:=(evalf(S[j])&gt;=evalf(L[0])) and (evalf(S[j])&lt;=evalf(L[nl-1]));
if(kk==1){if(qq==1){Z:=append(Z,simplify(S[j]))}};
- fpour
+ <span class="flyspell-duplicate">fpour</span>
fsi;
Z:=sort(Z);
nz:=size(Z);
tantque evalf(Z[0])==evalf(Z[1]) faire Z:=Z[1..nz-1];nz:=size(Z);
- ftantque;
+ <span class="flyspell-duplicate">ftantque</span>;
@@ -376,7 +382,7 @@ nz:=size(Z);
Z:=sort(Z);
nz:=size(Z);
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
+ si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=<span class="flyspell-duplicate">nz</span>-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;
@@ -388,7 +394,7 @@ pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+
";fpour;
k0:= evalf(limit(f(x),x=Z[0],1))&gt; evalf(limit(f(x),x=Z[1],-1));
- kz:=evalf(limit(f(x),x=Z[nz-1],-1))&gt; evalf(limit(f(x),x=Z[nz-2],1));
+ kz:=evalf(limit(f(x),x=Z[nz-1],-1))&gt; evalf(limit(f(x),x=Z[<span class="flyspell-duplicate">nz</span>-2],1));
lsi:=lsic+nom+"'("+nomv+")}<span class="font-latex-math">$ etex);"+
if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
@@ -426,12 +432,12 @@ lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
-lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+
+<span class="flyspell-duplicate">lf</span>:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+
if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+
if(kz==1){"1);"}else{"0);"}}
else{"limGauche(btex <span class="font-latex-math">$"+
if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+
- if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};
+ if(kz==1){"1);nonDefBarre;"}else{"0);<span class="flyspell-duplicate">nonDefBarre</span>;"}};
@@ -441,30 +447,30 @@ MetaLfc:=if(ftt==2){if(nz&gt;2){"
beginTableau("+nmr+")"+
l0+lsi+lsp+lsf+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{
intro+"beginTableau("+nmr+")"+
l0+
lsi+lsf+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";
}
}else{ if(ftt==0){if(nz&gt;2){"beginTableau("+nmr+")"+
l0+
li+
-lp+
+<span class="flyspell-duplicate">lp</span>+
lf
+"
endTableau;
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
li+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}}else{
if(nz&gt;2){"beginTableau("+nmr+")"+
@@ -472,17 +478,17 @@ if(nz&gt;2){"beginTableau("+nmr+")"+
lsi+lsp+lsf+
li+
lp+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
endTableau;
";}else{"beginTableau("+nmr+")"+
l0+
-lsi+lsf+
+<span class="flyspell-duplicate">lsi</span>+lsf+
li+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}
}}
@@ -490,7 +496,7 @@ endTableau;
sortie:=fopen("XCasmpfc.mp");
fprint(sortie,Unquoted,MetaLfc);
-fclose(sortie);
+<span class="flyspell-duplicate">fclose</span>(sortie);
}:;
@@ -507,7 +513,7 @@ fclose(sortie);
<span class="comment-delimiter">%</span><span class="comment">
</span><span class="comment-delimiter">%</span><span class="comment">
-</span><span class="comment-delimiter">% </span><span class="comment">TVPC : pour les fonctions prolongeables par continuit&#233;.
+</span><span class="comment-delimiter">% </span><span class="comment">TVPC : pour les fonctions prolongeables par </span><span class="comment"><span class="flyspell-duplicate">continuit</span></span><span class="comment">&#233;.
</span><span class="comment-delimiter">%%</span><span class="comment">
</span><span class="comment-delimiter">%%</span><span class="comment">
</span>
@@ -526,7 +532,7 @@ S:=[];
if(trigo==t){
all_trig_solutions:=1;
-reset_solve_counter(-1,-1);
+<span class="flyspell-duplicate">reset</span>_solve_counter(-1,-1);
SS:=solve(factor(simplify(fp(x))),x);
ns:=size(SS);
for(k:=0;k&lt;ns;k++){
@@ -554,7 +560,7 @@ nz:=size(Z);
tantque evalf(Z[0])==evalf(Z[1]) faire Z:=Z[1..nz-1];nz:=size(Z);
- ftantque;
+ <span class="flyspell-duplicate">ftantque</span>;
@@ -565,7 +571,7 @@ nz:=size(Z);
si size(S)&gt;0 alors pour j de 0 jusque size(S)-1 faire
kk:=(evalf(S[j])&gt;=evalf(L[0])) and (evalf(S[j])&lt;=evalf(L[nl-1]));
if(kk==1){Z:=append(Z,simplify(S[j]))};
- fpour
+ <span class="flyspell-duplicate">fpour</span>
fsi;
Z:=sort(Z);
@@ -584,7 +590,7 @@ pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+
k0:= evalf(limit(f(x),x=Z[0],1))&gt; evalf(limit(f(x),x=Z[1],-1));
kz:=evalf(limit(f(x),x=Z[nz-1],-1))&gt; evalf(limit(f(x),x=Z[nz-2],1));
-lsi:=lsic+nom+"'("+nomv+")}<span class="font-latex-math">$ etex);"+
+<span class="flyspell-duplicate">lsi</span>:=lsic+nom+"'("+nomv+")}<span class="font-latex-math">$ etex);"+
if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-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^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
@@ -595,7 +601,7 @@ if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.1))&gt;0;
if(ksp==1){"plus;"}else{"moins;"}
}; }
-lsf:=if(member(Z[nz-1],FP)==0){""}else{"nonDefBarre;
+</span><span class="font-latex-math"><span class="flyspell-duplicate">lsf</span></span><span class="font-latex-math">:=if(member(Z[nz-1],FP)==0){""}else{"nonDefBarre;
"}
lm0:=limit(f(x),x=Z[0],1)==-infinity;
li:=lvic+nom+"}$</span> etex);"+
@@ -616,16 +622,16 @@ lm0:=limit(f(x),x=Z[0],1)==-infinity;
"}}}
}; }
-lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
+lnz:=limit(f(x),x=Z[nz-1],-1)==-<span class="flyspell-duplicate">infinity</span>;
lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+
- if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+
+ if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> <span class="flyspell-duplicate">etex</span>,"+
if(kz==1){"1);"}else{"0);"}}
else{"limGauche(btex <span class="font-latex-math">$"+
if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+
- if(kz==1){"1);"}else{"0);"}};
+ if(kz==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);"}};
@@ -633,15 +639,15 @@ lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+
MetaLfc:=if(ftt==2){if(nz&gt;2){"
-beginTableau("+nmr+")"+
+<span class="flyspell-duplicate">beginTableau</span>("+nmr+")"+
l0+lsi+lsp+lsf+"
endTableau;
";}else{
-intro+"beginTableau("+nmr+")"+
+intro+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
lsi+lsf+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";
}
@@ -651,32 +657,32 @@ li+
lp+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{"beginTableau("+nmr+")"+
l0+
li+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
endTableau;
";}}else{
if(nz&gt;2){"beginTableau("+nmr+")"+
l0+
-lsi+lsp+lsf+
+<span class="flyspell-duplicate">lsi</span>+lsp+lsf+
li+
lp+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{"beginTableau("+nmr+")"+
l0+
lsi+lsf+
li+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}
}}
@@ -708,7 +714,7 @@ fclose(sortie);
</span><span class="comment-delimiter">%% </span><span class="comment">par exemple, pour sqrt(x^2-1) : TVZ([-infinity,100],[],[[-1,1]],"f","x",sqrt(x^2-1),1,1)
</span><span class="comment-delimiter">%%</span><span class="comment">
</span>
-<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVZ.cxx}
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVZ.<span class="flyspell-duplicate">cxx</span>}
TVZ(L,F,FF,nom,nomv,f,ftt,trigo,nmr):={
@@ -739,7 +745,7 @@ S:=[];
if(trigo==t){
all_trig_solutions:=1;
reset_solve_counter(-1,-1);
-SS:=solve(factor(simplify(fp(x))),x);
+<span class="flyspell-duplicate">SS</span>:=solve(factor(simplify(fp(x))),x);
ns:=size(SS);
for(k:=0;k&lt;ns;k++){
m:=0;
@@ -761,12 +767,12 @@ S:=solve(fp(x),x);
si size(S)&gt;0 alors pour j de 0 jusque size(S)-1 faire
for(k:=0;k&lt;nf;k++){
- kk:=(evalf(S[j])&gt;=evalf(L[0])) and (evalf(S[j])&lt;=evalf(L[nl-1]));
+ kk:=(evalf(S[j])&gt;=evalf(L[0])) and (evalf(S[j])&lt;=evalf(L[<span class="flyspell-duplicate">nl</span>-1]));
kK:=(evalf(S[j])&lt;evalf(Imin[k])) or (evalf(S[j])&gt;evalf(Imax[k]));
Kk:=(kk) and kK;
if(Kk==1){Z:=append(Z,simplify(S[j]))};
}
- fpour
+ <span class="flyspell-duplicate">fpour</span>
fsi;
Z:=sort(Z);
@@ -779,12 +785,12 @@ nz:=size(Z);
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;
+<span class="flyspell-duplicate">fpour</span>;
nz:=size(Z);
for(j:=0;j&lt;nf;j++){
for(k:=1;k&lt;nz;k++){
- if ((Z[k]&gt;Imin[j])and(Z[k]&lt;Imax[j])){Z:=augment(Z[0..k-1],Z[k+1..nz-1]);nz:=nz-1;
+ if ((Z[k]&gt;Imin[j])and(Z[k]&lt;Imax[j])){Z:=augment(Z[0..k-1],Z[k+1..nz-1]);nz:=<span class="flyspell-duplicate">nz</span>-1;
}
}
}
@@ -795,7 +801,7 @@ pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+
";fpour;
k0:= evalf(limit(f(x),x=Z[0],1))&gt; evalf(limit(f(x),x=Z[1],-1));
- kz:=evalf(limit(f(x),x=Z[nz-1],-1))&gt; evalf(limit(f(x),x=Z[nz-2],1));
+ kz:=evalf(limit(f(x),x=Z[nz-1],-1))&gt; evalf(limit(f(x),x=Z[<span class="flyspell-duplicate">nz</span>-2],1));
lsi:=lsic+nom+"'("+nomv+")}<span class="font-latex-math">$ 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^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
@@ -807,7 +813,7 @@ if(member(Z[0],IMIN)!=0){"debutNonDef;"}else{if(Z[0]==-infinity){if(sign(evalf(f
if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.01))&gt;0;
lsp:=lsp+if(member(Z[r],IMIN)!=0){"debutNonDef;"}else{
- if(member(Z[r],IMAX)!=0){"finNonDef;"+
+ if(member(Z[r],</span><span class="font-latex-math"><span class="flyspell-duplicate">IMAX</span></span><span class="font-latex-math">)!=0){"finNonDef;"+
if(ksp==1){"plus;"}else{"moins;"}}else{
if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(ksp==1){"plus;"}else{"moins;"}
@@ -815,7 +821,7 @@ if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.01))&gt;0;
-lsf:=if(member(Z[0],IMAX)!=0){"finNonDef;"}else{if(member(Z[nz-1],F)==0){""}else{"nonDefBarre;
+lsf:=if(member(Z[0],IMAX)!=0){"finNonDef;"}else{if(member(Z[nz-1],F)==0){""}</span><span class="font-latex-math"><span class="flyspell-duplicate">else</span></span><span class="font-latex-math">{"nonDefBarre;
"}}
@@ -835,7 +841,7 @@ if(nz&gt;2){
lp:=lp+if(member(Z[r],IMIN)!=0){"limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){
"-\\infty"}else{
latex(simplify(limit(f(x),x=Z[r],-1)))}
- +"$</span> etex,"+if(krm==1){
+ +"$</span> etex,"+if(<span class="flyspell-duplicate">krm</span>==1){
"1);"}else{"0);"}
+"debutNonDef;"
}//fsi Zr=Imin
@@ -859,26 +865,26 @@ if(nz&gt;2){
}//fsi (member Zr F)
else{"valPos(btex<span class="font-latex-math">$"+latex(simplify(f(Z[r])))+"$</span>etex,"+
if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){
- "0.5);"}else{
+ "0.5);"}<span class="flyspell-duplicate">else</span>{
if(krp==1){
"1);"}else{"0);"}//felse(krp)
}//felse(valpos)
}//felse(member Zr F)
} //felse(Zr=Imax)
- }//felse(Zr=Imin)
+ }//felse(Zr=<span class="flyspell-duplicate">Imin</span>)
};//ffor
}//fsi nz
-lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
+lnz:=limit(f(x),x=Z[nz-1],-1)==-<span class="flyspell-duplicate">infinity</span>;
lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+
if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+
if(kz==1){"1);"}else{"0);"}}
- else{"limGauche(btex <span class="font-latex-math">$"+
+ else{"limGauche(<span class="flyspell-duplicate">btex</span> <span class="font-latex-math">$"+
if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+
- if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};
+ if(kz==1){"1);nonDefBarre;"}else{"0);<span class="flyspell-duplicate">nonDefBarre</span>;"}};
@@ -888,13 +894,13 @@ MetaLfc:=if(ftt==2){if(nz&gt;2){"
beginTableau("+nmr+")"+
l0+lsi+lsp+lsf+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{
intro+"beginTableau("+nmr+")"+
l0+
lsi+lsf+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";
}
@@ -904,39 +910,39 @@ li+
lp+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{"beginTableau("+nmr+")"+
l0+
li+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}}else{
if(nz&gt;2){"beginTableau("+nmr+")"+
l0+
lsi+lsp+lsf+
li+
-lp+
+<span class="flyspell-duplicate">lp</span>+
lf
+"
endTableau;
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
lsi+lsf+
li+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}
}}
sortie:=fopen("XCasmpfc.mp");
-fprint(sortie,Unquoted,MetaLfc);
+<span class="flyspell-duplicate">fprint</span>(sortie,Unquoted,MetaLfc);
fclose(sortie);
}
@@ -953,7 +959,7 @@ fclose(sortie);
</span>
-<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVapp.cxx}
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVapp.<span class="flyspell-duplicate">cxx</span>}
@@ -966,7 +972,7 @@ TVapp(L,F,nom,nomv,f,ftt,nmr):={
nl:=size(L);
f:=unapply(f,x);
-fp:=function_diff(f);
+<span class="flyspell-duplicate">fp</span>:=function_diff(f);
z0:=concat(L,F);z:=sort(z0);
nz:=size(z);
@@ -977,7 +983,7 @@ nz:=size(z);
S:=NULL;
if(L==[-infinity,+infinity]){j:=[seq(-100+k,k=0..200)]minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for}
-else{if(L[0]==-infinity){j:=[seq(k,k=100..floor(L[1]))] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for}
+<span class="flyspell-duplicate">else</span>{if(L[0]==-infinity){j:=[seq(k,k=100..floor(L[1]))] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for}
else{if(L[1]==+infinity){j:=[seq(k,k=floor(L[0])..100)] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for;}
else{ j:=[seq(k,k=floor(z[0])..floor(z[nz-1]))] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for; }}};
@@ -989,7 +995,7 @@ si size(S)&gt;0 alors pour j de 0 jusque size(S)-1 faire
kk:=(re(S[j])==S[j]);kok:=(evalf(S[j])&gt;=L[0]) and (evalf(S[j])&lt;=L[1]);
if(kk==1){if(kok==1){z:=append(z,simplify(S[j]))}};
fpour;
-fsi;
+<span class="flyspell-duplicate">fsi</span>;
S:=NULL;
@@ -1014,7 +1020,7 @@ Z:=[S];
nz:=size(Z);
l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; lf:=" ";lsp:=" ";
-pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[m])+"$</span> etex);
+pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[m])+"$</span> <span class="flyspell-duplicate">etex</span>);
";fpour;
k0:= evalf(limit(f(x),x=Z[0],1))&gt; evalf(limit(f(x),x=Z[1],-1));
@@ -1031,7 +1037,7 @@ if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.01))&gt;0;
if(ksp==1){"plus;"}else{"moins;"}
}; }
-lsf:=if(member(Z[nz-1],F)==0){""}else{"nonDefBarre;
+lsf:=if(member(Z[nz-1],F)==0){""}else{"</span><span class="font-latex-math"><span class="flyspell-duplicate">nonDefBarre</span></span><span class="font-latex-math">;
"}
lm0:=limit(f(x),x=Z[0],1)==-infinity;
li:=lvic+nom+"}$</span> etex);"+
@@ -1044,35 +1050,35 @@ lm0:=limit(f(x),x=Z[0],1)==-infinity;
krp:=evalf(limit(f(x),x=Z[r],1))&gt; 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 <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}}
+ "limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}</span><span class="font-latex-math"><span class="flyspell-duplicate">else</span></span><span class="font-latex-math">{latex(simplify(limit(f(x),x=Z[r],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}}
else{"valPos(btex <span class="font-latex-math">$"+latex(simplify(f(Z[r])))+"$</span>
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;
+lnz:=limit(f(x),x=Z[nz-1],-1)==-<span class="flyspell-duplicate">infinity</span>;
lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+
if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+
if(kz==1){"1);"}else{"0);"}}
- else{"limGauche(btex <span class="font-latex-math">$"+
+ else{"limGauche(<span class="flyspell-duplicate">btex</span> <span class="font-latex-math">$"+
if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+
if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};
-MetaLfc:=if(ftt==2){if(nz&gt;2){"
+<span class="flyspell-duplicate">MetaLfc</span>:=if(ftt==2){if(nz&gt;2){"
beginTableau("+nmr+")"+
l0+lsi+lsp+lsf+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{
intro+"beginTableau("+nmr+")"+
l0+
lsi+lsf+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";
}
@@ -1080,7 +1086,7 @@ endTableau;
l0+
li+
lp+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
endTableau;
@@ -1097,7 +1103,7 @@ if(nz&gt;2){"beginTableau("+nmr+")"+
lsi+lsp+lsf+
li+
lp+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
endTableau;
@@ -1107,7 +1113,7 @@ lsi+lsf+
li+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}
}}
@@ -1136,14 +1142,14 @@ fclose(sortie);
<span class="comment-delimiter">%%</span><span class="comment">
</span><span class="comment-delimiter">%% </span><span class="comment">Code giac/Xcas pour les Tableaux de Variations avec
-</span><span class="comment-delimiter">%% </span><span class="comment">Valeurs intermediaires
+</span><span class="comment-delimiter">%% </span><span class="comment">Valeurs </span><span class="comment"><span class="flyspell-incorrect">intermediaires</span></span><span class="comment">
</span><span class="comment-delimiter">%%</span><span class="comment">
</span>
-<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVI.cxx}
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVI.<span class="flyspell-duplicate">cxx</span>}
TVI(L,F,nom,nomv,f,ftt,ao,trigo,nmr):={
@@ -1194,31 +1200,38 @@ l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> ete
LI:=limit(f(x),x,Z[0],1);
LF:=limit(f(x),x,Z[nz-1],-1);
LP:=NULL;
-if(nz&gt;2){ for(r:=1; r&lt;=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&gt;2){ LL:=[LI,LP,LF]}else{LL:=[LI,LF]};
+PB:=1;
+if(nz&gt;2){ for(r:=1; r&lt;=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(member(Z[r],F)){PB:=PB,0,1}}};
+if(nz&gt;2){ LL:=[LI,LP,LF]; PB:=[PB,1]}else{LL:=[LI,LF];PB:=[1,1]};
NL:=size(LL);
-A:=NULL;aa:=1;kk:=0;
+A:=NULL;aa:=1;
+kk:=0;
-if(NL==nz){for(k:=0;k&lt;nz-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
+
+
+if(NL==nz){for(k:=0;k&lt;nz-1;k++){TestS:=(evalf(sign(LL[k]-ao))==evalf(sign(LL[k+1]-ao))) or (evalf(sign(LL[k]-ao))==0.0)or (evalf(sign(LL[k+1]-ao))==0.0);
if(TestS==0){A:=A,aa;l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[k])+"$</span> etex);"+"val(btex <span class="font-latex-math">$\\alpha_</span><span class="font-latex-subscript"><span class="font-latex-math">"</span></span><span class="font-latex-math">+aa+"$</span> etex);";aa:=aa+1;}else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[k])+"$</span> etex);"}}
l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> etex);"};
+//chgmt NL-&gt;nz
+if(NL&gt;nz){for(k:=0;k&lt;NL-1;k++){TestS:=(evalf(sign(LL[k]-ao))==evalf(sign(LL[k+1]-ao))) or (evalf(sign(LL[k]-ao))==0.0)or (evalf(sign(LL[k+1]-ao))==0.0);
+
+if(PB[k]==1){if(TestS==0){
+ A:=A,aa;l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);"+"val(btex <span class="font-latex-math">$\\alpha_</span><span class="font-latex-subscript"><span class="font-latex-math">"</span></span><span class="font-latex-math">+aa+"$</span> etex);";aa:=aa+1;kk:=kk+1}
+else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);";kk:=<span class="flyspell-duplicate">kk</span>+1}};
+}
-if(NL&gt;nz){for(k:=0;k&lt;NL-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
-TestL:=(abs(LL[k])==abs(LL[k+1]));
-if(TestS==0){ if( TestL==1 ){l0:=l0}else{
-A:=A,aa;l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);"+"val(btex <span class="font-latex-math">$\\alpha_</span><span class="font-latex-subscript"><span class="font-latex-math">"</span></span><span class="font-latex-math">+aa+"$</span> etex);";aa:=aa+1;kk:=kk+1}}else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);";kk:=kk+1}}
-l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> etex);
-"};
+ l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> <span class="flyspell-duplicate">etex</span>);"
+ };
-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);
+TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))==0.0) or (evalf(sign(LL[1]-ao))==0.0);
k0:= evalf(limit(f(x),x=Z[0],1))&gt; evalf(limit(f(x),x=Z[1],-1));
kz:=evalf(limit(f(x),x=Z[nz-1],-1))&gt; evalf(limit(f(x),x=Z[nz-2],1));
-lsi:=lsic+nom+"'("+nomv+")}<span class="font-latex-math">$ etex);"+
- if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
+<span class="flyspell-duplicate">lsi</span>:=lsic+nom+"'("+nomv+")}<span class="font-latex-math">$ etex);"+
+ if(Z[0]==-infinity){if(evalf(sign(fp(if(Z[1]==+infinity){0}else{Z[1]-10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
if(sign(fp((Z[0]+10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-3))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
if(sign(fp(10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-3)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$</span> <span class="font-latex-math">$ etex);"+ if(sign(fp(10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-3)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "};
@@ -1226,28 +1239,33 @@ lsi:=lsic+nom+"'("+nomv+")}<span class="font-latex-math">$ etex);"+
-
-if(nz&gt;2){rr:=1; if(nz==NL){for(r:=1; r&lt;=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);
+if(nz&gt;2){rr:=1; if(nz==NL){for(r:=1; r&lt;=NL-2;r++){ TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
ksp:=evalf(fp(Z[r]+0.01))&gt;0;
TestL:=(abs(LL[r])==abs(LL[r+1]));
lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(ksp==1){"plus;"}else{"moins;"}+if(TestS==0){"valBarre(btex $</span> <span class="font-latex-math">$ etex);"}else{" "}+if(TestS==0){if(ksp==1){"plus;"}else{"moins;"}}else{" "};
- }}
-else{for(r:=1; r&lt;=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))&gt;0;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);
- TestL:=(abs(LL[r])==abs(LL[r+1]));
- if(TestS==0){if( TestL==1 ){lsp:=lsp}else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+ }}
+</span><span class="font-latex-math"><span class="flyspell-duplicate">else</span></span><span class="font-latex-math">{for(r:=1; r&lt;=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))&gt;0;TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-</span><span class="font-latex-math"><span class="flyspell-duplicate">ao</span></span><span class="font-latex-math">))==0.0);
+
+ if(PB[r]==1){if(TestS==0){lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"</span><span class="font-latex-math"><span class="flyspell-duplicate">nonDefBarre</span></span><span class="font-latex-math">;"}+
if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex $</span> <span class="font-latex-math">$ etex);"+if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
- } else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
- if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
-}}
- };
+ else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"</span><span class="font-latex-math"><span class="flyspell-duplicate">nonDefBarre</span></span><span class="font-latex-math">;"}+
+ if(kspp==1){"plus;"}else{"moins;"};rr:=</span><span class="font-latex-math"><span class="flyspell-duplicate">rr</span></span><span class="font-latex-math">+1;}
+}}}};
-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);
+ lsf:=if(member(Z[nz-1],F)==0){" "}else{"</span><span class="font-latex-math"><span class="flyspell-duplicate">nonDefBarre</span></span><span class="font-latex-math">;"}
+
+
+
+lm0:=limit(f(x),x=Z[0],1)==-</span><span class="font-latex-math"><span class="flyspell-duplicate">infinity</span></span><span class="font-latex-math">;
+
+
+
+
+TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))==0.0) or (evalf(sign(LL[1]-</span><span class="font-latex-math"><span class="flyspell-duplicate">ao</span></span><span class="font-latex-math">))==0.0);
li:=lvic+nom+"}$</span> etex);
"+ if(member(Z[0],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$</span> etex,"}
@@ -1255,63 +1273,68 @@ TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))=
if(k0==1){"1);"}else{"0);"}+if(TestS==0){"valPos(btex <span class="font-latex-math">$ "+ao+" $</span> etex,0.5);"}else{" "};
- if(nz&gt;2){if(nz==NL){for(r:=1; r&lt;=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);
+ if(nz&gt;2){if(nz==NL){for(r:=1; r&lt;=nz-2;r++){TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
krm:=evalf(limit(f(x),x=Z[r-1],1))&lt; evalf(limit(f(x),x=Z[r],-1));
krp:=evalf(limit(f(x),x=Z[r],1))&gt; 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 <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}}
else{"valPos(btex <span class="font-latex-math">$"+latex(simplify(f(Z[r])))+"$</span>
- 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
+ etex,"+if(evalf(sign(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
<span class="font-latex-math">$ "+ao+" $</span> etex,0.5);"
}else{" "};
-};//for
-}else{rr:=1;for(r:=1; r&lt;=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);
+};//for
+}else{rr:=1;for(r:=1; r&lt;=NL-2;r++){TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
krm:=evalf(limit(f(x),x=Z[rr-1],1))&lt; evalf(limit(f(x),x=Z[rr],-1));
krp:=evalf(limit(f(x),x=Z[rr],1))&gt; 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 <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}}
+
+if(PB[r]==1){if(TestS==0){lp:=lp+if(member(Z[rr],F)){
+ "limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],-1)))}+"$</span> etex,"+if(krm==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}}
else{"valPos(btex <span class="font-latex-math">$"+latex(simplify(f(Z[rr])))+"$</span>
- 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
+ etex,"+if(evalf(sign(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+"valPos(<span class="flyspell-duplicate">btex</span>
<span class="font-latex-math">$ "+ao+" $</span> etex,0.5);
";rr:=rr+1;
-}// else testL==1
-}//testS==0
-else{lp:=lp+if(member(Z[rr],F)){
+}// testS==0
+<span class="flyspell-duplicate">else</span>{lp:=lp+if(member(Z[rr],F)){
"limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}}
else{"valPos(btex <span class="font-latex-math">$"+latex(simplify(f(Z[rr])))+"$</span>
- etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
+ etex,"+if(evalf(sign(fp(Z[<span class="flyspell-duplicate">rr</span>]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
"}}};rr:=rr+1;
}//else testS==0
+}//PB[r]==1
}//for nz&lt;NL
-}// else nz&lt;NL
+}// else nz&lt;<span class="flyspell-duplicate">NL</span>
//if nz=NL
-};//if nz&gt;2
+};//if <span class="flyspell-duplicate">nz</span>&gt;2
-lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
+
+lnz:=limit(f(x),x=Z[nz-1],-1)==-<span class="flyspell-duplicate">infinity</span>;
lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+
if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+
- if(kz==1){"1);"}else{"0);"}}
+ if(kz==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);"}}
else{"limGauche(btex <span class="font-latex-math">$"+
if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+
- if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};
-
+ if(kz==1){"1);nonDefBarre;"}else{"0);<span class="flyspell-duplicate">nonDefBarre</span>;"}};
-MetaLfc:= if(ftt==2){if(nz&gt;2){"beginTableau("+nmr+")"+
+
+
+
+
+MetaLfc:= if(ftt==2){if(nz&gt;2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+lsi+lsp+lsf+"
endTableau;
-";}else{
+";}<span class="flyspell-duplicate">else</span>{
"beginTableau("+nmr+")"+
l0+
-lsi+lsf+"
-endTableau;
+<span class="flyspell-duplicate">lsi</span>+lsf+"
+<span class="flyspell-duplicate">endTableau</span>;
";
}
@@ -1320,41 +1343,45 @@ if(ftt==0){if(nz&gt;2){"beginTableau("+nmr+")"+
l0+
li+
lp+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{"beginTableau("+nmr+")"+
l0+
li+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
endTableau;
";}}else{
-if(nz&gt;2){"beginTableau("+nmr+")"+
+if(nz&gt;2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
lsi+lsp+lsf+
li+
lp+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{"beginTableau("+nmr+")"+
l0+
lsi+lsf+
li+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}
}};
+
+
+
+
sortie:=fopen("XCasmpfc.mp");
-fprint(sortie,Unquoted,MetaLfc);
+<span class="flyspell-duplicate">fprint</span>(sortie,Unquoted,MetaLfc);
fclose(sortie);
@@ -1378,9 +1405,11 @@ fclose(sortie);
-<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVIapp.cxx}
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVIapp.<span class="flyspell-duplicate">cxx</span>}
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVIapp.cxx}
+
TVIapp(L,F,nom,nomv,f,ftt,ao,nmr):={
@@ -1395,10 +1424,10 @@ nz:=size(z);
S:=NULL;
-if(L==[-infinity,+infinity]){j:=[seq(-100+k,k=0..200)]minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for}
-else{if(L[0]==-infinity){j:=[seq(k,k=100..floor(L[1]))] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for}
-else{if(L[1]==+infinity){j:=[seq(k,k=floor(L[0])..100)] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for;}
-else{ j:=[seq(k,k=floor(z[0])..floor(z[nz-1]))] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for; }}};
+if(L==[-infinity,+infinity]){j:=[seq(-100+k,k=0..200)]minus F;for k in j do S:=S,resoudre_numerique(fp(x),x,k/10,newton_solver);end_for}
+else{if(L[0]==-infinity){j:=[seq(k,k=100..floor(L[1]))] minus F;for k in j do S:=S,resoudre_numerique(fp(x),x,k/10,newton_solver);end_for}
+else{if(L[1]==+infinity){j:=[seq(k,k=floor(L[0])..100)] minus F;for k in j do S:=S,resoudre_numerique(fp(x),x,k/10,newton_solver);end_for;}
+else{ j:=[seq(k,k=floor(z[0])..floor(z[nz-1]))] minus F;for k in j do S:=S,resoudre_numerique(fp(x),x,k/10,newton_solver);end_for; }}};
@@ -1444,31 +1473,37 @@ l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> ete
LI:=limit(f(x),x,Z[0],1);
LF:=limit(f(x),x,Z[nz-1],-1);
LP:=NULL;
-if(nz&gt;2){ for(r:=1; r&lt;=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&gt;2){ LL:=[LI,LP,LF]}else{LL:=[LI,LF]};
+PB:=1;
+if(nz&gt;2){ for(r:=1; r&lt;=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(member(Z[r],F)){PB:=PB,0,1}}};
+if(nz&gt;2){ LL:=[LI,LP,LF]; PB:=[PB,1]}else{LL:=[LI,LF];PB:=[1,1]};
NL:=size(LL);
-A:=NULL;aa:=1;kk:=0;
+A:=NULL;aa:=1;
+kk:=0;
+
-if(NL==nz){for(k:=0;k&lt;nz-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
+if(NL==nz){for(k:=0;k&lt;nz-1;k++){TestS:=(evalf(sign(LL[k]-ao))==evalf(sign(LL[k+1]-ao))) or (evalf(sign(LL[k]-ao))==0.0)or (evalf(sign(LL[k+1]-ao))==0.0);
if(TestS==0){A:=A,aa;l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[k])+"$</span> etex);"+"val(btex <span class="font-latex-math">$\\alpha_</span><span class="font-latex-subscript"><span class="font-latex-math">"</span></span><span class="font-latex-math">+aa+"$</span> etex);";aa:=aa+1;}else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[k])+"$</span> etex);"}}
l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> etex);"};
+//chgmt NL-&gt;nz
+if(NL&gt;nz){for(k:=0;k&lt;NL-1;k++){TestS:=(evalf(sign(LL[k]-ao))==evalf(sign(LL[k+1]-ao))) or (evalf(sign(LL[k]-ao))==0.0)or (evalf(sign(LL[k+1]-ao))==0.0);
+
+if(PB[k]==1){if(TestS==0){
+ A:=A,aa;l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);"+"val(btex <span class="font-latex-math">$\\alpha_</span><span class="font-latex-subscript"><span class="font-latex-math">"</span></span><span class="font-latex-math">+aa+"$</span> etex);";aa:=aa+1;kk:=kk+1}
+else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);";kk:=kk+1}};
+}
-if(NL&gt;nz){for(k:=0;k&lt;NL-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
-TestL:=(abs(LL[k])==abs(LL[k+1]));
-if(TestS==0){ if( TestL==1 ){l0:=l0}else{
-A:=A,aa;l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);"+"val(btex <span class="font-latex-math">$\\alpha_</span><span class="font-latex-subscript"><span class="font-latex-math">"</span></span><span class="font-latex-math">+aa+"$</span> etex);";aa:=aa+1;kk:=kk+1}}else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);";kk:=kk+1}}
-l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> etex);
-"};
+ l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> 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);
+TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))==0.0) or (evalf(sign(LL[1]-ao))==0.0);
k0:= evalf(limit(f(x),x=Z[0],1))&gt; evalf(limit(f(x),x=Z[1],-1));
kz:=evalf(limit(f(x),x=Z[nz-1],-1))&gt; evalf(limit(f(x),x=Z[nz-2],1));
lsi:=lsic+nom+"'("+nomv+")}<span class="font-latex-math">$ etex);"+
- if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
+ if(Z[0]==-infinity){if(evalf(sign(fp(if(Z[1]==+infinity){0}else{Z[1]-10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
if(sign(fp((Z[0]+10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-3))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
if(sign(fp(10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-3)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$</span> <span class="font-latex-math">$ etex);"+ if(sign(fp(10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-3)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "};
@@ -1476,28 +1511,33 @@ lsi:=lsic+nom+"'("+nomv+")}<span class="font-latex-math">$ etex);"+
-
-if(nz&gt;2){rr:=1; if(nz==NL){for(r:=1; r&lt;=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);
+if(nz&gt;2){rr:=1; if(nz==NL){for(r:=1; r&lt;=NL-2;r++){ TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
ksp:=evalf(fp(Z[r]+0.01))&gt;0;
TestL:=(abs(LL[r])==abs(LL[r+1]));
lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(ksp==1){"plus;"}else{"moins;"}+if(TestS==0){"valBarre(btex $</span> <span class="font-latex-math">$ etex);"}else{" "}+if(TestS==0){if(ksp==1){"plus;"}else{"moins;"}}else{" "};
- }}
-else{for(r:=1; r&lt;=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))&gt;0;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);
- TestL:=(abs(LL[r])==abs(LL[r+1]));
- if(TestS==0){if( TestL==1 ){lsp:=lsp}else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+ }}
+else{for(r:=1; r&lt;=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))&gt;0;TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
+
+ if(PB[r]==1){if(TestS==0){lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex $</span> <span class="font-latex-math">$ etex);"+if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
- } else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+ else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
-}}
- };
+}}}};
+
+
+
+
+ lsf:=if(member(Z[nz-1],F)==0){" "}else{"nonDefBarre;"}
-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);
+
+
+
+TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))==0.0) or (evalf(sign(LL[1]-ao))==0.0);
li:=lvic+nom+"}$</span> etex);
"+ if(member(Z[0],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$</span> etex,"}
@@ -1505,43 +1545,44 @@ TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))=
if(k0==1){"1);"}else{"0);"}+if(TestS==0){"valPos(btex <span class="font-latex-math">$ "+ao+" $</span> etex,0.5);"}else{" "};
- if(nz&gt;2){if(nz==NL){for(r:=1; r&lt;=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);
+ if(nz&gt;2){if(nz==NL){for(r:=1; r&lt;=nz-2;r++){TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
krm:=evalf(limit(f(x),x=Z[r-1],1))&lt; evalf(limit(f(x),x=Z[r],-1));
krp:=evalf(limit(f(x),x=Z[r],1))&gt; 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 <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}}
else{"valPos(btex <span class="font-latex-math">$"+latex(simplify(f(Z[r])))+"$</span>
- 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
+ etex,"+if(evalf(sign(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
<span class="font-latex-math">$ "+ao+" $</span> etex,0.5);"
}else{" "};
-};//for
-}else{rr:=1;for(r:=1; r&lt;=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);
+};//for
+}else{rr:=1;for(r:=1; r&lt;=NL-2;r++){TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
krm:=evalf(limit(f(x),x=Z[rr-1],1))&lt; evalf(limit(f(x),x=Z[rr],-1));
krp:=evalf(limit(f(x),x=Z[rr],1))&gt; 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)) {
+
+if(PB[r]==1){if(TestS==0){lp:=lp+if(member(Z[rr],F)){
"limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}}
else{"valPos(btex <span class="font-latex-math">$"+latex(simplify(f(Z[rr])))+"$</span>
- 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
+ etex,"+if(evalf(sign(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+"valPos(btex
<span class="font-latex-math">$ "+ao+" $</span> etex,0.5);
";rr:=rr+1;
-}// else testL==1
-}//testS==0
+}// testS==0
else{lp:=lp+if(member(Z[rr],F)){
"limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}}
else{"valPos(btex <span class="font-latex-math">$"+latex(simplify(f(Z[rr])))+"$</span>
- etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
+ etex,"+if(evalf(sign(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
+}//PB[r]==1
}//for nz&lt;NL
}// else nz&lt;NL
//if nz=NL
};//if nz&gt;2
-lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
+lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+
@@ -1550,7 +1591,7 @@ lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+
else{"limGauche(btex <span class="font-latex-math">$"+
if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+
if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};
-
+
@@ -1607,6 +1648,7 @@ endTableau;
+
sortie:=fopen("XCasmpfc.mp");
fprint(sortie,Unquoted,MetaLfc);
fclose(sortie);
@@ -1616,8 +1658,8 @@ fclose(sortie);
-<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
+<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
@@ -2038,7 +2080,7 @@ fclose(sortie);
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTabSignQ.cxx}
-<span class="flyspell-duplicate">TSq</span>(nomf,L,Fo,D,trigo,nmr):={
+TSq(nomf,L,Fo,D,trigo,nmr):={
L:=apply(f-&gt;unapply(f,x),L);
Fo:=apply(f-&gt;unapply(f,x),Fo);
L:=concat(L,Fo);
@@ -2104,7 +2146,7 @@ SF:=concat(SF,simplify(subst(SSF[j],n_1=mm)));mm:=mm-1;
}
}else{
-SF:=solve(<span class="flyspell-duplicate">Fo</span>[k](x),x);
+SF:=solve(Fo[k](x),x);
}
si size(SF)&gt;0 alors pour j de 0 jusque size(SF)-1 faire
diff --git a/Master/texmf-dist/tex/latex/tablor/tablor-xetex.sty b/Master/texmf-dist/tex/latex/tablor/tablor-xetex.sty
index 9f689d30e2f..fc9b6e7a14c 100644
--- a/Master/texmf-dist/tex/latex/tablor/tablor-xetex.sty
+++ b/Master/texmf-dist/tex/latex/tablor/tablor-xetex.sty
@@ -1,5 +1,5 @@
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{tablor-xetex}[24/11/2008 v4.02b la machine a creer des
+\ProvidesPackage{tablor-xetex}[29/01/2009 v4.02c la machine a creer des
tableaux de signes et variations compatible xetex]
% \copyleft Connan le Barbare (aka Guillaume Connan) \copyright
@@ -1149,31 +1149,38 @@ l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
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)){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]};
+PB:=1;
+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(member(Z[r],F)){PB:=PB,0,1}}};
+if(nz>2){ LL:=[LI,LP,LF]; PB:=[PB,1]}else{LL:=[LI,LF];PB:=[1,1]};
NL:=size(LL);
-A:=NULL;aa:=1;kk:=0;
+A:=NULL;aa:=1;
+kk:=0;
-if(NL==nz){for(k:=0;k<nz-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
+
+
+if(NL==nz){for(k:=0;k<nz-1;k++){TestS:=(evalf(sign(LL[k]-ao))==evalf(sign(LL[k+1]-ao))) or (evalf(sign(LL[k]-ao))==0.0)or (evalf(sign(LL[k+1]-ao))==0.0);
if(TestS==0){A:=A,aa;l0:=l0+"val(btex $"+latex(Z[k])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;}else{l0:=l0+"val(btex $"+latex(Z[k])+"$ etex);"}}
l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);"};
+//chgmt NL->nz
+if(NL>nz){for(k:=0;k<NL-1;k++){TestS:=(evalf(sign(LL[k]-ao))==evalf(sign(LL[k+1]-ao))) or (evalf(sign(LL[k]-ao))==0.0)or (evalf(sign(LL[k+1]-ao))==0.0);
+
+if(PB[k]==1){if(TestS==0){
+ A:=A,aa;l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;kk:=kk+1}
+else{l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);";kk:=kk+1}};
+}
-if(NL>nz){for(k:=0;k<NL-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
-TestL:=(abs(LL[k])==abs(LL[k+1]));
-if(TestS==0){ if( TestL==1 ){l0:=l0}else{
-A:=A,aa;l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;kk:=kk+1}}else{l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);";kk:=kk+1}}
-l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);
-"};
+ 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);
+TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))==0.0) or (evalf(sign(LL[1]-ao))==0.0);
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){
+ if(Z[0]==-infinity){if(evalf(sign(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
if(sign(fp((Z[0]+10^(-3))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$ $ etex);"+ if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "};
@@ -1181,28 +1188,33 @@ lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
-
-if(nz>2){rr:=1; if(nz==NL){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);
+if(nz>2){rr:=1; if(nz==NL){for(r:=1; r<=NL-2;r++){ TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
ksp:=evalf(fp(Z[r]+0.01))>0;
TestL:=(abs(LL[r])==abs(LL[r+1]));
lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(ksp==1){"plus;"}else{"moins;"}+if(TestS==0){"valBarre(btex $ $ etex);"}else{" "}+if(TestS==0){if(ksp==1){"plus;"}else{"moins;"}}else{" "};
- }}
-else{for(r:=1; r<=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))>0;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);
- TestL:=(abs(LL[r])==abs(LL[r+1]));
- if(TestS==0){if( TestL==1 ){lsp:=lsp}else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+ }}
+else{for(r:=1; r<=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))>0;TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
+
+ if(PB[r]==1){if(TestS==0){lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex $ $ etex);"+if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
- } else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+ else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
-}}
- };
+}}}};
+
+
+
+
+ lsf:=if(member(Z[nz-1],F)==0){" "}else{"nonDefBarre;"}
-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);
+
+
+
+TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))==0.0) or (evalf(sign(LL[1]-ao))==0.0);
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,"}
@@ -1210,41 +1222,43 @@ TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))=
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);
+ if(nz>2){if(nz==NL){for(r:=1; r<=nz-2;r++){TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
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(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
+ etex,"+if(evalf(sign(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);
+};//for
+}else{rr:=1;for(r:=1; r<=NL-2;r++){TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
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)) {
+
+if(PB[r]==1){if(TestS==0){lp:=lp+if(member(Z[rr],F)){
"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
+ etex,"+if(evalf(sign(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
+}// testS==0
else{lp:=lp+if(member(Z[rr],F)){
"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);
+ etex,"+if(evalf(sign(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
+}//PB[r]==1
}//for nz<NL
}// else nz<NL
//if nz=NL
};//if nz>2
+
lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
@@ -1254,7 +1268,10 @@ lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
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;"}};
-
+
+
+
+
@@ -1308,6 +1325,10 @@ endTableau;
+
+
+
+
sortie:=fopen("XCasmpfc.mp");
fprint(sortie,Unquoted,MetaLfc);
fclose(sortie);
@@ -1317,6 +1338,7 @@ fclose(sortie);
+
\end{VerbatimOut}
@@ -1335,7 +1357,6 @@ fclose(sortie);
\begin{VerbatimOut}{XcasTVIapp.cxx}
-
TVIapp(L,F,nom,nomv,f,ftt,ao,nmr):={
@@ -1350,10 +1371,10 @@ nz:=size(z);
S:=NULL;
-if(L==[-infinity,+infinity]){j:=[seq(-100+k,k=0..200)]minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for}
-else{if(L[0]==-infinity){j:=[seq(k,k=100..floor(L[1]))] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for}
-else{if(L[1]==+infinity){j:=[seq(k,k=floor(L[0])..100)] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for;}
-else{ j:=[seq(k,k=floor(z[0])..floor(z[nz-1]))] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for; }}};
+if(L==[-infinity,+infinity]){j:=[seq(-100+k,k=0..200)]minus F;for k in j do S:=S,resoudre_numerique(fp(x),x,k/10,newton_solver);end_for}
+else{if(L[0]==-infinity){j:=[seq(k,k=100..floor(L[1]))] minus F;for k in j do S:=S,resoudre_numerique(fp(x),x,k/10,newton_solver);end_for}
+else{if(L[1]==+infinity){j:=[seq(k,k=floor(L[0])..100)] minus F;for k in j do S:=S,resoudre_numerique(fp(x),x,k/10,newton_solver);end_for;}
+else{ j:=[seq(k,k=floor(z[0])..floor(z[nz-1]))] minus F;for k in j do S:=S,resoudre_numerique(fp(x),x,k/10,newton_solver);end_for; }}};
@@ -1399,31 +1420,37 @@ l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
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)){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]};
+PB:=1;
+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(member(Z[r],F)){PB:=PB,0,1}}};
+if(nz>2){ LL:=[LI,LP,LF]; PB:=[PB,1]}else{LL:=[LI,LF];PB:=[1,1]};
NL:=size(LL);
-A:=NULL;aa:=1;kk:=0;
+A:=NULL;aa:=1;
+kk:=0;
+
-if(NL==nz){for(k:=0;k<nz-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
+if(NL==nz){for(k:=0;k<nz-1;k++){TestS:=(evalf(sign(LL[k]-ao))==evalf(sign(LL[k+1]-ao))) or (evalf(sign(LL[k]-ao))==0.0)or (evalf(sign(LL[k+1]-ao))==0.0);
if(TestS==0){A:=A,aa;l0:=l0+"val(btex $"+latex(Z[k])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;}else{l0:=l0+"val(btex $"+latex(Z[k])+"$ etex);"}}
l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);"};
+//chgmt NL->nz
+if(NL>nz){for(k:=0;k<NL-1;k++){TestS:=(evalf(sign(LL[k]-ao))==evalf(sign(LL[k+1]-ao))) or (evalf(sign(LL[k]-ao))==0.0)or (evalf(sign(LL[k+1]-ao))==0.0);
+
+if(PB[k]==1){if(TestS==0){
+ A:=A,aa;l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;kk:=kk+1}
+else{l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);";kk:=kk+1}};
+}
-if(NL>nz){for(k:=0;k<NL-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
-TestL:=(abs(LL[k])==abs(LL[k+1]));
-if(TestS==0){ if( TestL==1 ){l0:=l0}else{
-A:=A,aa;l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;kk:=kk+1}}else{l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);";kk:=kk+1}}
-l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);
-"};
+ 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);
+TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))==0.0) or (evalf(sign(LL[1]-ao))==0.0);
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){
+ if(Z[0]==-infinity){if(evalf(sign(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
if(sign(fp((Z[0]+10^(-3))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$ $ etex);"+ if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "};
@@ -1431,28 +1458,33 @@ lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
-
-if(nz>2){rr:=1; if(nz==NL){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);
+if(nz>2){rr:=1; if(nz==NL){for(r:=1; r<=NL-2;r++){ TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
ksp:=evalf(fp(Z[r]+0.01))>0;
TestL:=(abs(LL[r])==abs(LL[r+1]));
lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(ksp==1){"plus;"}else{"moins;"}+if(TestS==0){"valBarre(btex $ $ etex);"}else{" "}+if(TestS==0){if(ksp==1){"plus;"}else{"moins;"}}else{" "};
- }}
-else{for(r:=1; r<=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))>0;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);
- TestL:=(abs(LL[r])==abs(LL[r+1]));
- if(TestS==0){if( TestL==1 ){lsp:=lsp}else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+ }}
+else{for(r:=1; r<=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))>0;TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
+
+ if(PB[r]==1){if(TestS==0){lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex $ $ etex);"+if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
- } else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+ else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
-}}
- };
+}}}};
+
+
+
+
+ lsf:=if(member(Z[nz-1],F)==0){" "}else{"nonDefBarre;"}
-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);
+
+
+
+TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))==0.0) or (evalf(sign(LL[1]-ao))==0.0);
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,"}
@@ -1460,43 +1492,44 @@ TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))=
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);
+ if(nz>2){if(nz==NL){for(r:=1; r<=nz-2;r++){TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
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(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
+ etex,"+if(evalf(sign(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);
+};//for
+}else{rr:=1;for(r:=1; r<=NL-2;r++){TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
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)) {
+
+if(PB[r]==1){if(TestS==0){lp:=lp+if(member(Z[rr],F)){
"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
+ etex,"+if(evalf(sign(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
+}// testS==0
else{lp:=lp+if(member(Z[rr],F)){
"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);
+ etex,"+if(evalf(sign(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
+}//PB[r]==1
}//for nz<NL
}// else nz<NL
//if nz=NL
};//if nz>2
-lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
+lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
@@ -1505,7 +1538,7 @@ lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
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;"}};
-
+
@@ -1562,6 +1595,7 @@ endTableau;
+
sortie:=fopen("XCasmpfc.mp");
fprint(sortie,Unquoted,MetaLfc);
fclose(sortie);
@@ -1571,6 +1605,7 @@ fclose(sortie);
+
\end{VerbatimOut}
diff --git a/Master/texmf-dist/tex/latex/tablor/tablor.sty b/Master/texmf-dist/tex/latex/tablor/tablor.sty
index 60410882ba1..a8b81775251 100644
--- a/Master/texmf-dist/tex/latex/tablor/tablor.sty
+++ b/Master/texmf-dist/tex/latex/tablor/tablor.sty
@@ -1,5 +1,5 @@
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{tablor}[24/11/2008 v4.02b la machine a creer des tableaux de signes et variations]
+\ProvidesPackage{tablor}[29/01/2009 v4.02c 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
@@ -1112,31 +1112,38 @@ l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
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)){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]};
+PB:=1;
+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(member(Z[r],F)){PB:=PB,0,1}}};
+if(nz>2){ LL:=[LI,LP,LF]; PB:=[PB,1]}else{LL:=[LI,LF];PB:=[1,1]};
NL:=size(LL);
-A:=NULL;aa:=1;kk:=0;
+A:=NULL;aa:=1;
+kk:=0;
-if(NL==nz){for(k:=0;k<nz-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
+
+
+if(NL==nz){for(k:=0;k<nz-1;k++){TestS:=(evalf(sign(LL[k]-ao))==evalf(sign(LL[k+1]-ao))) or (evalf(sign(LL[k]-ao))==0.0)or (evalf(sign(LL[k+1]-ao))==0.0);
if(TestS==0){A:=A,aa;l0:=l0+"val(btex $"+latex(Z[k])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;}else{l0:=l0+"val(btex $"+latex(Z[k])+"$ etex);"}}
l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);"};
+//chgmt NL->nz
+if(NL>nz){for(k:=0;k<NL-1;k++){TestS:=(evalf(sign(LL[k]-ao))==evalf(sign(LL[k+1]-ao))) or (evalf(sign(LL[k]-ao))==0.0)or (evalf(sign(LL[k+1]-ao))==0.0);
+
+if(PB[k]==1){if(TestS==0){
+ A:=A,aa;l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;kk:=kk+1}
+else{l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);";kk:=kk+1}};
+}
-if(NL>nz){for(k:=0;k<NL-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
-TestL:=(abs(LL[k])==abs(LL[k+1]));
-if(TestS==0){ if( TestL==1 ){l0:=l0}else{
-A:=A,aa;l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;kk:=kk+1}}else{l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);";kk:=kk+1}}
-l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);
-"};
+ 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);
+TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))==0.0) or (evalf(sign(LL[1]-ao))==0.0);
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){
+ if(Z[0]==-infinity){if(evalf(sign(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
if(sign(fp((Z[0]+10^(-3))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$ $ etex);"+ if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "};
@@ -1144,28 +1151,33 @@ lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
-
-if(nz>2){rr:=1; if(nz==NL){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);
+if(nz>2){rr:=1; if(nz==NL){for(r:=1; r<=NL-2;r++){ TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
ksp:=evalf(fp(Z[r]+0.01))>0;
TestL:=(abs(LL[r])==abs(LL[r+1]));
lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(ksp==1){"plus;"}else{"moins;"}+if(TestS==0){"valBarre(btex $ $ etex);"}else{" "}+if(TestS==0){if(ksp==1){"plus;"}else{"moins;"}}else{" "};
- }}
-else{for(r:=1; r<=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))>0;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);
- TestL:=(abs(LL[r])==abs(LL[r+1]));
- if(TestS==0){if( TestL==1 ){lsp:=lsp}else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+ }}
+else{for(r:=1; r<=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))>0;TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
+
+ if(PB[r]==1){if(TestS==0){lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex $ $ etex);"+if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
- } else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+ else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
-}}
- };
+}}}};
+
+
+
+
+ lsf:=if(member(Z[nz-1],F)==0){" "}else{"nonDefBarre;"}
-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);
+
+
+
+TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))==0.0) or (evalf(sign(LL[1]-ao))==0.0);
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,"}
@@ -1173,41 +1185,43 @@ TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))=
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);
+ if(nz>2){if(nz==NL){for(r:=1; r<=nz-2;r++){TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
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(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
+ etex,"+if(evalf(sign(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);
+};//for
+}else{rr:=1;for(r:=1; r<=NL-2;r++){TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
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)) {
+
+if(PB[r]==1){if(TestS==0){lp:=lp+if(member(Z[rr],F)){
"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
+ etex,"+if(evalf(sign(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
+}// testS==0
else{lp:=lp+if(member(Z[rr],F)){
"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);
+ etex,"+if(evalf(sign(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
+}//PB[r]==1
}//for nz<NL
}// else nz<NL
//if nz=NL
};//if nz>2
+
lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
@@ -1217,7 +1231,10 @@ lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
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;"}};
-
+
+
+
+
@@ -1271,6 +1288,10 @@ endTableau;
+
+
+
+
sortie:=fopen("XCasmpfc.mp");
fprint(sortie,Unquoted,MetaLfc);
fclose(sortie);
@@ -1298,7 +1319,6 @@ fclose(sortie);
\begin{VerbatimOut}{XcasTVIapp.cxx}
-
TVIapp(L,F,nom,nomv,f,ftt,ao,nmr):={
@@ -1313,10 +1333,10 @@ nz:=size(z);
S:=NULL;
-if(L==[-infinity,+infinity]){j:=[seq(-100+k,k=0..200)]minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for}
-else{if(L[0]==-infinity){j:=[seq(k,k=100..floor(L[1]))] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for}
-else{if(L[1]==+infinity){j:=[seq(k,k=floor(L[0])..100)] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for;}
-else{ j:=[seq(k,k=floor(z[0])..floor(z[nz-1]))] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for; }}};
+if(L==[-infinity,+infinity]){j:=[seq(-100+k,k=0..200)]minus F;for k in j do S:=S,resoudre_numerique(fp(x),x,k/10,newton_solver);end_for}
+else{if(L[0]==-infinity){j:=[seq(k,k=100..floor(L[1]))] minus F;for k in j do S:=S,resoudre_numerique(fp(x),x,k/10,newton_solver);end_for}
+else{if(L[1]==+infinity){j:=[seq(k,k=floor(L[0])..100)] minus F;for k in j do S:=S,resoudre_numerique(fp(x),x,k/10,newton_solver);end_for;}
+else{ j:=[seq(k,k=floor(z[0])..floor(z[nz-1]))] minus F;for k in j do S:=S,resoudre_numerique(fp(x),x,k/10,newton_solver);end_for; }}};
@@ -1362,31 +1382,37 @@ l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
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)){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]};
+PB:=1;
+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(member(Z[r],F)){PB:=PB,0,1}}};
+if(nz>2){ LL:=[LI,LP,LF]; PB:=[PB,1]}else{LL:=[LI,LF];PB:=[1,1]};
NL:=size(LL);
-A:=NULL;aa:=1;kk:=0;
+A:=NULL;aa:=1;
+kk:=0;
+
-if(NL==nz){for(k:=0;k<nz-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
+if(NL==nz){for(k:=0;k<nz-1;k++){TestS:=(evalf(sign(LL[k]-ao))==evalf(sign(LL[k+1]-ao))) or (evalf(sign(LL[k]-ao))==0.0)or (evalf(sign(LL[k+1]-ao))==0.0);
if(TestS==0){A:=A,aa;l0:=l0+"val(btex $"+latex(Z[k])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;}else{l0:=l0+"val(btex $"+latex(Z[k])+"$ etex);"}}
l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);"};
+//chgmt NL->nz
+if(NL>nz){for(k:=0;k<NL-1;k++){TestS:=(evalf(sign(LL[k]-ao))==evalf(sign(LL[k+1]-ao))) or (evalf(sign(LL[k]-ao))==0.0)or (evalf(sign(LL[k+1]-ao))==0.0);
+
+if(PB[k]==1){if(TestS==0){
+ A:=A,aa;l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;kk:=kk+1}
+else{l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);";kk:=kk+1}};
+}
-if(NL>nz){for(k:=0;k<NL-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
-TestL:=(abs(LL[k])==abs(LL[k+1]));
-if(TestS==0){ if( TestL==1 ){l0:=l0}else{
-A:=A,aa;l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;kk:=kk+1}}else{l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);";kk:=kk+1}}
-l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);
-"};
+ 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);
+TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))==0.0) or (evalf(sign(LL[1]-ao))==0.0);
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){
+ if(Z[0]==-infinity){if(evalf(sign(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
if(sign(fp((Z[0]+10^(-3))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$ $ etex);"+ if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "};
@@ -1394,28 +1420,33 @@ lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
-
-if(nz>2){rr:=1; if(nz==NL){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);
+if(nz>2){rr:=1; if(nz==NL){for(r:=1; r<=NL-2;r++){ TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
ksp:=evalf(fp(Z[r]+0.01))>0;
TestL:=(abs(LL[r])==abs(LL[r+1]));
lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(ksp==1){"plus;"}else{"moins;"}+if(TestS==0){"valBarre(btex $ $ etex);"}else{" "}+if(TestS==0){if(ksp==1){"plus;"}else{"moins;"}}else{" "};
- }}
-else{for(r:=1; r<=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))>0;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);
- TestL:=(abs(LL[r])==abs(LL[r+1]));
- if(TestS==0){if( TestL==1 ){lsp:=lsp}else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+ }}
+else{for(r:=1; r<=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))>0;TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
+
+ if(PB[r]==1){if(TestS==0){lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex $ $ etex);"+if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
- } else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+ else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
-}}
- };
+}}}};
+
+
+
+
+ lsf:=if(member(Z[nz-1],F)==0){" "}else{"nonDefBarre;"}
-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);
+
+
+
+TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))==0.0) or (evalf(sign(LL[1]-ao))==0.0);
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,"}
@@ -1423,43 +1454,44 @@ TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))=
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);
+ if(nz>2){if(nz==NL){for(r:=1; r<=nz-2;r++){TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
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(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
+ etex,"+if(evalf(sign(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);
+};//for
+}else{rr:=1;for(r:=1; r<=NL-2;r++){TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0);
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)) {
+
+if(PB[r]==1){if(TestS==0){lp:=lp+if(member(Z[rr],F)){
"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
+ etex,"+if(evalf(sign(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
+}// testS==0
else{lp:=lp+if(member(Z[rr],F)){
"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);
+ etex,"+if(evalf(sign(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
+}//PB[r]==1
}//for nz<NL
}// else nz<NL
//if nz=NL
};//if nz>2
-lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
+lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
@@ -1468,7 +1500,7 @@ lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
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;"}};
-
+
@@ -1525,6 +1557,7 @@ endTableau;
+
sortie:=fopen("XCasmpfc.mp");
fprint(sortie,Unquoted,MetaLfc);
fclose(sortie);
@@ -1534,8 +1567,8 @@ fclose(sortie);
-\end{VerbatimOut}
+\end{VerbatimOut}