Cantitate/Preț
Produs

Programming in Prolog: Using the ISO Standard

Autor William F. Clocksin, Christopher S. Mellish
en Limba Engleză Paperback – 25 iul 2003

Suntem de părere că longevitatea unui text tehnic este cel mai bun indicator al calității sale, iar lucrarea semnată de William F. Clocksin și Christopher S. Mellish reprezintă un caz rar în literatura de specialitate. Publicată inițial în 1981, aceasta a fost prima resursă didactică dedicată limbajului Prolog, menținându-și statutul de text fundamental prin rigoare și claritate. Autorii aduc o vastă experiență practică în ecosistemul calculului logic; de pildă, în lucrarea sa Computational Modelling of Robot Personhood and Relationality, Clocksin explorează frontierele inteligenței artificiale, o temă care își are rădăcinile tehnice chiar în conceptele de programare logică prezentate aici.

Ca și Max Bramer în Logic Programming with Prolog, autorii distilează experiența reală în principii acționabile, oferind o tranziție lină de la paradigma imperativă la cea declarativă. Structura cărții este una progresivă, de tip tutorial. Primele capitole familiarizează cititorul cu sintaxa, faptele și regulile, pentru ca ulterior să abordeze structuri de date avansate, precum arborii și listele, și tehnici esențiale precum backtracking-ul și utilizarea operatorului „cut”.

Această a cincea ediție este esențială deoarece aliniază limbajul la standardul ISO, eliminând informațiile despre sistemele Prolog depășite. Abordarea este una practică și tehnică, punând accent pe modul în care Prolog servește drept bază pentru sistemele moderne de Inteligență Artificială. În comparație cu alte titluri precum PROLOG for Computer Science de Christopher Dawe, care se concentrează pe studii de caz lingvistice, volumul de față rămâne o resursă de inginerie software generalistă, ideală pentru cei care doresc să stăpânească fundamentele logice ale programării.

Citește tot Restrânge

Preț: 45774 lei

Preț vechi: 57218 lei
-20%

Puncte Express: 687

Carte tipărită la comandă

Livrare economică 09-23 iunie


Specificații

ISBN-13: 9783540006787
ISBN-10: 3540006788
Pagini: 316
Ilustrații: XIV, 300 p. 1 illus.
Dimensiuni: 155 x 235 x 17 mm
Greutate: 0.45 kg
Ediția:5th ed. 2003
Editura: Springer Berlin, Heidelberg
Colecția Springer
Locul publicării:Berlin, Heidelberg, Germany

Public țintă

Research

De ce să citești această carte

Recomandăm această carte cercetătorilor și programatorilor care doresc să înțeleagă programarea logică direct de la sursa care a definit domeniul. Fiind actualizată la standardul ISO, lucrarea oferă un fundament tehnic solid pentru dezvoltarea aplicațiilor de inteligență artificială. Cititorul câștigă o metodologie clară de rezolvare a problemelor complexe prin logică, beneficiind de un stil didactic rafinat de-a lungul a cinci ediții succesive.


Cuprins

1 Tutorial Introduction.- Gives the student a feel for what it is like to program in Prolog. Introduces objects, relationships, facts, rules, variables.- 1.1 Prolog.- 1.2 Objects and Relationships.- 1.3 Programming.- 1.4 Facts.- 1.5 Questions.- 1.6 Variables.- 1.7 Conjunctions.- 1.8 Rules.- 1.9 Summary and Exercises.- 2 A Closer Look.- More detailed presentation of Prolog syntax and data structures.- 2.1 Syntax.- 2.2 Characters.- 2.3 Operators.- 2.4 Equality and Unification.- 2.5 Arithmetic.- 2.6 Summary of Satisfying Goals.- 3 Using Data Structures.- Representing objects and relationships by using trees and lists. Developing several standard Prolog programming techniques.- 3.1 Structures and Trees.- 3.2 Lists.- 3.3 Recursive Search.- 3.4 Mapping.- 3.5 Recursive Comparison.- 3.6 Joining Structures Together.- 3.7 Accumulators.- 3.8 Difference Structures.- 4 Backtracking and the “Cut”.- How a set of clauses generates a set of solutions. Using “cut” to modify the control sequence of running Prolog programs.- 4.1 Generating Multiple Solutions.- 4.2 The “Cut”.- 4.3 Common Uses of the Cut.- 4.4 Problems with the Cut.- 5 Input and Output.- Facilities available for the input and output of characters and structures. Developing a program to read sentences from the user and represent the structure as a list of words, which can be used with the Grammar Rules of Chapter.- 5.1 Reading and Writing Terms.- 5.2 Reading and Writing Characters.- 5.3 Reading English Sentences.- 5.4 Reading and Writing Files.- 5.5 DeclaringOperators.- 6 Built-in Predicates.- Definition of the “core” built-in predicates, with sensible examples of how each one is used. By this point, the reader should be able to read reasonably complex programs, and should therefore be able to absorb the built-in predicates by seeing them in use.- 6.1 EnteringNew Clauses.- 6.2 Success and Failure.- 6.3 Classifying Terms.- 6.4 Treating Clauses as Terms.- 6.5 Constructing and Accessing Components of Structures.- 6.6 Affecting Backtracking.- 6.7 Constructing Compound Goals.- 6.8 Equality.- 6.9 Input and Output.- 6.10 Handling Files.- 6.11 Evaluating Arithmetic Expressions.- 6.12 Comparing Terms.- 6.13 Watching Prolog atWork.- 7 More Example Programs.- Many example programs are given, covering a wide range of interests. Examples include list processing, set operations, symbolic differentiation and simplification of formula.- 7.1 A Sorted Tree Dictionary.- 7.2 Searching a Maze.- 7.3 The Towers of Hanoi.- 7.4 Parts Inventory.- 7.5 List Processing.- 7.6 Representing andManipulating Sets.- 7.7 Sorting.- 7.8 Using the Database.- 7.9 SearchingGraphs.- 7.10 Sift the Two’s and Sift the Three’s.- 7.11 Symbolic Differentiation.- 7.12 Mapping Structures and Transforming Trees.- 7.13 Manipulating Programs.- 7.14 Bibliographic Notes.- 8 Debugging Prolog Programs.- By this point, the reader will be able to write reasonable programs, and so the problem of debugging will be relevant. Flow of control model, hints about common bugs, techniques of debugging..- 8.1 Laying out Programs.- 8.2 Common Errors.- 8.3 The Tracing Model.- 8.4 Tracing and Spy Points.- 8.5 Fixing Bugs.- 9 Using Prolog Grammar Rules.- Applications of existing techniques. Using Grammar Rules. Examining the design decisions for some aspects of analysing natural language with Grammar Rules.- 9.1 The Parsing Problem.- 9.2 Representing the Parsing Problemin Prolog.- 9.3 The Grammar Rule Notation.- 9.4 Adding ExtraArguments.- 9.5 Adding Extra Tests.- 9.6 Summary.- 9.7 Translating Language into Logic.- 9.8 More General Use of Grammar Rules.- 10 The Relation of Prolog to Logic.- Predicate Calculus, clausal form, resolution theorem proving, logic programming.- 10.1 Brief Introduction to Predicate Calculus.- 10.2 Clausal Form.- 10.3 A Notation for Clauses.- 10.4 Resolution and Proving Theorems.- 10.5 Horn Clauses.- 10.6 Prolog.- 10.7 Prolog and Logic Programming.- 11 Projects in Prolog.- A selection of suggested exercises, projects and problems.- 11.1 Easier Projects.- 11.2 Advanced Projects.- A Answers to Selected Exercises.- B Clausal Form Program Listings.- C Writing Portable Standard Prolog Programs.- The Prolog standard, writing portable programs and dealing with different Prolog implementations.- C.1 Standard Prolog for Portability.- C.2 Different Prolog Implementations.- C.3 Issues to LookOut For.- C.4 Definitions of some Standard Predicates.- C.4.1 Character Processing.- C.4.2 Directives.- C.4.3 Stream Input/Output.- C.4.4 Miscellaneous.- D CodetoSupport DCGs.- D.1 DCG Support Code.

Recenzii

From the reviews of the fifth edition:
"This is the fifth and the most recent edition of a legendary book … . It was probably the first introductory Prolog book and it is still the most gentle introduction to Prolog for everyone, including non-computer scientists. … the book is as great as ever as an introductory text for Prolog. When a newbie asks for an introduction to Prolog, the best advice is still Clocksin & Mellish." (Bart Demoen, TLP-Theory and Practice of Logic Programming, Vol. 5 (3), 2005)

Textul de pe ultima copertă

Originally published in 1981, this was the first textbook on programming in the Prolog language and is still the definitive introductory text on Prolog. Though many Prolog textbooks have been published since, this one has withstood the test of time because of its comprehensiveness, tutorial approach, and emphasis on general programming applications.
Prolog has continued to attract a great deal of interest in the computer science community, and has turned out to be the basis for an important new generation of programming languages and systems for Artificial Intelligence. Since the previous edition of Programming in Prolog, the language has been standardised by the International Organization for Standardization (ISO) and this book has been updated accordingly. The authors have also introduced some new material, clarified some explanations, corrected a number of minor errors, and removed appendices about Prolog systems that are now obsolete.

Caracteristici

Since the previous edition of Programming in Prolog, the Prolog language has been standardised by the International Standards Organisation (ISO). Although not all Prolog systems conform to the new standard, the authors felt it was necessary to update this book in accordance with the standard. They have also introduced some new material, clarified some explanations, corrected a number of minor errors, and removed appendices about Prolog systems that are now obsolete. Includes supplementary material: sn.pub/extras