Re: comparing rewite rules
- To: mathgroup at smc.vnet.net
 - Subject: [mg78341] Re: comparing rewite rules
 - From: dh <dh at metrohm.ch>
 - Date: Thu, 28 Jun 2007 06:29:25 -0400 (EDT)
 - References: <f5vsg8$l2f$1@smc.vnet.net>
 
Hi Roger,
you are trying to compare ordered list. Therefore, the order is 
important. To circumvent this, define a new head e.g. myList and give it 
the Orderless attribute:
SetAttributes[myList, Orderless]
myList[yy -> 4, y -> 3] == myList[y -> 3, yy -> 4]
this now reults in True.
hope this helps, Daniel
dbsearch04 at yahoo.com wrote:
> Hello Mathematica UG:
> 
> I input these 2 simple rewrite rule sets into Mathematica V5:
> 
> - {yy -> 4, y -> 3}
> 
> - {y -> 3, yy -> 4}
> 
> I just want to compare these 2 simple rules for equality. I tried:
> 
> - define each one and use % == %% (this just gives: {yy -> 4, y -> 3}
>  == {y -> 3, yy -> 4} )
> - making a symbol for each rule set and using ==, such as rul0 ==
> rul1,
>  it just echoes my input
> 
> I also tried to replace the rules in an expression. If the replaced
> result evaluates to a simple expression, it is OK but, it still fails
> sometime when Mathematica reorders expressions, such as when x-1 becomes -1 +
> x
> 
> Is it possible to determine in my code that 2 "rule lists" are the
> same?
> 
> Of course, in the general case, I will have many more rules than just
> these 2 small lists (e.g. Solve[] output).
> 
> Thanks in advance.
> 
> Regards..Roger
> 
>