How to use Redo - example2

https://www.wolframcloud.com/obj/ida.tetsuo.ge/Published/how-to-use-redo2.nb
Tetsuo Ida

Load Eos

In[]:=
<<"EosHeader.m"
g3 Version 1.2.9
Eos3.31 (November 5,2020) running under Mathematica 12.1.1 for Mac OS X x86 (64-bit) (June 22, 2020)

Redo test

Suppose constructing an origami.
C1
...
Ck
and we need to change Ck to Ck’.
In general, we have to execute
C1
...
Ck’.
To avoid selecting C1 ... Ck’ and execute them.
We write Redo[] immediately after Ck’. and execute Redo[]. Redo[] performs exactly the same command C1 ... Ck’ , in this order.
​
In[]:=
EosSession["Redo test"];
In[]:=
MarkOn[];

Construction

In[]:=
NewOrigami[10];
In[]:=
HO["A","B"]!
Redo test: Step 3
Out[]=
In[]:=
HO["C","B"]
Redo test: Step 4
Out[]=
In[]:=
Unfold[]
Redo test: Step 5
Out[]=
In[]:=
Redo[-2]
Redo test: Step 3
Out[]=
In[]:=
HO["C","B"]!
Redo test: Step 5
Out[]=
Here, we would like to change HO["C", "B"] at step 4 to HO["C", "B"]! and delete Unfold[].
Then add Redo[-2]. The whole program looks like the one below
In[]:=
EosSession["Redo test"];
In[]:=
MarkOn[];

Construction

In[]:=
NewOrigami[10];
In[]:=
HO["A","B"]!
Redo test: Step 3
Out[]=
In[]:=
HO["C","B"]!
Redo test: Step 5
Out[]=
In[]:=
(***endofconstruction***)

Proof

In[]:=
ProofDocFormat["Proof","Subsection",1,"Remove"];
In[]:=
ProofDocFormat["Goal","Subsubsection",1,"Remove"];
In[]:=
Goal[SquaredDistance["C","I"]==SquaredDistance["D","I"]];
In[]:=
Prove["Redo-test"]
ProofbyGB
::gbstart
:Proof by Groebner basis method started at November 21, 2020 at 4:34:47 PM JST.
​
ProofbyGB
::gbsuccess
:Proof by Groebner basis method is successful.CPU time used for Groebner basis computation is 0.005584 seconds.
​
Proof is successful.
Redo test: Step 5
Out[]=
{Success,0.005584,
Redo-test.nb
}
In[]:=
EndSession[];