backup : unit -> proof
- g `(HD[1;2;3] = 1) /\ (TL[1;2;3] = [2;3])`;
> val it =
    Proof manager status: 1 proof.
    1. Incomplete:
         Initial goal:
         (HD [1; 2; 3] = 1) /\ (TL [1; 2; 3] = [2; 3])
     : proofs
- e CONJ_TAC;
OK..
2 subgoals:
> val it =
    TL [1; 2; 3] = [2; 3]
    HD [1; 2; 3] = 1
     : proof
- backup();
> val it =
    Initial goal:
    (HD [1; 2; 3] = 1) /\ (TL [1; 2; 3] = [2; 3])
     : proof
- e (REWRITE_TAC[listTheory.HD, listTheory.TL]);
OK..
> val it =
    Initial goal proved.
    |- (HD [1; 2; 3] = 1) /\ (TL [1; 2; 3] = [2; 3]) : proof