Fichier mvl.hlp

MVL, UN INTERPRETEUR POUR LE CALCUL DE CERTITUDES ET

PROBABILITES SYMBOLIQUES EN LOGIQUE MULTIVALUEE

1. Introduction

Le programme MVL permet de tester des calculs de certitude et d'opérateurs. Il faut a priori choisir le nombre M nommé taille du problème. Pour cela, soit on tape le mot taille suivi de la valeur voulue soit on fait directement M = la valeur demandée.

Une fois la taille fixée, plusieurs opérateurs sont disponibles, notamment la negation n , l'implication de Lukasiewicz imp , l'addition s , la multiplication i , l'anti-division c . Tous ces opérateurs sont discrets (c'est à dire finis) et sont définis soit par des formules soit par des tables. A partir d'une formule on peut construire une table.

La table d'un opérateur unaire (comme n ) s'obtient par disn et la table d'un opérateur binaire (comme s ) par disp . Ainsi disp i donne la table de I . La commande table reconnait en principe l'arité des opérateurs et doit donc fonctionner quelque soit l'opérateur.

Certains opérateurs peuvent être définis à l'aide d'autres opérateurs. Ainsi on dispose de sfromt , tfromimp , tfroms , cfromi , ifromc. Les opérateurs classiques ( plus , moins , div , mini, maxi ) sont disponibles, comme prem et deuze respectivement définis par prem(x,y) = x et deuze(x,y)=y . Au lieu de commencer à 1, les tables peuvent commencer à une valeur arbitraire spécifiée après le mot baze . Ainsi taille 4 et baze 0 permettent de travailler avec 0 1 2 3 4.

Toutes les commandes entrées peuvent être mises dans un fichier et lues par la commande script [nom de fichier] .

Les commandes prop et propu essaient de trouver les propriétés des opérateurs binaires et unaires.

2. Un exemple de session


   +---------------------------------------------------------------+
   +                                                               +
   +                                                               +
   +   MVL - Evaluateur de calculs en logique multivaluée          +
   +                                                               +
   +   MVL - taille 3                                              +
   +         Vous êtes en taille :    3                            +
   +                                                               +
   +   MVL - baze   1                                              +
   +         Vous êtes en base   :    1                            +
   +                                                               +
   +   MVL - disp   n                                              +
   +                                                               +
   +         Table de  N                                           +
   +                                                               +
   +                  |       1     2     3                        +
   +          ---------------------------------                    +
   +               1  |       3     3     3                        +
   +               2  |       2     2     2                        +
   +               3  |       1     1     1                        +
   +                                                               +
   +   MVL - texdisp   n                                           +
   +                                                               +
   +     Table de l'opérateur  N                                   +
   +                                                               +
   +     \begin{center}                                            +
   +     \begin{tabular}{|c||c|}                                   +
   +     \hline                                                    +
   +     $v_\alpha$ & $\nn(v_\alpha)$ \\ \hline                    +
   +       $1$ & 3 \\ \hline                                       +
   +       $2$ & 2 \\ \hline                                       +
   +       $3$ & 1 \\ \hline                                       +
   +     \end{tabular}                                             +
   +     \end{center} Table de l'opérateur  N                      +
   +                                                               +
   +     \begin{center}                                            +
   +     \begin{tabular}{|c||c|}                                   +
   +     \hline                                                    +
   +     $v_\alpha$ & $\nn(v_\alpha)$ \\ \hline                    +
   +       $1$ & 3 \\ \hline                                       +
   +       $2$ & 2 \\ \hline                                       +
   +       $3$ & 1 \\ \hline                                       +
   +     \end{tabular}                                             +
   +     \end{center}                                              +
   +                                                               +
   +   MVL - muldisp   n                                           +
   +                                                               +
   +     operator(N/1 ,mapping{                                    +
   +     ( tau_1  ) : tau_3                                        +
   +     ( tau_2  ) : tau_2                                        +
   +     ( tau_3  ) : tau_1                                        +
   +     } ).                                                      +
   +                                                               +
   +                                                               +
   +   MVL - cert_1 = 2                                            +
   +                                                               +
   +   MVL - say " on trouve " imp(cert_1, i(3,4) )                +
   +         on trouve 3                                           +
   +                                                               +
   +   MVL - exit                                                  +
   +                                                               +
   +         Au  revoir...                                         +
   +                                                               +
   +                      report to gilles.hunault@univ-angers.fr  +
   +                      for improvements and updates.            +
   +                                                               +
   +---------------------------------------------------------------+

3. Paramètres de lancement

Au lieu de mvl , on peut taper mvl -h pour une aide sur l'utilisation de fichiers scripts. Si les commandes précédentes, à savoir

         taille 3
         baze   1
         disp   n
         cert_1 = 2
         say " on trouve " imp(cert_1, i(3,4) )

sont mises dans le fichier essai.mvl , il est possible de lancer directement l'exécution de ces commandes par mvl essai.mvl ; bien sur, la redirection s'applique pour avoir un fichier des résultats.

Le mot echo (respectivement nocmt ) permet d'afficher chaque ligne du script (resp. chaque ligne qui n'est pas un commentaire) avant de l'exécuter. Comme cela, on a l'instruction et son résultat !

Signalons qu'en fin de fichier-script, le mot session permet de repasser en mode interactif et donc de continuer les calculs effectués par le script.

4. Liste alphabétique des commandes

        aide             aide_longue         baze             c
        calc             cfromi              cmax             cmed
        cmin             comp                compSetSfromT    compTetTfromImp
        compareSCetCS    cxa5                deuz             dfo
        dfou             disn                disp             div
        exit             i                   ifromc           imp
        impLuk           litf                litou            maxi
        mini             moins               n                plus
        prem             prop                propu            quit
        s                script              session          sfromt
        t                taille              texdisn          tfromimp
        tfroms           vmu

    L'instruction SAY LDM affiche la liste des commandes.

5. Compléments

Dans la mesure oú le programme est écrit en REXX et oú chaque instruction clavier est complétement interprétée, on peut passer des commandes au système d'exploitation, que ce soit Dos ou Unix. Il suffit de taper la commande entre apostrophes. Ainsi les lignes
           spec = "a*"
           "ls -al" spec

demandent à Unix d'afficher la liste des fichiers commencant par a . Sous Dos, la seconde ligne serait "dir " spec . La sortie pour Latex des tables se fait par texdisn et texdisp . La sortie pour MultLog des tables se fait par muldisn et muldisp .
  ============================================================================================

     Fin du fichier d'aide (mvl.hlp)

  ============================================================================================