summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/latex')
-rw-r--r--Master/texmf-dist/doc/latex/gastex/README64
-rw-r--r--Master/texmf-dist/doc/latex/gastex/ex-beamer-gastex.tex107
-rw-r--r--Master/texmf-dist/doc/latex/gastex/ex-gastex.tex469
-rw-r--r--Master/texmf-dist/doc/latex/gastex/gastex-doc.pdfbin0 -> 130953 bytes
-rw-r--r--Master/texmf-dist/doc/latex/gastex/gastex-doc.tex189
5 files changed, 220 insertions, 609 deletions
diff --git a/Master/texmf-dist/doc/latex/gastex/README b/Master/texmf-dist/doc/latex/gastex/README
index 1f14e8cb6d2..193e52ad9f2 100644
--- a/Master/texmf-dist/doc/latex/gastex/README
+++ b/Master/texmf-dist/doc/latex/gastex/README
@@ -7,51 +7,49 @@ automata, nets, diagrams, etc... under the picture environment of LaTeX.
Author:
-------
-Paul Gastin <http://www.lsv.ens-cachan.fr/~gastin>
+Paul Gastin <http://www.lsv.fr/~gastin>
-Copyright: 2006 by Paul Gastin
+Copyright: 2021 by Paul Gastin
----------
This program can be redistributed and/or modified under the terms
-of the LaTeX Project Public License Distributed from CTAN
-archives in directory macros/latex/base/lppl.txt.
+of the LaTeX Project Public License Distributed from CTAN:
+https://www.ctan.org/license/lppl1.3
Installation:
-------------
In order to use gastex you only need two files:
-- gastex.sty which contains the definition of all the LaTeX macros (this file
-could be in your working folder or where other .sty files are).
-- gastex.pro which contains all the postscript procedures (this file could
-be in your working folder but it is best placed where the tex.pro file is).
-
-Usage: latex+dvips(+ps2pdf)
+- gastex.sty which contains the definition of all the LaTeX macros. This file
+could be in your working folder or where other .sty files are, e.g.,
+ .../texmf-dist/tex/latex/gastex/gastex.sty
+ or
+ .../texmf-local/tex/latex/gastex/gastex.sty
+- gastex.pro which contains all the postscript procedures. This file
+could be in your working folder or where other .pro files are, e.g.,
+ .../texmf-dist/dvips/gastex/gastex.pro
+ or
+ .../texmf-local/dvips/gastex/gastex.pro
+
+Usage: latex+dvips(+ps2pdf) filename.tex
------
- Compile the source file with latex (not pdflatex) and generate the ps file
with dvips. One may then use ps2pdf to get a pdf file.
+Usage: pdflatex --shell-escape filename.tex
+------
+- Requires the package auto-pst-pdf.
+
Remarks:
--------
-- gastex mainly generates postscript code so the pictures cannot be seen with a
-dvi-viewer. One has to generate a ps file (latex+dvips) and view it with a
-ps-viewer. One can also generate a pdf file (latex+dvips+ps2pdf) and view
-it with a pdf-viewer.
-- gastex does not work with pdflatex since it produces postscript code
-which cannot be interpreted by a pdf viewer. Instead, one should generate
-the pdf file with latex+dvips+ps2pdf.
-
-Examples:
----------
-- Several examples are provided on the gastex web page at
-http://www.lsv.ens-cachan.fr/~gastin/gastex/gastex.html
-- ex-gastex.tex contains some examples to learn gastex and to test your
-installation.
-- ex-beamer-gastex.tex shows how gastex may be used with beamer in order to
-produce very nice animated slides. You have to compile the file through
-latex-dvips-ps2pdf (not pdflatex).
-
-Documentation:
---------------
-See http://www.lsv.ens-cachan.fr/~gastin/gastex/gastex.html
-The best is to learn with the examples (see above).
-Comments in the file gastex.sty provide documentation for all macros.
+- gastex mainly generates postscript code so the pictures cannot be seen
+with a dvi-viewer. One has to generate a ps file (latex+dvips) or a pdf
+file (latex+dvips+ps2pdf or pdflatex --shell-escape) and view it with a
+ps-viewer or a pdf-viewer.
+
+Documentation and examples:
+---------------------------
+- See http://www.lsv.fr/~gastin/gastex/index.html
+- See also gastex-doc.tex for a quick startup guide on how to use gastex
+with pdflatex and a few examples.
+- Comments in the file gastex.sty also provide documentation for all macros.
Enjoy! \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/gastex/ex-beamer-gastex.tex b/Master/texmf-dist/doc/latex/gastex/ex-beamer-gastex.tex
deleted file mode 100644
index d35ab955a4c..00000000000
--- a/Master/texmf-dist/doc/latex/gastex/ex-beamer-gastex.tex
+++ /dev/null
@@ -1,107 +0,0 @@
-% \documentclass[10pt,mathserif,handout]{beamer}
-\documentclass[10pt,mathserif,display]{beamer}
-\usepackage{gastex}
-\gasset{linewidth=0.21,AHdist=2.1,AHLength=2.25,AHlength=2.1}
-\gasset{ATdist=2.1,ATLength=2.25,ATlength=2.1}
-% \usepackage{beamerthemeEPIT}
-\usepackage{beamerthemeplain}
-
-\beamersetleftmargin{3mm}
-\beamersetrightmargin{3mm}
-\abovedisplayskip=1ex
-\belowdisplayskip=1ex
-\parskip=.5ex
-\parindent=0pt
-
-\newcommand{\Auto}{\mathcal{A}}
-\newcommand{\F}{\mathop{\mathsf{F}\vphantom{a}}\nolimits}
-\newcommand{\G}{\mathop{\mathsf{G}\vphantom{a}}\nolimits}
-\newcommand{\X}{\mathop{\mathsf{X}\vphantom{a}}\nolimits}
-\newcommand{\True}{\top}
-\newcommand{\False}{\bot}
-
-\newcommand{\Blue}[1]{\textcolor{blue}{#1}}
-\newcommand{\Red}[1]{\textcolor{red}{#1}}
-\newcommand{\Green}[1]{\textcolor{PineGreen}{#1}}
-
-\begin{document}
-
-
-%%%%%%%%%%%%%%%%%%%%%%
-\frame{
- \frametitle{Automaton $\Auto_\varphi$}
- \vspace{-7mm}
- \begin{center}\scalebox{0.9}{
- \begin{picture}(130,71)(-12,0)\nullfont
-% \put(-12,0){\framebox(130,71){}}
- \gasset{Nadjust=w,Nadjustdist=2,Nh=8,fillcolor=White,Nfill=y,ilength=7}
- {\only<7-| handout:0>{\gasset{fillcolor=yellow}}
- \node[Nmarks=i](1)(10,45){$\varphi=\G(\neg p\vee\F q)$}}
- \node(2)(10,25){$\neg p\vee\F q, \X\varphi$}\drawedge(1,2){}
- \node(3)(10,05){$\neg p, \X\varphi$}\drawedge(2,3){}
- \node(4)(40,25){$\F q, \X\varphi$}\drawedge(2,4){}
- \node(5)(40,45){$q, \X\varphi$}\drawedge(4,5){}
- \node(6)(40,05){$\X\F q, \X\varphi$}\drawedge(4,6){\Blue{$\F q$}}
-
- \only<2->{
- \only<2| handout:0>{\gasset{linecolor=Red}}
- \drawedge[curvedepth=15](3,1){$\neg p$}
- \drawedge[ELside=r,ELpos=35](5,1){$q$}
- {\only<7-| handout:0>{\gasset{fillcolor=yellow}}
- \node(7)(70,05){$\F q, {\only<3| handout:0>{\color{red}}\varphi}$}}
- \drawedge(6,7){$\True$}
- }
- \only<3->{
- \only<3| handout:0>{\gasset{linecolor=Red}}
- \node(8)(70,25){$\F q,
- {\only<3-4| handout:0>{\color{red}}\neg p\vee\F q},
- {\only<3| handout:0>{\color{red}}\X\varphi}$}
- \drawedge(7,8){}
- }
- \only<4->{
- \only<4| handout:0>{\gasset{linecolor=Red}}
- \node(9)(70,45){${\only<5| handout:0>{\color{red}}\F q},
- {\only<4| handout:0>{\color{red}}\neg p},
- \X\varphi$}
- \drawedge[ELpos=55](8,4){}
- \drawedge(8,9){}
- }
- \only<5->{
- \node(10)(105,25){${\only<5| handout:0>{\color{red}}\X\F q},
- \neg p, \X\varphi$}
- \node(11)(40,65){${\only<5| handout:0>{\color{red}}q},
- \neg p, \X\varphi$}
- \only<5| handout:0>{\gasset{linecolor=Red}}
- \drawedge(9,10){\Blue{$\F q$}}
- \drawedge(9,11){}
- }
- \only<6->{
- \only<6| handout:0>{\gasset{linecolor=Red}}
- \drawedge(10,7){$\neg p$}
- \drawedge[ELside=r](11,1){$\neg p\wedge q$}
- }
- \only<7->{\put(18,18){
-% \drawrect(58,33,100,53)
- \gasset{loopdiam=5,Nw=7,Nh=7}
- \gasset{fillcolor=yellow}
- \node[Nmarks=i,ilength=5](A)(72,40){1}
- \node(B)(92,40){2}
- \drawedge[curvedepth=2,linecolor=blue](A,B){$\True$}
- \drawedge[curvedepth=2](B,A){$q$}
- \only<7>{\drawedge[curvedepth=8](B,A){$\neg p\wedge q$}}
- \drawloop(A){$\neg p\vee q$}
- \drawloop[linecolor=blue](B){$\True$}
- \only<7>{\drawloop[ELpos=75,linecolor=blue,loopangle=0](B){$\neg p$}}
- }}
- \end{picture}}
- \end{center}
-
- \vspace{-2mm}
- \uncover<2->{{\only<2>{\color{red}}
- Transition = check litterals and move forward.}}
-
- \uncover<8->{{\only<8>{\color{red}}
- Simplification}}
-}
-
-\end{document}
diff --git a/Master/texmf-dist/doc/latex/gastex/ex-gastex.tex b/Master/texmf-dist/doc/latex/gastex/ex-gastex.tex
deleted file mode 100644
index 42cbd1155f5..00000000000
--- a/Master/texmf-dist/doc/latex/gastex/ex-gastex.tex
+++ /dev/null
@@ -1,469 +0,0 @@
-%&latex
-\documentclass{article}
-\usepackage[usenames]{color}
-\usepackage{gastex}
-
-\begin{document}
-
-% Peterson automaton
-
-\begin{center}
-\begin{picture}(85,33)(-20,-28)
-% \put(-20,-28){\framebox(85,33){}}
- \gasset{Nadjust=w,Nadjustdist=2,Nh=6,Nmr=1}
- \node[Nmarks=i](A)(0,0){idle}
- \node(B)(50,0){wait}
- \node(C)(50,-20){wait}
- \node[Nmarks=r](D)(0,-20){critical}
-
- \drawedge(A,B){req1:=true}
- \drawedge(B,C){turn:=2}
- \drawedge[syo=-1,eyo=-1](C,D){turn=1?}
- \drawedge[syo=1,eyo=1,ELside=r](C,D){req2=false?}
- \drawedge(D,A){req1:=false}
-\end{picture}
-\end{center}
-
-% Petri Net and offsets
-
-\begin{center}
-\begin{picture}(110,50)(-25,-24)
-% \put(-25,-24){\framebox(110,50){}}
- \node(A)(-20,-7){$\bullet \bullet$}
- \node(B)(-20, 7){$\bullet$}
- \node(C)( 20,-7){}
- \node(D)( 20, 7){}
- \gasset{Nw=.7,Nh=7,Nmr=0,fillgray=0} % black rectangle
- \gasset{ExtNL=y,NLdist=1,NLangle=90} % external label above the node
- \node(Ta)(0, 0){$a$}
- \node(Tb)(0,-20){$b$}
- \node(Tc)(0, 20){$c$}
-
- \gasset{ELdistC=y,ELdist=0}
- \drawedge[ELside=r,eyo=-1](A,Ta){\colorbox{white}{2}}\drawedge[eyo=1](B,Ta){}
- \drawedge[syo=-1](Ta,C){}\drawedge[syo=1](Ta,D){}
- {\gasset{curvedepth=4}\drawedge(C,Tb){}\drawedge(Tb,A){\colorbox{white}{2}}}
- {\gasset{curvedepth=-4}\drawedge(D,Tc){}\drawedge[syo=1](Tc,B){}}
- \drawbpedge[syo=-1,ELpos=70](Tc,-160,15,D,170,20){\colorbox{white}{3}}
-% offsets
- \put(40,-15){\unitlength=1.2mm
- \gasset{Nmr=0,Nfill=y,fillgray=0}
- \node[Nw= 1,Nh=10](B)(0,20){}
- \node[Nw= 1,Nh=10](C)(30,20){}
- \node[Nw=10,Nh= 1](D)(15,0){}
- \drawedge[syo=3,eyo=3,curvedepth=3](B,C){}
- \drawedge[syo=1,eyo=1](B,C){}
- \drawedge[syo=-1,eyo=-1](C,B){}
- \drawbpedge[syo=4,eyo=4](B,165,30,C,15,30){}
- \drawbpedge[syo=-3,exo=-3](B,0,10,D,90,10){}
- \drawbpedge[syo=-3](C,180,10,D,90,10){}
- \drawbpedge[sxo=3,eyo=-5](D,90,10,C,-90,10){}
- \drawloop[sxo=-3,loopdiam=4,loopangle=-90](D){}
- \drawloop[sxo= 3,loopdiam=4,loopangle=-90](D){}
- }
-\end{picture}
-\end{center}
-
-% Diagram
-
-\begin{center}
-\begin{picture}(105,28)(-33,-3)
-% \put(-33,-3){\framebox(105,28){}}
- \gasset{Nframe=n,Nadjust=w,Nh=6,Nmr=0}
- \node(L)(0,20){$\mathcal{L}$}
- \node(F)(30,20){$[F^V\to F]$}
- \node(O1)( 20,0){$(\mathcal{P}(R)^V\to 2^{M\times\mathcal{P}(R)})$}
- \node(O2)(-20,0){$(\mathcal{P}(R)^V\to 2^M)$}
- \node(B1)( 60,0){$(\mathcal{P}(R)^V\to F)$}
-
- \drawedge[ELpos=40](L,F){$[\![ -]\!]$}
- \drawedge(L,O1){$X_F$}
- \drawedge(F,O1){$\chi$}
- \drawedge[ELside=r](L,O2){$X_M$}
- \drawedge[ELpos=55](O1,B1){$\sqcup$}
- \drawedge[ELside=r,ELpos=53](O1,O2){$\mathrm{Re}$}
-\end{picture}
-\end{center}
-
-% and more ...
-
-\begin{center}
-\begin{picture}(120,52)(-35,-37)
-% \put(-35,-37){\framebox(120,52){}}
- \node[Nw=16,linecolor=Yellow,fillcolor=Yellow](A)(-20,0){initial}
- \imark[iangle=200,linecolor=Peach](A)
- \node[Nmr=0,Nw=14,fillgray=0.85,
- dash={1}0](B)( 20,0){\textcolor{RedViolet}{final}}
- \fmark[flength=10,fangle=-30,dash={3 1 1 1}0](B)
- \node[Nadjust=wh,Nadjustdist=2,Nmr=3,Nmarks=r,linecolor=Green](C)(60,-20){$\left(
- \begin{array}{ccc}
- 2 & 1 & 0 \\
- -1 & 0 & 1 \\
- 0 & -1 & 2
- \end{array}
- \right)$}
- \rmark[linecolor=Green,rdist=1.4](C)
-
- \drawedge[curvedepth=5,linecolor=Red](A,B){\textcolor{Cyan}{curved}}
- \drawedge[ELside=r,ELpos=35](A,B){straight}
- \drawedge[curvedepth=-25,ELside=r,dash={1.5}0](A,B){far}
- \drawloop[ELpos=75, loopangle=150, dash={0.2 0.5}0](A){loopCW}
- \drawloop[loopCW=n,ELside=r,loopangle=30,dash={3 1.5}{1.5}](B){loopCCW}
- \drawqbpedge[ELside=r,ELdist=0,dash={4 1 1 1}0](B,-90,C,180){qbpedge}
- \drawloop[ELpos=70,loopangle=0](C){$b / 01$}
- \drawloop[loopCW=n,ELpos=75,ELside=r,loopangle=-90,sxo=6](C){$a / 01$}
- \drawloop[ELpos=75,loopangle=-90,sxo=-6](C){$b / 10 $}
- \drawloop[loopangle=50](C){$b / 01$}
- \drawloop[ELpos=75,loopangle=148](C){$b / 01$}
-\end{picture}
-\end{center}
-
-% Edges
-
-\begin{center}
-\begin{picture}(120,60)(-32,-14)
-% \put(-32,-14){\framebox(120,60){}}
- \node(A)(10,0){}\node(B)(40,0){}
- \drawedge(A,B){straight}
- \drawedge[curvedepth=8](A,B){positive curve depth}
- \drawedge[curvedepth=-8,ELside=r](A,B){negative curve depth}
- \drawloop[loopangle=180](A){180}
- \drawloop[loopangle=0](B){0}
-
- \node(A)(-15,30){}\node(B)(15,30){}
- \drawqbedge(A,-15,50,B){qbedge}
- \drawbcedge(A,-20,10,B,20,10){bcedge}
- \drawloop[loopangle=210](A){210}
- \drawloop[loopangle=90,loopCW=n,ELside=r](B){90}
-
- \node(A)(40,30){}\node(B)(70,30){}
- \drawbpedge[ELpos=30,ELdist=0](A,45,20,B,225,20){bpedge}
- \drawbpedge[ELpos=30,ELside=r](A,210,30,B,-30,30){30}
- \drawbpedge[ELpos=70,ELside=r](A,210,30,B,-30,30){70}
- \drawloop[loopdiam=5,loopangle=120,ELpos=60](A){smaller}
- \drawloop[loopdiam=10,loopangle=30,ELpos=30](B){larger}
-\end{picture}
-\end{center}
-
-% Nodes, colors, etc...
-
-\begin{center}
-\begin{picture}(105,70)(-15,-65)
-% \put(-15,-65){\framebox(105,70){}}
- \node[Nmarks=if](A)(0,0){1}
- \node[Nw=15,Nh=6,Nmr=0](A)(25,0){rectangle}
- \node[Nw=12,Nh=6,Nmr=3](A)(50,0){oval}
-
- \node(B)(0,-15){Nadjust=n}
- \node[Nadjust=w,Nmr=2](B)(25,-15){Nadjust=w}
- \node[Nadjust=wh,Nmr=1](B)(50,-15){Nadjust=wh}
-
- \gasset{Nadjust=w,Nadjustdist=3}
- \node[Nmarks=i,iangle=210,ilength=5](C)(0,-30){imark}
- \imark[iangle=150,ilength=10,linecolor=Red](C)
- \node[Nmarks=f,fangle=30,flength=5,linecolor=Green](C)(25,-30){fmark}
- \fmark[fangle=-30,flength=10,linecolor=Blue](C)
- \node(C)(50,-30){rmark}
- \rmark[linecolor=Red](C)\rmark[rdist=1.4,linecolor=Green](C)
- \node[Nmarks=ifr](C)(75,-30){all}
-
- \node(D)(0,-45){framed}
- \node[Nframe=n,fillcolor=Yellow](D)(25,-45){filled}
- \node[fillcolor=Yellow](D)(50,-45){both}
- \node[fillcolor=Yellow,
- linecolor=Green](D)(75,-45){\textcolor{RedViolet}{RedViolet}}
-
- \node[linewidth=0.5](E)(0,-60){Thick}
- \node[linewidth=1,linegray=0.8](E)(25,-60){Gray}
- \node[dash={1.5}0](E)(50,-60){Dash}
- \node[dash={4 1 1 1}0,linecolor=Red](E)(75,-60){More dash}
-\end{picture}
-\end{center}
-
-% Arrows
-
-\begin{center}\unitlength=0.85mm
-\begin{picture}(60,40)(-30,-17)
-% \put(-30,-17){\framebox(60,40){}}
- \drawline[AHangle=30,AHLength=3,AHlength=0,
- ATnb=1,ATangle=90,ATLength=2,ATlength=0](-15,20)(15,20)
- \drawline[AHnb=2,ATnb=2](-15,15)(15,15)
- \drawline[AHnb=2,AHangle=30,AHLength=3,AHlength=0,AHdist=1,
- ATnb=2,ATangle=30,ATLength=3,ATlength=0,ATdist=1](-15,10)(15,10)
- \drawline[AHnb=1,AHangle=30,AHLength=3,AHlength=1,
- ATnb=1,ATangle=140,ATLength=3,ATlength=1.5](-15,5)(15,5)
- \drawline[AHnb=2,AHangle=30,AHLength=3,AHlength=0,AHdist=1,
- ATnb=2,ATangle=150,ATLength=3,ATlength=0,ATdist=1](-15,0)(15,0)
- \node(A)(-15,-10){}\node(B)( 15,-10){}
- \drawbpedge[AHnb=6,ATnb=6](A,60,25,B,240,25){}
- \gasset{AHnb=1,AHangle=30,AHLength=3,AHlength=0,
- ATnb=1,ATangle=30,ATLength=3,ATlength=0}
- \drawloop[loopangle=180](A){}
- \gasset{AHnb=3,AHangle=30,AHLength=3,AHlength=1.5,AHdist=1.8,
- ATnb=3,ATangle=30,ATLength=3,ATlength=1.5,ATdist=1.8}
- \drawloop[loopangle=0](B){}
-\end{picture}
-% \end{center}
-%
-% % Node label
-%
-% \begin{center}
-\begin{picture}(80,40)(-20,-20)
-% \put(-20,-20){\framebox(80,40){}}
- \node[Nh=30,Nw=30,Nmr=15](D)(0,0){}
- \gasset{ExtNL=y,NLdist=1,AHnb=0,ilength=-2}
- \nodelabel[NLangle= 0](D){3} \imark[iangle= 0](D)
- \nodelabel[NLangle= 30](D){2} \imark[iangle= 30](D)
- \nodelabel[NLangle= 60](D){1} \imark[iangle= 60](D)
- \nodelabel[NLangle= 90](D){12} \imark[iangle= 90](D)
- \nodelabel[NLangle=120](D){11} \imark[iangle=120](D)
- \nodelabel[NLangle=150](D){10} \imark[iangle=150](D)
- \nodelabel[NLangle=180](D){9} \imark[iangle=180](D)
- \nodelabel[NLangle=210](D){8} \imark[iangle=210](D)
- \nodelabel[NLangle=240](D){7} \imark[iangle=240](D)
- \nodelabel[NLangle=270](D){6} \imark[iangle=270](D)
- \nodelabel[NLangle=300](D){5} \imark[iangle=300](D)
- \nodelabel[NLangle=330](D){4} \imark[iangle=330](D)
-
- \node[Nh=30,Nw=30,Nmr=15](B)(40,0){}
- \gasset{ExtNL=n,NLdist=13}
- \nodelabel[NLangle= 0](B){3}
- \nodelabel[NLangle= 30](B){2}
- \nodelabel[NLangle= 60](B){1}
- \nodelabel[NLangle= 90](B){12}
- \nodelabel[NLangle=120](B){11}
- \nodelabel[NLangle=150](B){10}
- \nodelabel[NLangle=180](B){9}
- \nodelabel[NLangle=210](B){8}
- \nodelabel[NLangle=240](B){7}
- \nodelabel[NLangle=270](B){6}
- \nodelabel[NLangle=300](B){5}
- \nodelabel[NLangle=330](B){4}
-\end{picture}
-\end{center}
-
-% Nodes whose shape is a regular polygon
-
-\begin{center}
-\begin{picture}(120,30)(0,0)
-% \put(0,0){\framebox(120,30){}}
- \rpnode[polyangle=90,Nmarks=i,iangle=-90](A)(5,14)(3,5){A}
- \rpnode[arcradius=2,Nmarks=r](B)(35,17)(6,10){B}
- \nodelabel[ExtNL=y,NLangle=30,NLdist=0.5](B){B}
- \nodelabel[ExtNL=y,NLangle=60,NLdist=0.5](B){B}
- \rpnode[arcradius=2,polyangle=90](C)(70,12)(5,7){C}
- \imark[iangle=198](C)\fmark[fangle=18](C)
- \rpnode[Nmarks=fr,fangle=45](D)(105,15)(4,7){D}
- \drawloop(A){$a$}
- \drawloop[loopangle=90](C){$c$}
- \drawloop[loopangle=-45](D){$d$}
- \drawedge(A,B){$x$}
- \drawbpedge(B,-30,30,C,140,30){$y$}
- \drawqbpedge(C,37,D,83){$z$}
- \drawedge[curvedepth=14,ELside=r](D,A){}
-\end{picture}
-\end{center}
-
-% polygons and closed curves
-
-\begin{center}
-\begin{picture}(120,40)(0,0)
-% \put(0,0){\framebox(120,40){}}
- \put(3,3){
- \unitlength=8mm
- \drawpolygon[fillcolor=Green,Nframe=n,arcradius=.3](0,0)(0,2)(1,3)(0,4)(2,4)(2,2)(4,0)(2,0)(1,1)
- \drawpolygon(0,0)(0,2)(1,3)(0,4)(2,4)(2,2)(4,0)(2,0)(1,1)
- \drawccurve[linecolor=Red](0,0)(0,2)(1,3)(0,4)(2,4)(2,2)(4,0)(2,0)(1,1)
- }
- \put(55,20){
- \unitlength=1.4mm
- \drawpolygon[fillcolor=Green,Nframe=n,arcradius=2](-10,-10)(10,10)(-10,10)(10,-10)
- \drawpolygon(-10,-10)(10,10)(-10,10)(10,-10)
- \drawccurve[linecolor=Red](-10,-10)(10,10)(-10,10)(10,-10)
- }
- \put(100,19){
- \unitlength=20mm
- \drawccurve[fillcolor=Yellow,linecolor=Red](0,1)(0.59,-0.8)(-0.95,0.3)(0.95,0.3)(-0.59,-0.8)
- \drawpolygon(0,1)(0.59,-0.8)(-0.95,0.3)(0.95,0.3)(-0.59,-0.8)
- }
-\end{picture}
-\end{center}
-
-% curves
-
-\begin{center}
-\begin{picture}(120,40)(0,0)
-% \put(0,0){\framebox(120,40){}}
- \put(2,3){
- \unitlength=8mm
- \drawline[AHnb=0](0,0)(0,2)(1,3)(0,4)(2,4)(2,2)(4,0)(2,0)(1,1)
- \drawcurve[linecolor=Red,AHnb=0](0,0)(0,2)(1,3)(0,4)(2,4)(2,2)(4,0)(2,0)(1,1)
- }
- \put(55,16){
- \unitlength=1.5mm
- \drawline[AHnb=0](-10,-10)(10,10)(-10,10)(10,-10)
- \drawcurve[linecolor=Red,ATnb=3,AHnb=4](-10,-10)(10,10)(-10,10)(10,-10)
- }
- \put(100,19){
- \unitlength=20mm
- \drawline[AHnb=0](0.95,0.3)(-0.59,-0.8)(0,1)(0.59,-0.8)(-0.95,0.3)
- \drawcurve[linecolor=Red](0.95,0.3)(-0.59,-0.8)(0,1)(0.59,-0.8)(-0.95,0.3)
- }
-\end{picture}
-\end{center}
-
-% Various macros
-
-\begin{center}
-\begin{picture}(120,60)(-60,-30)
-% \put(-60,-30){\framebox(120,60){}}
- \drawline(-60,0)(60,0)
- \drawline(0,-30)(0,30)
- \drawrpolygon[polyangle=90,fillcolor=Blue](-9,5)(3,8)
- \drawrpolygon(-9,22)(8,7)
- \drawrpolygon(-9,22)(8,6)
- \drawrpolygon(-9,22)(8,5)
- \drawrpolygon[polyangle=18,arcradius=5](-27,7)(5,7)
- \drawrpolygon[fillcolor=Green](-27,23)(4,7)
- \put(-48,15){
- \unitlength=14mm
- \gasset{Nfill=y,fillcolor=Yellow,Nframe=y,arcradius=.1}
- \drawpolygon(0,1)(0.59,-0.8)(-0.95,0.3)(0.95,0.3)(-0.59,-0.8)
- }
- \drawline[AHLength=4,AHlength=0,AHangle=30,linewidth=.8](5,25)(15,15)(5,15)(15,5)
- \drawline[AHLength=4,AHlength=0,AHangle=30,linecolor=White](5,25)(15,15)(5,15)(15,5)
- \drawline[arcradius=1](17,25)(27,15)(17,15)(27,5)
- \drawline[linecolor=Red](30,10)(50,20)(25,25)(55,5)
- \drawline[AHLength=4,AHlength=0,AHangle=30,linewidth=.3](10,28)(35,28)
- \drawline[AHnb=0,linewidth=.9](10,28)(34.5,28)
- \drawline[AHnb=0,linewidth=.2,linecolor=White](10,28)(34.5,28)
- \drawcbezier[ATnb=1](-50,-5,-30,-5,-30,-25,-10,-25)
- \drawcbezier[AHnb=0,dash={1.5}0](-50,-25,-30,-25,-30,-5,-10,-5)
- \drawqbezier(31,-20,50,-20,50,-1)
- \drawqbezier[AHnb=0,linecolor=Green](31,-20,31,-1,50,-1)
- \drawcircle[Nfill=y,fillcolor=Yellow](40,-25,10)
- \drawrect[Nfill=y,fillcolor=Yellow,dash={1.5}0](5,-5,25,-15)
- \drawoval(15,-25,20,10,3)
-\end{picture}
-\end{center}
-
-% Tricks: multiput and variables
-
-\begin{center}
- \unitlength=0.7mm
-\begin{picture}(60,46)(0,-3)
-% \put(0,-3){\framebox(60,46){}}
- {\gasset{AHnb=0}
- \drawline(0,0)(60,0)
- \drawline(0,20)(60,20)
- \drawline(0,40)(60,40)}
- \gasset{Nw=1.5,Nh=1.5,Nframe=n,Nfill=y}
- \multiput(0,0)(10,0){5}{%
- \node(A)(0,0){}\node(B)(5,20){}
- \drawedge(A,B){}
- }
- \multiput(10,20)(10,0){5}{%
- \node(A)(0,0){}\node(B)(5,20){}
- \drawedge(A,B){}
- }
-\end{picture}
- \qquad
- \unitlength=1mm
-\begin{picture}(50,30)(-5,0)
-% \put(-5,0){\framebox(50,30){}}
- \def\ax{5}\def\ay{5}\def\bx{35}\def\by{25}%
- \node(a)(\ax,\ay){$a$}\node(b)(\bx,\by){$b$}
- \drawedge(a,b){}
- \drawloop[loopdiam=6,loopangle=180](a){}
- \drawloop[loopdiam=6,loopangle=0](b){}
-
- \def\ax{5}\def\ay{25}\def\bx{35}\def\by{5}%
- \node(a)(\ax,\ay){$a$}\node(b)(\bx,\by){$b$}
- \drawedge(a,b){}
- \drawloop[loopdiam=6,loopangle=180](a){}
- \drawloop[loopdiam=6,loopangle=0](b){}
-\end{picture}
-\end{center}
-
-% Compatibility with gastex 1.0
-
-\begin{center}\compatiblegastexun
-\begin{picture}(80,55)(-20,-15)
-\thinlines
-\put(-20,-15){\framebox(80,55){}}
-
-\letstate A=(0,0) \drawinitialstate(A){1}\drawfinalstate[b](A){}
-\letstate B=(20,0) \drawrepeatedstate(B){2}
-\letstate C=(40,0) \drawfinalstate(C){3}
-\letstate D=(0,20) \drawrepeatedstate(D){4}
-\letstate E=(20,18) \drawstate(E){5}
-\letstate[8,6] F=(40,20) \drawrepeatedstate(F){6}
-
-\drawloop[b](B){$A,a,\alpha$} \drawloop[l](D){$A,\varepsilon$}
-{ \setpsdash(1) \drawloop(E){$B,b,\beta$} }
-\drawloop[r](F){$B,\varepsilon$}
-
-\drawtrans[r](A,B){$D,d,\delta$} \drawtrans[r](B,C){$D,\varepsilon$}
-{ \settransdecal{1}
- \drawtrans(C,F){$F,f,\varphi$} \drawtrans(F,C){$G,g,\gamma$} }
-\drawtrans(B,E){$\varepsilon$} \drawtrans(E,F){$E,\varepsilon$}
-{ \setprofcurve{0} \drawcurvedtrans[r](E,D){$F,\varepsilon$} }
-
-\drawcurvedtrans(A,D){$C,c,\gamma$}
-{ \setpsdash(3) \drawcurvedtrans(D,A){$C,\varepsilon$} }
-{ \setprofcurve{-15} \drawcurvedtrans[r](F,D){$G_1,g_1,\gamma_1$} }
-\end{picture}
-\end{center}
-
-\begin{center}\compatiblegastexun
-\unitlength=1mm
-\begin{picture}(90,30)(-5,-16)
-\thinlines
-\put(-5,-16){\framebox(90,30){}}
-
-\setvertexdiam{6}
-\letvertex A=(0,0) \drawcircledvertex(A){$a$}
-\letvertex B=(20,0) \drawvertex(B){$b$}
-\letvertex[9] C=(40,0) \drawcircledvertex(C){$c$}
-\letvertex D=(60,0) \drawcircledvertex(D){$d$}
-\letvertex E=(80,0) \drawcircledvertex(E){$e$}
-
-\drawundirectededge(A,B){7}
-\drawundirectededge(B,C){-11}
-\drawundirectededge(C,D){13}
-\drawundirectededge(D,E){2}
-
-\setprofcurve{10}
-\drawundirectedcurvededge(A,C){3}
-\drawundirectedcurvededge(C,E){8}
-\setprofcurve{-10}
-\drawundirectedcurvededge[r](B,D){-5}
-
-\drawundirectedloop[b](A){17}
-\end{picture}
-\end{center}
-
-% Compatibility with pspictpg
-\begin{center}\compatiblepspictpg
-\begin{picture}(80,80)(-40,-40)
-% \put(-40,-40){\framebox(80,80){}}
- \drawvector(-40,0)(40,0)
- \drawvector(0,-40)(0,40)
- \drawline(-30,-30)(30,30)
- \cbeziervector(-30,-20)(-30,0)(-10,0)(-10,20)
- {\setpsdash(3)\cbezier(-30,20)(-30,0)(-10,0)(-10,-20)}
- \qbeziervector(1,-20)(20,-20)(20,-1)
- \qbezier(1,-20)(1,-1)(20,-1)
- \drawcircle(10,30)(10)
- \put(-20,-30){\circle{10}}
- \put(25,5){\line(1,3){8}}
- \put(25,5){\vector(1,2){8}}
- \setpsgray{0.5}
- \drawdisk(-30,30)(10)
- \put(20,-30){\circle*{10}}
-\end{picture}
-\end{center}
-
-\end{document}
-
-
diff --git a/Master/texmf-dist/doc/latex/gastex/gastex-doc.pdf b/Master/texmf-dist/doc/latex/gastex/gastex-doc.pdf
new file mode 100644
index 00000000000..c331528fcf9
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/gastex/gastex-doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/gastex/gastex-doc.tex b/Master/texmf-dist/doc/latex/gastex/gastex-doc.tex
new file mode 100644
index 00000000000..712f98f22ee
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/gastex/gastex-doc.tex
@@ -0,0 +1,189 @@
+\documentclass[12pt]{article}
+\usepackage{url,xspace}
+\usepackage[a4paper,text={16cm,22.7cm},centering]{geometry}
+
+\usepackage[pdflatex,recompilepics=true]{gastex}
+\gasset{frame=false,Nw=6,Nh=6,loopdiam=5}
+
+\parindent=0pt
+\parskip=1.5ex
+
+\newcommand\GasTeX{\textsf{GasTeX}\xspace}
+\newcommand{\leftend}{{\vdash}}
+\newcommand{\rightend}{{\dashv}}
+
+\title{\GasTeX: Graphs and Automata Simplified in \TeX}
+\author{Paul Gastin \\[1ex]
+ LMF, ENS Paris-Saclay \\
+ {\small\texttt{paul.gastin@ens-paris-saclay.fr}}}
+\date{v3.0}
+\begin{document}
+\maketitle
+\begin{abstract}
+ This is a very minimal startup guide including some examples.
+\end{abstract}
+
+\begin{gpicture}[name=gpic:LR-concat,ignore]
+ \gasset{Nframe=n}
+ \node(ui)(15,3){$u$}
+ \node(ui+1)(45,3){$v$}
+ \gasset{AHnb=0}
+ \drawline(0,2)(0,-31)
+ \drawline(30,2)(30,-31)
+ \drawline(60,2)(60,-31)
+ \gasset{AHnb=1,arcradius=0.8}
+ \drawline(0,-1)(20,-1)(20,-3)(5,-3)(5,-5)(30,-5)
+ \node(x0)(23,-2){$\rho_0$}
+ \drawline[linecolor=red](30,-5)(50,-5)(50,-7)(35,-7)(35,-9)(45,-9)(45,-11)(30,-11)
+ \node(x0)(53,-6){\color{red}$\rho_1$}
+ \drawline[linecolor=red](30,-11)(20,-11)(20,-13)(25,-13)(25,-15)(18,-15)(18,-17)(30,-17)
+ \node(x1)(17,-12){\color{red}$\rho_2$}
+ \drawline[linecolor=red](30,-17)(40,-17)(40,-19)(30,-19)
+ \node(x2)(43,-18){\color{red}$\rho_3$}
+ \drawline[linecolor=red](30,-19)(15,-19)(15,-21)(22,-21)(22,-23)(10,-23)(10,-25)(30,-25)
+ \node(x3)(12,-20){\color{red}$\rho_4$}
+ \drawline(30,-25)(50,-25)(50,-27)(40,-27)(40,-29)(60,-29)
+ \node(x2)(53,-26){$\rho_5$}
+ \gasset{Nw=1.6,Nh=1.6,Nfill=y,ExtNL=y,NLdist=.7}
+ \node[NLangle=45](p)(0,-1){$p$}
+ \node[fillcolor=red,NLangle=45](p1)(30,-5){\color{red}$p_1$}
+ \node[fillcolor=red,NLangle=135](p2)(30,-11){\color{red}$p_2$}
+ \node[fillcolor=red,NLangle=45](p3)(30,-17){\color{red}$p_3$}
+ \node[fillcolor=red,NLangle=-135](p4)(30,-19){\color{red}$p_4$}
+ \node[fillcolor=red,NLangle=45](p5)(30,-25){\color{red}$p_5$}
+ \node[NLangle=0](q)(60,-29){$q$}
+\end{gpicture}
+\begin{gpicture}[name=gpic:LL-concat,ignore]
+ \gasset{Nframe=n}
+ \node(ui)(15,3){$u$}
+ \node(ui+1)(45,3){$v$}
+ \gasset{AHnb=0}
+ \drawline(0,2)(0,-31)
+ \drawline(30,2)(30,-31)
+ \drawline(60,2)(60,-31)
+ \gasset{AHnb=1,arcradius=0.8}
+ \drawline(0,-1)(20,-1)(20,-3)(5,-3)(5,-5)(30,-5)
+ \node(x0)(23,-2){$\rho_0$}
+ \drawline[linecolor=red](30,-5)(50,-5)(50,-7)(35,-7)(35,-9)(45,-9)(45,-11)(30,-11)
+ \node(x0)(53,-6){\color{red}$\rho_1$}
+ \drawline[linecolor=red](30,-11)(20,-11)(20,-13)(25,-13)(25,-15)(18,-15)(18,-17)(30,-17)
+ \node(x1)(17,-12){\color{red}$\rho_2$}
+ \drawline[linecolor=red](30,-17)(40,-17)(40,-19)(30,-19)
+ \node(x2)(43,-18){\color{red}$\rho_3$}
+ \drawline[linecolor=black](30,-19)(15,-19)(15,-21)(22,-21)(22,-23)(10,-23)(10,-25)(15,-25)
+ (15,-27)(0,-27)
+ \node(x3)(12,-20){\color{black}$\rho_4$}
+ \gasset{Nw=1.6,Nh=1.6,Nfill=y,ExtNL=y,NLdist=.7}
+ \node[NLangle=45](p)(0,-1){$p$}
+ \node[fillcolor=red,NLangle=45](p1)(30,-5){\color{red}$p_1$}
+ \node[fillcolor=red,NLangle=135](p2)(30,-11){\color{red}$p_2$}
+ \node[fillcolor=red,NLangle=45](p3)(30,-17){\color{red}$p_3$}
+ \node[fillcolor=red,NLangle=-135](p4)(30,-19){\color{red}$p_4$}
+ \node[NLangle=180](q)(0,-27){$q$}
+\end{gpicture}
+
+
+For the documentation, please see
+\url{http://www.lsv.fr/~gastin/gastex/index.html}.
+
+The package consists of two files \verb|gastex.sty| and \verb|gastex.pro|.
+\begin{itemize}
+ \item \verb|gastex.sty| contains the definition of all \GasTeX macros.
+ This file could be in your working folder but it is best placed where \verb|.sty| files are, e.g.,
+
+ \verb|.../texmf-dist/tex/latex/gastex/gastex.sty| \\
+ or \\
+ \verb|.../texmf-local/tex/latex/gastex/gastex.sty|
+
+ \item \verb|gastex.pro| which contains all the postscript procedures used to actually draw the pictures.
+ This file could be in your working folder but it is best placed where \verb|.pro| files are, e.g.,
+
+ \verb|.../texmf-dist/dvips/gastex/gastex.pro| \\
+ or \\
+ \verb|.../texmf-local/dvips/gastex/gastex.pro|
+\end{itemize}
+
+This documentation file simply contains a few simple examples on how to make figures with
+\GasTeX. It should be compiled with
+\begin{quote}
+ \verb|pdflatex --shell-escape gastex-doc.tex| \\
+ or \\
+ \verb|pdflatex --enable-write18 gastex-doc.tex|
+\end{quote}
+
+The first example below is a 2-way deterministic finite state transducer. It consists of
+a \verb|gpicture| environment which contains the \GasTeX commands for nodes and
+transitions.
+
+\begin{center}
+ \begin{gpicture}[name=gpic:2DFT]
+ \gasset{Nframe=y,Nw=8,Nh=8,loopdiam=6}
+ \unitlength=2.8mm
+ \node[Nmarks=i](0)(0,0){$q_0$}
+ \node(1)(10,0){$q_1$}
+ \node[Nmarks=r](2)(20,0){$q_2$}
+ \node(6)(30,0){$q_3$}
+ \node(3)(30,-8){$q_4$}
+ \node(4)(20,-8){$q_5$}
+ \node(5)(10,-8){$q_6$}
+
+ \drawloop(0){$\leftend/\varepsilon,+1$}
+ \drawloop(1){$a/\varepsilon,+1$}
+ \drawloop(2){$\rightend/\varepsilon,+1$}
+ \drawloop(6){$a/\varepsilon,+1$}
+ \drawloop[loopangle=-90](3){$a/a,-1$}
+ \drawloop[loopangle=-90](4){$a/b,-1$}
+ \drawloop[loopangle=-90](5){$a/\varepsilon,+1$}
+
+ \drawedge(0,1){$b/\varepsilon,+1$}
+ \drawedge(1,2){$b/\varepsilon,+1$}
+ \drawedge[ELpos=25,ELdist=0,ELside=r](2,3){$b/\varepsilon,-1$}
+ \drawedge[ELpos=50](6,3){$b/\varepsilon,-1$}
+ \drawedge[ELside=l](3,4){$b/\varepsilon,-1$}
+ \drawedge[ELpos=50](4,5){$b/\varepsilon,+1$}
+ \drawedge[ELpos=50](5,1){$b/\varepsilon,+1$}
+ \drawedge(2,6){$a/\varepsilon,+1$}
+ \end{gpicture}
+\end{center}
+
+The second one is in Figure~\ref{fig:LR-concat}. The pictures have been defined at the
+beginning of the \LaTeX\ document, with the \verb|name| and \verb|ignore| optional
+parameters given to the \verb|gpicture| environment. These pictures are generated but not
+inserted immediately. Instead, the \verb|\gusepicture| command allows to include each
+named picture, possibly multiple times at different places.
+
+All pictures defined in \verb|gpicture| environments are compiled and stored in a file
+called \verb|filename-pics.pdf|, one picture per page. These pictures could be included
+in any \LaTeX\ file, possibly another \LaTeX\ file which need not use the \GasTeX package,
+simply by using \verb|\includegraphics| as follows:
+\begin{quote}
+ \verb|\includegraphics[page=2,scale=0.6]{gastex-doc-pics.pdf}|
+
+ \includegraphics[page=2,scale=0.6]{gastex-doc-pics.pdf}
+\end{quote}
+This is convenient for instance when sending the \LaTeX\ file to \verb|Arxiv| or to an
+editor (journal, proceedings) which does not allow the \verb|--shell-escape| option when
+compiling with \verb|pdflatex|. Actually, \GasTeX does this automatically for you. When
+loading the package, set the \verb|recompilepics| option to \verb|false| as follows:
+\begin{quote}
+ \verb|\usepackage[pdflatex,recompilepics=false]{gastex}|
+\end{quote}
+then you may compile without the \verb|--shell-escape| option
+\begin{quote}
+ \verb|pdflatex gastex-doc.tex|
+\end{quote}
+and \GasTeX automatically calls \verb|\includegraphics| to include the pictures that have
+been previously generated and stored in the file \verb|gastex-doc-pics.pdf|.
+
+\begin{figure}[b]
+ \centering
+ \gusepicture{gpic:LR-concat}
+ \hfill
+ \gusepicture{gpic:LL-concat}
+ \caption{Decomposition of a left-right run and a left-left run over the product $w=uv$.}
+ \label{fig:LR-concat}
+\end{figure}
+
+
+\end{document}
+