Step * 1 2 of Lemma lifting-member


1. Type
2. : ℕ
3. : ℕn ⟶ Type
4. bags k:ℕn ⟶ bag(A k)
5. B
6. : ℤ
7. 0 < p
8. 0 ≤ 1 < 1
 (∀f:funtype(n 1;λx.(A (x (n 1)));B)
      (b ↓∈ lifting-gen-list-rev(n;bags) (n 1) f
       (↓∃lst:k:{n 1..n-} ⟶ (A k)
            ((∀[k:{n 1..n-}]. lst k ↓∈ bags k) ∧ ((uncurry-gen(n) (n 1) x.f) lst) b ∈ B)))))
9. 0 ≤ p < 1
10. funtype(n p;λx.(A (x (n p)));B)
11. b ↓∈ lifting-gen-list-rev(n;bags) (n p) f
⊢ ↓∃lst:k:{n p..n-} ⟶ (A k). ((∀[k:{n p..n-}]. lst k ↓∈ bags k) ∧ ((uncurry-gen(n) (n p) x.f) lst) b ∈ B))
BY
((Subst ⌜(n p) 1⌝ (-4)⋅ THENA Auto)
   THEN (D (-4) THENA Auto')
   THEN Unfold `lifting-gen-list-rev` (-2)
   THEN RW (SweepUpC UnrollRecursionC) (-2)
   THEN Reduce (-2)
   THEN Try (Fold `lifting-gen-list-rev` (-2))
   THEN (Subst ⌜(n =z p) ff⌝ (-2)⋅ THENA Auto)
   THEN Reduce (-2)) }

1
1. Type
2. : ℕ
3. : ℕn ⟶ Type
4. bags k:ℕn ⟶ bag(A k)
5. B
6. : ℤ
7. 0 < p
8. 0 ≤ p < 1
9. funtype(n p;λx.(A (x (n p)));B)
10. b ↓∈ ⋃x∈bags (n p).lifting-gen-list-rev(n;bags) ((n p) 1) (f x)
11. ∀f:funtype(n (n p) 1;λx.(A (x (n p) 1));B)
      (b ↓∈ lifting-gen-list-rev(n;bags) ((n p) 1) f
       (↓∃lst:k:{(n p) 1..n-} ⟶ (A k)
            ((∀[k:{(n p) 1..n-}]. lst k ↓∈ bags k) ∧ ((uncurry-gen(n) ((n p) 1) x.f) lst) b ∈ B))))
⊢ ↓∃lst:k:{n p..n-} ⟶ (A k). ((∀[k:{n p..n-}]. lst k ↓∈ bags k) ∧ ((uncurry-gen(n) (n p) x.f) lst) b ∈ B))


Latex:


Latex:

1.  B  :  Type
2.  n  :  \mBbbN{}
3.  A  :  \mBbbN{}n  {}\mrightarrow{}  Type
4.  bags  :  k:\mBbbN{}n  {}\mrightarrow{}  bag(A  k)
5.  b  :  B
6.  p  :  \mBbbZ{}
7.  0  <  p
8.  0  \mleq{}  n  -  p  -  1  <  n  +  1
{}\mRightarrow{}  (\mforall{}f:funtype(n  -  n  -  p  -  1;\mlambda{}x.(A  (x  +  (n  -  p  -  1)));B)
            (b  \mdownarrow{}\mmember{}  lifting-gen-list-rev(n;bags)  (n  -  p  -  1)  f
            {}\mRightarrow{}  (\mdownarrow{}\mexists{}lst:k:\{n  -  p  -  1..n\msupminus{}\}  {}\mrightarrow{}  (A  k)
                        ((\mforall{}[k:\{n  -  p  -  1..n\msupminus{}\}].  lst  k  \mdownarrow{}\mmember{}  bags  k)
                        \mwedge{}  ((uncurry-gen(n)  (n  -  p  -  1)  (\mlambda{}x.f)  lst)  =  b)))))
9.  0  \mleq{}  n  -  p  <  n  +  1
10.  f  :  funtype(n  -  n  -  p;\mlambda{}x.(A  (x  +  (n  -  p)));B)
11.  b  \mdownarrow{}\mmember{}  lifting-gen-list-rev(n;bags)  (n  -  p)  f
\mvdash{}  \mdownarrow{}\mexists{}lst:k:\{n  -  p..n\msupminus{}\}  {}\mrightarrow{}  (A  k)
        ((\mforall{}[k:\{n  -  p..n\msupminus{}\}].  lst  k  \mdownarrow{}\mmember{}  bags  k)  \mwedge{}  ((uncurry-gen(n)  (n  -  p)  (\mlambda{}x.f)  lst)  =  b))


By


Latex:
((Subst  \mkleeneopen{}n  -  p  -  1  \msim{}  (n  -  p)  +  1\mkleeneclose{}  (-4)\mcdot{}  THENA  Auto)
  THEN  (D  (-4)  THENA  Auto')
  THEN  Unfold  `lifting-gen-list-rev`  (-2)
  THEN  RW  (SweepUpC  UnrollRecursionC)  (-2)
  THEN  Reduce  (-2)
  THEN  Try  (Fold  `lifting-gen-list-rev`  (-2))
  THEN  (Subst  \mkleeneopen{}(n  =\msubz{}  n  -  p)  \msim{}  ff\mkleeneclose{}  (-2)\mcdot{}  THENA  Auto)
  THEN  Reduce  (-2))




Home Index