Logic, Programming and Prolog (2nd Edition) - Ulf Nilsson and Jan Małuszyński.pdf
(
1856 KB
)
Pobierz
bok.dvi
LOGIC,PROGRAMMINGAND
PROLOG(2ED)
UlfNilssonandJanMaÃluszy¶nski
Copyrightc
°
2000,UlfNilssonandJanMaÃluszy¶nski.Thebookmaybedown-
loadedandprintedforpersonaluseonlyprovidedthatthetext(1)isnotaltered
inanyway,and(2)isaccompaniedbythiscopyrightnotice.Thebookmayalso
becopiedanddistributedinpaper-formfornon-pro¯tuseonly.Nootherform
ofdistributionisallowed.Itisnotallowedtodistributethebookelectronically.
ThisbookwaspreviouslypublishedbyJohnWiley&SonsLtd.Thebookwas
originallypublishedin1990withthesecondeditionin1995.Thecopyrightwas
revertedbacktotheauthorsinNovember2000.
Forfurtherinformationaboutupdatesandsupplementarymaterialpleasecheck
outthebookweb-siteat
http://www.ida.liu.se/~ulfni/lpp
orcontacttheauthorsat
ulfni@ida.liu.se
and
janma@ida.liu.se
.
Contents
Preface
ix
I Foundations
1
1 Preliminaries 3
1.1 LogicFormulas ............................... 3
1.2 SemanticsofFormulas ........................... 7
1.3 ModelsandLogicalConsequence ..................... 10
1.4 LogicalInference .............................. 13
1.5 Substitutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Exercises .................................. 16
2 Denite Logic Programs 19
2.1 DeniteClauses............................... 19
2.2 Denite Programs and Goals . . . . . . . . . . . . . . . . . . . . . . . 21
2.3 TheLeastHerbrandModel ........................ 24
2.4 ConstructionofLeastHerbrandModels ................. 29
Exercises .................................. 31
3 SLD-Resolution 33
3.1 InformalIntroduction ........................... 33
3.2 Unication ................................. 37
3.3 SLD-Resolution............................... 43
3.4 Soundness of SLD-resolution . . . . . . . . . . . . . . . . . . . . . . . 48
3.5 CompletenessofSLD-resolution...................... 51
3.6 ProofTrees ................................. 53
Exercises .................................. 57
v
vi
Contents
4 Negation in Logic Programming 59
4.1 NegativeKnowledge ............................ 59
4.2 The Completed Program . . . . . . . . . . . . . . . . . . . . . . . . . . 61
4.3 SLDNF-resolution for Denite Programs . . . . . . . . . . . . . . . . . 65
4.4 General Logic Programs . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.5 SLDNF-resolution for General Programs . . . . . . . . . . . . . . . . . 70
4.6 Three-valuedCompletion ......................... 75
4.7 Well-founded Semantics . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Exercises .................................. 84
5 Towards Prolog: Cut and Arithmetic 87
5.1 Cut:PruningtheSLD-tree ........................ 87
5.2 Built-inArithmetic............................. 93
Exercises .................................. 97
II Programming in Logic
99
6 Logic and Databases 101
6.1 RelationalDatabases............................ 101
6.2 DeductiveDatabases............................ 103
6.3 Relational Algebra vs. Logic Programs . . . . . . . . . . . . . . . . . . 104
6.4 LogicasaQuery-language......................... 107
6.5 SpecialRelations .............................. 109
6.6 DatabaseswithCompoundTerms .................... 114
Exercises .................................. 116
7 Programming with Recursive Data Structures 119
7.1 RecursiveDataStructures......................... 119
7.2 Lists..................................... 119
7.3 DierenceLists............................... 129
Exercises .................................. 131
8 Amalgamating Object- and Meta-language 135
8.1 WhatisaMeta-language?......................... 135
8.2 GroundRepresentation .......................... 136
8.3 NongroundRepresentation......................... 141
8.4 The Built-in Predicate
clause
/2...................... 143
8.5 The Built-in Predicates
assert
/1................... 144
8.6 The Built-in Predicate
retract
/1...................... 146
Exercises .................................. 146
f
a,z
g
9 Logic and Expert Systems 149
9.1 ExpertSystems............................... 149
9.2 CollectingProofs.............................. 153
9.3 Query-the-user ............................... 154
9.4 FixingtheCar(ExtendedExample) ................... 155
Exercises .................................. 161
Contents
vii
10 Logic and Grammars 163
10.1Context-freeGrammars .......................... 163
10.2LogicGrammars .............................. 166
10.3Context-dependentLanguages....................... 169
10.4DeniteClauseGrammars(DCGs).................... 171
10.5CompilationofDCGsintoProlog..................... 175
Exercises .................................. 176
11 Searching in a State-space 179
11.1State-spacesandState-transitions..................... 179
11.2LoopDetection............................... 181
11.3Water-jugProblem(ExtendedExample)................. 182
11.4BlocksWorld(ExtendedExample) .................... 183
11.5AlternativeSearchStrategies ....................... 185
Exercises .................................. 186
III Alternative Logic Programming Schemes
189
12 Logic Programming and Concurrency 191
12.1 Algorithm = Logic + Control . . . . . . . . . . . . . . . . . . . . . . . 191
12.2And-parallelism............................... 193
12.3ProducersandConsumers......................... 194
12.4Don'tCareNondeterminism........................ 196
12.5 Concurrent Logic Programming . . . . . . . . . . . . . . . . . . . . . . 196
Exercises .................................. 202
13 Logic Programs with Equality 203
13.1 Equations and
E
-unication........................ 204
13.2 More on
E
-unication ........................... 205
13.3 Logic Programs with Equality . . . . . . . . . . . . . . . . . . . . . . . 207
Exercises .................................. 212
14 Constraint Logic Programming 213
14.1 Logic Programming with Constraints . . . . . . . . . . . . . . . . . . . 214
14.2 Declarative Semantics of
CLP
....................... 215
14.3 Operational Semantics of
CLP
...................... 216
14.4ExamplesofCLP-languages........................ 222
Exercises .................................. 227
15 Query-answering in Deductive Databases 229
15.1NaiveEvaluation.............................. 230
15.2Semi-naiveEvaluation ........................... 232
15.3MagicTransformation ........................... 233
15.4Optimizations................................ 236
Exercises .................................. 239
Plik z chomika:
Kowalski2015
Inne pliki z tego folderu:
Logic, Programming and Prolog (2nd Edition) - Ulf Nilsson and Jan Małuszyński.pdf
(1955 KB)
Logic, Programming and Prolog (2nd Edition) - Ulf Nilsson and Jan Małuszyński.pdf
(1856 KB)
Logic, Programming and Prolog (2nd Edition) - Ulf Nilsson and Jan Małuszyński (Wiley, 1995)(ISBN 9780471959960)(294s)_CsAl_.pdf
(1313 KB)
Inne foldery tego chomika:
100 ciosów karate
100 Things Every Designer Needs to Know About People
50 przepisów Sałatki
A Guide to Graph Colouring Algorithms and Applications
ABC Naprawy Odbiorników Radiowych
Zgłoś jeśli
naruszono regulamin