Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2011

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

Search the Archive

Re: Unwanted Recursion

  • To: mathgroup at smc.vnet.net
  • Subject: [mg120098] Re: Unwanted Recursion
  • From: Kambis Veschgini <k.veschgini at thphys.uni-heidelberg.de>
  • Date: Fri, 8 Jul 2011 04:53:23 -0400 (EDT)
  • References: <iv1a95$sjl$1@smc.vnet.net> <iv45tf$f6i$1@smc.vnet.net>

On 2011-07-07 13:39:27 +0200, David Bailey said:

> On 06/07/2011 10:35, Casorati wrote:
>> I'm trying to define an anti-commutative algebra in Mathematica.
>> Here I will show only a minimal example to demonstrate my point.
>> The product of two elements a^b should be give by p[a,b] so I
>> make p flat:
>> 
>> SetAttributes[p, {Flat}]
>> 
>> But now I want p[a] to reduce to a.
>> Such a  rule would make other rules much simpler but when I define
>> 
>> p[a_] := a
>> 
>> the expression p[a] causes an infinite recursion. I get the message
>> 
>> $IterationLimit::itlim: Iteration limit of 4096 exceeded.
>> 
>> I have similar problems with p[]:=1 which makes mathematica puts
>> ones into the p : p[a]=p[a,a]=p[1,1,...,a] .
>> 
>> How can I solve this problem?
>> 
>> 
> 
> I see no infinite recursion:
> 
> In[649]:= p[a_]:=a;
> 
> In[650]:= p[a]
> 
> Out[650]= a
> 
> I suggest you post a specific piece of code that reproduces this problem
> immediately after killing the kernel.
> 
> I also wonder what the real purpose of p is.
> 
> David Bailey
> http://www.dbaileyconsultancy.co.uk

I did but You left out the line SetAttributes(p,{Flat}) at the beginning.



  • Prev by Date: Re: Numerical accuracy/precision - this is a bug or a feature?
  • Next by Date: Re: Grouping terms under the radical
  • Previous by thread: Re: Unwanted Recursion
  • Next by thread: Re: Unwanted Recursion