%% fichier 'symbol.tex' %%Les definitions suivantes permettent de gerer les symboles speciaux, par %%famille. Le premier chiffre hexadecimal designe la classe du symbole, ici %%ordinaire, le second la famille (designee en absolu), ici 8, les %%deux derniers la position du caractere dans la fonte. \mathchardef \aset = "0841 \mathchardef \bset = "0842 \mathchardef \cset = "0843 \mathchardef \dset = "0844 \mathchardef \eset = "0845 \mathchardef \fset = "0846 \mathchardef \gset = "0847 \mathchardef \hset = "0848 \mathchardef \iset = "0849 \mathchardef \jset = "084A \mathchardef \kset = "084B \mathchardef \lset = "084C \mathchardef \mset = "084D \mathchardef \nset = "084E \mathchardef \oset = "084F \mathchardef \pset = "0850 \mathchardef \qset = "0851 \mathchardef \rset = "0852 \mathchardef \sset = "0853 \mathchardef \tset = "0854 \mathchardef \uset = "0855 \mathchardef \vset = "0856 \mathchardef \wset = "0857 \mathchardef \xset = "0858 \mathchardef \yset = "0859 \mathchardef \zset = "085A \mathchardef \subsetneq = "3820 %% symbole d'inclusion stricte \def\zseti {\zset [i]} \def\qseti {\qset [i]} % ========= quelques operateurs mathematiques =========== \def \pgcd {\mathop {\rm pgcd}} \def \arctan {\mathop {\rm Arctan}} \def \cotan {\mathop {\rm cotan}} \def \ch {\mathop {\rm ch} \nolimits } \def \sh {\mathop {\rm sh} \nolimits } \def \th {\mathop {\rm th} \nolimits } \def \arcsin {\mathop {\rm Arcsin}} \def \arccos {\mathop {\rm Arccos}} \def \arg {\mathop {\rm Arg}} \def \Id {\mathop {\rm Id}} \def \id {\mathop {\rm Id}} \def \im {\mathop {\rm Im}} \def \tr {\mathop {\rm Tr} \nolimits } \def \card {\mathop {\rm Card} \nolimits } \def \true {\mathop {\rm true} \nolimits } \def \false {\mathop {\rm false} \nolimits } \def \signe {\mathop {\rm signe}} \def \cov {\mathop {\rm cov}} % =========== les dimensions ==================== \def \rd {\mathop {\rm rd} \nolimits } \def \mm {\mathop {\rm mm} \nolimits } \def \cm {\mathop {\rm cm} \nolimits } \def \dm {\mathop {\rm dm} \nolimits } \def \km {\mathop {\rm km} \nolimits } \def \m {\mathop {\rm m} \nolimits } \def \m {\mathop {\rm h} \nolimits } \def \mn {\mathop {\rm mn} \nolimits } \def \s {\mathop {\rm s} \nolimits } \def \ms {\mathop {\rm ms} \nolimits } \def \g {\mathop {\rm g} \nolimits } \def \kg {\mathop {\rm kg} \nolimits } \def \N {\mathop {\rm N} \nolimits } \def \daN {\mathop {\rm danN} \nolimits } \def \Hz {\mathop {\rm Hz} \nolimits } % ========= caracteres speciaux ==================== \def \bull{% le carre noir \vrule height .9ex width .8ex depth -.1ex} %% la macro suivante pose un problème~: les guillemets sont %% toujours en 10 pts !!! \long \def \og#1\fg{% les guillemets francais \bgroup {\tenwncyr \char 60}~% \ignorespaces #1\unskip ~{\tenwncyr \char 62}% \egroup } %% on redefinit les signes de comparaisons >= et <= pour avoir les %% symboles français \mathchardef\leq="3936 % code hexadécimal 36 de la famille 9, type relation (3) \mathchardef\geq="393E %%\def \brem {\mskip -\medmuskip\mkern5mu %% \mathbin{\rm rem} \penalty900 \mkern5mu \mskip -\medmuskip} %% %%\def \bmodulo {\mskip -\medmuskip\mkern5mu %% \mathbin{\bf mod} \penalty900 \mkern5mu \mskip -\medmuskip} \def\MyCancel#1#2{\ooalign{$\hfil#1\mkern-3.5mu\hbox{\it/}\hfil$\crcr$#1#2$}} \def\notmid{\mathrel{\mathpalette\MyCancel\mid}} %% jp % Symboles utiles dans la description formelle de l'axiomatique de Hoare %% jp % En particulier, crochets encadrant les assertions. Ces crochets s'obtiennent %% jp % en utilisant les crochets ordinaires, apres les avoir actives avec la macro %% jp % \activebracket %% jp %% jp { %% jp \catcode `\[ = \active %% jp \catcode `\] = \active %% jp \gdef [{\ifmmode \lbrack\!\lbrack \else $\lbrack\!\lbrack$\fi } %% jp \gdef ]{\ifmmode \rbrack\!\rbrack \else $\rbrack\!\rbrack$\fi } %% jp } %% jp \def \activebracket {\catcode`\[\active \catcode`\]\active } %% jp \def \normalbracket {\catcode`\[12 \catcode`\]12 }