In[]:=
Graph[ResourceFunction["TraceGraph"][1+(1+1)(2+2)+,TraceOriginal->Automatic],AspectRatio->1]
2
(3+4)
Out[]=
In[]:=
Graph[ResourceFunction["TraceGraph"][Sum[n^2,{n,4}],TraceOriginal->Automatic],AspectRatio->1]
Out[]=
In[]:=
Graph[ResourceFunction["TraceGraph"][Sum[n^2,{n,4}],TraceOriginal->True],AspectRatio->1]
Out[]=
In[]:=
Graph[ResourceFunction["TraceGraph"][Sum[n^2,{n,4}],TraceOriginal->False],AspectRatio->1]
Out[]=
In[]:=
ResourceFunction["TraceTree"][1+(1+1)(2+2)+,TraceOriginal->Automatic]
2
(3+4)
Out[]=
In[]:=
Graph[ResourceFunction["TraceGraph"][Nest[(1+#)&,0,3],TraceOriginal->Automatic],AspectRatio->1]
Out[]=
In[]:=
Graph[ResourceFunction["TraceGraph"][(((1+1)+1)+1),TraceOriginal->Automatic],AspectRatio->1]
Out[]=
In[]:=
Graph[ResourceFunction["TraceGraph"][(((1+1)+1)+1),TraceOriginal->True],AspectRatio->1]
Out[]=
Causal Graphs
Causal Graphs
More Recursive Evaluation
More Recursive Evaluation
Euclid’s Algorithm
Euclid’s Algorithm
Nestedly Recursive Functions
Nestedly Recursive Functions
Multicomputation
Multicomputation
More fully the evaluation graph is:
But in a sense this isn’t the only possible
But as soon as we start thinking of expressions symbolically, it’s clear this is not the only possible “evaluation path”.