🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.functional
Article #1026

Re: Summary: functional programming of graph algorithms (long)

#1026
From: Hidetaka KONDOH
Date: Thu, 20 Jun 1991 03:01
72 lines
3972 bytes

In article <5495@ztivax.UUCP> corvara@ztivax.UUCP (Dr Gerd Venzl) writes:

   >> Here is my summary of responses on functional programming of graph algorithms.
   >> To remind you, in article <5332@ztivax.UUCP> I wrote:
   >> 
   >> > Some months ago somewhere in the literature I found a statement like
   >> > 
   >> >    "Functional programming is not well suited for algorithms of graph
   >> >     theory as these usually make frequent use of side effects."
   >> > 
   >> > When I tried to write down a purely functional formulation of some
   >> > manipulations on binary decision diagrams I found that indeed to be
   >> > quite a difficult and unnatural task. Are there really fundamental
   >> > reasons for these difficulties to arise or is my vision and understanding
   >> > of graph algorithms just too imperative? Are there any published attempts
   >> > to give functional formulations of graph algorithms? Any opinions from
   >> > netland?

Here is another paper discussing the way to formulate graph algorithms
using a lazy functional language (Haskell) in fairly general setting:

	Yugo Kashiwagi & David S. Wise
	    "Graph Algorithms in a Lazy Functional Programming Language"
		Technical Report No. 330, Computer Science Dept.,
		Indiana University (April, 1991).

And here I quote its abstract:

	   Solutions to graph problems can be formulated as the fixed point 
	of a set of recursive equations.   Traditional algorithms solve 
	these problems by using pointers to build a graph and by iterating 
	side effects to arrive at the fixed point, but this strategy causes 
	serious problems of synchronization under a parallel implementation.  
	In denying side-effects, functional progamming avoids them, but it 
	also preludes known algorithms that are uniprocessor-optimal.
	   Functional programming provides another, translation scheme that 
	computesthe fixed point without relying on the operational concept 
	of "store".   In  this approach, laziness plays an essential role 
	to build a cyclic data structure, a graph, and to implement 
	iteration as streams.   The resulting algorithm is not optimal on 
	uniprocessors but, avoiding side-effects, the algorithm suggests 
	a promising, more general approach to multiprocessor solutions.

This paper might give the very just answer to your initial question 
and can be easily obtained through the report secretary of the department.

The e-mail address of the first author is: 
	kasiwagi@hcrlgw.crl.hitachi.co.jp


And here is another paper relating your question:

	F. Warren Burton & Hsi-Kai Yang
	    "Manipulating Multilinked Data Structures in a Pure Functional 
	     Language", Software Practice-Experience, Vol. 20, No. 11,
	     1167-1185 (November, 1990).

This paper collects case studies of description of graph-like data 
structures in functional setting.

--
Hidetaka KONDOH (kondoh@harl.hitachi.co.jp)	Advanced Research Laboratory
						Hitachi, Ltd.
Voice: +81-492-96-6111/6112 (Ext. 6328)		Hatoyama, Saitama  350-03
Fax:   +81-492-96-6005				JAPAN
-- 
Hidetaka KONDOH (kondoh@harl.hitachi.co.jp)	Advanced Research Laboratory
						Hitachi, Ltd.
Voice: +81-492-96-6111/6112 (Ext. 6328)		Hatoyama, Saitama  350-03
Fax:   +81-492-96-6005				JAPAN
Technical Details
Message-ID: <1865@harl86.harl.hitachi.co.jp>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!wuarchive!uunet!lll-winken!sun-barr!ccut!s.u-tokyo!riksun!rknss1!rkna50!nttlab!icot32!hitgw!harl86!kondoh
References: <5495@ztivax.UUCP>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!wuarchive!uunet!lll-winken!sun-barr!ccut!s.u-tokyo!riksun!rknss1!rkna50!nttlab!icot32!hitgw!harl86!kondoh
From: kondoh@harl86.harl.hitachi.co.jp (Hidetaka KONDOH)
Newsgroups: comp.lang.functional
Subject: Re: Summary: functional programming of graph algorithms (long)
Message-ID: <1865@harl86.harl.hitachi.co.jp>
Date: 20 Jun 91 03:01:47 GMT
References: <5495@ztivax.UUCP>
Organization: Advanced Research Laboratory, Hitachi, Ltd.
Lines: 72
In-reply-to: corvara@ztivax.UUCP's message of 11 Jun 91 14:07:46 GMT
Return-Receipt-To: kondoh@harl.hitachi.co.jp
CC: kondoh