From 806118c270bcbba9a03291c433c3e7abcb3da6e3 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sat, 8 Nov 2008 00:56:43 +0000 Subject: tablor update (7nov08) git-svn-id: svn://tug.org/texlive/trunk@11218 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/tablor/tablor.html | 1020 ++++++++++++------------ Master/texmf-dist/doc/latex/tablor/tablor.pdf | Bin 351735 -> 357308 bytes Master/texmf-dist/doc/latex/tablor/tablor.tex | 207 +++-- 3 files changed, 643 insertions(+), 584 deletions(-) (limited to 'Master/texmf-dist/doc/latex/tablor') diff --git a/Master/texmf-dist/doc/latex/tablor/tablor.html b/Master/texmf-dist/doc/latex/tablor/tablor.html index 7854e0762b3..fa685f22e01 100644 --- a/Master/texmf-dist/doc/latex/tablor/tablor.html +++ b/Master/texmf-dist/doc/latex/tablor/tablor.html @@ -31,12 +31,6 @@ font-weight: bold; text-decoration: underline; } - .flyspell-incorrect { - /* flyspell-incorrect-face */ - color: #ff4500; - font-weight: bold; - text-decoration: underline; - } .font-latex-math { /* font-latex-math-face */ color: #436eee; @@ -87,15 +81,15 @@
 \NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{tablor}[21/10/2008 v4.02 la machine a creer des tableaux de signes et variations]
+\ProvidesPackage{tablor}[07/11/2008 v4.02 la machine a creer des tableaux de signes et variations]
 
 % \copyleft Connan le Barbare (aka Guillaume Connan) \copyright
 % This work may be distributed and/or mofified under the conditions
 % or the LaTeX Project Public Licence, either v1.3 or (at your option)
-% any later version. The latest version is in
+% any later version. The latest version is in
 %   http://www.latex-project.org/lppl/
-% This work consists of the files tablor.sty, tablor-xetex.sty,  tablor.cfg, tablor.tex,
-% tablor.pdf and tablor.html
+% This work consists of the files tablor.sty, tablor-xetex.sty,  tablor.cfg, tablor.tex,
+% tablor.pdf and tablor.html
 
 
 %% Cree 16 environnements :
@@ -117,7 +111,7 @@
 %
 % pour les tableaux de signes à une seule ligne
 % \begin{TSc}
-% TSc((x+10)/((x-5)*(x-2)),[-10,5],[2,5],n,0)
+% TSc((x+10)/((x-5)*(x-2)),[-10,5],[2,5],n,0)
 % \end{TSc}
 %
 %
@@ -154,7 +148,7 @@
 % fichier metapost pour le modifier
 %
 %
-% Courbes parametrees
+% Courbes parametrees
 %  \begin{TVP}
 %  TVP([-infinity,+infinity],[[-1,2],[-1]],["x","y"],"t",[t^2/((t+1)*(t-2)),t^2*(t+2)/(t+1)],1,n,\tv)
 %  \end{TVP}
@@ -165,8 +159,8 @@
 %  \end{TVP}
 % %
 
-% Fonctions prolongeables par continuité
-% TVPC([intervalles d'étude],[valeurs prolongeables],[valeurs interdites pour f'],"g","t",e^(-1/x^2),1,n,\tv); 
+% Fonctions prolongeables par continuité
+% TVPC([intervalles d'étude],[valeurs prolongeables],[valeurs interdites pour f'],"g","t",e^(-1/x^2),1,n,\tv); 
 
 
 % \begin{TVPC}
@@ -183,17 +177,17 @@
 
 
 \RequirePackage{filecontents}
-\RequirePackage{ifthen}
-\RequirePackage{fancyvrb}
+\RequirePackage{ifthen}
+\RequirePackage{fancyvrb}
 \RequirePackage{ifpdf}
 
-\fvset{gobble=0}
+\fvset{gobble=0}
 
-% option xcas present 
+% option xcas present 
 
 
-\newboolean{xcas}\setboolean{xcas}{false}
-\DeclareOption{xcas}{\setboolean{xcas}{true}}
+\newboolean{xcas}\setboolean{xcas}{false}
+\DeclareOption{xcas}{\setboolean{xcas}{true}}
 
 
 \ProcessOptions\relax
@@ -201,23 +195,23 @@
 
 
 
-%% Initialisation du choix d'OS
-\newboolean{windows}\setboolean{windows}{false}
+%% Initialisation du choix d'OS
+\newboolean{windows}\setboolean{windows}{false}
 
 
 
 %% on configure  tablor  dans un fichier exterieur pour la plateforme
-%% et l'editeur
+%% et l'editeur
 
-\IfFileExists{tablor.cfg}{\input{tablor.cfg}}%\typeout{pas de fichier tablor.cfg}}
+\IfFileExists{tablor.cfg}{\input{tablor.cfg}}%\typeout{pas de fichier tablor.cfg}}
 
 
 %% Definit des commandes disque selon l'OS utilise
-\ifthenelse{\boolean{windows}}%
+\ifthenelse{\boolean{windows}}%
     {\newcommand{\rem}{DEL } \newcommand{\cat}{TYPE }
-      \newcommand{\cp}{COPY }}%
-    {\newcommand{\rem}{rm }\newcommand{\cat}{cat }
-      \newcommand{\cp}{cp }}
+      \newcommand{\cp}{COPY }}%
+    {\newcommand{\rem}{rm }\newcommand{\cat}{cat }
+      \newcommand{\cp}{cp }}
 
 
 
@@ -225,26 +219,26 @@
 
 
 
-%% pour ceux compilant via pdflatex
+%% pour ceux compilant via pdflatex
 
 \ifpdf
-\DeclareGraphicsRule{*}{mps}{*}{}
+\DeclareGraphicsRule{*}{mps}{*}{}
 \fi
 
 %% pour nettoyer les fichiers auxiliaires
 
-\AtEndDocument{\immediate\write18{\rem *.user XCas* Xcas* *.mpx}
+\AtEndDocument{\immediate\write18{\rem *.user XCas* Xcas* *.mpx}
                          }
 
 
 
 
-%% Pour clore les fichiers metapost 
+%% Pour clore les fichiers metapost 
 
 
-  \begin{VerbatimOut}{queue.mp}
+  \begin{VerbatimOut}{queue.mp}
   
-  end
+  end
 
   \end{VerbatimOut}
 
@@ -257,7 +251,7 @@
 
 
 \newcommand{\nettoyer}[1][\jobname]%
-{\immediate\write18{\rem #1.Tab.log  queue.mp enteteMP.cfg session.tex config.cxx}
+{\immediate\write18{\rem #1.Tab.log  queue.mp enteteMP.cfg session.tex config.cxx}
 }
 
 
@@ -270,44 +264,44 @@
 
 %% initialise les compteurs
 
-\newcounter{TVn}
+\newcounter{TVn}
 \newcommand{\tv}{\theTVn}
 
-\newcounter{TVnbis}
+\newcounter{TVnbis}
 \newcommand{\tvbis}{\theTVnbis}
 
 
 
 %% permet de donner un prefixe aux tableaux produits (\jobname par defaut)
-%% effectue quelques verifications :
+%% effectue quelques verifications :
 
 
 \newcommand{\initablor}[1][\jobname]{%
 \renewcommand{\nomtravail}{#1}%     Arret du nom des tableaux
 \setcounter{TVn}{0}%     Initialisation du compteur de tableaux.
-\ifthenelse{\boolean{xcas}}%    Avec l'option XCas
-{\IfFileExists{\nomtravail.Tab.mp}%      Si Tableaux.mp est present...
-        {\immediate\write18{\rem \nomtravail.Tab.mp}}%  le detruire
+\ifthenelse{\boolean{xcas}}%    Avec l'option XCas
+{\IfFileExists{\nomtravail.Tab.mp}%      Si Tableaux.mp est present...
+        {\immediate\write18{\rem \nomtravail.Tab.mp}}%  le detruire
         {}%   
- \immediate\write18{\cp  enteteMP.cfg \nomtravail.Tab.mp}% Reconstituer l'entête de Tableaux.mp
+ \immediate\write18{\cp  enteteMP.cfg \nomtravail.Tab.mp}% Reconstituer l'entête de Tableaux.mp
 } 
 {\IfFileExists{\nomtravail.Tab.mp}%      Sans l'option XCas, si
                                 %      Tableaux.mp existe
 {\immediate\write18{mpost -interaction=batchmode \nomtravail.Tab}}% l'executer pour reconstituer les figures
 {\PackageWarning{tablor}{Pas de source metapost pour creer les tableaux.}}% sinon message d'erreur
                                 % (mais pas d'arret car les tableaux
-                                % peuvent être presents )
+                                % peuvent être presents )
 }}%
 
 
 
-%% commande pour lancer giac selon l'OS
+%% commande pour lancer giac selon l'OS
 
 \makeatletter
 \newcommand{\executGiacmp}[1]{%
-\ifthenelse{\boolean{windows}}%
-{\immediate\write18{giac #1 }}%
-{\immediate\write18{giac  <#1 }}}
+\ifthenelse{\boolean{windows}}%
+{\immediate\write18{giac #1 }}%
+{\immediate\write18{giac  <#1 }}}
 \makeatother
 
 
@@ -315,7 +309,7 @@
 
 %%%
 %
-%%% LES SCRIPTS GIAC/XCAS
+%%% LES SCRIPTS GIAC/XCAS
 %
 %%%
 
@@ -328,25 +322,25 @@
 
 
 \begin{VerbatimOut}{XcasTV.cxx}
-TV(L,F,nom,nomv,f,ftt,trigo,nmr):={
-nl:=size(L);
+TV(L,F,nom,nomv,f,ftt,trigo,nmr):={
+nl:=size(L);
 f:=unapply(f,x);
-fp:=function_diff(f);
+fp:=function_diff(f);
 Z:=concat(L,F);
 S:=[];
 
 
 if(trigo==t){
-all_trig_solutions:=1;
-reset_solve_counter(-1,-1);
-SS:=solve(factor(simplify(fp(x))),x);
-ns:=size(SS);
+all_trig_solutions:=1;
+reset_solve_counter(-1,-1);
+SS:=solve(factor(simplify(fp(x))),x);
+ns:=size(SS);
 for(k:=0;k<ns;k++){
 m:=0;
-while(evalf(simplify(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){
+while(evalf(simplify(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){
 S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m+1;
 };m:=-1;
-while(evalf(subst(SS[k],n_1=m))>=L[0]){
+while(evalf(subst(SS[k],n_1=m))>=L[0]){
 S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m-1;
 }
 }
@@ -357,16 +351,16 @@ S:=solve(fp(x),x);
 
   si size(S)>0 alors   pour j de 0 jusque size(S)-1 faire
                              qq:=member(simplify(S[j]),Z)==0;
-                             kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
+                             kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
                           if(kk==1){if(qq==1){Z:=append(Z,simplify(S[j]))}};
-                          fpour
+                          fpour
   fsi;
 Z:=sort(Z);
-nz:=size(Z);
+nz:=size(Z);
 
 
  tantque evalf(Z[0])==evalf(Z[1]) faire Z:=Z[1..nz-1];nz:=size(Z);
-     ftantque;
+     ftantque;
 
 
 
@@ -375,28 +369,28 @@ Z:=sort(Z);
 
 
   si size(S)>0 alors   pour j de 0 jusque size(S)-1 faire 
-                             kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
+                             kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
                           if(kk==1){Z:=append(Z,simplify(S[j]))};
-                          fpour
-  fsi;
+                          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; 
+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; 
+     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);
+fpour;
+nz:=size(Z);
 l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
-pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
-";fpour; 
+pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
+";fpour; 
 
        k0:= evalf(limit(f(x),x=Z[0],1))> evalf(limit(f(x),x=Z[1],-1));
-       kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1));
+       kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1));
                           
-lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
+lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
      if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
                                                     if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
                                                     if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
@@ -407,9 +401,9 @@ if(nz>2){ for(r:=1; r<=nz-2;r++){      ksp:=evalf(fp(Z[r]+0.1))>0;
                                                 if(ksp==1){"plus;"}else{"moins;"}
                                                   }; }
 
-lsf:=if(member(Z[nz-1],F)==0){""}else{"nonDefBarre;
+lsf:=if(member(Z[nz-1],F)==0){""}else{"nonDefBarre;
 "}
-lm0:=limit(f(x),x=Z[0],1)==-infinity;
+lm0:=limit(f(x),x=Z[0],1)==-infinity;
      li:=lvic+nom+"}$ etex);"+
            if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}
              else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}+                               
@@ -428,75 +422,75 @@ if(nz>2){ for(r:=1; r<=nz-2;r++){      ksp:=evalf(fp(Z[r]+0.1))>0;
 "}}}
                                                    }; }
 
-lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
+lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
                           
 
 
-lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
+lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
            if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+
-             if(kz==1){"1);"}else{"0);"}}
-    else{"limGauche(btex $"+
-         if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+ 
-           if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};    
+             if(kz==1){"1);"}else{"0);"}}
+    else{"limGauche(btex $"+
+         if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+ 
+           if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};    
     
 
 
 
 
-MetaLfc:=if(ftt==2){if(nz>2){"
+MetaLfc:=if(ftt==2){if(nz>2){"
 
-beginTableau("+nmr+")"+
+beginTableau("+nmr+")"+
         l0+lsi+lsp+lsf+"
-endTableau;
+endTableau;
 
 ";}else{
-intro+"beginTableau("+nmr+")"+
+intro+"beginTableau("+nmr+")"+
         l0+
-lsi+lsf+"
-endTableau;
+lsi+lsf+"
+endTableau;
 
 ";
 }
-}else{ if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+
+}else{ if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+
         l0+
 li+
-lp+
-lf
+lp+
+lf
 +"
-endTableau;
+endTableau;
 
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+nmr+")"+
         l0+
 li+
-lf
+lf
 +"
-endTableau;
+endTableau;
 
 ";}}else{
-if(nz>2){"beginTableau("+nmr+")"+
+if(nz>2){"beginTableau("+nmr+")"+
         l0+
-lsi+lsp+lsf+
+lsi+lsp+lsf+
 li+
-lp+
-lf
+lp+
+lf
 +"
-endTableau;
+endTableau;
 
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+nmr+")"+
         l0+
-lsi+lsf+
+lsi+lsf+
 li+
-lf
+lf
 +"
-endTableau;
+endTableau;
 
 ";}
 }}
 
 
 sortie:=fopen("XCasmpfc.mp");
-fprint(sortie,Unquoted,MetaLfc);
-fclose(sortie);
+fprint(sortie,Unquoted,MetaLfc);
+fclose(sortie);
 
 
  }:;
@@ -513,31 +507,31 @@ sortie:=fopen("XCasmpfc.mp");
 
 %
 %
-%  TVPC : pour les fonctions prolongeables par continuité.
+%  TVPC : pour les fonctions prolongeables par continuité.
 %%
 %%
 
 
 
 
-\begin{VerbatimOut}{XcasTVPC.cxx}
-TVPC(L,F,FP,nom,nomv,f,ftt,trigo,nmr):={
+\begin{VerbatimOut}{XcasTVPC.cxx}
+TVPC(L,F,FP,nom,nomv,f,ftt,trigo,nmr):={
 nl:=size(L);
 f:=unapply(f,x);
 fp:=function_diff(f);
 Z:=concat(L,F);
-Z:=concat(Z,FP);
+Z:=concat(Z,FP);
 S:=[];
 
 
 if(trigo==t){
-all_trig_solutions:=1;
-reset_solve_counter(-1,-1);
-SS:=solve(factor(simplify(fp(x))),x);
+all_trig_solutions:=1;
+reset_solve_counter(-1,-1);
+SS:=solve(factor(simplify(fp(x))),x);
 ns:=size(SS);
 for(k:=0;k<ns;k++){
 m:=0;
-while(evalf(simplify(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){
+while(evalf(simplify(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){
 S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m+1;
 };m:=-1;
 while(evalf(subst(SS[k],n_1=m))>=L[0]){
@@ -553,14 +547,14 @@ S:=solve(fp(x),x);
                              qq:=member(simplify(S[j]),Z)==0;
                              kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
                           if(kk==1){if(qq==1){Z:=append(Z,simplify(S[j]))}};
-                          fpour
+                          fpour
   fsi;
 Z:=sort(Z);
-nz:=size(Z);
+nz:=size(Z);
 
 
  tantque evalf(Z[0])==evalf(Z[1]) faire Z:=Z[1..nz-1];nz:=size(Z);
-     ftantque;
+     ftantque;
 
 
 
@@ -569,28 +563,28 @@ Z:=sort(Z);
 
 
   si size(S)>0 alors   pour j de 0 jusque size(S)-1 faire 
-                             kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
+                             kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
                           if(kk==1){Z:=append(Z,simplify(S[j]))};
-                          fpour
-  fsi;
+                          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; 
+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; 
+     si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1; 
      fsi;
-fpour;
+fpour;
 nz:=size(Z);
 l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
-pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
-";fpour; 
+pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
+";fpour; 
 
        k0:= evalf(limit(f(x),x=Z[0],1))> evalf(limit(f(x),x=Z[1],-1));
-       kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1));
+       kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1));
                           
-lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
+lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
      if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],FP)==0){
                                                     if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
                                                     if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
@@ -601,12 +595,12 @@ if(nz>2){ for(r:=1; r<=nz-2;r++){      ksp:=evalf(fp(Z[r]+0.1))>0;
                                                 if(ksp==1){"plus;"}else{"moins;"}
                                                   }; }
 
-lsf:=if(member(Z[nz-1],FP)==0){""}else{"nonDefBarre;
+lsf:=if(member(Z[nz-1],FP)==0){""}else{"nonDefBarre;
 "}
-lm0:=limit(f(x),x=Z[0],1)==-infinity;
+lm0:=limit(f(x),x=Z[0],1)==-infinity;
      li:=lvic+nom+"}$ etex);"+
-           if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}
-             else{"limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}+                               
+           if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}
+             else{"limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}+                               
            if(k0==1){"1"}else{"0"}+
                          ");";
             
@@ -615,39 +609,39 @@ lsf:=if(member(Z[nz-1],$"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],-1)))}+"$
+                                    $"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],-1)))}+"$
                                     etex,"+if(krm==1){"1);"}else{"0);"} }
                                           else{"valPos(btex          $"+latex(simplify(f(Z[r])))+"$
                                             etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
 "}}}
                                                    }; }
 
-lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
+lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
                           
 
 
-lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
+lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
            if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+
-             if(kz==1){"1);"}else{"0);"}}
-    else{"limGauche(btex $"+
+             if(kz==1){"1);"}else{"0);"}}
+    else{"limGauche(btex $"+
          if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+ 
-           if(kz==1){"1);"}else{"0);"}};    
+           if(kz==1){"1);"}else{"0);"}};    
     
 
 
 
 
-MetaLfc:=if(ftt==2){if(nz>2){"
+MetaLfc:=if(ftt==2){if(nz>2){"
 
-beginTableau("+nmr+")"+
+beginTableau("+nmr+")"+
         l0+lsi+lsp+lsf+"
-endTableau;
+endTableau;
 
 ";}else{
-intro+"beginTableau("+nmr+")"+
+intro+"beginTableau("+nmr+")"+
         l0+
 lsi+lsf+"
-endTableau;
+endTableau;
 
 ";
 }
@@ -655,41 +649,41 @@ lsi+lsf+"
         l0+
 li+
 lp+
-lf
+lf
 +"
-endTableau;
+endTableau;
 
 ";}else{"beginTableau("+nmr+")"+
         l0+
 li+
-lf
+lf
 +"
-endTableau;
+endTableau;
 
 ";}}else{
-if(nz>2){"beginTableau("+nmr+")"+
+if(nz>2){"beginTableau("+nmr+")"+
         l0+
-lsi+lsp+lsf+
+lsi+lsp+lsf+
 li+
-lp+
+lp+
 lf
 +"
-endTableau;
+endTableau;
 
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+nmr+")"+
         l0+
 lsi+lsf+
 li+
-lf
+lf
 +"
-endTableau;
+endTableau;
 
 ";}
 }}
 
 
 sortie:=fopen("XCasmpfc.mp");
-fprint(sortie,Unquoted,MetaLfc);
+fprint(sortie,Unquoted,MetaLfc);
 fclose(sortie);
 
 
@@ -717,9 +711,9 @@ fclose(sortie);
 \begin{VerbatimOut}{XcasTVZ.cxx}
 
 
-TVZ(L,F,FF,nom,nomv,f,ftt,trigo,nmr):={
-nl:=size(L);
-nf:=size(FF);
+TVZ(L,F,FF,nom,nomv,f,ftt,trigo,nmr):={
+nl:=size(L);
+nf:=size(FF);
  Ff:=NULL;IMIN:=NULL;IMAX:=NULL;
 for(k:=0;k<nf;k++){
 if(FF[k][0]>L[0]){Imin[k]:=FF[k][0];LL:=L}else{Imin[k]:=L[0];LL:=[L[1]]};
@@ -728,11 +722,11 @@ if(FF[k][1]<L[1]){Imax[k]:=FF[k][1];LL:=L}else{Imax[k]:=L[1];LL:=[L[0]]};
  IMIN:=IMIN,Imin[k];
  IMAX:=IMAX,Imax[k];
  }
- FF:=[Ff];
- IMIN:=[IMIN];
+ FF:=[Ff];
+ IMIN:=[IMIN];
  IMAX:=[IMAX];
  f:=unapply(f,x);
-fp:=function_diff(f);
+fp:=function_diff(f);
 Z:=concat(LL,F);
 
 for(k:=0;k<nf;k++){
@@ -744,15 +738,15 @@ S:=[];
 
 if(trigo==t){
 all_trig_solutions:=1;
-reset_solve_counter(-1,-1);
+reset_solve_counter(-1,-1);
 SS:=solve(factor(simplify(fp(x))),x);
 ns:=size(SS);
 for(k:=0;k<ns;k++){
 m:=0;
-while(evalf(simplify(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){
+while(evalf(simplify(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){
 S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m+1;
 };m:=-1;
-while(evalf(subst(SS[k],n_1=m))>=L[0]){
+while(evalf(subst(SS[k],n_1=m))>=L[0]){
 S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m-1;
 }
 }
@@ -767,43 +761,43 @@ S:=solve(fp(x),x);
 
   si size(S)>0 alors   pour j de 0 jusque size(S)-1 faire 
                          for(k:=0;k<nf;k++){  
-                           kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
-                             kK:=(evalf(S[j])<evalf(Imin[k])) or (evalf(S[j])>evalf(Imax[k]));
+                           kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
+                             kK:=(evalf(S[j])<evalf(Imin[k])) or (evalf(S[j])>evalf(Imax[k]));
                              Kk:=(kk) and kK;
                           if(Kk==1){Z:=append(Z,simplify(S[j]))};
                           }
                         fpour
-  fsi;
+  fsi;
 
 Z:=sort(Z); 
 nz:=size(Z);
 
 
 
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1; 
+ si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=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; 
+     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);
+fpour;
+nz:=size(Z);
 
 for(j:=0;j<nf;j++){
  for(k:=1;k<nz;k++){
-   if ((Z[k]>Imin[j])and(Z[k]<Imax[j])){Z:=augment(Z[0..k-1],Z[k+1..nz-1]);nz:=nz-1;
+   if ((Z[k]>Imin[j])and(Z[k]<Imax[j])){Z:=augment(Z[0..k-1],Z[k+1..nz-1]);nz:=nz-1;
    }
   }
 }
 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);
+l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
+pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
 ";fpour; 
 
-       k0:= evalf(limit(f(x),x=Z[0],1))> evalf(limit(f(x),x=Z[1],-1));
-       kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1));
+       k0:= evalf(limit(f(x),x=Z[0],1))> evalf(limit(f(x),x=Z[1],-1));
+       kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1));
                           
-lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
+lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
 if(member(Z[0],IMIN)!=0){"debutNonDef;"}else{if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
                                                     if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
                                                     if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
@@ -812,20 +806,20 @@ if(member(Z[0],IMIN)!=0){"debutNonDef;"}else{if(Z[0]==-infinity){if(sign(evalf(f
 
 
 if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.01))>0; 
-                                               lsp:=lsp+if(member(Z[r],IMIN)!=0){"debutNonDef;"}else{
-                                                       if(member(Z[r],IMAX)!=0){"finNonDef;"+
-                                                if(ksp==1){"plus;"}else{"moins;"}}else{
+                                               lsp:=lsp+if(member(Z[r],IMIN)!=0){"debutNonDef;"}else{
+                                                       if(member(Z[r],IMAX)!=0){"finNonDef;"+
+                                                if(ksp==1){"plus;"}else{"moins;"}}else{
                                                  if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
                                                 if(ksp==1){"plus;"}else{"moins;"}
                                                   }}}}; 
 
 
 
-lsf:=if(member(Z[0],IMAX)!=0){"finNonDef;"}else{if(member(Z[nz-1],F)==0){""}else{"nonDefBarre;
+lsf:=if(member(Z[0],IMAX)!=0){"finNonDef;"}else{if(member(Z[nz-1],F)==0){""}else{"nonDefBarre;
 "}}
 
 
-lm0:=limit(f(x),x=Z[0],1)==-infinity;
+lm0:=limit(f(x),x=Z[0],1)==-infinity;
      li:=lvic  +nom+"}$ etex);"+
            if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}
              else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}+                               
@@ -841,101 +835,101 @@ if(nz>2){
      lp:=lp+if(member(Z[r],IMIN)!=0){"limGauche(btex $"+if(lmrm==1){
              "-\\infty"}else{
                 latex(simplify(limit(f(x),x=Z[r],-1)))}
-         +"$ etex,"+if(krm==1){
-             "1);"}else{"0);"}
-         +"debutNonDef;"
-       }//fsi Zr=Imin
+         +"$ etex,"+if(krm==1){
+             "1);"}else{"0);"}
+         +"debutNonDef;"
+       }//fsi Zr=Imin
       else{
         if (member(Z[r],IMAX)!=0) {"finNonDef;limDroite(btex $"+if(lmrp==1){
              "-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],1)))}
-         +"$ etex,"+if(krp==1){
-             "1);"}else{"0);"}          
+         +"$ etex,"+if(krp==1){
+             "1);"}else{"0);"}          
        }
         else {
           if(member(Z[r],F)){
          "limGauche(btex $"+if(lmrm==1){
              "-\\infty"}else{
                 latex(simplify(limit(f(x),x=Z[r],-1)))}
-         +"$ etex,"+if(krm==1){
+         +"$ etex,"+if(krm==1){
              "1);"}else{"0);"}
          +"nonDefBarre;limDroite(btex $"+if(lmrp==1){
              "-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],1)))}
-         +"$ etex,"+if(krp==1){
-             "1);"}else{"0);"}
+         +"$ etex,"+if(krp==1){
+             "1);"}else{"0);"}
          }//fsi (member Zr F)
           else{"valPos(btex$"+latex(simplify(f(Z[r])))+"$etex,"+
              if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){
-               "0.5);"}else{
-                    if(krp==1){
-                       "1);"}else{"0);"}//felse(krp)
+               "0.5);"}else{
+                    if(krp==1){
+                       "1);"}else{"0);"}//felse(krp)
                     }//felse(valpos)
                }//felse(member Zr F)
                } //felse(Zr=Imax)
-              }//felse(Zr=Imin)
-           };//ffor 
-         }//fsi nz
+              }//felse(Zr=Imin)
+           };//ffor 
+         }//fsi nz
 
-lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
+lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
 
 
 
-lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
+lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
            if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+
              if(kz==1){"1);"}else{"0);"}}
-    else{"limGauche(btex $"+
-         if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+ 
-           if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};    
+    else{"limGauche(btex $"+
+         if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+ 
+           if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};    
     
 
 
     
 
-MetaLfc:=if(ftt==2){if(nz>2){"
+MetaLfc:=if(ftt==2){if(nz>2){"
 
-beginTableau("+nmr+")"+
+beginTableau("+nmr+")"+
         l0+lsi+lsp+lsf+"
-endTableau;
+endTableau;
 
 ";}else{
-intro+"beginTableau("+nmr+")"+
+intro+"beginTableau("+nmr+")"+
         l0+
-lsi+lsf+"
-endTableau;
+lsi+lsf+"
+endTableau;
 
 ";
 }
-}else{ if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+
+}else{ if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+
         l0+
 li+
 lp+
-lf
+lf
 +"
-endTableau;
+endTableau;
 
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+nmr+")"+
         l0+
 li+
-lf
+lf
 +"
-endTableau;
+endTableau;
 
 ";}}else{
 if(nz>2){"beginTableau("+nmr+")"+
         l0+
-lsi+lsp+lsf+
+lsi+lsp+lsf+
 li+
 lp+
-lf
+lf
 +"
-endTableau;
+endTableau;
 
 ";}else{"beginTableau("+nmr+")"+
         l0+
 lsi+lsf+
 li+
-lf
+lf
 +"
-endTableau;
+endTableau;
 
 ";}
 }}
@@ -943,7 +937,7 @@ li+
 
 sortie:=fopen("XCasmpfc.mp");
 fprint(sortie,Unquoted,MetaLfc);
-fclose(sortie);
+fclose(sortie);
 
  }
 :;
@@ -959,7 +953,7 @@ fprint(sortie,Unquoted,MetaLfc);
 
 
 
-\begin{VerbatimOut}{XcasTVapp.cxx}
+\begin{VerbatimOut}{XcasTVapp.cxx}
 
 
 
@@ -970,7 +964,7 @@ fprint(sortie,Unquoted,MetaLfc);
 TVapp(L,F,nom,nomv,f,ftt,nmr):={
 
 
-nl:=size(L);
+nl:=size(L);
 f:=unapply(f,x);
 fp:=function_diff(f);
 z0:=concat(L,F);z:=sort(z0);
@@ -983,7 +977,7 @@ nz:=size(z);
 
 S:=NULL;
 if(L==[-infinity,+infinity]){j:=[seq(-100+k,k=0..200)]minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for}
-else{if(L[0]==-infinity){j:=[seq(k,k=100..floor(L[1]))] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for}
+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;  }}};
 
@@ -995,7 +989,7 @@ si size(S)>0 alors   pour j de 0 jusque size(S)-1 faire
                              kk:=(re(S[j])==S[j]);kok:=(evalf(S[j])>=L[0]) and (evalf(S[j])<=L[1]);
                           if(kk==1){if(kok==1){z:=append(z,simplify(S[j]))}};
                           fpour;
-fsi;
+fsi;
 
 
 S:=NULL;
@@ -1007,7 +1001,7 @@ for(j:=1;j<size(z);j++){
 z:=[S];
 
 Z:=sort(z);
-nz:=size(Z);
+nz:=size(Z);
 
 S:=NULL;
 S:=S,Z[0];
@@ -1018,13 +1012,13 @@ for(j:=1;j<nz;j++){
 Z:=[S]; 
 
 
-nz:=size(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);
-";fpour; 
+";fpour; 
 
        k0:= evalf(limit(f(x),x=Z[0],1))> evalf(limit(f(x),x=Z[1],-1));
-       kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1));
+       kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1));
                           
 lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
      if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
@@ -1037,7 +1031,7 @@ if(nz>2){ for(r:=1; r<=nz-2;r++){      ksp:=evalf(fp(Z[r]+0.01))>0;
                                                 if(ksp==1){"plus;"}else{"moins;"}
                                                   }; }
 
-lsf:=if(member(Z[nz-1],F)==0){""}else{"nonDefBarre;
+lsf:=if(member(Z[nz-1],F)==0){""}else{"nonDefBarre;
 "}
 lm0:=limit(f(x),x=Z[0],1)==-infinity;
      li:=lvic+nom+"}$ etex);"+
@@ -1056,56 +1050,56 @@ 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)==-infinity;
  
 
 lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
            if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+
-             if(kz==1){"1);"}else{"0);"}}
+             if(kz==1){"1);"}else{"0);"}}
     else{"limGauche(btex $"+
          if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+ 
-           if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};    
+           if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};    
     
 
 
-MetaLfc:=if(ftt==2){if(nz>2){"
+MetaLfc:=if(ftt==2){if(nz>2){"
 
-beginTableau("+nmr+")"+
+beginTableau("+nmr+")"+
         l0+lsi+lsp+lsf+"
-endTableau;
+endTableau;
 
 ";}else{
 intro+"beginTableau("+nmr+")"+
         l0+
-lsi+lsf+"
-endTableau;
+lsi+lsf+"
+endTableau;
 
 ";
 }
-}else{ if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+
+}else{ if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+
         l0+
 li+
 lp+
-lf
+lf
 +"
-endTableau;
+endTableau;
 
 ";}else{"beginTableau("+nmr+")"+
         l0+
 li+
 lf
 +"
-endTableau;
+endTableau;
 
 ";}}else{
 if(nz>2){"beginTableau("+nmr+")"+
         l0+
 lsi+lsp+lsf+
 li+
-lp+
-lf
+lp+
+lf
 +"
-endTableau;
+endTableau;
 
 ";}else{"beginTableau("+nmr+")"+
         l0+
@@ -1113,7 +1107,7 @@ lsi+lsf+
 li+
 lf
 +"
-endTableau;
+endTableau;
 
 ";}
 }}
@@ -1142,7 +1136,7 @@ fclose(sortie);
 
 %%
 %% Code giac/Xcas pour les Tableaux de Variations avec 
-%% Valeurs intermediaires
+%% Valeurs intermediaires
 %%
 
 
@@ -1152,25 +1146,25 @@ fclose(sortie);
 \begin{VerbatimOut}{XcasTVI.cxx}
 
 
-TVI(L,F,nom,nomv,f,ftt,ao,trigo,nmr):={
+TVI(L,F,nom,nomv,f,ftt,ao,trigo,nmr):={
 nl:=size(L);
 f:=unapply(f,x);
-fp:=function_diff(f);
+fp:=function_diff(f);
 Z:=concat(L,F);
 S:=[];
 
 
 if(trigo==t){
-all_trig_solutions:=1;
-reset_solve_counter(-1,-1);
+all_trig_solutions:=1;
+reset_solve_counter(-1,-1);
 SS:=solve(factor(simplify(fp(x))),x);
-ns:=size(SS);
+ns:=size(SS);
 for(k:=0;k<ns;k++){
 m:=0;
-while(evalf(simplify(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){
+while(evalf(simplify(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){
 S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m+1;
 };m:=-1;
-while(evalf(subst(SS[k],n_1=m))>=L[0]){
+while(evalf(subst(SS[k],n_1=m))>=L[0]){
 S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m-1;
 }
 }
@@ -1181,19 +1175,19 @@ S:=solve(fp(x),x);
   si size(S)>0 alors   pour j de 0 jusque size(S)-1 faire 
                             kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
                           if(kk==1){Z:=append(Z,simplify(S[j]))};
-                          fpour
+                          fpour
   fsi;
 
 Z:=sort(Z); 
-nz:=size(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;
+fpour;
 nz:=size(Z);
-l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
+l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
 
 
 
@@ -1201,57 +1195,57 @@ LI:=limit(f(x),x,Z[0],1);
 LF:=limit(f(x),x,Z[nz-1],-1);
 LP:=NULL;
 if(nz>2){ for(r:=1; r<=nz-2;r++){LP:=LP,if(member(Z[r],F)){limit(f(x),x,Z[r],-1),limit(f(x),x,Z[r],1)}else{f(Z[r])}}};
-if(nz>2){ LL:=[LI,LP,LF]}else{LL:=[LI,LF]};
+if(nz>2){ LL:=[LI,LP,LF]}else{LL:=[LI,LF]};
       
-NL:=size(LL);
+NL:=size(LL);
 A:=NULL;aa:=1;kk:=0;
 
 if(NL==nz){for(k:=0;k<nz-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
 if(TestS==0){A:=A,aa;l0:=l0+"val(btex $"+latex(Z[k])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;}else{l0:=l0+"val(btex $"+latex(Z[k])+"$ etex);"}}
-l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);"};
+l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);"};
 
 if(NL>nz){for(k:=0;k<NL-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
 TestL:=(abs(LL[k])==abs(LL[k+1]));
 if(TestS==0){ if( TestL==1 ){l0:=l0}else{
 A:=A,aa;l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;kk:=kk+1}}else{l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);";kk:=kk+1}}
-l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);
+l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);
 "};
 
 
 
-TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
+TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
        k0:= evalf(limit(f(x),x=Z[0],1))> evalf(limit(f(x),x=Z[1],-1));
        kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1));
                           
-lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
+lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
      if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
                                                     if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
-                                                    if(sign(fp((Z[0]+10^(-10))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
-                                                         if(sign(fp(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$  $ etex);"+ if(sign(fp(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "}; 
+                                                    if(sign(fp((Z[0]+10^(-3))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
+                                                         if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$  $ etex);"+ if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "}; 
 
 
 
 
  
-if(nz>2){rr:=1; if(nz==NL){for(r:=1; r<=NL-2;r++){ TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0); 
+if(nz>2){rr:=1; if(nz==NL){for(r:=1; r<=NL-2;r++){ TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0); 
                                                  ksp:=evalf(fp(Z[r]+0.01))>0;  
                                                  TestL:=(abs(LL[r])==abs(LL[r+1]));
                                  lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
-                                  if(ksp==1){"plus;"}else{"moins;"}+if(TestS==0){"valBarre(btex $  $ etex);"}else{" "}+if(TestS==0){if(ksp==1){"plus;"}else{"moins;"}}else{" "};
+                                  if(ksp==1){"plus;"}else{"moins;"}+if(TestS==0){"valBarre(btex $  $ etex);"}else{" "}+if(TestS==0){if(ksp==1){"plus;"}else{"moins;"}}else{" "};
                                              }}
-else{for(r:=1; r<=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))>0;TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
+else{for(r:=1; r<=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))>0;TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
                                           TestL:=(abs(LL[r])==abs(LL[r+1]));
                       if(TestS==0){if( TestL==1 ){lsp:=lsp}else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
-                                  if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex $  $ etex);"+if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
+                                  if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex $  $ etex);"+if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
                                    } else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
-                                  if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}        
+                                  if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}        
 }}     
   }; 
 
 
 
-lsf:=if(member(Z[nz-1],F)==0){""}else{"nonDefBarre;"}
-lm0:=limit(f(x),x=Z[0],1)==-infinity;
+lsf:=if(member(Z[nz-1],F)==0){""}else{"nonDefBarre;"}
+lm0:=limit(f(x),x=Z[0],1)==-infinity;
 
 TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
 
@@ -1286,7 +1280,7 @@ if(TestS==0){if( TestL==1 ){lp:=lp}else{  lp:=lp+if(member(Z[rr],F)) {
 }//testS==0
 else{lp:=lp+if(member(Z[rr],F)){
                                     "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
-                                          else{"valPos(btex          $"+latex(simplify(f(Z[rr])))+"$
+                                          else{"valPos(btex          $"+latex(simplify(f(Z[rr])))+"$
                                             etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
                                                             "}}};rr:=rr+1;
 }//else testS==0
@@ -1296,63 +1290,63 @@ else{lp:=lp+if(member(Z[rr],F)){
 };//if nz>2
 
 
-lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
+lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
 
 
-lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
+lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
            if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+
              if(kz==1){"1);"}else{"0);"}}
     else{"limGauche(btex $"+
          if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+ 
-           if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};    
+           if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};    
     
 
 
 
-MetaLfc:= if(ftt==2){if(nz>2){"beginTableau("+nmr+")"+
+MetaLfc:= if(ftt==2){if(nz>2){"beginTableau("+nmr+")"+
         l0+lsi+lsp+lsf+"
-endTableau;
+endTableau;
 
 ";}else{
 "beginTableau("+nmr+")"+
         l0+
-lsi+lsf+"
-endTableau;
+lsi+lsf+"
+endTableau;
 
 ";
 }
 }else{
-if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+
+if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+
         l0+
 li+
 lp+
 lf
 +"
-endTableau;
+endTableau;
 
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+nmr+")"+
         l0+
 li+
-lf
+lf
 +"
-endTableau;
+endTableau;
 ";}}else{
 if(nz>2){"beginTableau("+nmr+")"+
         l0+
 lsi+lsp+lsf+
 li+
-lp+
-lf
+lp+
+lf
 +"
-endTableau;
+endTableau;
 
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+nmr+")"+
         l0+
-lsi+lsf+
+lsi+lsf+
 li+
 lf
 +"
-endTableau;
+endTableau;
 
 ";}
 }};
@@ -1360,7 +1354,7 @@ lf
 
 
 sortie:=fopen("XCasmpfc.mp");
-fprint(sortie,Unquoted,MetaLfc);
+fprint(sortie,Unquoted,MetaLfc);
 fclose(sortie);
 
 
@@ -1387,14 +1381,14 @@ fclose(sortie);
 \begin{VerbatimOut}{XcasTVIapp.cxx}
 
 
-TVIapp(L,F,nom,nomv,f,ftt,ao,nmr):={
+TVIapp(L,F,nom,nomv,f,ftt,ao,nmr):={
 
 
-nl:=size(L);
+nl:=size(L);
 f:=unapply(f,x);
 fp:=function_diff(f);
 z0:=concat(L,F);z:=sort(z0);
-nz:=size(z);
+nz:=size(z);
 
 
 
@@ -1402,7 +1396,7 @@ z0:=concat(L,F);z:=sort(z0);
 
 S:=NULL;
 if(L==[-infinity,+infinity]){j:=[seq(-100+k,k=0..200)]minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for}
-else{if(L[0]==-infinity){j:=[seq(k,k=100..floor(L[1]))] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for}
+else{if(L[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;  }}};
 
@@ -1417,7 +1411,7 @@ si size(S)>0 alors   pour j de 0 jusque size(S)-1 faire
                              kk:=(re(S[j])==S[j]);kok:=(evalf(S[j])>=L[0]) and (evalf(S[j])<=L[1]);
                           if(kk==1){if(kok==1){z:=append(z,simplify(S[j]))}};
                           fpour;
-fsi;
+fsi;
 
 
 S:=NULL;
@@ -1431,7 +1425,7 @@ z:=[S];
 
 
 Z:=sort(z);
-nz:=size(Z);
+nz:=size(Z);
 
 S:=NULL;
 S:=S,Z[0];
@@ -1442,68 +1436,68 @@ for(j:=1;j<nz;j++){
 Z:=[S]; 
 
 
-nz:=size(Z);
-l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
+nz:=size(Z);
+l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
 
 
 
 LI:=limit(f(x),x,Z[0],1);
-LF:=limit(f(x),x,Z[nz-1],-1);
-LP:=NULL;
+LF:=limit(f(x),x,Z[nz-1],-1);
+LP:=NULL;
 if(nz>2){ for(r:=1; r<=nz-2;r++){LP:=LP,if(member(Z[r],F)){limit(f(x),x,Z[r],-1),limit(f(x),x,Z[r],1)}else{f(Z[r])}}};
 if(nz>2){ LL:=[LI,LP,LF]}else{LL:=[LI,LF]};
       
-NL:=size(LL);
-A:=NULL;aa:=1;kk:=0;
+NL:=size(LL);
+A:=NULL;aa:=1;kk:=0;
 
 if(NL==nz){for(k:=0;k<nz-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
 if(TestS==0){A:=A,aa;l0:=l0+"val(btex $"+latex(Z[k])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;}else{l0:=l0+"val(btex $"+latex(Z[k])+"$ etex);"}}
-l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);"};
+l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);"};
 
 if(NL>nz){for(k:=0;k<NL-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
-TestL:=(abs(LL[k])==abs(LL[k+1]));
+TestL:=(abs(LL[k])==abs(LL[k+1]));
 if(TestS==0){ if( TestL==1 ){l0:=l0}else{
 A:=A,aa;l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;kk:=kk+1}}else{l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);";kk:=kk+1}}
-l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);
+l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);
 "};
 
 
 
-TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
+TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
        k0:= evalf(limit(f(x),x=Z[0],1))> evalf(limit(f(x),x=Z[1],-1));
-       kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1));
+       kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1));
                           
-lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
+lsi:=lsic+nom+"'("+nomv+")}$ etex);"+
      if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
                                                     if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
-                                                    if(sign(fp((Z[0]+10^(-10))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
-                                                         if(sign(fp(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$  $ etex);"+ if(sign(fp(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "}; 
+                                                    if(sign(fp((Z[0]+10^(-3))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
+                                                         if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$  $ etex);"+ if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "}; 
 
 
 
 
  
-if(nz>2){rr:=1; if(nz==NL){for(r:=1; r<=NL-2;r++){ TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0); 
+if(nz>2){rr:=1; if(nz==NL){for(r:=1; r<=NL-2;r++){ TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0); 
                                                  ksp:=evalf(fp(Z[r]+0.01))>0;  
                                                  TestL:=(abs(LL[r])==abs(LL[r+1]));
-                                 lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+                                 lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
                                   if(ksp==1){"plus;"}else{"moins;"}+if(TestS==0){"valBarre(btex $  $ etex);"}else{" "}+if(TestS==0){if(ksp==1){"plus;"}else{"moins;"}}else{" "};
                                              }}
-else{for(r:=1; r<=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))>0;TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
+else{for(r:=1; r<=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))>0;TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
                                           TestL:=(abs(LL[r])==abs(LL[r+1]));
-                      if(TestS==0){if( TestL==1 ){lsp:=lsp}else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
-                                  if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex $  $ etex);"+if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
-                                   } else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
-                                  if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}        
+                      if(TestS==0){if( TestL==1 ){lsp:=lsp}else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+                                  if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex $  $ etex);"+if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
+                                   } else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+                                  if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}        
 }}     
   }; 
 
 
 
-lsf:=if(member(Z[nz-1],F)==0){""}else{"nonDefBarre;"}
-lm0:=limit(f(x),x=Z[0],1)==-infinity;
+lsf:=if(member(Z[nz-1],F)==0){""}else{"nonDefBarre;"}
+lm0:=limit(f(x),x=Z[0],1)==-infinity;
 
-TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
+TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
 
      li:=lvic+nom+"}$ etex);
 "+  if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$ etex,"}
@@ -1536,7 +1530,7 @@ if(TestS==0){if( TestL==1 ){lp:=lp}else{  lp:=lp+if(member(Z[rr],F)) {
 }//testS==0
 else{lp:=lp+if(member(Z[rr],F)){
                                     "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[rr],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
-                                          else{"valPos(btex          $"+latex(simplify(f(Z[rr])))+"$
+                                          else{"valPos(btex          $"+latex(simplify(f(Z[rr])))+"$
                                             etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
                                                             "}}};rr:=rr+1;
 }//else testS==0
@@ -1546,7 +1540,7 @@ else{lp:=lp+if(member(Z[rr],F)){
 };//if nz>2
 
 
-lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
+lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity;
 
 
 
@@ -1554,8 +1548,8 @@ lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
            if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+
              if(kz==1){"1);"}else{"0);"}}
     else{"limGauche(btex $"+
-         if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+ 
-           if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};    
+         if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$ etex,"+ 
+           if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};    
     
 
 
@@ -1563,50 +1557,50 @@ lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+
 
 
 
-MetaLfc:= if(ftt==2){if(nz>2){"beginTableau("+nmr+")"+
+MetaLfc:= if(ftt==2){if(nz>2){"beginTableau("+nmr+")"+
         l0+lsi+lsp+lsf+"
-endTableau;
+endTableau;
 
 ";}else{
-"beginTableau("+nmr+")"+
+"beginTableau("+nmr+")"+
         l0+
-lsi+lsf+"
-endTableau;
+lsi+lsf+"
+endTableau;
 
 ";
 }
 }else{
-if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+
+if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+
         l0+
 li+
-lp+
-lf
+lp+
+lf
 +"
-endTableau;
+endTableau;
 
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+nmr+")"+
         l0+
 li+
-lf
+lf
 +"
 endTableau;
 ";}}else{
 if(nz>2){"beginTableau("+nmr+")"+
         l0+
-lsi+lsp+lsf+
+lsi+lsp+lsf+
 li+
 lp+
-lf
+lf
 +"
-endTableau;
+endTableau;
 
 ";}else{"beginTableau("+nmr+")"+
         l0+
 lsi+lsf+
 li+
-lf
+lf
 +"
-endTableau;
+endTableau;
 
 ";}
 }};
@@ -1615,7 +1609,7 @@ li+
 
 sortie:=fopen("XCasmpfc.mp");
 fprint(sortie,Unquoted,MetaLfc);
-fclose(sortie);
+fclose(sortie);
 
 
  }:;
@@ -1632,7 +1626,7 @@ fprint(sortie,Unquoted,MetaLfc);
 
 
 %%
-%% Code giac/Xcas pour les Tableaux de variations de courbes parametrees
+%% Code giac/Xcas pour les Tableaux de variations de courbes parametrees
 %%
 
 
@@ -1644,24 +1638,24 @@ fprint(sortie,Unquoted,MetaLfc);
 \begin{VerbatimOut}{XcasTVP.cxx}
 TVP(L,F,nom,nomv,ff,ftt,trigo,nmr):={
 //local Z,LLL,FFF,nl,fp,f,S,d,t,ns,k,m,x,j,kk,nz,u,l0;
-nl:=size(L);
-fp:=[];
+nl:=size(L);
+fp:=[];
 S:=[];
-f:=ff;
+f:=ff;
 Z:=[];
-LLL:=[];
+LLL:=[];
 
 
 all_trig_solutions:=1;
-reset_solve_counter(-1,-1);
+reset_solve_counter(-1,-1);
 
 for(d:=0;d<=1;d++){
 f:=subst(f,f[d]=unapply(f[d],t));
-fp:=append(fp,function_diff(f[d]));
+fp:=append(fp,function_diff(f[d]));
 LLL:=concat(L,F[d]);
 Z:=LLL union Z;
 SS:=solve(factor(simplify(fp[d](t))),t);
-ns:=size(SS);
+ns:=size(SS);
 
 for(k:=0;k<ns;k++){
 if(trigo==t){
@@ -1671,29 +1665,29 @@ while(evalf(simplify(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){
 S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m+1;
 
 };m:=-1;
-while(evalf(subst(SS[k],n_1=m))>=L[0]){
+while(evalf(subst(SS[k],n_1=m))>=L[0]){
 
 S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m-1;
 
 }
 }else{
-S:=concat(S,SS);
+S:=concat(S,SS);
 }
 }
 
 
   si size(S)>0 alors   pour j de 0 jusque size(S)-1 faire
                              qq:=member(simplify(S[j]),Z)==0;
-                             kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
+                             kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
                           if(kk==1){if(qq==1){Z:=append(Z,simplify(S[j]))}};
-                          fpour
+                          fpour
   fsi;
 Z:=sort(Z);
-nz:=size(Z);
+nz:=size(Z);
 
 
  tantque evalf(Z[0])==evalf(Z[1]) faire Z:=Z[1..nz-1];nz:=size(Z);
-     ftantque;
+     ftantque;
 
 
 
@@ -1703,44 +1697,44 @@ u:=1;
  tantque (u<nz-2) and (nz>2) faire
      tantque evalf(Z[u])==evalf(Z[u+1]) faire
          Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=size(Z);
-     ftantque;
+     ftantque;
   u:=u+1;
- ftantque;
+ ftantque;
 
 
  };
 
 Z:=sort(Z);
-nz:=size(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);
-";fpour;
+";fpour;
 
  lsi:="","";
 
-FFF:=[[],[]];
+FFF:=[[],[]];
 
 for(d:=0;d<=1;d++){
-FFF[d]:=concat(F[d],[-infinity,+infinity]);
+FFF[d]:=concat(F[d],[-infinity,+infinity]);
        k0:= evalf(limit(f[d](x),x=Z[0],1))> evalf(limit(f[d](x),x=Z[1],-1));
-       kz:=evalf(limit(f[d](x),x=Z[nz-1],-1))> evalf(limit(f[d](x),x=Z[nz-2],1));
+       kz:=evalf(limit(f[d](x),x=Z[nz-1],-1))> evalf(limit(f[d](x),x=Z[nz-2],1));
 //}
 //$
- lsi[d]:=lsic+nom[d]+"'("+nomv+")}$ etex);"+if(member(Z[0],FFF[d])==0){"valBarre(btex $"+latex(simplify(fp[d](Z[0])))+"$ etex);"}else{if(Z[0]==-infinity){" "}else{"nonDefBarre;
+ lsi[d]:=lsic+nom[d]+"'("+nomv+")}$ etex);"+if(member(Z[0],FFF[d])==0){"valBarre(btex $"+latex(simplify(fp[d](Z[0])))+"$ etex);"}else{if(Z[0]==-infinity){" "}else{"nonDefBarre;
 "}}+
      if(Z[0]==-infinity){if(sign(evalf(fp[d](if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F[d])==0){
                                                     if(sign(fp[d](Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{
                                                          if(sign(fp[d]((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }}
 
 if(nz>2){ for(r:=1; r<=nz-2;r++){      ksp:=evalf(fp[d](Z[r]+0.01))>0;
-                                               lsp[d]:=lsp[d]+if(member(Z[r],F[d])==0){"valBarre(btex $"+latex(simplify(fp[d](Z[r])))+"$ etex);"}else{"nonDefBarre;"}+
+                                               lsp[d]:=lsp[d]+if(member(Z[r],F[d])==0){"valBarre(btex $"+latex(simplify(fp[d](Z[r])))+"$ etex);"}else{"nonDefBarre;"}+
                                                 if(ksp==1){"plus;"}else{"moins;"}
                                                   }; }
 
-lsf[d]:=if(member(Z[nz-1],FFF[d])==0){"valBarre(btex $"+latex(simplify(fp[d](Z[nz-1])))+"$ etex);"}else{if(Z[nz-1]==+infinity){" "}else{"nonDefBarre;"}}
+lsf[d]:=if(member(Z[nz-1],FFF[d])==0){"valBarre(btex $"+latex(simplify(fp[d](Z[nz-1])))+"$ etex);"}else{if(Z[nz-1]==+infinity){" "}else{"nonDefBarre;"}}
 
 
 
@@ -1766,7 +1760,7 @@ for(d:=0;d<=1;d++){
 //{
 //$
 lm0[d]:=limit(f[d](x),x,Z[0],1)==-infinity;
-     li[d]:=lvic+nom[d]+"}$ etex);"+
+     li[d]:=lvic+nom[d]+"}$ etex);"+
            if(member(Z[0],F[d])==0){"valPos(btex $"+if(lm0[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x,Z[0],1)))}+"$ etex,"}
              else{"nonDefBarre;limDroite(btex $"+if(lm0[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x,Z[0],1)))}+"$ etex,"}+
            if(K0[d]==1){"1"}else{"0"}+
@@ -1780,19 +1774,19 @@ lm0[d]:=limit(f[d](x),x,Z[0],1)==-infinity;
                                     $"+if(lmrm[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x,Z[r],-1)))}+"$
                                     etex,"+if(krm[d]==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x,Z[r],1)))}+"$ etex,"+if(krp[d]==1){"1);"}else{"0);"}}
                                           else{"valPos(btex          $"+latex(simplify(f[d](Z[r])))+"$
-                                            etex,"+if(sign(evalf(fp[d](Z[r]-0.001)))==sign(evalf((fp[d](Z[r]+0.001))) )){"0.5);"}else{if(krp[d]==1){"1);"}else{"0);
+                                            etex,"+if(sign(evalf(fp[d](Z[r]-0.001)))==sign(evalf((fp[d](Z[r]+0.001))) )){"0.5);"}else{if(krp[d]==1){"1);"}else{"0);
 "}}}
                                                    }; }
 
-lnz[d]:=limit(f[d](x),x=Z[nz-1],-1)==-infinity;
+lnz[d]:=limit(f[d](x),x=Z[nz-1],-1)==-infinity;
 
 
-lf[d]:=if(member(Z[nz-1],F[d])==0){"valPos(btex $"+
-           if(lnz[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x=Z[nz-1],-1)))}+"$ etex,"+
-             if(Kz[d]==1){"1);"}else{"0);"}}
-    else{"limGauche(btex $"+
-         if(lnz[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x=Z[nz-1],-1)))}+"$ etex,"+ 
-           if(Kz[d]==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};    
+lf[d]:=if(member(Z[nz-1],F[d])==0){"valPos(btex $"+
+           if(lnz[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x=Z[nz-1],-1)))}+"$ etex,"+
+             if(Kz[d]==1){"1);"}else{"0);"}}
+    else{"limGauche(btex $"+
+         if(lnz[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x=Z[nz-1],-1)))}+"$ etex,"+ 
+           if(Kz[d]==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}};    
     
 
 
@@ -1808,17 +1802,17 @@ lm0[d]:=limit(f[d](x),x,Z[0],1)==-infinity;
 
 
 
-MetaLfc:=if(ftt==2){if(nz>2){"
+MetaLfc:=if(ftt==2){if(nz>2){"
 
 beginTableau("+nmr+")"+
         l0+lsi[0]+lsp[0]+lsf[0]+lsi[1]+lsp[1]+lsf[1]+"
-endTableau;
+endTableau;
 
 ";}else{
 intro+"beginTableau("+nmr+")"+
         l0+
 lsi[0]+lsf[0]+lsi[1]+lsf[1]+"
-endTableau;
+endTableau;
 
 ";
 }
@@ -1826,24 +1820,24 @@ lsi[0]+lsf[0]+lsi[1]+lsf[1]+"
         l0+
 li[0]+
 lp[0]+
-lf[0]+
+lf[0]+
 li[1]+
 lp[1]+
 lf[1]
 +"
-endTableau;
+endTableau;
 
 ";}else{"beginTableau("+nmr+")"+
         l0+
 li[0]+
 lf[0]+
 li[1]+
-lf[1]
+lf[1]
 +"
-endTableau;
+endTableau;
 
 ";}}else{
-if(nz>2){"beginTableau("+nmr+")"+
+if(nz>2){"beginTableau("+nmr+")"+
         l0+
 lsi[0]+lsp[0]+lsf[0]+
 li[0]+
@@ -1854,18 +1848,18 @@ li[1]+
 lp[1]+
 lf[1]
 +"
-endTableau;
+endTableau;
 
 ";}else{"beginTableau("+nmr+")"+
         l0+
 lsi[0]+lsf[0]+
 li[0]+
 lf[0]+
-lsi[1]+lsf[1]+
+lsi[1]+lsf[1]+
 li[1]+
 lf[1]
 +"
-endTableau;
+endTableau;
 
 ";}
 }
@@ -1895,7 +1889,7 @@ TS(nomf,L,D,trigo,nmr):={
 L:=apply(f->unapply(f,x),L)
 n:=size(L);
 Z:=NULL;
-nl:=size(L);
+nl:=size(L);
 S:=[];
 mini:=D[0]; maxi:=D[1];
 
@@ -1907,7 +1901,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);
+SS:=solve(factor(simplify(L[k](x))),x);
 ns:=size(SS);
 for(j:=0;j<ns;j++){
 m:=0;
@@ -1930,14 +1924,14 @@ S:=solve(L[k](x),x);
                           if(S[j]>mini and S[j]<maxi){Z:=Z,simplify(S[j]);}
                       fpour;
   fsi;
-fpour;
+fpour;
 
 
 
 
 
 Z:=sort(Z);
-nz:=size(Z);
+nz:=size(Z);
 
 
 
@@ -1946,7 +1940,7 @@ Z:=sort(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;};
+fpour;};
 nz:=size(Z);
 
 if(nz==0){li:="";l0:="val(btex $"+latex(D[0])+"$ etex);val(btex $"+latex(D[1])+"$ etex);";
@@ -1962,8 +1956,8 @@ if(L[p]((mini+maxi)*0.5>0)){"plus;"}else{"moins;"}+if(maxi!=+infinity and L[p
            lf:=if(product(L[s]((mini+maxi)*.5),s,0,n-1)>0){"plus;"}else{"moins;"};
 
 
-MetaLfc:="    beginTableau("+nmr+")
-newLigneVariables(btex $ {x}$ etex);
+MetaLfc:="    beginTableau("+nmr+")
+newLigneVariables(btex $ {x}$ etex);
    "+l0+li+ lsic+nomf+"(x)}$ etex);"+
                if(mini!=-infinity and product(L[s](mini),s,0,n-1)==0){"
                                 valBarre(btex 0 etex);"}else{"
@@ -1978,9 +1972,9 @@ endTableau;
 }else{
 
 l0:="val(btex $"+latex(D[0])+"$ etex);";li:=" ";lr:=" "; 
-pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
+pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
 ";fpour; 
-l0:=l0+"val(btex $"+latex(D[1])+"$ etex);";
+l0:=l0+"val(btex $"+latex(D[1])+"$ etex);";
 
 
 for(p:=0;p<=n-1;p++){lp:="";                                     
@@ -1999,17 +1993,17 @@ for(p:=0;p<=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)>0){"plus;"}else{"moins;
     "}+if(maxi!=+infinity and L[p](maxi)==0){"
-                                valBarre(btex 0 etex);"}else{"
+                                valBarre(btex 0 etex);"}else{"
                               "}
     };  
 
 
 pour t de 0 jusque nz-2 faire 
-                           lr:=lr+if(product(L[s]((Z[t]+Z[t+1])*.5),s,0,n-1)>0){"plus;"}else{"moins;"}+"valBarre(btex 0 etex);"                    
+                           lr:=lr+if(product(L[s]((Z[t]+Z[t+1])*.5),s,0,n-1)>0){"plus;"}else{"moins;"}+"valBarre(btex 0 etex);"                    
                          fpour
 
 MetaLfc:="  beginTableau("+nmr+")
-newLigneVariables(btex $ {x}$ etex);
+newLigneVariables(btex $ {x}$ etex);
    "+l0+
                      li
                      + lsic+nomf+"(x)}$ etex);"+
@@ -2046,24 +2040,24 @@ fclose(sortie);
 \begin{VerbatimOut}{XcasTabSignQ.cxx}
 TSq(nomf,L,Fo,D,trigo,nmr):={
 L:=apply(f->unapply(f,x),L);
-Fo:=apply(f->unapply(f,x),Fo);
+Fo:=apply(f->unapply(f,x),Fo);
 L:=concat(L,Fo);
 n:=size(L);
 Z:=NULL;
 m:=size(Fo);
-F:=NULL;FF:=NULL;
+F:=NULL;FF:=NULL;
 mini:=D[0]; maxi:=D[1];
 S:=[];
-SF:=[];
+SF:=[];
 
 pour k de 0 jusque n-1 faire 
 
 
 
 if(trigo==t){
-all_trig_solutions:=1;
+all_trig_solutions:=1;
 reset_solve_counter(-1,-1);
-SS:=solve(factor(simplify(L[k](x))),x);
+SS:=solve(factor(simplify(L[k](x))),x);
 ns:=size(SS);
 for(j:=0;j<ns;j++){
 mm:=0;
@@ -2087,25 +2081,25 @@ S:=solve(L[k](x),x);
                           if(S[j]>mini and S[j]<maxi){Z:=Z,simplify(S[j]);}
                       fpour;
   fsi;
-fpour;
+fpour;
 
 
 pour k de 0 jusque m-1 faire 
 
 
 
-if(trigo==1){
-all_trig_solutions:=1;
-reset_solve_counter(-1,-1);
+if(trigo==t){
+all_trig_solutions:=1;
+reset_solve_counter(-1,-1);
 SSF:=solve(factor(simplify(Fo[k](x))),x);
 nsf:=size(SSF);
 for(j:=0;j<nsf;j++){
 mm:=0;
-while(evalf(simplify(subst(SSF[j],n_1=mm)))<=evalf(maxi)){
-SF:=concat(SF,simplify(subst(SSF[j],n_1=mm)));mm:=mm+1;
+while(evalf(simplify(subst(SSF[j],n_1=mm)))<=evalf(maxi)){
+SF:=concat(SF,simplify(subst(SSF[j],n_1=mm)));mm:=mm+1;
 };mm:=-1;
 while(evalf(subst(SSF[j],n_1=mm))>=evalf(mini)){
-SF:=concat(SF,simplify(subst(SSF[j],n_1=mm)));mm:=mm-1;
+SF:=concat(SF,simplify(subst(SSF[j],n_1=mm)));mm:=mm-1;
 }
 }
 
@@ -2116,26 +2110,26 @@ SF:=solve(Fo[j](x),x);
   si size(SF)>0 alors pour j de 0 jusque size(SF)-1 faire 
                           FF:=FF,simplify(SF[j]);
                           if(SF[j]>mini and SF[j]<maxi){F:=F,simplify(SF[j]);}
-                      fpour;
+                      fpour;
   fsi;
-fpour;
+fpour;
 
 
 
 Z:=sort(Z); // on classe les zeros dans l'ordre croissant 
-nz:=size(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; // pour les zeros en double
      fsi;
-fpour;}
+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;
+     si Z[u]==Z[u+1] alors Z:=Z[0..u-1],Z[u+1..nz-1];nz:=nz-1;
      fsi;
-fpour;};
+fpour;};
 nz:=size(Z);
 
 if(nz==0){li:="";l0:="val(btex $"+latex(D[0])+"$ etex);val(btex $"+latex(D[1])+"$ etex);";
@@ -2153,9 +2147,9 @@ if(L[p]((mini+maxi)*0.5>0)){"plus;"}else{"moins;"}+if(maxi!=+infinity and L[p
 
 
 
-MetaLfc:=" 
+MetaLfc:=" 
 beginTableau("+nmr+")
-newLigneVariables(btex $ {x}$ etex);
+newLigneVariables(btex $ {x}$ etex);
    "+l0+li+
    lsic+nomf+"(x)}$ etex);"+
               if(member(mini,FF)==0){if(mini!=-infinity and product(L[s](mini),s,0,n-1)==0){"
@@ -2172,13 +2166,13 @@ endTableau;
 
 
 
-}else{
+}else{
 
 
 l0:="val(btex $"+latex(D[0])+"$ etex);";li:=" ";lr:=" "; 
-pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
+pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
 ";fpour; 
-l0:=l0+"val(btex $"+latex(D[1])+"$ etex);";
+l0:=l0+"val(btex $"+latex(D[1])+"$ etex);";
 
 
 for(p:=0;p<=n-1;p++){lp:="";                                     
@@ -2197,7 +2191,7 @@ for(p:=0;p<=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)>0){"plus;"}else{"moins;
     "}+if(maxi!=+infinity and L[p](maxi)==0){"
-                                valBarre(btex 0 etex);"}else{" "}
+                                valBarre(btex 0 etex);"}else{" "}
                               
     };  
 
@@ -2205,14 +2199,14 @@ for(p:=0;p<=n-1;p++){lp:="";
 pour t de 0 jusque nz-2 faire 
                            lr:=lr+if(product(L[s]((Z[t]+Z[t+1])*.5),s,0,n-1)>0){"plus;"}else{"moins;"}+
                                       if(member(Z[t+1],FF)==0){"valBarre(btex 0 etex);"}else{ "nonDefBarre;"}                   
-                         fpour
+                         fpour
 
 
 
 
-MetaLfc:="
+MetaLfc:="
 beginTableau("+nmr+")
-newLigneVariables(btex $ {x}$ etex);
+newLigneVariables(btex $ {x}$ etex);
    "+l0+
                      li
                      +
@@ -2237,7 +2231,7 @@ endTableau;
 
 
 sortie:=fopen("XCasmpfc.mp");
-fprint(sortie,Unquoted,MetaLfc);
+fprint(sortie,Unquoted,MetaLfc);
 fclose(sortie);
 
 
@@ -2261,15 +2255,15 @@ fclose(sortie);
 \begin{VerbatimOut}{XcasTabSigna.cxx}
 TSa(a,b,c,d,nmr):={
 zA:=solve(a*x+b=0,x)[0];
-zB:=solve(c*x+d=0,x)[0];
+zB:=solve(c*x+d=0,x)[0];
 zmin:=min(zA,zB);
-zmax:=max(zA,zB);
+zmax:=max(zA,zB);
   Meta:= " 
           beginTableau("+nmr+")
-   newLigneVariables(btex $ {x}$ etex);
+   newLigneVariables(btex $ {x}$ etex);
    val(btex $-\\infty$ etex);val(btex $"+latex(zmin)+"$ etex);
 val(btex $"+latex(zmax)+"$etex);
-val(btex $+\\infty$ etex); 
+val(btex $+\\infty$ etex); 
   "+lsic+if(a==1){"x+"}else{if(a==-1){"-x+"}else{a+"x+"}}+b+"}$ etex);"
         +   if(a>0){"moins;"}else{"plus;"}+
                                  if(zmin==zA){"valBarre(btex 0 etex);"}else{"barre;"}+
@@ -2280,8 +2274,8 @@ val(btex $+\\infty$  etex);"
         +     if(c>0){"moins"}else{"plus"}+";"+
                                  if(zmin==zB){"valBarre(btex 0 etex);"}else{"barre;"}+
-                                 if(zmin==zB){si c>0 alors "plus;"; sinon "moins;";fsi}
-                                             else{si c>0 alors "moins;"; sinon "plus;"; fsi}+
+                                 if(zmin==zB){si c>0 alors "plus;"; sinon "moins;";fsi}
+                                             else{si c>0 alors "moins;"; sinon "plus;"; fsi}+
                                  if(zmin==zB){"barre;"}else{"valBarre(btex 0 etex);"}+
                                  if(c>0){"plus;"}else{"moins;"}  
      
@@ -2298,7 +2292,7 @@ endTableau;
 
 
 sortie:=fopen("XCasmpfc.mp");
-fprint(sortie,Unquoted,Meta);
+fprint(sortie,Unquoted,Meta);
 fclose(sortie);
 
 
@@ -2318,7 +2312,7 @@ fclose(sortie);
 
 
 \begin{VerbatimOut}{XcasTSc.cxx}
-TSc(g,D,F,trigo,nmr):={
+TSc(g,D,F,trigo,nmr):={
 f:=unapply(g,x);
 mini:=D[0]; maxi:=D[1];lm:=" ";
 Z:=mini,maxi;
@@ -2328,21 +2322,21 @@ S:=[];
 
 if(trigo==t){
 all_trig_solutions:=1;
-reset_solve_counter(-1,-1);
-SS:=solve(factor(simplify(f(x))),x);
-ns:=size(SS);
+reset_solve_counter(-1,-1);
+SS:=solve(factor(simplify(f(x))),x);
+ns:=size(SS);
 for(j:=0;j<ns;j++){
 m:=0;
 while(evalf(simplify(subst(SS[j],n_1=m)))<=evalf(maxi)){
 S:=concat(S,simplify(subst(SS[j],n_1=m)));m:=m+1;
 };m:=-1;
-while(evalf(subst(SS[j],n_1=m))>=evalf(mini)){
+while(evalf(subst(SS[j],n_1=m))>=evalf(mini)){
 S:=concat(S,simplify(subst(SS[j],n_1=m)));m:=m-1;
 }
 }
 
 }else{
-S:=solve(f(x),x);
+S:=solve(f(x),x);
 }
 
 
@@ -2352,27 +2346,27 @@ S:=solve(f(x),x);
 if(size(S)==0){
 l0:="val(btex $"+latex(D[0])+"$ etex);val(btex $"+latex(D[1])+"$ 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);"}else{"
                               "}}+ 
 if(mini!=-infinity or maxi!=+infinity){if(f((mini+maxi)*0.5>0)){"plus;"}else{"moins;"}}else{if(f(0)>0){"plus;"}else{"moins;"}};
-lf:=if(member(maxi,F)!=0){"nonDefBarre;"}else{if(maxi!=+infinity and f(maxi)==0){"
-                                valBarre(btex 0 etex);"}else{"
+lf:=if(member(maxi,F)!=0){"nonDefBarre;"}else{if(maxi!=+infinity and f(maxi)==0){"
+                                valBarre(btex 0 etex);"}else{"
                               "}};
 }
-else{pour j de 0 jusque size(S)-1 faire 
-                           if(S[j]>mini and S[j]<maxi){Z:=Z,simplify(S[j])};
+else{pour j de 0 jusque size(S)-1 faire 
+                           if(S[j]>mini and S[j]<maxi){Z:=Z,simplify(S[j])};
                       fpour;
 
 Z:=concat([Z],F);
 Z:=sort(Z);
-nz:=size(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;}
+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;}
+if(Z[nz-2]==Z[nz-1]){Z:=Z[0..nz-2];nz:=nz-1;}
 
 nz:=size(Z);
 l0:=" ";li:=" ";lr:=" "; 
@@ -2381,29 +2375,32 @@ li:=if(mini!=-infinity and f(mini)==0){"
                                 valBarre(btex 0 etex);"}else{if(member(mini,F)==0){"
                               "}else{"nonDefBarre;"}}+ 
 if(f((mini+maxi)*0.5)>0){"plus;"}else{"moins;"};
-lf:=if(maxi!=+infinity and f(maxi)==0){"
+lf:=if(maxi!=+infinity and f(maxi)==0){"
                                 valBarre(btex 0 etex);"}else{if(member(maxi,F)==0){"
-                              "}else{"nonDefBarre;"}
+                              "}else{"nonDefBarre;"}
                               };
 
-}else{
+}else{
 l0:="val(btex $"+latex(Z[0])+"$ etex);";li:=" ";
-pour m de 1 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
+pour m de 1 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
 ";
-fpour; 
+fpour; 
 
                                      
 li:= if(mini!=-infinity and f(mini)==0){"
                                 valBarre(btex 0 etex);"}else{if(member(mini,F)==0){"
-                              "}else{"nonDefBarre;"}
+                              "}else{"nonDefBarre;"}
                               }                         
 
-lm:=if(nz>2){for(r:=0; r<nz-2;r++){lm:=lm+if(f((Z[r]+Z[r+1])*.5)>0){"plus;"}else{"moins;"}+
+lm:=if(nz>2){for(r:=0; r<nz-2;r++){lm:=lm+if(Z[r]==-infinity){
+if(f((Z[r+1]-1))>0){"plus;"}else{"moins;"}
+}else{if(f((Z[r]+Z[r+1])*.5)>0){"plus;"}else{"moins;"}}
++
             if(member(Z[r+1],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"} 
-                           }}else{" "}; 
+                           }}else{" "}; 
 
-lf:=if(f(Z[nz-2]+0.1)>0){"plus;"}else{"moins;"}+if(maxi!=+infinity and f(maxi)==0){"valBarre(btex 0 etex);"}else{if(member(maxi,F)==0){"
-                              "}else{"nonDefBarre;"}
+lf:=if(f(Z[nz-2]+0.1)>0){"plus;"}else{"moins;"}+if(maxi!=+infinity and f(maxi)==0){"valBarre(btex 0 etex);"}else{if(member(maxi,F)==0){"
+                              "}else{"nonDefBarre;"}
                               };
 }};  
 
@@ -2412,8 +2409,8 @@ lm:=if(nz>2){for(r:=0; r<nz-2;r++){lm:=lm+if(f((Z[r]+Z[r+1])*.5)>0){"pl
 
 MetaLfc:="
 
-beginTableau("+nmr+")
-newLigneVariables(btex $\\displaystyle  {x}$ etex);
+beginTableau("+nmr+")
+newLigneVariables(btex $\\displaystyle  {x}$ etex);
    "+l0+lsic+latex(f(x))+"}$ etex);"+
                      li+lm+lf
                      +"
@@ -2425,11 +2422,12 @@ endTableau;
 
 
 
-sortie:=fopen("XCasmpfc.mp");
-fprint(sortie,Unquoted,MetaLfc);
+sortie:=fopen("XCasmpfc.mp");
+fprint(sortie,Unquoted,MetaLfc);
 fclose(sortie);
-
  }:;
+
+
 \end{VerbatimOut}
 
 
@@ -2473,13 +2471,13 @@ fclose(sortie);
 \begin{center}
   \includegraphics[scale=\echelle]{\nomtravail.Tab.\theTVn}
 \end{center}
-\stepcounter{TVn}
+\stepcounter{TVn}
 }
 
 
 %%
 %% traitement des fichiers produits par giac/xcas avec possibilite
-%% de modifier le fichier metapost (environnement etoile))
+%% de modifier le fichier metapost (environnement etoile))
 %%
 
 
@@ -2513,7 +2511,7 @@ fclose(sortie);
   \includegraphics[scale=\echelle]{\nomtravail.Tab.\theTVn}
 \end{center}
 \ech{1}
-\setcounter{TVn}{\theTVnbis}    % Restauration du compteur TVn
+\setcounter{TVn}{\theTVnbis}    % Restauration du compteur TVn
 }
 
 
@@ -2535,7 +2533,7 @@ fclose(sortie);
 
 
 \begin{VerbatimOut}{XCasa.giac}
-maple_mode(0);
+maple_mode(0);
 read("config.cxx");
 read("XcasTabSigna.cxx");
 read("XCasa.user");
@@ -2559,7 +2557,7 @@ read("XCasa.user");
 maple_mode(0);
 read("config.cxx");
 read("XcasTabSignQ.cxx");
-read("XCasQ.user");
+read("XCasQ.user");
 \end{VerbatimOut}
 
 \newenvironment{TSq}%
@@ -2570,19 +2568,19 @@ read("XcasTabSignQ.cxx");
 
 \newenvironment{TSq*}[1]%
 {\setcounter{TVnbis}{\theTVn}
-\setcounter{TVn}{#1}
+\setcounter{TVn}{#1}
 \VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasQ.user}}
 {\end{VerbatimOut}\dressetoile{Q}}
 
 
 \begin{VerbatimOut}{XCasL.giac}
 maple_mode(0);
-read("config.cxx");
+read("config.cxx");
 read("XcasTabSignL.cxx");
 read("XCasL.user");
 \end{VerbatimOut}
 
-\newenvironment{TS}%
+\newenvironment{TS}%
 {\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasL.user}}
 {\end{VerbatimOut}\dresse{L}}
 
@@ -2595,7 +2593,7 @@ read("XCasL.user");
 
 
 \begin{VerbatimOut}{XCasTSc.giac}
-maple_mode(0);
+maple_mode(0);
 read("config.cxx");
 read("XcasTSc.cxx");
 read("XCasTSc.user");
@@ -2604,11 +2602,11 @@ read("XCasTSc.user");
 
 
 
-\newenvironment{TSc*}[1]%
+\newenvironment{TSc*}[1]%
 {\setcounter{TVnbis}{\theTVn}
-\setcounter{TVn}{#1}
+\setcounter{TVn}{#1}
 \VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTSc.user}}
-{\end{VerbatimOut}\dressetoile{TSc}}
+{\end{VerbatimOut}\dressetoile{TSc}}
 
 
 \newenvironment{TSc}%
@@ -2619,7 +2617,7 @@ read("XCasTSc.user");
 \begin{VerbatimOut}{XCasTV.giac}
 maple_mode(0);
 read("config.cxx");
-read("XcasTV.cxx");
+read("XcasTV.cxx");
 read("XCasTV.user");
 \end{VerbatimOut}
 
@@ -2630,9 +2628,9 @@ read("XCasTV.user");
 
 \newenvironment{TV*}[1]{%
 \setcounter{TVnbis}{\theTVn}
-\setcounter{TVn}{#1}
+\setcounter{TVn}{#1}
 \VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTV.user}}%
-{\end{VerbatimOut}\dressetoile{TV}}
+{\end{VerbatimOut}\dressetoile{TV}}
 
 
 
@@ -2643,20 +2641,20 @@ read("XCasTV.user");
 \begin{VerbatimOut}{XCasTVP.giac}
 maple_mode(0);
 read("config.cxx");
-read("XcasTVP.cxx");
+read("XcasTVP.cxx");
 read("XCasTVP.user");
 \end{VerbatimOut}
 
-\newenvironment{TVP}%
+\newenvironment{TVP}%
 {\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVP.user}}%
 {\end{VerbatimOut}
-\dresse{TVP}}
+\dresse{TVP}}
 
 \newenvironment{TVP*}[1]{%
 \setcounter{TVnbis}{\theTVn}
-\setcounter{TVn}{#1}
+\setcounter{TVn}{#1}
 \VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVP.user}}%
-{\end{VerbatimOut}\dressetoile{TVP}}
+{\end{VerbatimOut}\dressetoile{TVP}}
 
 
 
@@ -2669,21 +2667,21 @@ read("XCasTVP.user");
 
 \begin{VerbatimOut}{XCasTVZ.giac}
 maple_mode(0);
-read("config.cxx");
+read("config.cxx");
 read("XcasTVZ.cxx");
 read("XCasTVZ.user");
 \end{VerbatimOut}
 
-\newenvironment{TVZ}%
+\newenvironment{TVZ}%
 {\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVZ.user}}%
 {\end{VerbatimOut}
-\dresse{TVZ}}
+\dresse{TVZ}}
 
 \newenvironment{TVZ*}[1]{%
 \setcounter{TVnbis}{\theTVn}
 \setcounter{TVn}{#1}
 \VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVZ.user}}%
-{\end{VerbatimOut}\dressetoile{TVZ}}
+{\end{VerbatimOut}\dressetoile{TVZ}}
 
 
 
@@ -2697,20 +2695,20 @@ read("XCasTVZ.user");
 \begin{VerbatimOut}{XCasTVapp.giac}
 maple_mode(0);
 read("config.cxx");
-read("XcasTVapp.cxx");
+read("XcasTVapp.cxx");
 read("XCasTVapp.user");
 \end{VerbatimOut}
 
 \newenvironment{TVapp}%
 {\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVapp.user}}%
 {\end{VerbatimOut}
-\dresse{TVapp}}
+\dresse{TVapp}}
 
 \newenvironment{TVapp*}[1]{%
 \setcounter{TVnbis}{\theTVn}
-\setcounter{TVn}{#1}
+\setcounter{TVn}{#1}
 \VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVapp.user}}%
-{\end{VerbatimOut}\dressetoile{TVapp}}
+{\end{VerbatimOut}\dressetoile{TVapp}}
 
 
 
@@ -2723,7 +2721,7 @@ read("XCasTVapp.user");
 
 
 \begin{VerbatimOut}{XCasTVI.giac}
-maple_mode(0);
+maple_mode(0);
 read("config.cxx");
 read("XcasTVI.cxx");
 read("XCasTVI.user");
@@ -2731,14 +2729,14 @@ read("XCasTVI.user");
 
 \newenvironment{TVI}%
 {\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVI.user}}%
-{\end{VerbatimOut}\dresse{TVI}}
+{\end{VerbatimOut}\dresse{TVI}}
 
 
-\newenvironment{TVI*}[1]%
+\newenvironment{TVI*}[1]%
 {\setcounter{TVnbis}{\theTVn}
 \setcounter{TVn}{#1}
 \VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVI.user}}%
-{\end{VerbatimOut}\dressetoile{TVI}}
+{\end{VerbatimOut}\dressetoile{TVI}}
 
 
 
@@ -2747,43 +2745,43 @@ read("XCasTVI.user");
 
 \begin{VerbatimOut}{XCasTVIapp.giac}
 maple_mode(0);
-read("config.cxx");
+read("config.cxx");
 read("XcasTVIapp.cxx");
 read("XCasTVIapp.user");
 \end{VerbatimOut}
 
-\newenvironment{TVIapp}%
+\newenvironment{TVIapp}%
 {\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVIapp.user}}%
-{\end{VerbatimOut}\dresse{TVIapp}}
+{\end{VerbatimOut}\dresse{TVIapp}}
 
 
 \newenvironment{TVIapp*}[1]%
 {\setcounter{TVnbis}{\theTVn}
 \setcounter{TVn}{#1}
 \VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVIapp.user}}%
-{\end{VerbatimOut}\dressetoile{TVIapp}}
+{\end{VerbatimOut}\dressetoile{TVIapp}}
 
 
 
 
 
-\begin{VerbatimOut}{XCasTVPC.giac}
+\begin{VerbatimOut}{XCasTVPC.giac}
 maple_mode(0);
-read("config.cxx");
-read("XcasTVPC.cxx");
-read("XCasTVPC.user");
+read("config.cxx");
+read("XcasTVPC.cxx");
+read("XCasTVPC.user");
 \end{VerbatimOut}
 
-\newenvironment{TVPC}%
-{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVPC.user}}%
+\newenvironment{TVPC}%
+{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVPC.user}}%
 {\end{VerbatimOut}
-\dresse{TVPC}}
+\dresse{TVPC}}
 
-\newenvironment{TVPC*}[1]{%
-\setcounter{TVnbis}{\theTVn}
+\newenvironment{TVPC*}[1]{%
+\setcounter{TVnbis}{\theTVn}
 \setcounter{TVn}{#1}
-\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVPC.user}}%
-{\end{VerbatimOut}\dressetoile{TVPC}}
+\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVPC.user}}%
+{\end{VerbatimOut}\dressetoile{TVPC}}
 
 
 
@@ -2798,14 +2796,14 @@ read("XCasTVPC.user");
 
 %% pour nettoyer les fichiers auxiliaires
 
-\AtEndDocument{\immediate\write18{\cat  queue.mp >> \nomtravail.Tab.mp}
+\AtEndDocument{\immediate\write18{\cat  queue.mp >> \nomtravail.Tab.mp}
                          }
 
 
 
 
 %%
-%% Zi end -> enjoy :)
+%% Zi end -> enjoy :)
 
diff --git a/Master/texmf-dist/doc/latex/tablor/tablor.pdf b/Master/texmf-dist/doc/latex/tablor/tablor.pdf index 2a75ee1a1e6..b4798a99408 100644 Binary files a/Master/texmf-dist/doc/latex/tablor/tablor.pdf and b/Master/texmf-dist/doc/latex/tablor/tablor.pdf differ diff --git a/Master/texmf-dist/doc/latex/tablor/tablor.tex b/Master/texmf-dist/doc/latex/tablor/tablor.tex index 210154ce647..bde15091152 100644 --- a/Master/texmf-dist/doc/latex/tablor/tablor.tex +++ b/Master/texmf-dist/doc/latex/tablor/tablor.tex @@ -4,7 +4,7 @@ \usepackage[T1]{fontenc} \usepackage[french]{babel} \usepackage[upright]{fourier} -\usepackage[xcas]{tablor} +\usepackage{tablor} \usepackage{listings,keystroke} \usepackage{graphicx,bclogo,amssymb,amsbsy,amsfonts,amstext,amscd,amsopn,amsxtra} @@ -80,7 +80,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{21 octobre 2008 - Version 4.02} +\date{07 novembre 2008 - Version 4.02} @@ -277,34 +277,40 @@ pour installer une nouvelle extension \LaTeX{}. les sorties de la compilation \texttt{tex}. Pour \texttt{emacs}, on rajoute en fin de fichier \verb+%%% LaTeX-command: "latex --shell-escape" ***+; pour les autres éditeurs, il faut modifier la commande de compilation. Sinon, on peut modifier le fichier \texttt{texmf.cnf} - pour que le mode soit automatisé en modifiant la ligne suivante~:~\texttt{shell-escape t}; + pour que le mode soit automatisé en modifiant la ligne + suivante~:~\texttt{shell-escape t} mais ce n'est pas recommandé car il + faut activer le shell-escape le moins possible et toujours sous contrôle~; -\item il faut avoir à disposition les extensions \texttt{fancyvrb}, - \texttt{filecontents}, \texttt{ifthen} et \texttt{ifpdf}; -\item pour ceux qui compilent avec \texttt{pdf\LaTeX{}}, il n'y a aucun problème et rien à faire car \texttt{tablor} - contient déjà ce qu'il faut pour s'adapter~: - \verb+\ifpdf \DeclareGraphicsRule{*}{mps}{*}{} \fi+ -\item il faut installer le fichier \texttt{tablor.sty} dans son \texttt{texmf} personnel. Pour ceux - qui ont \texttt{MiKTeX} sous \texttt{windows}, il suffit d'aller le chercher dans les dépôts. Pour les - utilisateurs de \texttt{Unix}, vous devez savoir comment faire... Par commodité, vous pouvez en - profiter pour installer la version \texttt{Unix} de \emph{MiKTeX package manager}. J'ai fait un - petit script pour vous y aider ici : +\begin{figure}[!h] + \begin{Idee}{shell-escape sur KILE} + On peut créer une compilation en allant dans les menus de configuration, l'associer à un raccourci clavier et hop, quand on veut une compil rapide c'est facile. + +On va dans \texttt{configuration>kile>outils>nouvel outil} + +On l'appelle par exemple shellEscape et on le base sur LateX + +Ensuite en commande on met \texttt{latex} (ou \texttt{pdflatex}) +et en option \verb+-shell-escape -interaction=nonstopmode '%source'+ +et on clique sur OK. + +Ensuite on va dans \texttt{configuration>raccourci clavier > rechercher sh}. +On tombe sur shellEscape. On clique sur personnaliser et on choisi un raccourci, par exemple +la touche windows et s (S-s en langage emacs...) + +Et voilà : quand on veut compiler un document appelant tablor, on appuie sur windows+s. + \end{Idee} + \end{figure} - \href{http://gconnan.free.fr/?page=52}{http://gconnan.free.fr/?page=52} -\item il faut installer les fichiers de configuration - \texttt{tablor.cfg} et \texttt{entateMP.cfg} dans le même - répertoire de \texttt{tablor.sty} -\end{itemize} \begin{figure}[!h] - \begin{Idee}{shell-escape} + \begin{Idee}{shell-escape sur TeXnicCenter} Pour les utilisateurs de TeXnicCenter, observez cette \href{http://img221.imageshack.us/img221/27/capture20080114215233hu7.png}{explication} du paramétrage du \texttt{shell-escape}. On peut par exemple mettre~: @@ -330,6 +336,37 @@ et l \end{figure} + + +\item il faut avoir à disposition les extensions \texttt{fancyvrb}, + \texttt{filecontents}, \texttt{ifthen} et \texttt{ifpdf}; + +\item pour ceux qui compilent avec \texttt{pdf\LaTeX{}}, il n'y a aucun problème et rien à faire car \texttt{tablor} + contient déjà ce qu'il faut pour s'adapter~: + \verb+\ifpdf \DeclareGraphicsRule{*}{mps}{*}{} \fi+ + +\item il faut installer le fichier \texttt{tablor.sty} dans son \texttt{texmf} personnel. Pour ceux + qui ont une version récente de \texttt{MiKTeX} ou \texttt{TeXLive}, + \texttt{tablor} est déjà installé. Pour les + utilisateurs de \texttt{Unix}, vous devez savoir comment faire... Par commodité, vous pouvez en + profiter pour installer la version \texttt{Unix} de \emph{MiKTeX package manager}. J'ai fait un + petit script pour vous y aider ici : + + \href{http://gconnan.free.fr/?page=52}{http://gconnan.free.fr/?page=52} + +\item il faut installer les fichiers de configuration + \texttt{tablor.cfg} et \texttt{entateMP.cfg} dans le même + répertoire de \texttt{tablor.sty} + + + +\end{itemize} + + + + + + \begin{figure}[!h] \begin{DANGER}{Conflit d'extensions} L'extension \verb+fancybox+ rentre en conflit avec \verb+fancyvrb+ qu'utilise @@ -450,7 +487,8 @@ etex % III - Déclaration de l'éditeur utilisé % ================================ % -% Remplacez "kile" par la commande qui lance votre éditeur favori. +% Remplacez "kile" par la commande qui lance un autre editeur que +% votre éditeur favori pour afficher les tableaux a modifier. % Laissez une espace avant de fermer l'accolade. \newcommand{\editeur}{kile } @@ -459,10 +497,10 @@ etex %================================= -%IV - 1ère colonne +%IV - 1ere colonne %================================= % -%permet de configurer les termes dans la première colonne des +%permet de configurer les termes dans la premiere colonne des %tableaux : "signe de" ou "sign of" ou "" etc. % @@ -546,7 +584,11 @@ automatiquement par des commandes \texttt{dos}; \item[III] l'éditeur sera appelé dans certains cas pour modifier l'aspect des tableaux dans les fichiers sources \texttt{MetaPOST}. Il faudra choisir un éditeur comme par exemple \texttt{emacs, xemacs, texmaker, vi, winshell, notepad, vim, kate, gedit, - textmate,texshop}, \texttt{kile}, etc. Voir aussi le paragraphe~\ref{modif}; + textmate,texshop}, \texttt{kile}, etc. +Pour éviter certains problèmes, choisissez un autre éditeur que celui +que vous utilisez pour \LaTeX{} afin que la fenêtre s'ouvre sans problème. + +Voir aussi le paragraphe~\ref{modif}; \item[IV] par défaut, on voit apparaître dans la première colonne des tableaux «~signe de ~» ou «~variations de ~». Vous pouvez modifier ces réglages ici comme indiqué; deux exemples sont @@ -1306,7 +1348,14 @@ est affich plupart des éditeurs mais ne sont pas universelles : vérifiez pour celui que vous avez choisi.}. La compilation s'achève alors automatiquement comme pour un environnement non étoilé. - +\begin{figure}[!h] + \begin{DANGER}{Choix de l'éditeur} + Évitez de choisir votre éditeur habituel~:~sur + \texttt{Linux} prenez par exemple \texttt{gedit} ou + \texttt{kate}, sur \texttt{Windows} prenez + \texttt{wordpad}, etc. + \end{DANGER} + \end{figure} @@ -1392,52 +1441,79 @@ dans un fichier \texttt{latex-tempo}: ;;; ;cas tableau de variation ("TV" (& > "\\begin{center}"n> - "\\begin{TV}" n> + "\\begin{TV}" n> "TV(["(p "debut de l'intervalle:")","(p "fin de l'intervalle:")"]," - "["(p "liste de valeurs interdites (,) :")"]," - "\""(p "nom de la fonction :")"\"," - "\""(p "nom de la variable :")"\"," - ""(p "expression de la fonction (utiliser x) :")"," + "["(p "liste de valeurs interdites (,) :")"]," + "\""(p "nom de la fonction :")"\"," + "\""(p "nom de la variable :")"\"," + ""(p "expression de la fonction (utiliser x) :")"," ""(p "type de tableau (1:complet, 0:sans signe, 2:que le signe) :")"," -""(p "trigo ?(t:trigo, n:non trigo) :")"," - "\\tv)" n> - "\\end{TV}" n> - "\\end{center}" > % )) +""(p "trigo ? (t:oui, n:non) :")"," + "\\tv)" n> + "\\end{TV}" n> + "\\end{center}" > % )) ;cas TVI ("TVI" (& > "\\begin{center}"n> - "\\begin{TVI}" n> + "\\begin{TVI}" n> "TVI(["(p "debut de l'intervalle:")","(p "fin de l'intervalle:")"]," - "["(p "liste de valeurs interdites (,) :")"]," - "\""(p "nom de la fonction :")"\"," - "\""(p "nom de la variable :")"\"," - ""(p "expression de la fonction (utiliser x) :")"," + "["(p "liste de valeurs interdites (,) :")"]," + "\""(p "nom de la fonction :")"\"," + "\""(p "nom de la variable :")"\"," + ""(p "expression de la fonction (utiliser x) :")"," ""(p "type de tableau (1:complet, 0:sans signe, 2:que le signe) :")"," -""(p "trigo ?(t:trigo, n:non trigo) :")"," - ""(p "f(x)=l pour la valeur l :")"," - "\\tv)" n> - "\\end{TVI}" n> - "\\end{center}" > % )) +""(p "trigo ? (t:oui, n:non) :")"," + ""(p "f(x)=l pour la valeur l :")"," + "\\tv)" n> + "\\end{TVI}" n> + "\\end{center}" > % )) ;cas signe produit ("TS" (& > "\\begin{center}"n> - "\\begin{TS}" n> - "TS(\""(p "nom du produit :")"\"," + "\\begin{TS}" n> + "TS(\""(p "nom du produit :")"\"," "["(p "liste des facteurs (,) :")"]," "["(p "debut de l'intervalle:")","(p "fin de l'intervalle:")"]," -""(p "trigo ?(t:trigo, n:non trigo) :")"," - "\\tv)" n> - "\\end{TS}" n> - "\\end{center}" > % )) + ""(p "trigo ? (t:oui, n:non) :")"," + "\\tv)" n> + "\\end{TS}" n> + "\\end{center}" > % )) ;cas signe quotient ("TSq" (& > "\\begin{center}"n> - "\\begin{TSq}" n> - "TSq(\""(p "nom du quotient :")"\"," - "["(p "liste des facteurs du numerateur (,) :")"]," - "["(p "liste des facteurs du denominateur (,) :")"]," - "["(p "debut de l'intervalle:")","(p "fin de l'intervalle:")"]," -""(p "trigo ?(t:trigo, n:non trigo) :")"," - "\\tv)" n> - "\\end{TSq}" n> - "\\end{center}" > % )) + "\\begin{TSq}" n> + "TSq(\""(p "nom du quotient :")"\"," + "["(p "liste des facteurs du numerateur (,) :")"]," + "["(p "liste des facteurs du denominateur (,) :")"]," + "["(p "debut de l'intervalle:")","(p "fin de l'intervalle:")"]," + ""(p "trigo ? (t:oui, n:non) :")"," + "\\tv)" n> + "\\end{TSq}" n> + "\\end{center}" > % )) + +; Tableau signe court + ("TSc" (& > "\\begin{center}"n> + "\\begin{TSc}" n> + "TSc("(p "expression :")",""[" +(p "debut de l'intervalle:")"," +(p "fin de l'intervalle:")"],""[" +(p "liste de valeurs interdites (,) :")"],""" +(p "trigo ? (t:oui, n:non) :")"," + "\\tv)" n> + "\\end{TSc}" n> + "\\end{center}" > % )) + + ;cas tableau de variation avec zone interdite + ("TVZ" (& > "\\begin{center}"n> + "\\begin{TV}" n> +"TVZ(["(p "debut de l'intervalle:")","(p "fin de l'intervalle:")"]," + "["(p "liste de valeurs interdites (,) :")"]," + "["(p "liste des zones interdites ([,],[,]) :")"]," + "\""(p "nom de la fonction :")"\"," + "\""(p "nom de la variable :")"\"," + ""(p "expression de la fonction (utiliser x) :")"," +""(p "type de tableau (1:complet, 0:sans signe, 2:que le signe) :")"," +""(p "trigo ? (t:oui, n:non) :")"," + "\\tv)" n> + "\\end{TV}" n> + "\\end{center}" > % )) ;cas TVP ("TVP" (& > "\\begin{center}"n> "\\begin{TVI}" n> @@ -1454,21 +1530,6 @@ dans un fichier \texttt{latex-tempo}: "\\tv)" n> "\\end{TVP}" n> "\\end{center}" > % )) - - ;cas tableau de variation avec zone interdite - ("TVZ" (& > "\\begin{center}"n> - "\\begin{TV}" n> -"TVZ(["(p "debut de l'intervalle:")","(p "fin de l'intervalle:")"]," - "["(p "liste de valeurs interdites (,) :")"]," - "["(p "liste des zones interdites ([,],[,]) :")"]," - "\""(p "nom de la fonction :")"\"," - "\""(p "nom de la variable :")"\"," - ""(p "expression de la fonction (utiliser x) :")"," -""(p "type de tableau (1:complet, 0:sans signe, 2:que le signe) :")"," -""(p "trigo ?(t:trigo, n:non trigo) :")"," - "\\tv)" n> - "\\end{TV}" n> - "\\end{center}" > % )) \end{lstlisting} Merci à \href{http://phil.pham.free.fr/}{Phil Pham}. -- cgit v1.2.3