Prolog er en kraftfuld nyt programmeringssprog med programmer på forkant med den videnskabelige forskning. Den blev udviklet i Frankrig af forskere interesseret i automatisk maskinoversættelse mellem naturlige sprog. Det blev derefter raffineret i Skotland med matematikere interesseret i edb-programmer , der automatisk vise matematiske teoremer . Det blev efterfølgende valgt af den japanske for femte generations Artificial Intelligence Project officielle sprog. Natural Language Translation
Brug Prolog indebærer at skrive en række udsagn der beskriver den viden i en bestemt begrænset domæne og derefter stille spørgsmål om dette domæne. Prolog automatisk søger gennem erklæringer og kommer op med alle mulige svar , der er i overensstemmelse med den række af udsagn. Hvis erklæringerne er definitioner og grammatiske regler , kan Prolog tage en kandidat sætning, og afgøre, om det er en gyldig sætning i form af de definitioner og regler for sproget. En lidt mere sofistikeret program ville returnere en oversættelse af sætningen , hvis det er gyldigt .
Automatisk bevisførelse
Hvis databasen udsagn består af matematiske relationer i stedet for grammatiske dem , kan du kaste en sætning som et spørgsmål , og Prolog -systemet vil reagere med et "ja" eller "nej" , afhængigt af om sætningen er i overensstemmelse med den database af fakta og regler. Viser en erklæring er i overensstemmelse med et sæt af regler og fakta er det samme som at teste en foreslået matematiske eller logiske sætning for at se det er gyldigt . Prolog forstår hverken matematik eller logik - . Det kun forstår sammenhængen
Data Mining
Prolog , efter sin karakter opstiller en database. På grund af den måde Prolog udtryk indeholder variable , kan et spørgsmål om databasen returnere ønskede værdier . For eksempel, " (X) Bigger_than_a_breadbox " forespørgslen returnerer et "nej ", hvis intet i databasen er større end en brødkasse . Hvis noget er, vil Prolog tilbage "ja" , samt en liste over alle ting i den database, der forårsagede en "match ". Der vil være en liste som : . X = Godzilla , X = The Empire State Building , X = A Volkswagen og så videre, afhængigt af indholdet af databasen
Robotics
Robotter skal hele tiden spørge sig selv det samme spørgsmål: " Hvad skal jeg gøre nu?" Den database, der bruges til at besvare dette spørgsmål kommer fra tre kilder: sensorer , hukommelse og kommandoer fra mennesker . Spørgsmålet forbliver den samme, men den database, der bruges til at besvare spørgsmålet konstant skifter . En af fordelene ved at anvende Prolog med en robot er , at flere prologs kan køre på samme tid på den samme database . Øjnene kan køre en prolog , mens benene køre en anden prolog uden indblanding , da hverken ændrer databasen .