Connaissances Informatiques >> programmation >> Computer Programming Languages >> Content
  Derniers articles
  • Qu'est-ce qu'une application graphiq…
  • Comment changer la couleur dans une …
  • Comment créer des cartes de voeux v…
  • Zebra ZPL Programming Guide 
  • Comment faire un menu dans Matlab 
  • IDE Debugging Tools 
  • Comment incrémenter DOS Variable Va…
  • Binaires Calcul Trucs et astuces 
  • Comment prévenir défilement vertic…
  • Comment formater des nombres décima…
  •   Computer Programming Languages
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    Computer Programming Languages

    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 . >

     
    Article précédent:
    Article suivant:
    Articles recommandés
  • Comment savoir Rational Rose 
  • Comment utiliser la compression HTTP et Coldfusion 
  • La fonction Connexion 
  • Comment créer un lien dans les forums en ligne 
  • Comment ajouter Ralenti à WMP 
  • Qu'est-ce qu'une chaîne décimale 
  • Pourquoi est binaire utilisé dans les ordinateurs 
  • Comment s'inscrire SQL Express de Visual Studio 2010 
  • Comment faire pour convertir Int au Real en SML 
  • Comment penser comme un programmeur 
  • Connaissances Informatiques © http://www.ordinateur.cc