Re: Re: Re: record intermediate steps

*To*: mathgroup at smc.vnet.net*Subject*: [mg73485] Re: [mg73446] Re: [mg73126] Re: [mg73095] record intermediate steps*From*: "Chris Chiasson" <chris at chiasson.name>*Date*: Mon, 19 Feb 2007 06:33:57 -0500 (EST)*References*: <200702161021.FAA09937@smc.vnet.net>

Also, if you make two lists of results, one from FullSimplify and one from Simplify, you can eliminate some functions to try, assuming one of the function names can simplify the expression in one step. Don't forget Developer`ClearCache between the two runs to cull out more functions. DeleteCases[Sequence@@HoldComplete@@@list1,HoldPattern@@Alternatives@@@list2] On 2/19/07, Chris Chiasson <chris at chiasson.name> wrote: > If the list of expressions returned by TracePrint TraceInteral->True > is relatively complete, here is a method that will return a list of > symbols called from the System` context during the simplification. > > This code could easily be modified to assign the list of expressions > encountered during the evaluation to a variable, from which the > aforementioned list of symbols could be cross referenced (to see how > they were called) > > Block[{$Output=List@OpenWrite["C:\\msgStream.m"]}, > TracePrint[FullSimplify[Cos[2*Pi/7]*Cos[4*Pi/7]*Cos[8*Pi/7]],TraceInternal->True]; > Close/@$Output]; > > Thread[Union@Cases[ReadList["C:\\msgStream.m", > HoldComplete[Expression]],symb_Symbol/;AtomQ@Unevaluated@symb&& > Context@Unevaluated@symb==="System`":>HoldComplete@symb,{0,Infinity},Heads->True], > HoldComplete] > > > -- > http://chris.chiasson.name/ > -- http://chris.chiasson.name/

**References**:**Re: Re: record intermediate steps***From:*"Chris Chiasson" <chris@chiasson.name>