PROLOG-REQUEST@SU-SCORE.ARPA (Chuck Restivo, The Moderator) (10/16/86)
PROLOG Digest Thursday, 16 Oct 1986 Volume 4 : Issue 55 Today's Topics: Query - Chemistry Systems & Neural Nets, & Forward Chaining, OPS5 Design, & Opinions on Books, Implementations - Fixed Points, LP Library - New Book on Multiprocessors ---------------------------------------------------------------------- Date: Sun, 28 Sep 86 10:46:15 -0200 From: Jacob Levy <jaakov%wisdom.bitnet@WISCVM.WISC.EDU> Subject: Chemistry Systems Has anyone programmed or used a logic programming based system for use in Chemistry? I am especially interested in organic synthesis planning systems. Do you know of such systems written in other languages? Any help, references and info will be greatly appreciated, Thank you, -- Jacob Levy) ------------------------------ Date: 2 Oct 1986 10:04-EDT From: VERACSD@A.ISI.EDU Subject: Neural Nets Has any substantive work been done with neural-networks using Prolog? If so, I would appreciate pointers. Thank you. -- Kobryn ------------------------------ Date: 3 Oct 86 11:19:00 EDT From: "CUGINI, JOHN" <cugini@nbs-vms.ARPA> Subject: literature on forward-chaining Are there any articles in the literature about good ways to implement forward-chaining with multiple rule-sets in Prolog? Eg, at some point in the program be able to say: keep applying any matching rules from rule-sets A, B, or E, until no more apply. (I'm looking more for references than for techniques per se). Thanks for any citations. -- John Cugini ------------------------------ Date: 6 Oct 86 12:52:42 GMT From: Peter Srulovicz Subject: OPS5 design I am trying to build a forward chaining system functionally equivalent to OPS5. I need some advice on how to build such a system efficiently in Prolog. Any help would be appreciated. ------------------------------ Date: 10 Oct 86 07:12:56 GMT From: Todd Ogasawara <humu!uhmanoa!todd@bass.nosc.mil> Subject: Opinions on Prolog books requested I'd like some opinions on the following books. 1. Prolog Programming for Artificial Intelligence by Ivan Bratko 2. Prolog by Giannesini, Kanoui, Pasero, and van Caneghem (a intro to Prolog II book) 3. A Prolog Primer by Jean B. Rogers I'll probably dig into my pockets and buy all of the books, but would still like a preview set of opinions Thank you. -- Todd ------------------------------ Date: Fri 10 Oct 86 18:31:49 From: Wlodek Drabent <enea!liuida!wdr@seismo.CSS.GOV> Subject: Fixed Points (V4 #47 of Prolog Digest) Dear Jamie, As one of the authors of "fixed points" I am answering your question mailed in Prolog Digest V4 #47. The proof that my programs (V4 #46) have the desired property was actually given together with the programs (but not explained). The approach is called "declarative debugging" [1]. If you ask a most general question to a logic program (say ?-p(X) ) then the answers you obtain (say X=Ans1, ..., X=Ansn, ...) describe the relation defined by the program. This means that p(Arg) is true iff it is an instance of p(Ansi) for some I (provided the computation was finite what guarantees that the whole tree was searched). My first program gives one answer to a most general question ?-fix(X,Y) and the computation is finite. The answer is the program itself. Hence fix(Arg1,Arg2) is true iff Arg1 and Arg2 are an instance of the program itself. The second program also gives itself as an answer to a most general question (and this is the only answer and the computation is finite). If the extra-logical procedures var and \== had been defined as var(X). X \== Y. then fix would have been true for every instance of the answer (ie. itself). Let us analyze the influence of using actual DEC-20 procedures var and \== . (It may be helpful to rename variables in the first clause and in the question). There are two variables in the answer. fix is false for every instance of the answer in which a (nonvariable) term is substituted for any of these variables (because they are checked by the procedure var ). fix is also false if they are substituted by the same variable (this is checked by \== ). So fix is true only for (a variant of) the program itself. ("Variant" means renaming variables). -- Wlodek [1] R.Kowalski "Logic Programming" in "Information Processing 83" (Proceedings IFIP 1983), Elsevier Note: by "p(Arg) is true" I mean that ?-p(Arg) succeeds instantiated to (a variant of) itself. ------------------------------ Date: 7 Oct 86 19:58:39 GMT From: Michael Wise Subject: New Book on Multiprocessors A book is soon to appear, by Michael J. Wise, entitled "Prolog Multiprocessors". It is being published by Prentice-Hall (Australia). In a nutshell, the book examines the execution of Prolog on a multiprocessor. Starting from a survey of some current multiprocessor architectures, and a review of what is arguably the most influential counter-proposal - the "data-flow" model, a model is proposed for executing Prolog on a multiprocessor. Along with the model goes a language based on Prolog. The model and the language are called EPILOG. EPILOG employs both AND and OR parallelism. Results are then reported for the simulated execution of some Prolog programs rewritten in the EPILOG language. The book concludes with an extensive survey of other multiprocessor implementations of Prolog. The book will be available in Australia from mid November, and in US/UK/Europe roughly eight weeks later. A list of the Chapter headings follows. A more detailed list can be obtained from your local P-H representative, or by e-mailing to me directly. TABLE OF CONTENTS Foreword by J. Alan Robinson Preface 1. Parallel Computation and the Data-Flow Alternative 2. Informal Introduction to Prolog 3. Data-Flow Problems and a Prolog Solution 4. EPILOG Language and Model 5. Architectures for EPILOG 6. Experimenting with EPILOG Architectures - Results and Some Conclusions 7. Related Work Appendix 1 Data-Flow Research - the First Generation Appendix 2 EBNF Specification for EPILOG Appendix 3 EPILOG Test Programs Appendix 4 Table of Results ------------------------------ End of PROLOG Digest ********************