Step
*
of Lemma
lifting-callbyvalueall-pair
∀[a,b,B:Top].  (let x ⟵ <a, b> in B[x] ~ let x ⟵ a in let y ⟵ b in B[<x, y>])
BY
{ ((UnivCD THENA Auto)
   THEN Unfold `callbyvalueall` 0
   THEN RW (AddrC [1;1] RecUnfoldTopAbC) 0
   THEN Reduce 0
   THEN (GenConcl ⌜evalall(a) = c ∈ Top⌝⋅ THENA Auto)
   THEN (GenConcl ⌜evalall(b) = d ∈ Top⌝⋅ THENA Auto)
   THEN SqReasoning
   THEN Try (((HasValueD (-2) ORELSE (ExceptionCases (-2) THEN Try (SameException)))
              THEN Try ((CallByValueReduceOn ⌜d⌝ 0⋅ THENA Complete (Auto)))
              THEN Reduce 0
              THEN Auto))) }
Latex:
Latex:
\mforall{}[a,b,B:Top].    (let  x  \mleftarrow{}{}  <a,  b>  in  B[x]  \msim{}  let  x  \mleftarrow{}{}  a  in  let  y  \mleftarrow{}{}  b  in  B[<x,  y>])
By
Latex:
((UnivCD  THENA  Auto)
  THEN  Unfold  `callbyvalueall`  0
  THEN  RW  (AddrC  [1;1]  RecUnfoldTopAbC)  0
  THEN  Reduce  0
  THEN  (GenConcl  \mkleeneopen{}evalall(a)  =  c\mkleeneclose{}\mcdot{}  THENA  Auto)
  THEN  (GenConcl  \mkleeneopen{}evalall(b)  =  d\mkleeneclose{}\mcdot{}  THENA  Auto)
  THEN  SqReasoning
  THEN  Try  (((HasValueD  (-2)  ORELSE  (ExceptionCases  (-2)  THEN  Try  (SameException)))
                        THEN  Try  ((CallByValueReduceOn  \mkleeneopen{}d\mkleeneclose{}  0\mcdot{}  THENA  Complete  (Auto)))
                        THEN  Reduce  0
                        THEN  Auto)))
Home
Index