4.32 Modus ponens on hypothesis

Application du modus ponens

Syntaxe

  mh(H)

avec :

Utilisation

Cette commande permet l’utilisation directe d’une hypothèse de la forme P Q.
Si P Q et P sont des hypothèses et que le but courant est B, alors le but devient Q B.
La commande mh permet d’utiliser une hypothèse en P Q sans passer par le prouveur, c’est à dire sans simplifier l’hypothèse Q générée.
En effet, le prouveur automatique applique systématiquement le modus ponens sur tout couple d’hypothèses P Q et P présent dans la pile des hypothèses.

Si P Q ou P ne sont pas des hypothèses, la commande ne s’applique pas.

Exemple

Soit la situation suivante que l’on a obtenu directement :


 
    Hypothesis  
        ENS = {e1,e2,e3,e4,e5} &  
        zz = e5 => tt = e1 &  
        zz = e5  
    Goal  
        not(e2 = e5)  
 


L’opérateur désire utiliser l’hypothèse zz = e5 => tt = e1 pour générer l’hypothèse tt = e1. Il sait que l’hypothèse zz = e5 existe.
La commande mh s’applique correctement


 
PRI> mh(zz = e5 => tt = e1)  
Starting Modus Ponens on Hypothesis  
 


et le but devient :


 
    Goal  
        tt = e1 =>  not(e2 = e5)  
 
 


La commande pr ou dd permet alors de faire monter cette hypothèse dans la pile.