summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2009-03-19 16:39:05 +0000
committerKarl Berry <karl@freefriends.org>2009-03-19 16:39:05 +0000
commit44fd9c60eecdeb03f545d4c6199921b9ea71fa28 (patch)
tree9eb21522055866f281479507224108d5e46726f9 /Master
parent81c39042d694d7088a131fc09460771775e73c4e (diff)
tablor update (17mar09)
git-svn-id: svn://tug.org/texlive/trunk@12434 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r--Master/texmf-dist/doc/latex/tablor/tablor.html755
-rw-r--r--Master/texmf-dist/doc/latex/tablor/tablor.pdfbin391589 -> 391365 bytes
-rw-r--r--Master/texmf-dist/doc/latex/tablor/tablor.tex4
-rw-r--r--Master/texmf-dist/tex/latex/tablor/tablor-xetex.sty100
-rw-r--r--Master/texmf-dist/tex/latex/tablor/tablor.sty91
5 files changed, 409 insertions, 541 deletions
diff --git a/Master/texmf-dist/doc/latex/tablor/tablor.html b/Master/texmf-dist/doc/latex/tablor/tablor.html
index 46298e680db..82dfd03264f 100644
--- a/Master/texmf-dist/doc/latex/tablor/tablor.html
+++ b/Master/texmf-dist/doc/latex/tablor/tablor.html
@@ -87,7 +87,7 @@
<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>}[07/03/2009 v4.04 la machine a creer des tableaux de signes et variations]
+<span class="font-latex-sedate">\ProvidesPackage</span>{<span class="flyspell-duplicate">tablor</span>}[17/03/2009 v4.04-b 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">This work may be distributed and/or mofified under the conditions
@@ -95,7 +95,7 @@
</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/
</span><span class="comment-delimiter">% </span><span class="comment">This work consists of the files tablor.sty, tablor-xetex.sty, tablor.cfg, tablor.tex,
-</span><span class="comment-delimiter">% </span><span class="comment">tablor.pdf and tablor.html
+</span><span class="comment-delimiter">% </span><span class="comment">tablor.pdf and tablor.</span><span class="comment"><span class="flyspell-incorrect">html</span></span><span class="comment">
</span>
<span class="comment-delimiter">%% </span><span class="comment">Cree 16 environnements :
@@ -132,14 +132,14 @@
</span><span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\end</span></span><span class="comment">{TVZ}
</span><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">tableau avec valeurs </span><span class="comment"><span class="flyspell-incorrect">intermediares</span></span><span class="comment">
+</span><span class="comment-delimiter">% </span><span class="comment">tableau avec valeurs </span><span class="comment"><span class="flyspell-duplicate">intermediares</span></span><span class="comment">
</span><span class="comment-delimiter">%</span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TVI}
-</span><span class="comment-delimiter">%</span><span class="comment"><span class="flyspell-duplicate">TVI</span></span><span class="comment">([-1,+infinity],[-1],"f","x",x2/sqrt(x+1)-1,1,2,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">TVI([-1,+infinity],[-1],"f","x",x2/sqrt(x+1)-1,1,2,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">{TVI}
</span><span class="comment-delimiter">%%%</span><span class="comment">
-</span><span class="comment-delimiter">% </span><span class="comment">tableau avec valeurs </span><span class="comment"><span class="flyspell-duplicate">intermediares</span></span><span class="comment"> et racines exactes
+</span><span class="comment-delimiter">% </span><span class="comment">tableau avec valeurs intermediares et racines exactes
</span><span class="comment-delimiter">%</span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TVIex}
-</span><span class="comment-delimiter">%</span><span class="comment"><span class="flyspell-duplicate">TVIex</span></span><span class="comment">([-1,+infinity],[-1],"f","x",x2/sqrt(x+1)-1,1,2,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">TVIex([-1,+infinity],[-1],"f","x",x2/sqrt(x+1)-1,1,2,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">{TVIex}
</span><span class="comment-delimiter">%%%</span><span class="comment">
</span><span class="comment-delimiter">%</span><span class="comment">
@@ -152,7 +152,7 @@
</span><span class="comment-delimiter">%</span><span class="comment">
</span><span class="comment-delimiter">% </span><span class="comment">tableau de variations avec f' sans zero formel
</span><span class="comment-delimiter">%</span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TVIapp}
-</span><span class="comment-delimiter">% </span><span class="comment"><span class="flyspell-duplicate">TVIapp</span></span><span class="comment">([0,+infinity],[0],"g","x",ln(x)-x*exp(2-x),1,0,</span><span class="font-latex-sedate"><span class="comment">\tv</span></span><span class="comment">)
+</span><span class="comment-delimiter">% </span><span class="comment">TVIapp([0,+infinity],[0],"g","x",ln(x)-x*exp(2-x),1,0,</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">{TVIapp}
</span><span class="comment-delimiter">%</span><span class="comment">
</span><span class="comment-delimiter">%</span><span class="comment">
@@ -161,7 +161,7 @@
</span><span class="comment-delimiter">% </span><span class="comment">fichier metapost pour le modifier
</span><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">Courbes parametrees
+</span><span class="comment-delimiter">% </span><span class="comment">Courbes </span><span class="comment"><span class="flyspell-duplicate">parametrees</span></span><span class="comment">
</span><span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TVP}
</span><span class="comment-delimiter">% </span><span class="comment">TVP([-infinity,+infinity],[[-1,2],[-1]],["x","y"],"t",[t^2/((t+1)*(t-2)),t^2*(t+2)/(t+1)],1,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">{TVP}
@@ -189,18 +189,18 @@
</span><span class="comment-delimiter">%% </span><span class="comment">ne l'avez pas de base
</span>
-<span class="font-latex-sedate">\RequirePackage</span>{filecontents}
+<span class="font-latex-sedate">\RequirePackage</span>{<span class="flyspell-incorrect">filecontents</span>}
<span class="font-latex-sedate">\RequirePackage</span>{ifthen}
<span class="font-latex-sedate">\RequirePackage</span>{fancyvrb}
-<span class="font-latex-sedate">\RequirePackage</span>{ifpdf}
+<span class="font-latex-sedate">\RequirePackage</span>{<span class="flyspell-duplicate">ifpdf</span>}
-<span class="font-latex-sedate">\fvset</span>{gobble=0}
+<span class="font-latex-sedate">\fvset</span>{<span class="flyspell-incorrect">gobble</span>=0}
<span class="comment-delimiter">% </span><span class="comment">option xcas present
</span>
-<span class="font-latex-sedate">\newboolean</span>{xcas}<span class="font-latex-sedate">\setboolean</span>{xcas}{false}
-<span class="font-latex-sedate">\DeclareOption</span>{xcas}{<span class="font-latex-sedate">\setboolean</span>{xcas}{true}}
+<span class="font-latex-sedate">\newboolean</span>{xcas}<span class="font-latex-sedate">\setboolean</span>{xcas}{<span class="flyspell-duplicate">false</span>}
+<span class="font-latex-sedate">\DeclareOption</span>{xcas}{<span class="font-latex-sedate">\setboolean</span>{xcas}{<span class="flyspell-incorrect">true</span>}}
<span class="font-latex-sedate">\ProcessOptions</span><span class="font-latex-sedate">\relax</span>
@@ -209,22 +209,22 @@
<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 class="comment-delimiter">%% </span><span class="comment">on configure tablor dans un fichier exterieur pour la </span><span class="comment"><span class="flyspell-incorrect">plateforme</span></span><span class="comment">
</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
</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"><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> {<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>{<span class="flyspell-duplicate">cat</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">\cp</span></span><span class="function-name">}</span>{<span class="flyspell-duplicate">cp</span> }}
@@ -235,18 +235,18 @@
<span class="comment-delimiter">%% </span><span class="comment">pour ceux compilant via pdflatex
</span>
<span class="font-latex-sedate">\ifpdf</span>
-<span class="font-latex-sedate">\DeclareGraphicsRule</span>{*}{mps}{*}{}
+<span class="font-latex-sedate">\DeclareGraphicsRule</span>{*}{<span class="flyspell-incorrect">mps</span>}{*}{}
<span class="font-latex-sedate">\fi</span>
<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>}
}
-<span class="comment-delimiter">%% </span><span class="comment">Pour clore les fichiers metapost
+<span class="comment-delimiter">%% </span><span class="comment">Pour clore les fichiers </span><span class="comment"><span class="flyspell-duplicate">metapost</span></span><span class="comment">
</span>
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{queue.mp}
@@ -264,7 +264,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>}
}
@@ -277,7 +277,7 @@
<span class="comment-delimiter">%% </span><span class="comment">initialise les compteurs
</span>
-<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">\newcounter</span></span><span class="function-name">{</span><span class="function-name"><span class="flyspell-duplicate">TVn</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">\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>
@@ -285,7 +285,7 @@
-<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 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 </span><span class="comment"><span class="flyspell-duplicate">defaut</span></span><span class="comment">)
</span><span class="comment-delimiter">%% </span><span class="comment">effectue quelques verifications :
</span>
@@ -294,16 +294,16 @@
</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">\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="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 </span><span class="comment"><span class="flyspell-incorrect">detruire</span></span><span class="comment">
</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>
@@ -312,7 +312,7 @@
</span>
<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">\ifthenelse</span>{<span class="font-latex-sedate">\boolean</span>{<span class="flyspell-duplicate">windows</span>}}<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{giac &lt;#1 }}}
<span class="font-latex-sedate">\makeatother</span>
@@ -335,7 +335,7 @@
</span>
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTV.cxx}
-TV(L,F,nom,nomv,f,ftt,trigo,nmr):={
+<span class="flyspell-duplicate">TV</span>(L,F,nom,nomv,f,ftt,trigo,nmr):={
nl:=size(L);
f:=unapply(f,x);
fp:=function_diff(f);
@@ -347,13 +347,13 @@ if(trigo==t){
all_trig_solutions:=1;
reset_solve_counter(-1,-1);
SS:=solve(factor(simplify(fp(x))),x);
-ns:=size(SS);
+<span class="flyspell-duplicate">ns</span>:=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])){
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]){
+<span class="flyspell-duplicate">while</span>(evalf(subst(SS[k],n_1=m))&gt;=L[0]){
S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m-1;
}
}
@@ -366,14 +366,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>;
@@ -385,20 +385,15 @@ nz:=size(Z);
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
- fsi;
+ <span class="flyspell-duplicate">fsi</span>;
+
+
+Z:=sort([op(set[op(Z)])]);
-Z:=sort(Z);
-nz:=size(Z);
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
- fsi;
-pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
- fsi;
-fpour;
nz:=size(Z);
l0:=" newLigneVariables(btex <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);
-";fpour;
+";<span class="flyspell-duplicate">fpour</span>;
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));
@@ -435,16 +430,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">$"+
+lf:=if(member(Z[nz-1],F)==0){"valPos(<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);"}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>;"}};
@@ -452,15 +447,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;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{
-intro+"beginTableau("+nmr+")"+
+intro+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
lsi+lsf+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";
}
@@ -470,39 +465,39 @@ li+
lp+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{"beginTableau("+nmr+")"+
l0+
li+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}}else{
if(nz&gt;2){"beginTableau("+nmr+")"+
l0+
-lsi+lsp+lsf+
+<span class="flyspell-duplicate">lsi</span>+lsp+lsf+
li+
-lp+
+<span class="flyspell-duplicate">lp</span>+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
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);
@@ -538,13 +533,13 @@ 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]){
@@ -560,14 +555,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>;
@@ -579,20 +574,15 @@ nz:=size(Z);
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
- fsi;
+ <span class="flyspell-duplicate">fsi</span>;
-Z:=sort(Z);
-nz:=size(Z);
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
- fsi;
-pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
- fsi;
-fpour;
-nz:=size(Z);
+
+Z:=sort([op(set[op(Z)])]);
+
+<span class="flyspell-duplicate">nz</span>:=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);
-";fpour;
+";<span class="flyspell-duplicate">fpour</span>;
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));
@@ -624,72 +614,72 @@ lm0:=limit(f(x),x=Z[0],1)==-infinity;
"valPos(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);"} }
- else{"valPos(btex <span class="font-latex-math">$"+latex(simplify(f(Z[r])))+"$</span>
+ else{"valPos(btex <span class="font-latex-math">$"+latex(</span><span class="font-latex-math"><span class="flyspell-duplicate">simplify</span></span><span class="font-latex-math">(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;
+<span class="flyspell-duplicate">lnz</span>:=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);"}else{"0);"}};
+ if(kz==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);"}};
-MetaLfc:=if(ftt==2){if(nz&gt;2){"
+MetaLfc:=if(ftt==2){if(<span class="flyspell-duplicate">nz</span>&gt;2){"
beginTableau("+nmr+")"+
l0+lsi+lsp+lsf+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{
-intro+"beginTableau("+nmr+")"+
+<span class="flyspell-duplicate">intro</span>+"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+
-lf
+<span class="flyspell-duplicate">lp</span>+
+<span class="flyspell-duplicate">lf</span>
+"
endTableau;
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
li+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}}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
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{"beginTableau("+nmr+")"+
l0+
-lsi+lsf+
+<span class="flyspell-duplicate">lsi</span>+lsf+
li+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}
}}
@@ -697,7 +687,7 @@ endTableau;
sortie:=fopen("XCasmpfc.mp");
fprint(sortie,Unquoted,MetaLfc);
-fclose(sortie);
+<span class="flyspell-duplicate">fclose</span>(sortie);
}:;
@@ -726,7 +716,7 @@ fclose(sortie);
TVZ(L,F,FF,nom,nomv,f,ftt,trigo,nmr):={
nl:=size(L);
-nf:=size(FF);
+nf:=size(<span class="flyspell-duplicate">FF</span>);
Ff:=NULL;IMIN:=NULL;IMAX:=NULL;
for(k:=0;k&lt;nf;k++){
if(FF[k][0]&gt;L[0]){Imin[k]:=FF[k][0];LL:=L}else{Imin[k]:=L[0];LL:=[L[1]]};
@@ -739,7 +729,7 @@ if(FF[k][1]&lt;L[1]){Imax[k]:=FF[k][1];LL:=L}else{Imax[k]:=L[1];LL:=[L[0]]};
IMIN:=[IMIN];
IMAX:=[IMAX];
f:=unapply(f,x);
-fp:=function_diff(f);
+<span class="flyspell-duplicate">fp</span>:=function_diff(f);
Z:=concat(LL,F);
for(k:=0;k&lt;nf;k++){
@@ -751,7 +741,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++){
@@ -780,19 +770,11 @@ S:=solve(fp(x),x);
if(Kk==1){Z:=append(Z,simplify(S[j]))};
}
fpour
- fsi;
+ <span class="flyspell-duplicate">fsi</span>;
-Z:=sort(Z);
-nz:=size(Z);
+Z:=sort([op(set[op(Z)])]);
-
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
- fsi;
-pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
- fsi;
-fpour;
nz:=size(Z);
for(j:=0;j&lt;nf;j++){
@@ -801,14 +783,14 @@ for(j:=0;j&lt;nf;j++){
}
}
}
-nz:=size(Z);
+<span class="flyspell-duplicate">nz</span>:=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);
-";fpour;
+";<span class="flyspell-duplicate">fpour</span>;
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){if((member(Z[0],F)==0) and (fp(Z[0])!=undef)){"debutNonDef;"}else{"debutNonDefStrict;"}}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){
@@ -820,7 +802,7 @@ if(member(Z[0],IMIN)!=0){if((member(Z[0],F)==0) and (fp(Z[0])!=undef)){"debutNon
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){if((member(Z[r],F)==0) and (fp(Z[r])!=undef)){"debutNonDef;"}else{"debutNonDefStrict;"}}else{
- if(member(Z[r],IMAX)!=0){if((member(Z[r],F)==0) and (fp(Z[r])!=undef)){"finNonDef;"}else{"finNonDefStrict;"}+
+ if(member(Z[r],IMAX)!=0){if((member(Z[r],F)==0) and (fp(Z[r])!=undef)){"finNonDef;"}else{"</span><span class="font-latex-math"><span class="flyspell-duplicate">finNonDefStrict</span></span><span class="font-latex-math">;"}+
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;"}
@@ -828,7 +810,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[nz-1],IMAX)!=0){if((member(Z[nz-1],F)==0) and (fp(Z[nz-1])!=undef)){"finNonDef;"}else{"finNonDefStrict;"}}else{if(member(Z[nz-1],F)==0){""}else{"nonDefBarre;
+lsf:=if(member(Z[nz-1],IMAX)!=0){if((member(Z[nz-1],F)==0) and (fp(Z[nz-1])!=undef)){"finNonDef;"}else{"finNonDefStrict;"}}else{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">;
"}}
@@ -849,48 +831,48 @@ if(nz&gt;2){
"-\\infty"}else{
latex(simplify(limit(f(x),x=Z[r],-1)))}
+"$</span> etex,"+if(krm==1){
- "1);"}else{"0);"}
+ "1);"}<span class="flyspell-duplicate">else</span>{"0);"}
+if(member(Z[r],F)==0){"debutNonDef;"}else{"debutNonDefStrict;"}
- }//fsi Zr=Imin
+ }//fsi Zr=<span class="flyspell-duplicate">Imin</span>
else{
if (member(Z[r],IMAX)!=0){if(member(Z[r],F)==0){"finNonDef;"}else{"finNonDefStrict;"}+"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);"}
+ "1);"}<span class="flyspell-duplicate">else</span>{"0);"}
}else{
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){
+ +"$</span> etex,"+if(<span class="flyspell-duplicate">krm</span>==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){
+ +"$</span> etex,"+if(<span class="flyspell-duplicate">krp</span>==1){
"1);"}else{"0);"}
}//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{
- if(krp==1){
+ if(<span class="flyspell-duplicate">krp</span>==1){
"1);"}else{"0);"}//felse(krp)
- }//felse(valpos)
+ }//felse(<span class="flyspell-incorrect">valpos</span>)
}//felse(member Zr F)
} //felse(Zr=Imax)
}//felse(Zr=Imin)
- };//ffor
+ };//<span class="flyspell-incorrect">ffor</span>
}//fsi nz
-lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
+<span class="flyspell-duplicate">lnz</span>:=limit(f(x),x=Z[nz-1],-1)==-infinity;
-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,"+
+<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> <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);nonDefBarre;"}else{"0);nonDefBarre;"}};
+ if(kz==1){"1);nonDefBarre;"}else{"0);<span class="flyspell-duplicate">nonDefBarre</span>;"}};
@@ -898,32 +880,32 @@ 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+")"+
+beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+lsi+lsp+lsf+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{
intro+"beginTableau("+nmr+")"+
l0+
-lsi+lsf+"
-endTableau;
+<span class="flyspell-duplicate">lsi</span>+lsf+"
+<span class="flyspell-duplicate">endTableau</span>;
";
}
-}else{ if(ftt==0){if(nz&gt;2){"beginTableau("+nmr+")"+
+}else{ if(ftt==0){if(nz&gt;2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
li+
-lp+
+<span class="flyspell-duplicate">lp</span>+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
-";}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+")"+
@@ -931,17 +913,17 @@ if(nz&gt;2){"beginTableau("+nmr+")"+
lsi+lsp+lsf+
li+
lp+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{"beginTableau("+nmr+")"+
l0+
-lsi+lsf+
+<span class="flyspell-duplicate">lsi</span>+lsf+
li+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}
}}
@@ -949,7 +931,7 @@ endTableau;
sortie:=fopen("XCasmpfc.mp");
fprint(sortie,Unquoted,MetaLfc);
-fclose(sortie);
+<span class="flyspell-duplicate">fclose</span>(sortie);
}
:;
@@ -965,7 +947,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>}
@@ -973,7 +955,7 @@ fclose(sortie);
-TVapp(L,F,nom,nomv,f,ftt,nmr):={
+<span class="flyspell-duplicate">TVapp</span>(L,F,nom,nomv,f,ftt,nmr):={
nl:=size(L);
@@ -988,20 +970,20 @@ 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}
+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,<span class="flyspell-duplicate">newton</span>_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; }}};
+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_<span class="flyspell-duplicate">solver</span>);end_for; }}};
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]);
+ kk:=(re(S[j])==S[j]);kok:=(evalf(S[j])&gt;=L[0]) and (<span class="flyspell-duplicate">evalf</span>(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;
@@ -1026,8 +1008,8 @@ 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);
-";fpour;
+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>);
+";<span class="flyspell-duplicate">fpour</span>;
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));
@@ -1045,7 +1027,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[nz-1],F)==0){""}else{"nonDefBarre;
"}
-lm0:=limit(f(x),x=Z[0],1)==-infinity;
+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">;
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,"}
else{"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$</span> etex,"}+
@@ -1062,29 +1044,29 @@ 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">$"+
+lf:=if(member(Z[nz-1],F)==0){"valPos(<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);"}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,"+
+ 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> <span class="flyspell-duplicate">etex</span>,"+
if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};
-MetaLfc:=if(ftt==2){if(nz&gt;2){"
+MetaLfc:=if(ftt==2){if(<span class="flyspell-duplicate">nz</span>&gt;2){"
-beginTableau("+nmr+")"+
+<span class="flyspell-duplicate">beginTableau</span>("+nmr+")"+
l0+lsi+lsp+lsf+"
endTableau;
";}else{
-intro+"beginTableau("+nmr+")"+
+<span class="flyspell-duplicate">intro</span>+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
lsi+lsf+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";
}
@@ -1092,34 +1074,34 @@ endTableau;
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+
+<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>;
";}
}}
@@ -1148,32 +1130,32 @@ 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>{<span class="flyspell-duplicate">XcasTVI</span>.cxx}
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVI.cxx}
TVI(L,F,nom,nomv,f,ftt,ao,trigo,nmr):={
-nl:=size(L);
+<span class="flyspell-duplicate">nl</span>:=size(L);
f:=unapply(f,x);
-<span class="flyspell-duplicate">fp</span>:=function_diff(f);
+fp:=function_diff(f);
Z:=concat(L,F);
S:=[];
if(trigo==t){
-<span class="flyspell-duplicate">all</span>_trig_solutions:=1;
+all_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;
-<span class="flyspell-duplicate">while</span>(evalf(simplify(subst(SS[k],n_1=m)))&lt;=evalf(L[nl-1])){
+while(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]){
@@ -1185,38 +1167,35 @@ S:=solve(fp(x),x);
}
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]));
+ kk:=(evalf(S[j])&gt;=evalf(L[0])) and (evalf(S[j])&lt;=evalf(L[<span class="flyspell-duplicate">nl</span>-1]));
if(kk==1){Z:=append(Z,simplify(S[j]))};
fpour
- fsi;
+ <span class="flyspell-duplicate">fsi</span>;
-Z:=sort(Z);
-nz:=size(Z);
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
- fsi;
-pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
- fsi;
-fpour;
-nz:=size(Z);
-l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; lf:=" ";lsp:=" ";
+
+Z:=sort([op(set[op(Z)])]);
+
+
+
+<span class="flyspell-duplicate">nz</span>:=size(Z);
+l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; lf:=" ";<span class="flyspell-duplicate">lsp</span>:=" ";
LI:=limit(f(x),x,Z[0],1);
-LF:=limit(f(x),x,Z[nz-1],-1);
+<span class="flyspell-duplicate">LF</span>:=limit(f(x),x,Z[nz-1],-1);
LP:=NULL;
-PB:=1;
-if(<span class="flyspell-duplicate">nz</span>&gt;2){ for(r:=1;
+<span class="flyspell-duplicate">PB</span>:=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(<span class="flyspell-duplicate">member</span>(Z[r],F)){<span class="flyspell-duplicate">PB</span>:=<span class="flyspell-duplicate">PB</span>,0,1}else{PB:=<span class="flyspell-duplicate">PB</span>,1};
+if(member(Z[r],F)){PB:=PB,0,1}else{PB:=<span class="flyspell-duplicate">PB</span>,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;
+<span class="flyspell-duplicate">kk</span>:=0;
@@ -1224,7 +1203,7 @@ if(NL==nz){for(k:=0;k&lt;nz-1;k++){TestS:=(evalf(sign(LL[k]-ao))==evalf(sign(LL[
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(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]-<span class="flyspell-duplicate">ao</span>))==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}
@@ -1236,7 +1215,7 @@ else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> et
};
-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);
+TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-<span class="flyspell-duplicate">ao</span>))==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));
@@ -1255,27 +1234,27 @@ if(nz&gt;2){rr:=1; if(nz==NL){for(r:=1; r&lt;=NL-2;r++){ TestS:=(evalf(sign(LL[r
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:=(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);
+</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(</span><span class="font-latex-math"><span class="flyspell-duplicate">LL</span></span><span class="font-latex-math">[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{"</span><span class="font-latex-math"><span class="flyspell-duplicate">nonDefBarre</span></span><span class="font-latex-math">;"}+
+ 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:=</span><span class="font-latex-math"><span class="flyspell-duplicate">rr</span></span><span class="font-latex-math">+1;}
+ else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
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;"}
+ 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">;
+</span><span class="font-latex-math"><span class="flyspell-duplicate">lm</span></span><span class="font-latex-math">0:=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);
+TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))==0.0) or (evalf(sign(</span><span class="font-latex-math"><span class="flyspell-duplicate">LL</span></span><span class="font-latex-math">[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,"}
@@ -1300,33 +1279,33 @@ TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))=
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(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);"}}
+ "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(evalf(sign(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[<span class="flyspell-duplicate">rr</span>]+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;
}// 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{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(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;
+ etex,"+if(evalf(sign(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);
+ "}}};rr:=<span class="flyspell-duplicate">rr</span>+1;
}//else testS==0
}//PB[r]==1
}//for nz&lt;NL
}// else nz&lt;NL
-//if nz=NL
+//if nz=<span class="flyspell-duplicate">NL</span>
};//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">$"+
+<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">$"+
+ 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);<span class="flyspell-duplicate">nonDefBarre</span>;"}};
@@ -1338,7 +1317,7 @@ 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+")"+
l0+lsi+lsp+lsf+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}<span class="flyspell-duplicate">else</span>{
"beginTableau("+nmr+")"+
@@ -1349,31 +1328,31 @@ lsi+lsf+"
";
}
}else{
-if(ftt==0){if(nz&gt;2){"beginTableau("+nmr+")"+
+if(ftt==0){if(nz&gt;2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
li+
lp+
<span class="flyspell-duplicate">lf</span>
+"
-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("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
lsi+lsp+lsf+
li+
-lp+
+<span class="flyspell-duplicate">lp</span>+
lf
+"
<span class="flyspell-duplicate">endTableau</span>;
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
lsi+lsf+
li+
@@ -1392,7 +1371,7 @@ li+
sortie:=fopen("XCasmpfc.mp");
fprint(sortie,Unquoted,MetaLfc);
-fclose(sortie);
+<span class="flyspell-duplicate">fclose</span>(sortie);
}:;
@@ -1414,24 +1393,24 @@ fclose(sortie);
</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>{XcasTVIex.cxx}
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVIex.<span class="flyspell-duplicate">cxx</span>}
-TVIex(L,F,nom,nomv,f,ftt,ao,trigo,nmr):={
-nl:=size(L);
+TVIex(L,F,nom,nomv,f,ftt,ao,trigo,<span class="flyspell-duplicate">nmr</span>):={
+<span class="flyspell-duplicate">nl</span>:=size(L);
f:=unapply(f,x);
fp:=function_diff(f);
Z:=concat(L,F);
S:=[];
-Sex:=NULL;
-Zex:=solve(f(x)=ao);
+<span class="flyspell-duplicate">Sex</span>:=NULL;
+Zex:=solve(f(x)=<span class="flyspell-duplicate">ao</span>);
Zex:=sort(Zex);
for(j:=0;j&lt;size(Zex);j++){
if((evalf(Zex[j])&gt;=evalf(L[0])) and (evalf(Zex[j])&lt;=evalf(L[nl-1]))){Sex:=Sex,Zex[j]};
};
-Sex:=[Sex];
+<span class="flyspell-duplicate">Sex</span>:=[<span class="flyspell-duplicate">Sex</span>];
@@ -1443,7 +1422,7 @@ Sex:=[Sex];
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;
@@ -1459,38 +1438,35 @@ S:=solve(fp(x),x);
}
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]));
+ kk:=(evalf(S[j])&gt;=evalf(L[0])) and (evalf(S[j])&lt;=evalf(L[<span class="flyspell-duplicate">nl</span>-1]));
if(kk==1){Z:=append(Z,simplify(S[j]))};
fpour
- fsi;
+ <span class="flyspell-duplicate">fsi</span>;
-Z:=sort(Z);
-nz:=size(Z);
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
- fsi;
-pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
- fsi;
-fpour;
-nz:=size(Z);
+
+
+ Z:=sort([op(set[op(Z)])]);
+
+
+<span class="flyspell-duplicate">nz</span>:=size(Z);
l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; lf:=" ";lsp:=" ";
LI:=limit(f(x),x,Z[0],1);
-LF:=limit(f(x),x,Z[nz-1],-1);
+<span class="flyspell-duplicate">LF</span>:=limit(f(x),x,Z[nz-1],-1);
LP:=NULL;
PB:=1;
-if(nz&gt;2){ for(r:=1;
+if(<span class="flyspell-duplicate">nz</span>&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}else{PB:=PB,1};
+if(member(Z[r],F)){PB:=PB,0,1}else{PB:=<span class="flyspell-duplicate">PB</span>,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:=0;
-kk:=0;
+<span class="flyspell-duplicate">kk</span>:=0;
@@ -1498,11 +1474,11 @@ if(NL==nz){for(k:=0;k&lt;nz-1;k++){TestS:=(evalf(sign(LL[k]-ao))==evalf(sign(LL[
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">$"+latex(simplify(Sex[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(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]-<span class="flyspell-duplicate">ao</span>))==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">$"+latex(simplify(Sex[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}};
+else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);";kk:=<span class="flyspell-duplicate">kk</span>+1}};
}
l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> etex);"
@@ -1510,7 +1486,7 @@ else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> et
};
-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);
+<span class="flyspell-duplicate">TestS</span>:=(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));
@@ -1526,15 +1502,15 @@ 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:=(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;"}+
+ lsp:=lsp+if(member(Z[r],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(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:=(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);
+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]-</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{"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;"}+
- if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
+ else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}</span><span class="font-latex-math"><span class="flyspell-duplicate">else</span></span><span class="font-latex-math">{"nonDefBarre;"}+
+ 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;}
}}}};
@@ -1544,12 +1520,12 @@ else{for(r:=1; r&lt;=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))&gt;0;TestS:=(evalf(si
-lm0:=limit(f(x),x=Z[0],1)==-infinity;
+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]-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]-</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,"}
@@ -1562,7 +1538,7 @@ TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))=
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"}else{latex(simplify(</span><span class="font-latex-math"><span class="flyspell-duplicate">limit</span></span><span class="font-latex-math">(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(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);"
@@ -1576,7 +1552,7 @@ TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))=
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(evalf(sign(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;
}// testS==0
@@ -1598,10 +1574,10 @@ lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
lf:=if(member(Z[nz-1],F)==0){"valPos(<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> <span class="flyspell-duplicate">etex</span>,"+
+ 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> <span class="flyspell-duplicate">etex</span>,"+
+ if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+
if(kz==1){"1);nonDefBarre;"}else{"0);<span class="flyspell-duplicate">nonDefBarre</span>;"}};
@@ -1610,12 +1586,12 @@ lf:=if(member(Z[nz-1],F)==0){"valPos(<span class="flyspell-duplicate">btex</span
-MetaLfc:= if(ftt==2){if(nz&gt;2){"beginTableau("+nmr+")"+
+<span class="flyspell-duplicate">MetaLfc</span>:= if(ftt==2){if(nz&gt;2){"beginTableau("+nmr+")"+
l0+lsi+lsp+lsf+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
";}else{
-"beginTableau("+nmr+")"+
+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
lsi+lsf+"
<span class="flyspell-duplicate">endTableau</span>;
@@ -1626,32 +1602,32 @@ lsi+lsf+"
if(ftt==0){if(nz&gt;2){"beginTableau("+nmr+")"+
l0+
li+
-<span class="flyspell-duplicate">lp</span>+
-lf
+lp+
+<span class="flyspell-duplicate">lf</span>
+"
endTableau;
-";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</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+
-<span class="flyspell-duplicate">lf</span>
+lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{"beginTableau("+nmr+")"+
l0+
lsi+lsf+
li+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
<span class="flyspell-duplicate">endTableau</span>;
@@ -1664,7 +1640,7 @@ lf
sortie:=fopen("XCasmpfc.mp");
-fprint(sortie,Unquoted,MetaLfc);
+<span class="flyspell-duplicate">fprint</span>(sortie,Unquoted,MetaLfc);
fclose(sortie);
@@ -1687,14 +1663,14 @@ 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="flyspell-duplicate">TVIapp</span>(L,F,nom,nomv,f,ftt,ao,<span class="flyspell-duplicate">nmr</span>):={
+TVIapp(L,F,nom,nomv,f,ftt,ao,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);
@@ -1704,9 +1680,9 @@ 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,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}
-<span class="flyspell-duplicate">else</span>{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;}
-<span class="flyspell-duplicate">else</span>{ 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; }}};
+else{if(L[0]==-infinity){j:=[seq(k,k=100..floor(L[1]))] minus F;for k in j do S:=S,resoudre_numerique(<span class="flyspell-duplicate">fp</span>(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; }}};
@@ -1716,7 +1692,7 @@ else{if(L[0]==-infinity){j:=[seq(k,k=100..floor(L[1]))] minus F;for k in j do S:
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 (<span class="flyspell-duplicate">evalf</span>(S[j])&lt;=L[1]);
+ 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;
<span class="flyspell-duplicate">fsi</span>;
@@ -1753,27 +1729,27 @@ LI:=limit(f(x),x,Z[0],1);
<span class="flyspell-duplicate">LF</span>:=limit(f(x),x,Z[nz-1],-1);
LP:=NULL;
PB:=1;
-if(<span class="flyspell-duplicate">nz</span>&gt;2){ for(r:=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(<span class="flyspell-duplicate">member</span>(Z[r],F)){<span class="flyspell-duplicate">PB</span>:=<span class="flyspell-duplicate">PB</span>,0,1}else{PB:=<span class="flyspell-duplicate">PB</span>,1};
+if(member(Z[r],F)){PB:=PB,0,1}else{PB:=<span class="flyspell-duplicate">PB</span>,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;
+<span class="flyspell-duplicate">kk</span>:=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);"}}
+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);";<span class="flyspell-duplicate">aa</span>:=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}};
+else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);";kk:=<span class="flyspell-duplicate">kk</span>+1}};
}
l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> etex);"
@@ -1781,7 +1757,7 @@ else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> et
};
-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);
+TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))==0.0) or (evalf(sign(<span class="flyspell-duplicate">LL</span>[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));
@@ -1797,15 +1773,15 @@ 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:=(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;"}+
+ lsp:=lsp+if(member(Z[r],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(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:=(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);
+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]-</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{"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;"}+
- 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;}
}}}};
@@ -1815,12 +1791,12 @@ else{for(r:=1; r&lt;=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))&gt;0;TestS:=(evalf(si
-lm0:=limit(f(x),x=Z[0],1)==-infinity;
+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]-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]-</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,"}
@@ -1833,7 +1809,7 @@ TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))=
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"}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(</span><span class="font-latex-math"><span class="flyspell-duplicate">lmrp</span></span><span class="font-latex-math">==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(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);"
@@ -1848,11 +1824,11 @@ 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(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);
+ <span class="font-latex-math">$ "+ao+" $</span> <span class="flyspell-duplicate">etex</span>,0.5);
";rr:=rr+1;
}// 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);"}}
+ "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);"}<span class="flyspell-duplicate">else</span>{"0);"}}
else{"valPos(btex <span class="font-latex-math">$"+latex(simplify(f(Z[rr])))+"$</span>
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;
@@ -1861,7 +1837,7 @@ else{lp:=lp+if(member(Z[rr],F)){
}//for nz&lt;NL
}// else nz&lt;NL
//if nz=NL
-};//if nz&gt;2
+};//if <span class="flyspell-duplicate">nz</span>&gt;2
@@ -1869,11 +1845,11 @@ 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">$"+
- 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);nonDefBarre;"}else{"0);nonDefBarre;"}};
+ if(kz==1){"1);nonDefBarre;"}else{"0);<span class="flyspell-duplicate">nonDefBarre</span>;"}};
@@ -1881,14 +1857,14 @@ 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+")"+
+MetaLfc:= if(ftt==2){if(nz&gt;2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+lsi+lsp+lsf+"
endTableau;
";}else{
"beginTableau("+nmr+")"+
l0+
-lsi+lsf+"
+<span class="flyspell-duplicate">lsi</span>+lsf+"
endTableau;
";
@@ -1900,12 +1876,12 @@ li+
lp+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{"beginTableau("+nmr+")"+
l0+
li+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
endTableau;
";}}else{
@@ -1916,7 +1892,7 @@ li+
lp+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{"beginTableau("+nmr+")"+
l0+
@@ -1924,7 +1900,7 @@ lsi+lsf+
li+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}
}};
@@ -1951,7 +1927,7 @@ 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 de courbes parametrees
+</span><span class="comment-delimiter">%% </span><span class="comment">Code giac/Xcas pour les Tableaux de variations de courbes </span><span class="comment"><span class="flyspell-duplicate">parametrees</span></span><span class="comment">
</span><span class="comment-delimiter">%%</span><span class="comment">
</span>
@@ -1972,7 +1948,7 @@ LLL:=[];
all_trig_solutions:=1;
-reset_solve_counter(-1,-1);
+<span class="flyspell-duplicate">reset</span>_solve_counter(-1,-1);
for(d:=0;d&lt;=1;d++){
f:=subst(f,f[d]=unapply(f[d],t));
@@ -1990,7 +1966,7 @@ while(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]){
+<span class="flyspell-duplicate">while</span>(evalf(subst(SS[k],n_1=m))&gt;=L[0]){
S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m-1;
@@ -2008,11 +1984,11 @@ S:=concat(S,SS);
fpour
fsi;
Z:=sort(Z);
-nz:=size(Z);
+<span class="flyspell-duplicate">nz</span>:=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>;
@@ -2024,7 +2000,7 @@ u:=1;
Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=size(Z);
ftantque;
u:=u+1;
- ftantque;
+ <span class="flyspell-duplicate">ftantque</span>;
};
@@ -2036,30 +2012,30 @@ 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);
-";fpour;
+";<span class="flyspell-duplicate">fpour</span>;
lsi:="","";
FFF:=[[],[]];
for(d:=0;d&lt;=1;d++){
-FFF[d]:=concat(F[d],[-infinity,+infinity]);
+FFF[d]:=concat(F[d],[-infinity,+<span class="flyspell-duplicate">infinity</span>]);
k0:= evalf(limit(f[d](x),x=Z[0],1))&gt; evalf(limit(f[d](x),x=Z[1],-1));
kz:=evalf(limit(f[d](x),x=Z[nz-1],-1))&gt; evalf(limit(f[d](x),x=Z[nz-2],1));
//}
//<span class="font-latex-math">$
- lsi[d]:=lsic+nom[d]+"'("+nomv+")}$</span> etex);"+if(member(Z[0],FFF[d])==0){"valBarre(btex <span class="font-latex-math">$"+latex(simplify(fp[d](Z[0])))+"$</span> etex);"}else{if(Z[0]==-infinity){" "}else{"nonDefBarre;
+ lsi[d]:=lsic+nom[d]+"'("+nomv+")}$</span> etex);"+if(member(Z[0],FFF[d])==0){"valBarre(btex <span class="font-latex-math">$"+latex(simplify(fp[d](Z[0])))+"$</span> etex);"}else{if(Z[0]==-infinity){" "}else{"<span class="flyspell-duplicate">nonDefBarre</span>;
"}}+
if(Z[0]==-infinity){if(sign(evalf(fp[d](if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F[d])==0){
if(sign(fp[d](Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{
- if(sign(fp[d]((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }}
+ if(sign(fp[d]((Z[0]+10^(-5))))==1){"plus;"}<span class="flyspell-duplicate">else</span>{"moins;"} }}
if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ ksp:=evalf(fp[d](Z[r]+0.01))&gt;0;
lsp[d]:=lsp[d]+if(member(Z[r],F[d])==0){"valBarre(btex <span class="font-latex-math">$"+latex(simplify(fp[d](Z[r])))+"$</span> etex);"}else{"nonDefBarre;"}+
if(ksp==1){"plus;"}else{"moins;"}
}; }
-lsf[d]:=if(member(Z[nz-1],FFF[d])==0){"valBarre(btex <span class="font-latex-math">$"+latex(simplify(fp[d](Z[nz-1])))+"$</span> etex);"}else{if(Z[nz-1]==+infinity){" "}else{"nonDefBarre;"}}
+lsf[d]:=if(member(Z[nz-1],FFF[d])==0){"valBarre(btex <span class="font-latex-math">$"+latex(simplify(fp[d](Z[nz-1])))+"$</span> etex);"}else{if(Z[nz-1]==+infinity){" "}else{"<span class="flyspell-duplicate">nonDefBarre</span>;"}}
@@ -2088,7 +2064,7 @@ lm0[d]:=limit(f[d](x),x,Z[0],1)==-infinity;
li[d]:=lvic+nom[d]+"}$</span> etex);"+
if(member(Z[0],F[d])==0){"valPos(btex <span class="font-latex-math">$"+if(lm0[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x,Z[0],1)))}+"$</span> etex,"}
else{"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lm0[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x,Z[0],1)))}+"$</span> etex,"}+
- if(K0[d]==1){"1"}else{"0"}+
+ if(K0[d]==1){"1"}<span class="flyspell-duplicate">else</span>{"0"}+
");";
if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ krm[d]:=evalf(limit(f[d](x),x=Z[r-1],1))&lt; evalf(limit(f[d](x),x=Z[r],-1));
@@ -2099,19 +2075,19 @@ lm0[d]:=limit(f[d](x),x,Z[0],1)==-infinity;
<span class="font-latex-math">$"+if(lmrm[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x,Z[r],-1)))}+"$</span>
etex,"+if(krm[d]==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x,Z[r],1)))}+"$</span> etex,"+if(krp[d]==1){"1);"}else{"0);"}}
else{"valPos(btex <span class="font-latex-math">$"+latex(simplify(f[d](Z[r])))+"$</span>
- etex,"+if(sign(evalf(fp[d](Z[r]-0.001)))==sign(evalf((fp[d](Z[r]+0.001))) )){"0.5);"}else{if(krp[d]==1){"1);"}else{"0);
+ etex,"+if(sign(evalf(fp[d](Z[r]-0.001)))==sign(evalf((fp[d](Z[r]+0.001))) )){"0.5);"}else{if(krp[d]==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);
"}}}
}; }
lnz[d]:=limit(f[d](x),x=Z[nz-1],-1)==-infinity;
-lf[d]:=if(member(Z[nz-1],F[d])==0){"valPos(btex <span class="font-latex-math">$"+
+<span class="flyspell-duplicate">lf</span>[d]:=if(member(Z[nz-1],F[d])==0){"valPos(btex <span class="font-latex-math">$"+
if(lnz[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x=Z[nz-1],-1)))}+"$</span> etex,"+
if(Kz[d]==1){"1);"}else{"0);"}}
else{"limGauche(btex <span class="font-latex-math">$"+
if(lnz[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x=Z[nz-1],-1)))}+"$</span> etex,"+
- if(Kz[d]==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};
+ if(Kz[d]==1){"1);nonDefBarre;"}else{"0);<span class="flyspell-duplicate">nonDefBarre</span>;"}};
@@ -2129,26 +2105,26 @@ lf[d]:=if(member(Z[nz-1],F[d])==0){"valPos(btex <span class="font-latex-math">$"
MetaLfc:=if(ftt==2){if(nz&gt;2){"
-beginTableau("+nmr+")"+
+beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+lsi[0]+lsp[0]+lsf[0]+lsi[1]+lsp[1]+lsf[1]+"
endTableau;
";}else{
intro+"beginTableau("+nmr+")"+
l0+
-lsi[0]+lsf[0]+lsi[1]+lsf[1]+"
+<span class="flyspell-duplicate">lsi</span>[0]+lsf[0]+lsi[1]+lsf[1]+"
endTableau;
";
}
-}else{ if(ftt==0){if(nz&gt;2){"beginTableau("+nmr+")"+
+}else{ if(ftt==0){if(nz&gt;2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
li[0]+
lp[0]+
lf[0]+
li[1]+
lp[1]+
-lf[1]
+<span class="flyspell-duplicate">lf</span>[1]
+"
endTableau;
@@ -2159,19 +2135,19 @@ lf[0]+
li[1]+
lf[1]
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}}else{
if(nz&gt;2){"beginTableau("+nmr+")"+
l0+
lsi[0]+lsp[0]+lsf[0]+
li[0]+
-lp[0]+
+<span class="flyspell-duplicate">lp</span>[0]+
lf[0]+
lsi[1]+lsp[1]+lsf[1]+
li[1]+
lp[1]+
-lf[1]
+<span class="flyspell-duplicate">lf</span>[1]
+"
endTableau;
@@ -2184,7 +2160,7 @@ lsi[1]+lsf[1]+
li[1]+
lf[1]
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}
}
@@ -2207,14 +2183,14 @@ fclose(sortie);
-<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTabSignL.cxx}
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTabSignL.<span class="flyspell-duplicate">cxx</span>}
TS(nomf,L,D,trigo,nmr):={
L:=apply(f-&gt;unapply(f,x),L)
n:=size(L);
Z:=NULL;
-nl:=size(L);
+<span class="flyspell-duplicate">nl</span>:=size(L);
S:=[];
mini:=D[0]; maxi:=D[1];
@@ -2226,7 +2202,7 @@ pour k de 0 jusque n-1 faire
if(trigo==t){
all_trig_solutions:=1;
reset_solve_counter(-1,-1);
-SS:=solve(factor(simplify(L[k](x))),x);
+<span class="flyspell-duplicate">SS</span>:=solve(factor(simplify(L[k](x))),x);
ns:=size(SS);
for(j:=0;j&lt;ns;j++){
m:=0;
@@ -2259,13 +2235,9 @@ Z:=sort(Z);
nz:=size(Z);
+ Z:=sort([op(set[op(Z)])]);
-
-if(nz&gt;2){pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=Z[0..u-1],Z[u+1..nz-1];nz:=nz-1;
- fsi;
-fpour;};
nz:=size(Z);
if(nz==0){li:="";l0:="val(btex <span class="font-latex-math">$"+latex(D[0])+"$</span> etex);val(btex <span class="font-latex-math">$"+latex(D[1])+"$</span> etex);";
@@ -2282,7 +2254,7 @@ if(L[p]((mini+maxi)*0.5&gt;0)){"plus;"}else{"moins;"}+if(maxi!=+infinity and L[p
MetaLfc:=" beginTableau("+nmr+")
-newLigneVariables(btex $</span> {x}<span class="font-latex-math">$ etex);
+newLigneVariables(btex $</span> {x}<span class="font-latex-math">$ </span><span class="font-latex-math"><span class="flyspell-duplicate">etex</span></span><span class="font-latex-math">);
"+l0+li+ lsic+nomf+"(x)}$</span> etex);"+
if(mini!=-infinity and product(L[s](mini),s,0,n-1)==0){"
valBarre(btex 0 etex);"}else{"
@@ -2299,7 +2271,7 @@ endTableau;
l0:="val(btex <span class="font-latex-math">$"+latex(D[0])+"$</span> etex);";li:=" ";lr:=" ";
pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[m])+"$</span> etex);
";fpour;
-l0:=l0+"val(btex <span class="font-latex-math">$"+latex(D[1])+"$</span> etex);";
+l0:=l0+"val(btex <span class="font-latex-math">$"+latex(D[1])+"$</span> <span class="flyspell-duplicate">etex</span>);";
for(p:=0;p&lt;=n-1;p++){lp:="";
@@ -2318,7 +2290,7 @@ for(p:=0;p&lt;=n-1;p++){lp:="";
li:=li+lp+ if(simplify(L[p](Z[nz-1]))==0){"valBarre(btex 0 etex);"}else{"barre;"}+
if(L[p](Z[nz-1]+1.0)&gt;0){"plus;"}else{"moins;
"}+if(maxi!=+infinity and L[p](maxi)==0){"
- valBarre(btex 0 etex);"}else{"
+ valBarre(btex 0 etex);"}</span><span class="font-latex-math"><span class="flyspell-duplicate">else</span></span><span class="font-latex-math">{"
"}
};
@@ -2365,7 +2337,7 @@ fclose(sortie);
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTabSignQ.cxx}
TSq(nomf,L,Fo,D,trigo,nmr):={
L:=apply(f-&gt;unapply(f,x),L);
-Fo:=apply(f-&gt;unapply(f,x),Fo);
+<span class="flyspell-duplicate">Fo</span>:=apply(f-&gt;unapply(f,x),Fo);
L:=concat(L,Fo);
n:=size(L);
Z:=NULL;
@@ -2383,13 +2355,13 @@ if(trigo==t){
all_trig_solutions:=1;
reset_solve_counter(-1,-1);
SS:=solve(factor(simplify(L[k](x))),x);
-ns:=size(SS);
+<span class="flyspell-duplicate">ns</span>:=size(SS);
for(j:=0;j&lt;ns;j++){
mm:=0;
while(evalf(simplify(subst(SS[j],n_1=mm)))&lt;=evalf(maxi)){
S:=concat(S,simplify(subst(SS[j],n_1=mm)));mm:=mm+1;
};mm:=-1;
-while(evalf(subst(SS[j],n_1=mm))&gt;=evalf(mini)){
+<span class="flyspell-duplicate">while</span>(evalf(subst(SS[j],n_1=mm))&gt;=evalf(mini)){
S:=concat(S,simplify(subst(SS[j],n_1=mm)));mm:=mm-1;
}
}
@@ -2404,9 +2376,9 @@ S:=solve(L[k](x),x);
si size(S)&gt;0 alors pour j de 0 jusque size(S)-1 faire
if(S[j]&gt;mini and S[j]&lt;maxi){Z:=Z,simplify(S[j]);}
- fpour;
+ <span class="flyspell-duplicate">fpour</span>;
fsi;
-fpour;
+<span class="flyspell-duplicate">fpour</span>;
pour k de 0 jusque m-1 faire
@@ -2416,20 +2388,20 @@ pour k de 0 jusque m-1 faire
if(trigo==t){
all_trig_solutions:=1;
reset_solve_counter(-1,-1);
-SSF:=solve(factor(simplify(Fo[k](x))),x);
-nsf:=size(SSF);
+<span class="flyspell-duplicate">SSF</span>:=solve(factor(simplify(Fo[k](x))),x);
+<span class="flyspell-duplicate">nsf</span>:=size(SSF);
for(j:=0;j&lt;nsf;j++){
mm:=0;
while(evalf(simplify(subst(SSF[j],n_1=mm)))&lt;=evalf(maxi)){
-SF:=concat(SF,simplify(subst(SSF[j],n_1=mm)));mm:=mm+1;
+SF:=concat(SF,<span class="flyspell-duplicate">simplify</span>(<span class="flyspell-duplicate">subst</span>(SSF[j],n_1=mm)));mm:=mm+1;
};mm:=-1;
-while(evalf(subst(SSF[j],n_1=mm))&gt;=evalf(mini)){
+<span class="flyspell-duplicate">while</span>(evalf(subst(SSF[j],n_1=mm))&gt;=evalf(mini)){
SF:=concat(SF,simplify(subst(SSF[j],n_1=mm)));mm:=mm-1;
}
}
}else{
-SF:=solve(Fo[k](x),x);
+<span class="flyspell-duplicate">SF</span>:=solve(Fo[k](x),x);
}
si size(SF)&gt;0 alors pour j de 0 jusque size(SF)-1 faire
@@ -2437,27 +2409,18 @@ SF:=solve(Fo[k](x),x);
if(SF[j]&gt;mini and SF[j]&lt;maxi){F:=F,simplify(SF[j]);}
fpour;
fsi;
-fpour;
+<span class="flyspell-duplicate">fpour</span>;
-Z:=sort(Z); // on classe les zeros dans l'ordre croissant
-nz:=size(Z);
-if(nz&gt;2){pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=Z[0..u-1],Z[u+1..nz-1];nz:=nz-1; // pour les zeros en double
- fsi;
-fpour;}
+Z:=<span class="flyspell-duplicate">concat</span>(Z,F);
-Z:=sort(Z);
-nz:=size(Z);
-if(nz&gt;2){pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=Z[0..u-1],Z[u+1..nz-1];nz:=nz-1;
- fsi;
-fpour;};
+Z:=sort([op(set[op(Z)])]);
+
nz:=size(Z);
-if(nz==0){li:="";l0:="val(btex <span class="font-latex-math">$"+latex(D[0])+"$</span> etex);val(btex <span class="font-latex-math">$"+latex(D[1])+"$</span> etex);";
+if(nz==0){li:="";l0:="val(btex <span class="font-latex-math">$"+latex(D[0])+"$</span> etex);val(btex <span class="font-latex-math">$"+latex(D[1])+"$</span> <span class="flyspell-duplicate">etex</span>);";
for(p:=0;p&lt;=n-1;p++){li:=li+lsic+latex(L[p](x))+"}<span class="font-latex-math">$ etex);"+
if(mini!=-infinity and L[p](mini)==0){"
valBarre(btex 0 etex);"}else{"
@@ -2472,7 +2435,7 @@ if(L[p]((mini+maxi)*0.5&gt;0)){"plus;"}else{"moins;"}+if(maxi!=+infinity and L[p
-MetaLfc:="
+</span><span class="font-latex-math"><span class="flyspell-duplicate">MetaLfc</span></span><span class="font-latex-math">:="
beginTableau("+nmr+")
newLigneVariables(btex $</span> {x}<span class="font-latex-math">$ etex);
"+l0+li+
@@ -2491,16 +2454,16 @@ endTableau;
-}else{
+}<span class="flyspell-duplicate">else</span>{
l0:="val(btex <span class="font-latex-math">$"+latex(D[0])+"$</span> etex);";li:=" ";lr:=" ";
pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[m])+"$</span> etex);
";fpour;
-l0:=l0+"val(btex <span class="font-latex-math">$"+latex(D[1])+"$</span> etex);";
+l0:=l0+"val(btex <span class="font-latex-math">$"+latex(D[1])+"$</span> <span class="flyspell-duplicate">etex</span>);";
-for(p:=0;p&lt;=n-1;p++){lp:="";
+for(p:=0;p&lt;=n-1;p++){<span class="flyspell-duplicate">lp</span>:="";
li:=li+lsic+latex(L[p](x))+"}<span class="font-latex-math">$ etex);"+
if(mini!=-infinity and L[p](mini)==0){"
valBarre(btex 0 etex);"}else{"
@@ -2515,23 +2478,23 @@ for(p:=0;p&lt;=n-1;p++){lp:="";
li:=li+lp+ if(simplify(L[p](Z[nz-1]))==0){"valBarre(btex 0 etex);"}else{"barre;"}+
if(L[p](Z[nz-1]+1.0)&gt;0){"plus;"}else{"moins;
- "}+if(maxi!=+infinity and L[p](maxi)==0){"
- valBarre(btex 0 etex);"}else{" "}
+ "}+if(maxi!=+infinity and L[p](</span><span class="font-latex-math"><span class="flyspell-duplicate">maxi</span></span><span class="font-latex-math">)==0){"
+ valBarre(btex 0 etex);"}</span><span class="font-latex-math"><span class="flyspell-duplicate">else</span></span><span class="font-latex-math">{" "}
};
pour t de 0 jusque nz-2 faire
lr:=lr+if(product(L[s]((Z[t]+Z[t+1])*.5),s,0,n-1)&gt;0){"plus;"}else{"moins;"}+
- if(member(Z[t+1],FF)==0){"valBarre(btex 0 etex);"}else{ "nonDefBarre;"}
- fpour
+ if(member(Z[t+1],FF)==0){"valBarre(btex 0 etex);"}else{ "</span><span class="font-latex-math"><span class="flyspell-duplicate">nonDefBarre</span></span><span class="font-latex-math">;"}
+ </span><span class="font-latex-math"><span class="flyspell-duplicate">fpour</span></span><span class="font-latex-math">
-MetaLfc:="
+</span><span class="font-latex-math"><span class="flyspell-duplicate">MetaLfc</span></span><span class="font-latex-math">:="
beginTableau("+nmr+")
-newLigneVariables(btex $</span> {x}<span class="font-latex-math">$ etex);
+newLigneVariables(btex $</span> {x}<span class="font-latex-math">$ </span><span class="font-latex-math"><span class="flyspell-duplicate">etex</span></span><span class="font-latex-math">);
"+l0+
li
+
@@ -2556,7 +2519,7 @@ endTableau;
sortie:=fopen("XCasmpfc.mp");
-fprint(sortie,Unquoted,MetaLfc);
+<span class="flyspell-duplicate">fprint</span>(sortie,Unquoted,MetaLfc);
fclose(sortie);
@@ -2580,12 +2543,12 @@ fclose(sortie);
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTabSigna.cxx}
TSa(a,b,c,d,nmr):={
zA:=solve(a*x+b=0,x)[0];
-zB:=solve(c*x+d=0,x)[0];
+<span class="flyspell-duplicate">zB</span>:=solve(c*x+d=0,x)[0];
zmin:=min(zA,zB);
-zmax:=max(zA,zB);
+<span class="flyspell-duplicate">zmax</span>:=max(zA,zB);
Meta:= "
beginTableau("+nmr+")
- newLigneVariables(btex <span class="font-latex-math">$ {x}$</span> etex);
+ newLigneVariables(btex <span class="font-latex-math">$ {x}$</span> <span class="flyspell-duplicate">etex</span>);
val(btex <span class="font-latex-math">$-\\infty$</span> etex);val(btex <span class="font-latex-math">$"+latex(zmin)+"$</span> etex);
val(btex <span class="font-latex-math">$"+latex(zmax)+"$</span>etex);
val(btex <span class="font-latex-math">$+\\infty$</span> etex);
@@ -2599,9 +2562,9 @@ val(btex <span class="font-latex-math">$+\\infty$</span> etex);
+lsic+if(c==1){"x+"}else{if(c==-1){"-x+"}else{c+"x+"}}+d+"}$</span> etex);"
+ if(c&gt;0){"moins"}else{"plus"}+";"+
if(zmin==zB){"valBarre(btex 0 etex);"}else{"barre;"}+
- if(zmin==zB){si c&gt;0 alors "plus;"; sinon "moins;";fsi}
+ if(zmin==zB){si c&gt;0 alors "plus;"; sinon "moins;";<span class="flyspell-duplicate">fsi</span>}
else{si c&gt;0 alors "moins;"; sinon "plus;"; fsi}+
- if(zmin==zB){"barre;"}else{"valBarre(btex 0 etex);"}+
+ if(zmin==zB){"barre;"}else{"valBarre(btex 0 <span class="flyspell-duplicate">etex</span>);"}+
if(c&gt;0){"plus;"}else{"moins;"}
+lsic+"{("+if(a==1){"x+"}else{if(a==-1){"-x+"}else{a+"x+"}}+b+")("+if(c==1){"x+"}else{if(c==-1){"-x+"}else{c+"x+"}}+d+")}}<span class="font-latex-math">$ etex);"
@@ -2617,7 +2580,7 @@ endTableau;
sortie:=fopen("XCasmpfc.mp");
-fprint(sortie,Unquoted,Meta);
+</span><span class="font-latex-math"><span class="flyspell-duplicate">fprint</span></span><span class="font-latex-math">(sortie,Unquoted,Meta);
fclose(sortie);
@@ -2637,7 +2600,7 @@ fclose(sortie);
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTSc.cxx}
-TSc(g,D,F,trigo,nmr):={
+<span class="flyspell-duplicate">TSc</span>(g,D,F,trigo,nmr):={
f:=unapply(g,x);
mini:=D[0]; maxi:=D[1];lm:=" ";
Z:=mini,maxi;
@@ -2647,15 +2610,15 @@ 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(f(x))),x);
-ns:=size(SS);
+<span class="flyspell-duplicate">ns</span>:=size(SS);
for(j:=0;j&lt;ns;j++){
m:=0;
while(evalf(simplify(subst(SS[j],n_1=m)))&lt;=evalf(maxi)){
S:=concat(S,simplify(subst(SS[j],n_1=m)));m:=m+1;
};m:=-1;
-while(evalf(subst(SS[j],n_1=m))&gt;=evalf(mini)){
+<span class="flyspell-duplicate">while</span>(evalf(subst(SS[j],n_1=m))&gt;=evalf(mini)){
S:=concat(S,simplify(subst(SS[j],n_1=m)));m:=m-1;
}
}
@@ -2671,11 +2634,11 @@ S:=solve(f(x),x);
if(size(S)==0){
l0:="val(btex <span class="font-latex-math">$"+latex(D[0])+"$</span> etex);val(btex <span class="font-latex-math">$"+latex(D[1])+"$</span> etex);";
li:=if(member(mini,F)!=0){"nonDefBarre;"}else{if(mini!=-infinity and f(mini)==0){"
- valBarre(btex 0 etex);"}else{"
+ valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
"}}+
if(mini!=-infinity or maxi!=+infinity){if(f((mini+maxi)*0.5&gt;0)){"plus;"}else{"moins;"}}else{if(f(0)&gt;0){"plus;"}else{"moins;"}};
-lf:=if(member(maxi,F)!=0){"nonDefBarre;"}else{if(maxi!=+infinity and f(maxi)==0){"
- valBarre(btex 0 etex);"}else{"
+<span class="flyspell-duplicate">lf</span>:=if(member(maxi,F)!=0){"nonDefBarre;"}else{if(maxi!=+infinity and f(maxi)==0){"
+ valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
"}};
}
else{pour j de 0 jusque size(S)-1 faire
@@ -2683,15 +2646,9 @@ else{pour j de 0 jusque size(S)-1 faire
fpour;
Z:=concat([Z],F);
-Z:=sort(Z);
-nz:=size(Z);
-if(nz&gt;2){pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=concat(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
- fsi;
-fpour;}
-if(Z[0]==Z[1]){Z:=Z[1..nz-1];nz:=nz-1;}
-if(Z[nz-2]==Z[nz-1]){Z:=Z[0..nz-2];nz:=nz-1;}
+ Z:=sort([op(set[op(Z)])]);
+
nz:=size(Z);
l0:=" ";li:=" ";lr:=" ";
@@ -2702,40 +2659,40 @@ li:=if(mini!=-infinity and f(mini)==0){"
if(f((mini+maxi)*0.5)&gt;0){"plus;"}else{"moins;"};
lf:=if(maxi!=+infinity and f(maxi)==0){"
valBarre(btex 0 etex);"}else{if(member(maxi,F)==0){"
- "}else{"nonDefBarre;"}
+ "}else{"<span class="flyspell-duplicate">nonDefBarre</span>;"}
};
}else{
l0:="val(btex <span class="font-latex-math">$"+latex(Z[0])+"$</span> etex);";li:=" ";
pour m de 1 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[m])+"$</span> etex);
";
-fpour;
+<span class="flyspell-duplicate">fpour</span>;
li:= if(mini!=-infinity and f(mini)==0){"
valBarre(btex 0 etex);"}else{if(member(mini,F)==0){"
- "}else{"nonDefBarre;"}
+ "}else{"<span class="flyspell-duplicate">nonDefBarre</span>;"}
}
lm:=if(nz&gt;2){for(r:=0; r&lt;nz-2;r++){lm:=lm+if(Z[r]==-infinity){
if(f((Z[r+1]-1))&gt;0){"plus;"}else{"moins;"}
}else{if(f((Z[r]+Z[r+1])*.5)&gt;0){"plus;"}else{"moins;"}}
+
- if(member(Z[r+1],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}
+ if(member(Z[r+1],F)==0){"valBarre(btex 0 etex);"}else{"<span class="flyspell-duplicate">nonDefBarre</span>;"}
}}else{" "};
-lf:=if(f(Z[nz-2]+0.1)&gt;0){"plus;"}else{"moins;"}+if(maxi!=+infinity and f(maxi)==0){"valBarre(btex 0 etex);"}else{if(member(maxi,F)==0){"
- "}else{"nonDefBarre;"}
+lf:=if(f(Z[nz-2]+0.1)&gt;0){"plus;"}else{"moins;"}+if(maxi!=+infinity and f(<span class="flyspell-duplicate">maxi</span>)==0){"valBarre(btex 0 etex);"}else{if(member(maxi,F)==0){"
+ "}else{"<span class="flyspell-duplicate">nonDefBarre</span>;"}
};
}};
-MetaLfc:="
+<span class="flyspell-duplicate">MetaLfc</span>:="
beginTableau("+nmr+")
-newLigneVariables(btex <span class="font-latex-math">$\\displaystyle {x}$</span> etex);
+newLigneVariables(btex <span class="font-latex-math">$\\displaystyle {x}$</span> <span class="flyspell-duplicate">etex</span>);
"+l0+lsic+latex(f(x))+"}<span class="font-latex-math">$ etex);"+
li+lm+lf
+"
@@ -2748,7 +2705,7 @@ endTableau;
sortie:=fopen("XCasmpfc.mp");
-fprint(sortie,Unquoted,MetaLfc);
+fprint(sortie,Unquoted,</span><span class="font-latex-math"><span class="flyspell-duplicate">MetaLfc</span></span><span class="font-latex-math">);
fclose(sortie);
}:;
@@ -3061,7 +3018,7 @@ read("XCasTVI.user");
</span>{<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVnbis}{</span><span class="font-latex-sedate"><span class="variable-name">\theTVn</span></span><span class="variable-name">}</span>
<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{#1}</span>
<span class="font-latex-sedate">\VerbatimEnvironment</span><span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[commandchars=<span class="font-latex-warning">\\</span>??]{XCasTVI.user}}<span class="comment">%
-</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{<span class="flyspell-duplicate">TVI</span>}}
+</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{TVI}}
@@ -3083,7 +3040,7 @@ read("XCasTVIex.user");
</span>{<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVnbis}{</span><span class="font-latex-sedate"><span class="variable-name">\theTVn</span></span><span class="variable-name">}</span>
<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{#1}</span>
<span class="font-latex-sedate">\VerbatimEnvironment</span><span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[commandchars=<span class="font-latex-warning">\\</span>??]{XCasTVIex.user}}<span class="comment">%
-</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{<span class="flyspell-duplicate">TVIex</span>}}
+</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{TVIex}}
@@ -3109,7 +3066,7 @@ read("XCasTVIapp.user");
</span>{<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVnbis}{</span><span class="font-latex-sedate"><span class="variable-name">\theTVn</span></span><span class="variable-name">}</span>
<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{#1}</span>
<span class="font-latex-sedate">\VerbatimEnvironment</span><span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[commandchars=<span class="font-latex-warning">\\</span>??]{XCasTVIapp.user}}<span class="comment">%
-</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{<span class="flyspell-duplicate">TVIapp</span>}}
+</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{TVIapp}}
@@ -3118,7 +3075,7 @@ read("XCasTVIapp.user");
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XCasTVPC.giac}
maple_mode(0);
read("config.cxx");
-<span class="flyspell-duplicate">read</span>("XcasTVPC.cxx");
+read("XcasTVPC.cxx");
read("XCasTVPC.user");
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
@@ -3129,9 +3086,9 @@ read("XCasTVPC.user");
<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TVPC*}</span>[1]{<span class="comment">%
</span><span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVnbis}{</span><span class="font-latex-sedate"><span class="variable-name">\theTVn</span></span><span class="variable-name">}</span>
-<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{</span><span class="variable-name"><span class="flyspell-duplicate">TVn</span></span><span class="variable-name">}{#1}</span>
+<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{#1}</span>
<span class="font-latex-sedate">\VerbatimEnvironment</span><span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[commandchars=<span class="font-latex-warning">\\</span>??]{XCasTVPC.user}}<span class="comment">%
-</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{<span class="flyspell-duplicate">TVPC</span>}}
+</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{TVPC}}
@@ -3146,14 +3103,14 @@ read("XCasTVPC.user");
<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">\cat</span> queue.mp &gt;&gt; <span class="font-latex-sedate">\nomtravail</span>.Tab.<span class="flyspell-duplicate">mp</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">\cat</span> queue.mp &gt;&gt; <span class="font-latex-sedate">\nomtravail</span>.Tab.mp}
}
<span class="comment-delimiter">%%</span><span class="comment">
-</span><span class="comment-delimiter">%% </span><span class="comment">Zi end -&gt; </span><span class="comment"><span class="flyspell-incorrect">enjoy</span></span><span class="comment"> :)
+</span><span class="comment-delimiter">%% </span><span class="comment">Zi end -&gt; enjoy :)
</span></pre>
</body>
</html>
diff --git a/Master/texmf-dist/doc/latex/tablor/tablor.pdf b/Master/texmf-dist/doc/latex/tablor/tablor.pdf
index 1c5b39b2bd2..3d9a5a1476f 100644
--- a/Master/texmf-dist/doc/latex/tablor/tablor.pdf
+++ b/Master/texmf-dist/doc/latex/tablor/tablor.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/tablor/tablor.tex b/Master/texmf-dist/doc/latex/tablor/tablor.tex
index 3eb0c0dfbdd..880cfd34a20 100644
--- a/Master/texmf-dist/doc/latex/tablor/tablor.tex
+++ b/Master/texmf-dist/doc/latex/tablor/tablor.tex
@@ -86,7 +86,7 @@ keywordstyle =\color{0.2white}\usefont{OT1}{cmtt}{b}{n},basicstyle=\ttfamily,com
avec l'efficace participation de Jean-Michel \textsc{Boucart}\\
Forum d'aide ~:~\href{http://gconnan.free.fr/punbb/upload/index.php}{http://gconnan.free.fr/punbb/upload/index.php}}
-\date{7 mars 2009 - Version 4.04}
+\date{17 mars 2009 - Version 4.04-b}
@@ -174,6 +174,8 @@ valeurs intermédiaires sous forme exacte quand c'est possible.(version 4.04)
Un bug dans tous les TVI est corrigé.(Version 4.04)
+Un bug dû à une mise à jour de XCAS (version 4.04-b compatible avec les précédentes).
+
\subsection{Professor.sty}
diff --git a/Master/texmf-dist/tex/latex/tablor/tablor-xetex.sty b/Master/texmf-dist/tex/latex/tablor/tablor-xetex.sty
index 482b6f7a360..f836d5061d1 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}[07/03/2009 v4.04 la machine a creer des
+\ProvidesPackage{tablor-xetex}[17/03/2009 v4.04-b la machine a creer des
tableaux de signes et variations compatible xetex]
% \copyleft Connan le Barbare (aka Guillaume Connan) \copyright
@@ -276,14 +276,11 @@ epstopdf $1.eps;
-
-
%%
%% Code giac/Xcas pour les Tableaux de Variations
%%
-
\begin{VerbatimOut}{XcasTV.cxx}
TV(L,F,nom,nomv,f,ftt,trigo,nmr):={
nl:=size(L);
@@ -337,14 +334,9 @@ nz:=size(Z);
fpour
fsi;
-Z:=sort(Z);
-nz:=size(Z);
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
- fsi;
-pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
- fsi;
-fpour;
+
+Z:=sort([op(set[op(Z)])]);
+
nz:=size(Z);
l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
@@ -531,14 +523,9 @@ nz:=size(Z);
fpour
fsi;
-Z:=sort(Z);
-nz:=size(Z);
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
- fsi;
-pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
- fsi;
-fpour;
+
+Z:=sort([op(set[op(Z)])]);
+
nz:=size(Z);
l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
@@ -673,6 +660,7 @@ fclose(sortie);
\begin{VerbatimOut}{XcasTVZ.cxx}
+
TVZ(L,F,FF,nom,nomv,f,ftt,trigo,nmr):={
nl:=size(L);
nf:=size(FF);
@@ -731,17 +719,9 @@ S:=solve(fp(x),x);
fpour
fsi;
-Z:=sort(Z);
-nz:=size(Z);
-
+Z:=sort([op(set[op(Z)])]);
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
- fsi;
-pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
- fsi;
-fpour;
nz:=size(Z);
for(j:=0;j<nf;j++){
@@ -904,7 +884,6 @@ fclose(sortie);
:;
-
\end{VerbatimOut}
@@ -1140,14 +1119,11 @@ S:=solve(fp(x),x);
fpour
fsi;
-Z:=sort(Z);
-nz:=size(Z);
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
- fsi;
-pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
- fsi;
-fpour;
+
+Z:=sort([op(set[op(Z)])]);
+
+
+
nz:=size(Z);
l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
@@ -1349,7 +1325,6 @@ fclose(sortie);
-
\end{VerbatimOut}
@@ -1415,14 +1390,11 @@ S:=solve(fp(x),x);
fpour
fsi;
-Z:=sort(Z);
-nz:=size(Z);
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
- fsi;
-pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
- fsi;
-fpour;
+
+
+ Z:=sort([op(set[op(Z)])]);
+
+
nz:=size(Z);
l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
@@ -1630,8 +1602,6 @@ fclose(sortie);
-
-
%%
%%
%% Quand les solutions de f'(x)=0 ne sont pas formellement calculables
@@ -1903,7 +1873,6 @@ fclose(sortie);
-
%%
%% Code giac/Xcas pour les Tableaux de variations de courbes parametrees
%%
@@ -2213,13 +2182,9 @@ Z:=sort(Z);
nz:=size(Z);
+ Z:=sort([op(set[op(Z)])]);
-
-if(nz>2){pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=Z[0..u-1],Z[u+1..nz-1];nz:=nz-1;
- fsi;
-fpour;};
nz:=size(Z);
if(nz==0){li:="";l0:="val(btex $"+latex(D[0])+"$ etex);val(btex $"+latex(D[1])+"$ etex);";
@@ -2403,12 +2368,10 @@ if(nz>2){pour u de 1 jusque nz-2 faire
fpour;}
-Z:=sort(Z);
-nz:=size(Z);
-if(nz>2){pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=Z[0..u-1],Z[u+1..nz-1];nz:=nz-1;
- fsi;
-fpour;};
+Z:=concat(Z,F);
+
+Z:=sort([op(set[op(Z)])]);
+
nz:=size(Z);
if(nz==0){li:="";l0:="val(btex $"+latex(D[0])+"$ etex);val(btex $"+latex(D[1])+"$ etex);";
@@ -2637,15 +2600,9 @@ else{pour j de 0 jusque size(S)-1 faire
fpour;
Z:=concat([Z],F);
-Z:=sort(Z);
-nz:=size(Z);
-if(nz>2){pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=concat(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
- fsi;
-fpour;}
-if(Z[0]==Z[1]){Z:=Z[1..nz-1];nz:=nz-1;}
-if(Z[nz-2]==Z[nz-1]){Z:=Z[0..nz-2];nz:=nz-1;}
+ Z:=sort([op(set[op(Z)])]);
+
nz:=size(Z);
l0:=" ";li:=" ";lr:=" ";
@@ -2716,11 +2673,6 @@ fclose(sortie);
%%$
-
-
-
-
-%%$
%%
%% traitement des fichiers produits par giac/xcas
%%
diff --git a/Master/texmf-dist/tex/latex/tablor/tablor.sty b/Master/texmf-dist/tex/latex/tablor/tablor.sty
index 0c084de0fa0..d4aafbfcf0c 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}[07/03/2009 v4.04 la machine a creer des tableaux de signes et variations]
+\ProvidesPackage{tablor}[17/03/2009 v4.04-b 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
@@ -299,14 +299,9 @@ nz:=size(Z);
fpour
fsi;
-Z:=sort(Z);
-nz:=size(Z);
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
- fsi;
-pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
- fsi;
-fpour;
+
+Z:=sort([op(set[op(Z)])]);
+
nz:=size(Z);
l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
@@ -493,14 +488,9 @@ nz:=size(Z);
fpour
fsi;
-Z:=sort(Z);
-nz:=size(Z);
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
- fsi;
-pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
- fsi;
-fpour;
+
+Z:=sort([op(set[op(Z)])]);
+
nz:=size(Z);
l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
@@ -694,17 +684,9 @@ S:=solve(fp(x),x);
fpour
fsi;
-Z:=sort(Z);
-nz:=size(Z);
-
+Z:=sort([op(set[op(Z)])]);
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
- fsi;
-pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
- fsi;
-fpour;
nz:=size(Z);
for(j:=0;j<nf;j++){
@@ -1102,14 +1084,11 @@ S:=solve(fp(x),x);
fpour
fsi;
-Z:=sort(Z);
-nz:=size(Z);
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
- fsi;
-pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
- fsi;
-fpour;
+
+Z:=sort([op(set[op(Z)])]);
+
+
+
nz:=size(Z);
l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
@@ -1376,14 +1355,11 @@ S:=solve(fp(x),x);
fpour
fsi;
-Z:=sort(Z);
-nz:=size(Z);
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
- fsi;
-pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
- fsi;
-fpour;
+
+
+ Z:=sort([op(set[op(Z)])]);
+
+
nz:=size(Z);
l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
@@ -2171,13 +2147,9 @@ Z:=sort(Z);
nz:=size(Z);
+ Z:=sort([op(set[op(Z)])]);
-
-if(nz>2){pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=Z[0..u-1],Z[u+1..nz-1];nz:=nz-1;
- fsi;
-fpour;};
nz:=size(Z);
if(nz==0){li:="";l0:="val(btex $"+latex(D[0])+"$ etex);val(btex $"+latex(D[1])+"$ etex);";
@@ -2353,20 +2325,11 @@ fpour;
-Z:=sort(Z); // on classe les zeros dans l'ordre croissant
-nz:=size(Z);
-if(nz>2){pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=Z[0..u-1],Z[u+1..nz-1];nz:=nz-1; // pour les zeros en double
- fsi;
-fpour;}
+Z:=concat(Z,F);
-Z:=sort(Z);
-nz:=size(Z);
-if(nz>2){pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=Z[0..u-1],Z[u+1..nz-1];nz:=nz-1;
- fsi;
-fpour;};
+Z:=sort([op(set[op(Z)])]);
+
nz:=size(Z);
if(nz==0){li:="";l0:="val(btex $"+latex(D[0])+"$ etex);val(btex $"+latex(D[1])+"$ etex);";
@@ -2595,15 +2558,9 @@ else{pour j de 0 jusque size(S)-1 faire
fpour;
Z:=concat([Z],F);
-Z:=sort(Z);
-nz:=size(Z);
-if(nz>2){pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=concat(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
- fsi;
-fpour;}
-if(Z[0]==Z[1]){Z:=Z[1..nz-1];nz:=nz-1;}
-if(Z[nz-2]==Z[nz-1]){Z:=Z[0..nz-2];nz:=nz-1;}
+ Z:=sort([op(set[op(Z)])]);
+
nz:=size(Z);
l0:=" ";li:=" ";lr:=" ";