Step * of Lemma le-tuple-sum

No Annotations
[P:Type]. ∀[as:P List]. ∀[G:P ⟶ Type]. ∀[x:tuple-type(map(G;as))]. ∀[f:i:P ⟶ (G i) ⟶ ℕ].
  ∀k:ℕ||as||. ((f as[k] x.k) ≤ tuple-sum(f;as;x))
BY
(InductionOnList
   THEN Unfold `tuple-sum` 0
   THEN Reduce 0
   THEN ((RWO "null-map" THENA Auto) ORELSE Auto)
   THEN SimpleBoolCase ⌜null(v)⌝⋅
   THEN Auto) }

1
1. Type
2. P
3. List
4. ∀[G:P ⟶ Type]. ∀[x:tuple-type(map(G;v))]. ∀[f:i:P ⟶ (G i) ⟶ ℕ].  ∀k:ℕ||v||. ((f v[k] x.k) ≤ tuple-sum(f;v;x))
5. null(v) tt
6. P ⟶ Type
7. x@0 u
8. i:P ⟶ (G i) ⟶ ℕ
9. : ℕ||v|| 1
⊢ (f [u v][k] x@0.k) ≤ (f x@0)

2
1. Type
2. P
3. List
4. ∀[G:P ⟶ Type]. ∀[x:tuple-type(map(G;v))]. ∀[f:i:P ⟶ (G i) ⟶ ℕ].  ∀k:ℕ||v||. ((f v[k] x.k) ≤ tuple-sum(f;v;x))
5. null(v) ff
6. P ⟶ Type
7. u × tuple-type(map(G;v))
8. i:P ⟶ (G i) ⟶ ℕ
9. : ℕ||v|| 1
⊢ (f [u v][k] x.k) ≤ let u@0,v@0 
                       in (f u@0) tuple-sum(f;v;v@0)


Latex:


Latex:
No  Annotations
\mforall{}[P:Type].  \mforall{}[as:P  List].  \mforall{}[G:P  {}\mrightarrow{}  Type].  \mforall{}[x:tuple-type(map(G;as))].  \mforall{}[f:i:P  {}\mrightarrow{}  (G  i)  {}\mrightarrow{}  \mBbbN{}].
    \mforall{}k:\mBbbN{}||as||.  ((f  as[k]  x.k)  \mleq{}  tuple-sum(f;as;x))


By


Latex:
(InductionOnList
  THEN  Unfold  `tuple-sum`  0
  THEN  Reduce  0
  THEN  ((RWO  "null-map"  0  THENA  Auto)  ORELSE  Auto)
  THEN  SimpleBoolCase  \mkleeneopen{}null(v)\mkleeneclose{}\mcdot{}
  THEN  Auto)




Home Index