The modified fact (rp-control (phase generate)) is being passed through the rete net and is in fact causing activity in another rule entirely. This 'activity' is in a rule that has the comparison (< ?_5_fd ?f).
For example you could have a rule like: (defrule test1 (factA (value ?fd)) (factB (value ?f)) (rp-control (phase generate)) (test (< ?fd ?f)) => ... ) The modify could trigger the test to be done. Check the other rules in particular rule defrule calculate-route!generate-points and check you possible-point facts to see if there is one with the field f not a numeric. Bob Orchard -----Original Message----- From: Ralph Grove [mailto:[EMAIL PROTECTED] Sent: Thursday, August 07, 2003 11:48 AM To: [EMAIL PROTECTED] Subject: JESS: Error in routine Value.numericValue I'm trying to modify the ARP benchmark program to use with Jess. One of the ARP rules: (defrule calculate-route!process-to-generate ; Change phase from same-to-generate. (subtask (name calculate-route)) ?Control <- (rp-control (phase process)) (finish-point (x ?fx) (y ?fy) (z ?fz)) (not (possible-point (x ?fx) (y ?fy) (z ?fz))) => (printout t "trying to modify" crlf) (modify ?Control (phase generate)) (printout t "modified" crlf) ) is evidently causing this error message: Jess> (batch "arp.clp") trying to modify Jess reported an error in routine Value.numericValue while executing (< ?_5_fd ?f) while executing rule LHS (Node2) while executing rule LHS (Node2) while executing rule LHS (Node2) while executing rule LHS (Node2) while executing rule LHS (Node2) while executing rule LHS (TEQ) while executing rule LHS (TECT) while executing (modify ?Control (phase generate)) while executing defrule MAIN::calculate-route!process-to-generate while executing (run) while executing (batch "arp.clp"). Message: Not a number: "nil" (type = ATOM). Program text: ( batch "arp.clp" ) at line 11. at jess.Value.typeError(Value.java:382) ... It's not clear to me how a "modify" command invokes a "<" predicate, which seems to be what the error message is implying. Any help in interpreting the error would be appreciated. I've posted the full code that I'm using and arp functions at grove.cs.jmu.edu/arp. Thanks, Ralph Grove James Madison University [EMAIL PROTECTED] -------------------------------------------------------------------- To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]' in the BODY of a message to [EMAIL PROTECTED], NOT to the list (use your own address!) List problems? Notify [EMAIL PROTECTED] -------------------------------------------------------------------- -------------------------------------------------------------------- To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]' in the BODY of a message to [EMAIL PROTECTED], NOT to the list (use your own address!) List problems? Notify [EMAIL PROTECTED] --------------------------------------------------------------------
