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 > >