Step
*
2
of Lemma
uncurry_wf
.....upcase..... 
1. T : Type
2. n : ℤ
3. 0 < n
4. ∀[A:ℕn - 1 ⟶ Type]. ∀[f:funtype(n - 1;A;T)].  (uncurry(n - 1;f) ∈ (i:ℕn - 1 ⟶ A[i]) ⟶ T)
⊢ ∀[A:ℕn ⟶ Type]. ∀[f:funtype(n;A;T)].  (uncurry(n;f) ∈ (i:ℕn ⟶ A[i]) ⟶ T)
BY
{ xxx(RepUR ``funtype uncurry`` 0 THEN (RWO "primrec-unroll" 0 THENA Auto) THEN (SplitOnConclITE THENA Auto))xxx }
1
.....truecase..... 
1. T : Type
2. n : ℤ
3. 0 < n
4. ∀[A:ℕn - 1 ⟶ Type]. ∀[f:funtype(n - 1;A;T)].  (uncurry(n - 1;f) ∈ (i:ℕn - 1 ⟶ A[i]) ⟶ T)
5. n = 0 ∈ ℤ
⊢ ∀[A:ℕn ⟶ Type]. ∀[f:T].  (λa.f ∈ (i:ℕn ⟶ A[i]) ⟶ T)
2
.....falsecase..... 
1. T : Type
2. n : ℤ
3. 0 < n
4. ∀[A:ℕn - 1 ⟶ Type]. ∀[f:funtype(n - 1;A;T)].  (uncurry(n - 1;f) ∈ (i:ℕn - 1 ⟶ A[i]) ⟶ T)
5. ¬(n = 0 ∈ ℤ)
⊢ ∀[A:ℕn ⟶ Type]. ∀[f:(λi,t. ((A (n - 1 - i)) ⟶ t)) (n - 1) primrec(n - 1;T;λi,t. ((A (n - 1 - i)) ⟶ t))].
    (λa.((λi,z. (z (a i))) (n - 1) primrec(n - 1;f;λi,z. (z (a i)))) ∈ (i:ℕn ⟶ A[i]) ⟶ T)
Latex:
Latex:
.....upcase..... 
1.  T  :  Type
2.  n  :  \mBbbZ{}
3.  0  <  n
4.  \mforall{}[A:\mBbbN{}n  -  1  {}\mrightarrow{}  Type].  \mforall{}[f:funtype(n  -  1;A;T)].    (uncurry(n  -  1;f)  \mmember{}  (i:\mBbbN{}n  -  1  {}\mrightarrow{}  A[i])  {}\mrightarrow{}  T)
\mvdash{}  \mforall{}[A:\mBbbN{}n  {}\mrightarrow{}  Type].  \mforall{}[f:funtype(n;A;T)].    (uncurry(n;f)  \mmember{}  (i:\mBbbN{}n  {}\mrightarrow{}  A[i])  {}\mrightarrow{}  T)
By
Latex:
xxx(RepUR  ``funtype  uncurry``  0
        THEN  (RWO  "primrec-unroll"  0  THENA  Auto)
        THEN  (SplitOnConclITE  THENA  Auto))xxx
Home
Index