The Logic Programming Paradigm: A 25-Year PerspectiveKrzysztof R. Apt, Victor W. Marek, Mirek Truszczynski, David S. Warren Logic Programming was founded 25 years ago. This exciting new text reveals both the evolution of this programming paradigm since its inception and the impressively broad scope of current research in Logic Programming. The contributions to the book deal with both theoretical and practical issues. They address such diverse topics as: computational molecular biology, machine learning, mobile computing, multi-agent systems, planning, numerical computing and dynamical systems, database systems, an alternative to the "formulas as types" approach, program semantics and analysis, and natural language processing. The contributors are all leading world experts in Logic Programming and their contributions were all invited and refereed. |
Contents
3 | |
10 | |
Towards a Specification Methodology | 19 |
Inference and Computation Mobility with Jinni | 33 |
Jinnis Logical Engine | 44 |
Program Analysis and Methodology | 73 |
Computation Mechanism | 85 |
Alma0 | 95 |
Adding Constraints to Logicbased Formalisms 313 | 312 |
Logic Formalisms | 314 |
Constraints | 315 |
Adding Constraints to Logic Formalisms | 318 |
Constraints in Logic Formalisms | 320 |
Conclusion | 327 |
Machine Learning | 333 |
The Methodology of Inductive Logic Programming | 337 |
Appendix | 102 |
Linktime Optimization of MultiLanguage Programs | 108 |
5 | 118 |
90 | 125 |
Provably Correct Compilation | 137 |
Specification Implementation and Verification of DSL Programs | 146 |
Other Applications | 153 |
Global Analysis Partial Specifications and Assertions | 161 |
Overall Framework Architecture and Operation | 163 |
The Assertion Language | 167 |
Defining Properties | 170 |
A Simple Runtime Checking Scheme | 174 |
CompileTime Checking | 175 |
A Sample Debugging Session with the CIAO System | 178 |
Some Practical Hints on Debugging with Assertions | 183 |
A Preliminary Experimental Evaluation | 185 |
Discussion | 186 |
A Code for Runtime Checking | 190 |
Future of Declarative Programming | 193 |
Assessment of Some Issues in CLTheory and Program Development 195 | 194 |
Implementation analysis and transformation | 197 |
Algorithm Logic + Control revisited | 200 |
future directions | 204 |
How Enterprises Use Functional Languages and Why They Dont | 209 |
Why No One Uses Functional Languages | 217 |
Functional and Logic Programming | 224 |
Continuous Mathematics | 229 |
The Contention and a Caution | 233 |
Longterm Expectations | 235 |
Relationship to Prior Work | 239 |
Continualizing Propositional Connectives | 241 |
A ContinuousTime Example | 244 |
A Fundamental Discretetime System | 248 |
Emergent Phenomena from Tuning | 250 |
The Logic Programming Paradigm in Numerical Computation | 257 |
Numerical Programs Need Verification | 260 |
From Prolog to CLPR | 263 |
Sound CLPR | 266 |
Proving NDID Formulas | 267 |
Related Work | 272 |
Conclusions | 273 |
Knowledge Representation and Modeling | 277 |
Constraints 279 | 278 |
A Promising Application Using LP and its Extensions | 281 |
A Minimalist Introduction to DNA and Protein Generation | 282 |
TopDown Description of Protein Generation from DNA | 285 |
Grammars Defining DNA Components | 287 |
Motivation for Introducing DAGS | 289 |
Obtaining DAGS From NDFSA | 293 |
Chromatic NDFSA and DAGS | 294 |
Alternation of Introns and Exons Using NDFSA | 296 |
Related Approaches | 298 |
Other Problems in Computational Molecular Biology | 301 |
Areas in CS That Are Applicable in Molecular Biology | 304 |
Final Remarks | 306 |
The Relation Between Inductive Logic Programming and Logic Programming | 340 |
Research Directions for Inductive Logic Programming | 343 |
Logical Perspective | 347 |
Inverse Entailment | 348 |
Subsumption and Entailment | 350 |
Completion of the Algorithm | 351 |
Abductive Inference in ILP | 352 |
Conclusion and Future Research Directions | 353 |
Answer Set Programming | 355 |
Action Languages Answer Sets and Planning | 357 |
Incomplete Information | 359 |
Action Language A | 360 |
Answer Sets and Histories | 361 |
Computing Answer Sets | 362 |
Causal Reasoning | 363 |
Action Language C | 364 |
From C to Logic Programming | 367 |
Planning for Domains Described in C | 369 |
Topics for Future Work | 370 |
19 | 371 |
Stable Models and an Alternative Logic Programming Paradigm 375 | 372 |
Victor W Marek Mirosław Truszczyński 1 Introduction 375 | 374 |
Horn Logic Programming | 378 |
Negation in Logic Programming | 380 |
Stable Logic Programming | 382 |
Expressive Power of SLP | 384 |
Recursion Versus Constraints | 386 |
Uniform Control in SLP | 392 |
Conclusions and Future Directions | 394 |
Database Systems | 399 |
LogicBased UserDefined Aggregates for the Next Generation of Database Systems | 401 |
New Applications Require New Aggregates | 402 |
the State of the Art | 406 |
33 | 407 |
Aggregates with Early Returns | 409 |
Formal Semantics | 411 |
Monotonic Aggregation | 413 |
Implementation of Extended Aggregates | 416 |
Applications of Monotone Aggregation | 417 |
Applications to SQL Databases | 421 |
34 | 424 |
Natural Language Processing | 427 |
The Logic of Language 429 | 428 |
Some Basic Problems in Natural Language Processing | 431 |
The Omnipresence of Logic in Language | 432 |
A Computational Linguists Wishlist for Prolog | 437 |
What Fashion of the Day Are We Losing To? | 439 |
How Can Logic Programming Benefit from Regaining the Market? | 440 |
37 | 441 |
Controlling Virtual Worlds and Robots Through Natural Language | 442 |
Concept Based Retrieval Through Natural Language | 444 |
Database Initialization from Natural Language | 445 |
Conclusion | 451 |
456 | |
Other editions - View all
The Logic Programming Paradigm: A 25-Year Perspective Krzysztof Apt,Victor W. Marek,Mirek Truszczynski,David S. Warren No preview available - 2011 |
Common terms and phrases
a-closed abstract abstract interpretation agents aggregates algorithm analysis answer sets applications approach assertions atoms called CaseLP clauses CLP(R compile-time compiler components Computational Logic Computer Science concurrent logic constraint logic programming constraint programming database DATALOG debugging declarative defined definition denotational semantics domain dynamical systems efficient example execution expressed extended finite first-order fixed points formulas framework functional languages functional programming given goal grammar gramming Herbrand Horn logic Horn logic programming implementation inductive logic programming inference instance interpretation introns Jinni Journal of Logic linear logic logic pro logical denotational natural language NDFSA negation optimization paradigm parse partial evaluation possible predicate problem Proc programming language Prolog properties proteins qsort query recursive represent rules Section semantic algebra sequence server SLP program solver solving specification Springer-Verlag stable model semantics syntax techniques Theorem theory tion tree valuation variables verification