MathGroup Archive 1994

[Date Index] [Thread Index] [Author Index]

Search the Archive

Help with conditional rules

  • To: mathgroup at christensen.Cybernetics.NET (mathgroup )
  • Subject: Help with conditional rules
  • From: leboeuf at (Leboeuf Martin)
  • Date: Tue, 25 Oct 1994 13:58:57 -0400 (EDT)

Hello mathgroupers,

Let me first thank Steve for his excellent work with mathgroup,
and I can only be forever thankfull to him for maintaining
such a valuable forum. 

Here is now my problem. I generate functions of the type:


In other words, functions all with the same Head FUNC and
with 6 Integer arguments. Now, depending upon the value of those
arguments, I want to substitute the Head. For example:

  FUNC[2,2,2,0,3,1] /. FUNC :> F1 /; FUNC[2,2,2,0,3,1][[1]] +
                                     FUNC[2,2,2,0,3,1][[2]] +
                                     FUNC[2,2,2,0,3,1][[3]] == 6

and I get:


which would be OK for me. But I have hundreds of FUNC's, so I would
like the above rule to work for any given FUNC. I tried 

  FUNC[2,2,2,0,3,1] /. FUNC :> F1 /; FUNC[i_,j_,k_,l_,m_,n_][[1]] +
                                     FUNC[i_,j_,k_,l_,m_,n_][[2]] +
                                     FUNC[i_,j_,k_,l_,m_,n_][[3]] == 6

and other similar things, but obviously without success.

To be more general, how can one define a rule (or whatever) to
extract the nth argument of a function with a fixed (or undefined)
number of arguments? 

Thanx, martin

leboeuf at

  • Prev by Date: Re: matrix of coefficients?
  • Next by Date: RE: function definition
  • Previous by thread: Re: a problem with an array
  • Next by thread: matrix of coefficients ANSWER