Assigning a function to the current value of another

"Prasan Samtani" <[email protected]> Mon, 2 Jul 2007 18:09:46 -0700
Newsgroups gmane.comp.ai.powerloom
Message-ID <479348D61212AC4DB31C9906F8C7028D025DFF7C@EXVBE012-5.exch012.intermedia.net>
In the powerloom manual, there is a section that explains how one can
assert equality between skolems that represent function terms:

 

(deffunction age (?x ?y))
(assert (= (age Joe) 10))
(assert (= (age Fred) (age Joe)))
 

 

Now if I were to call:

 

(retrieve (age Fred ?x))

 

I get 10, as expected. However, lets say I change the value of Joe's age
and then query the value of Fred's age again:

 

(assert (= (age Joe) 20))

(retrieve (age Fred ?x))

 

Now, I get 20.

 

Is there a way to set Fred's age to the current value of Joe's age, so
that any subsequent changes to Joe's age will not affect the value of
Fred's age? For example, if there was a counter maintaining the system
time, and I wanted to set the value of an event's time to the current
value of the system time. Subsequently changing the system time should
not affect the value of when the event occurred.

 

Thanks,

Prasan

_______________________________________________
powerloom-forum mailing list
[email protected]
http://mailman.isi.edu/mailman/listinfo/powerloom-forum