Step
*
1
of Lemma
prod-image-is-image
1. A : Type
2. f : Base
3. B : Image(A,f) ⟶ Type
4. g : Base
5. y : Image(A,f)@i
6. x1 : Image(B[y],g)@i
⊢ <y, x1> ∈ Image((z:A × B[f z]),(λp.let a,b = p 
                                     in <f a, g b>))
BY
{ (DImageType (-2)
   THEN (DImageType (-1) THEN RenameVar `a' (-2) THEN RenameVar `b' (-1))
   THEN (Subst ⌜<f a, g b> ~ (λp.let a,b = p in <f a, g b>) <a, b>⌝ 0⋅ THENA (Reduce 0 THEN Auto))
   THEN RepeatFor 2 ((MemCDImageType THEN Auto))) }
Latex:
Latex:
1.  A  :  Type
2.  f  :  Base
3.  B  :  Image(A,f)  {}\mrightarrow{}  Type
4.  g  :  Base
5.  y  :  Image(A,f)@i
6.  x1  :  Image(B[y],g)@i
\mvdash{}  <y,  x1>  \mmember{}  Image((z:A  \mtimes{}  B[f  z]),(\mlambda{}p.let  a,b  =  p 
                                                                          in  <f  a,  g  b>))
By
Latex:
(DImageType  (-2)
  THEN  (DImageType  (-1)  THEN  RenameVar  `a'  (-2)  THEN  RenameVar  `b'  (-1))
  THEN  (Subst  \mkleeneopen{}<f  a,  g  b>  \msim{}  (\mlambda{}p.let  a,b  =  p  in  <f  a,  g  b>)  <a,  b>\mkleeneclose{}  0\mcdot{}  THENA  (Reduce  0  THEN  Auto))
  THEN  RepeatFor  2  ((MemCDImageType  THEN  Auto)))
Home
Index