5
$\begingroup$

This question already has an answer here:

The answer proposed to the original question doesn't solve it, I need to understand the results of TraceInternal when used on FullSimplify as a sequence of steps, which has not been resolved for me.

Original Question:

I'm trying to verify an identity:

Reduce[(2*n)! (2*n + 1)!/n!^2 == 16^(n) Pochhammer[1/2, n] Pochhammer[3/2, n] && 
  n >= 1, {n}, Integers]

Neither Reduce nor Solve can prove it, they generated these methods:

Reduce::fexp: Warning: Reduce used FunctionExpand to transform the system. Since FunctionExpand transformation rules are only generically correct, the solution set might have been altered.

This system cannot be solved with the methods available to Solve.

I randomly decided to try yet another function:

FullSimplify[(2*n)! (2*n + 1)!/n!^2 == 16^(n) Pochhammer[1/2, n] Pochhammer[3/2, n], ForAll[{n}, n >= 1 && n \[Element] Integers]]

enter image description here

And I guess it worked, but how and why!? Here's my question:

  1. Why did FullSimplify work and the others fail?

  2. For "theorem proving" functions (e.g. Reduce and FullSimplify) - Is there any way to see the steps here or the sow the intermediate results or (i.e. individual transformation steps of FunctionExpand) that it uses/deduces so as to verify it by hand?

  3. If not are what are viable packages (or 3rd party software) available that can illustrate human verifiable steps for identities?

$\endgroup$

marked as duplicate by bbgodfrey, MarcoB, m_goldberg, Mr.Wizard Aug 5 '16 at 20:40

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • 1
    $\begingroup$ In a nutshell: when you have special functions like Pochhammer[] or Factorial[] involved, use FullSimplify[]. $\endgroup$ – J. M. will be back soon Aug 5 '16 at 1:48
6
$\begingroup$

Can you do the following:

Trace[FullSimplify[expr], TraceInternal -> True]

or

FullSimplify[expr, TransformationFunctions -> {Sow, Automatic}] // Reap

References:

What are the default TransformationFunctions used in Simplify and FullSimplify?

Simplify with TransformationFunctions, Bug?

http://12000.org/my_notes/faq/mma_notes/MMA.htm#x1-1600015

http://forums.wolfram.com/mathgroup/archive/2006/Sep/msg00670.html

Information[TraceInternal] "TraceInternal is an option for Trace and related functions which, if True or False, specifies whether to trace evaluations of expressions generated internally by Mathematica. The intermediate Automatic setting traces a selected set of internal evaluations including Messages and sets or unsets of visible symbols."

Attributes[TraceInternal] = {Protected}

Trace of FullSimplify

$\endgroup$
  • $\begingroup$ Thanks @Young, can you elaborate on how to read the output? $\endgroup$ – M.R. Aug 5 '16 at 1:40
  • $\begingroup$ It may be prudent to execute ClearSystemCache[] first to avoid earlier computations, if any, causing FullSimplify to omit important steps. $\endgroup$ – bbgodfrey Aug 5 '16 at 13:09
  • 2
    $\begingroup$ It looks as if you are just quoting from Simon Woods' earlier answer. If so, you should make a reference to it. $\endgroup$ – m_goldberg Aug 5 '16 at 15:24
  • $\begingroup$ I still don't understand clearly how to read the output from this (what are the steps?) $\endgroup$ – M.R. Aug 5 '16 at 15:25
  • $\begingroup$ @m_goldberg I guess I found several places using these methods and really this was just to help M.R. on his way $\endgroup$ – Young Aug 5 '16 at 15:35

Not the answer you're looking for? Browse other questions tagged or ask your own question.