From 6293ae6685fb45a014e52efc131352ba05c2c546 Mon Sep 17 00:00:00 2001 From: "David A. Madore" Date: Fri, 18 Jan 2019 23:06:59 +0100 Subject: Adopt convention of underlining the epsilon symbol in regexps. --- controle-20190205.tex | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'controle-20190205.tex') diff --git a/controle-20190205.tex b/controle-20190205.tex index 39f5c07..41ce6d2 100644 --- a/controle-20190205.tex +++ b/controle-20190205.tex @@ -314,7 +314,7 @@ transition qui en part : \node (S2) at (70bp,-35bp) [draw,circle,state] {$2$}; \node (Sink) at (140bp,0bp) [draw,circle,state] {$\bot$}; \node (SF) at (210bp,0bp) [draw,circle,state,final] {$F$}; -\draw [->] (SI) -- node[auto] {$\varepsilon$} (S0); +\draw [->] (SI) -- node[auto] {$\underline{\varepsilon}$} (S0); \draw [->] (S0) to[out=75,in=180] node[auto,near end] {$a$} (S1); \draw [->] (S0) to[out=285,in=180] node[auto,below] {$b$} (S2); \draw [->] (S1) to[out=270,in=15] node[auto,above] {$b$} (S0); @@ -322,9 +322,9 @@ transition qui en part : \draw [->] (S1) -- node[auto,near end] {$a$} (Sink); \draw [->] (S2) -- node[auto,below,near end] {$b$} (Sink); \draw [->] (Sink) to[loop above] node[auto] {$a|b$} (Sink); -\draw [->] (S1) to[out=15,in=135] node[auto,near end] {$\varepsilon$} (SF); -\draw [->] (S2) to[out=345,in=225] node[auto,near end] {$\varepsilon$} (SF); -\draw [->] (Sink) -- node[auto] {$\varepsilon$} (SF); +\draw [->] (S1) to[out=15,in=135] node[auto,near end] {$\underline{\varepsilon}$} (SF); +\draw [->] (S2) to[out=345,in=225] node[auto,near end] {$\underline{\varepsilon}$} (SF); +\draw [->] (Sink) -- node[auto] {$\underline{\varepsilon}$} (SF); \end{tikzpicture} \end{center} On élimine ensuite l'état $\bot$ : @@ -335,13 +335,13 @@ On élimine ensuite l'état $\bot$ : \node (S1) at (70bp,35bp) [draw,circle,state] {$1$}; \node (S2) at (70bp,-35bp) [draw,circle,state] {$2$}; \node (SF) at (210bp,0bp) [draw,circle,state,final] {$F$}; -\draw [->] (SI) -- node[auto] {$\varepsilon$} (S0); +\draw [->] (SI) -- node[auto] {$\underline{\varepsilon}$} (S0); \draw [->] (S0) to[out=75,in=180] node[auto,near end] {$a$} (S1); \draw [->] (S0) to[out=285,in=180] node[auto,below] {$b$} (S2); \draw [->] (S1) to[out=270,in=15] node[auto,above] {$b$} (S0); \draw [->] (S2) to[out=90,in=345] node[auto] {$a$} (S0); -\draw [->] (S1) to[out=15,in=135] node[auto,near end] {$\varepsilon|a(a|b){*}$} (SF); -\draw [->] (S2) to[out=345,in=225] node[auto,near end] {$\varepsilon|b(a|b){*}$} (SF); +\draw [->] (S1) to[out=15,in=135] node[auto,near end] {$\underline{\varepsilon}|a(a|b){*}$} (SF); +\draw [->] (S2) to[out=345,in=225] node[auto,near end] {$\underline{\varepsilon}|b(a|b){*}$} (SF); \end{tikzpicture} \end{center} Puis les états $1$ et $2$ peuvent être éliminés simultanément : @@ -350,14 +350,14 @@ Puis les états $1$ et $2$ peuvent être éliminés simultanément : \node (SI) at (-70bp,0bp) [draw,circle,state,initial] {$I$}; \node (S0) at (0bp,0bp) [draw,circle,state] {$0$}; \node (SF) at (210bp,0bp) [draw,circle,state,final] {$F$}; -\draw [->] (SI) -- node[auto] {$\varepsilon$} (S0); -\draw [->] (S0) -- node[auto] {$a(\varepsilon|a(a|b){*})|b(\varepsilon|b(a|b){*})$} (SF); +\draw [->] (SI) -- node[auto] {$\underline{\varepsilon}$} (S0); +\draw [->] (S0) -- node[auto] {$a(\underline{\varepsilon}|a(a|b){*})|b(\underline{\varepsilon}|b(a|b){*})$} (SF); \draw [->] (S0) to[loop above] node[auto] {$ab|ba$} (S0); \end{tikzpicture} \end{center} Et l'expression rationnelle finalement obtenue est la suivante : \[ -(ab|ba){*}(a(\varepsilon|a(a|b){*})|b(\varepsilon|b(a|b){*})) +(ab|ba){*}(a(\underline{\varepsilon}|a(a|b){*})|b(\underline{\varepsilon}|b(a|b){*})) \] On pouvait aussi donner, entre autres choses : \[ -- cgit v1.2.3