Step * 2 of Lemma assert-dlo_eq


1. Prog
2. x1 Prog
3. ∀b:dl-Obj(). (↑dlo_eq(prog(x);b) ⇐⇒ prog(x) b ∈ dl-Obj())
4. ∀b:dl-Obj(). (↑dlo_eq(prog(x1);b) ⇐⇒ prog(x1) b ∈ dl-Obj())
⊢ ∀b:dl-Obj(). (↑dlo_eq(prog((x;x1));b) ⇐⇒ prog((x;x1)) b ∈ dl-Obj())
BY
(dlObjInduction
   THEN Intros
   THEN Unfold `dlo_eq` 0
   THEN (Unfold `dlo-eq` THEN RW (HigherC MrecIndC) 0)
   THEN Try (Fold `dlo-eq` 0)
   THEN Try (Fold `dlo_eq` 0)
   THEN RW (SweepUpC BetaC) 0
   THEN RW (SweepUpC ReduceC) 0
   THEN Auto
   THEN Try (((Assert "prog" "prop" ∈ Atom BY Complete (Auto)) THEN Auto))) }

1
1. Prog
2. x1 Prog
3. ∀b:dl-Obj(). (↑dlo_eq(prog(x);b) ⇐⇒ prog(x) b ∈ dl-Obj())
4. ∀b:dl-Obj(). (↑dlo_eq(prog(x1);b) ⇐⇒ prog(x1) b ∈ dl-Obj())
5. x@0 Prog
6. x1@0 Prog
7. (↑dlo_eq(prog((x;x1));prog(x@0)))  (prog((x;x1)) prog(x@0) ∈ dl-Obj())
8. (↑dlo_eq(prog((x;x1));prog(x@0)))  prog((x;x1)) prog(x@0) ∈ dl-Obj()
9. (↑dlo_eq(prog((x;x1));prog(x1@0)))  (prog((x;x1)) prog(x1@0) ∈ dl-Obj())
10. (↑dlo_eq(prog((x;x1));prog(x1@0)))  prog((x;x1)) prog(x1@0) ∈ dl-Obj()
11. ↑(dlo_eq(prog(x);prog(x@0)) ∧b dlo_eq(prog(x1);prog(x1@0)))
⊢ prog((x;x1)) prog((x@0;x1@0)) ∈ dl-Obj()


Latex:


Latex:

1.  x  :  Prog
2.  x1  :  Prog
3.  \mforall{}b:dl-Obj().  (\muparrow{}dlo\_eq(prog(x);b)  \mLeftarrow{}{}\mRightarrow{}  prog(x)  =  b)
4.  \mforall{}b:dl-Obj().  (\muparrow{}dlo\_eq(prog(x1);b)  \mLeftarrow{}{}\mRightarrow{}  prog(x1)  =  b)
\mvdash{}  \mforall{}b:dl-Obj().  (\muparrow{}dlo\_eq(prog((x;x1));b)  \mLeftarrow{}{}\mRightarrow{}  prog((x;x1))  =  b)


By


Latex:
(dlObjInduction
  THEN  Intros
  THEN  Unfold  `dlo\_eq`  0
  THEN  (Unfold  `dlo-eq`  0  THEN  RW  (HigherC  MrecIndC)  0)
  THEN  Try  (Fold  `dlo-eq`  0)
  THEN  Try  (Fold  `dlo\_eq`  0)
  THEN  RW  (SweepUpC  BetaC)  0
  THEN  RW  (SweepUpC  ReduceC)  0
  THEN  Auto
  THEN  Try  (((Assert  "prog"  =  "prop"  BY  Complete  (Auto))  THEN  Auto)))




Home Index