[net.ai] Comments to FOOLOG and Hewitt vs. Logic.

alf@ttds.UUCP (Alf Thomas Sj|land) (09/14/85)

About FOOLOG:	It is correct that Martin Nilsson made FOOLOG, "the world's
		smallest prolog", in the way described in an earlier message.
	  	The authors of LM-Prolog are Mats Carlsson and Ken Kahn.
		Since all three of them were at UPMAIL in Uppsala, Sweden, 
		during the period of development the confusion is
		understandable. Martin used to have the FOOLOG-system
		printed with the smallest fonts of
		their laserprinter on the back side of his card !

About Hewitt's anti-prolog (anti-logic ?) opinions:	
		It seems to me that two points of view are mixed here.
		One is the philosophical concerning the relative
		appropriateness of different AI-programming paradigms 
		particularly in an open systems environment.
		The other is the issue of what is the best programming
		language for future AI-programming environments: 
		Lisp or Prolog. 
		
		Some questions occur:
		1)	How can you at all "make inferences" without
			having implemented some logic in your system 
			in order to reason ? Can an actor system based
			expert system in Common Lisp be said to
			"draw conclusions" from its "knowledge" if it does
			not implement an inference engine ?
			
		2) Would you (Hewitt) say that the programming language
		   C is more powerful than Lisp just because nobody would
		   get the idea of implementing a C-interpreter in Lisp ?
		   (exchange C for Lisp, Lisp for Prolog).
		   To me they are just formalisms (languages) on different 
		   levels of abstraction.
		
		3) Perhaps the critical magic words in Hewitt's criticism 
		   are "foundation of AI". Is this phrase properly defined ?
		  
		4) Isn't it enough to keep the database static while you
		   perform a deduction in order to be able to use logic in
		   an AI-system ?
		   Would you mean (like some mysticists) that no deductions
		   are possible or do you just mean that logic is
		   an inappropriate tool for AI-systems ? In either case,
		   what is your alternative approach to the notion of a
		   "reasoning system" ? My view is that of communicating
		   inference engines, where the communication aspect is
		   separated from the deductive. In the communication aspect
		   I tend to include altering the database, thereby avoiding
		   non-monotonic logic.

				Thomas Sjoeland, i.e. alf@ttds.UUCP


--