From dmiles@teknowledge.com Tue May  8 01:06:41 2001
Received: from helium.teknowledge.com (promethium.teknowledge.com [128.136.192.50])
	by swi.psy.uva.nl (8.11.2/8.11.2) with ESMTP id f47N6d312704
	for <prolog@swi.psy.uva.nl>; Tue, 8 May 2001 01:06:40 +0200 (MET DST)
Received: by helium.teknowledge.com with Internet Mail Service (5.5.2650.21)
	id <JWQS3ZTG>; Mon, 7 May 2001 16:00:57 -0700
Message-ID: <EE25484266A64A47AE06CFC47C64232B40396D@helium.teknowledge.com>
From: "Douglas R. Miles" <dmiles@teknowledge.com>
To: "'SWI Prolog'" <prolog@swi.psy.uva.nl>
Date: Mon, 7 May 2001 16:00:29 -0700 
MIME-Version: 1.0
X-Mailer: Internet Mail Service (5.5.2650.21)
Content-Type: text/plain;
	charset="iso-8859-1"
Subject: [SWIPL] Memoization

I would like to see how to impliment a meta interpretor in SWI that can call

|?- path(1,5,X).


With the given program:



path(X,Y) :- path(X,Z), edge(Z,Y).
path(X,Y) :- edge(X,Y).

edge(1,2).
edge(2,2).
edge(2,4).
edge(2,3).
edge(3,5).



Thank you,

Douglas

