| maison  | Hardware  | réseaux  | programmation  | Logiciel  | Dépannage  | systèmes |  
programmation  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    Connaissances Informatiques >> programmation >> Computer Programming Languages >> Content
    Types de clauses de Horn en Prolog
    Prolog ( Programmation en Logique ) a été développé en France pour la création de traducteurs en langage naturel . Il a été perfectionné en Ecosse pour écrire démonstrateurs de théorèmes des mathématiques et logiques. Il est venu à l'attention internationale quand il a été choisi pour le projet japonais " cinquième génération " . Programmes Prolog se composent d'une liste soigneusement ordonnée de règles (écrites les clauses Horn) . L'utilisateur pose une question et les programmes réponses - en termes de règles. C'est un paradigme remarquablement utile . La Corne de clauses

    clauses de Horn standard ont été inventés en 1951 par le mathématicien américain Alfred Horn. Dans ses mots, une clause corne est " une disjonction de littéraux qui ont au plus un littéral positif. " Une clause de klaxon typique ressemble à ceci: (non A) ou (non B) ou C. Le littéral positif est C , A et B sont «négatif». Si la clause de corne a exactement un littéral positif - comme clauses de Horn Prolog font - on l'appelle une clause de corne définitive. Clauses Horn ne sont généralement écrites sous une forme simplifiée mais équivalente . L'énoncé disjonctif (non A) ou (non B) ou C est logiquement équivalente à l'instruction (A et B) implique C. Ceci est simplifiée comme suit: A, B - : C (dans lequel le "-: " représente la flèche d' implication) . La clause de corne simple est un littéral positif (dans lequel il n'ya pas de flèche) - ce qui est la même pour les deux clauses de Horn et Prolog
    Les clauses de Horn Prolog
    < . p> règles Prolog ressemblent clauses de Horn , sauf la flèche pointe dans l'autre sens . La règle de grammaire que la peine est composé d' un syntagme nominal et un syntagme verbal est rédigé S: - NP, VP . L'ensemble de règles peut également contenir le dicton selon lequel un syntagme nominal est composé d'un article et d'un substantif , écrit NP : - A, N. S'il ya une autre règle selon laquelle un syntagme nominal est un nom pluriel , il pourrait être écrit NP : - PN . Lorsque toutes les règles sont en place , l'utilisateur peut soumettre une «peine» au programme et le programme va essayer de correspondre à la «peine» pour les règles. Prolog fonctionne en arrière dans les règles - si la question correspond à la conclusion ( littéral positif) d'une règle , les antécédents ( littéraux négatifs ) deviennent les nouvelles questions. Si toutes les questions éventuellement correspondre avec les faits , la «peine» est une phrase valide. Cette correspondance fonctionne le processus pour les mathématiques , la logique et les autres systèmes à base de règles , ainsi que cela fonctionne pour la grammaire .
    La clause Cut

    Il existe trois types de clauses de Horn qui sont utilisés dans Prolog : la déclaration ( pas de flèche ) de fait, la règle ( avec une flèche, un littéral positif et au moins un littéral négatif) et la coupe. Clauses Cut contiennent le "!" symbole. Lorsque l'interprète Prolog voit le symbole de coupe (prononcé "bang" ) , il supprime les règles restantes qui ont le même littéral positif que la règle qui contient le coup . Cela peut avoir plusieurs effets sur les programmes - il peut représenter certains résultats négatifs , il permet d'éviter ou de traiter en douceur avec des échecs , ou il peut simplement éliminer une partie de l'espace de recherche et d'accélérer le programme
    < br . >

    Previous :

    next :
      articles connexes
    ·Comment écrire des tâches Rake 
    ·Comment réduire MPI 
    ·Comment faire pour créer un guide de la ville dans Joo…
    ·Comment multiplier des nombres binaires 
    ·Comment faire pour convertir binaire à Byte 
    ·Comment faire pour convertir binaire de MIPS 
    ·Scrum Avantages 
    ·Comment résoudre récursivité 
    ·Le meilleur Prolog Tutoriel 
    ·Comment faire un T -Test dans MATLAB 
      articles en vedette
    ·Comment savoir VB pour accès 
    ·Comment analyser du XML à une base de données 
    ·Comment développer des composants ActiveX 
    ·Comment se connecter à la base de données Oracle sur …
    ·Comment savoir si votre serveur a JavaMail 
    ·Comment faire pour exécuter les contrôles ActiveX ave…
    ·Comment faire vos propres jeux vidéo avec Python 
    ·Comment obtenir le point de vue C dans Eclipse 
    ·Comment calculer SHA1 pour une chaîne en C # 
    ·Comment faire pour convertir le format de date en ASP 
    Copyright © Connaissances Informatiques http://fr.wingwit.com