Step
*
of Lemma
list-max-map
∀[T,A:Type]. ∀[g:A ⟶ T]. ∀[f:T ⟶ ℤ]. ∀[L:A List].
  list-max(x.f[x];map(g;L)) = ((λp.<fst(p), g (snd(p))>) list-max(x.f[g x];L)) ∈ (i:ℤ × {x:T| f[x] = i ∈ ℤ} ) 
  supposing 0 < ||L||
BY
{ TACTIC:(TACTIC:(UnivCD THENA Auto)
          THEN Assert ⌜list-max(x.f[x];map(g;L)) = ((λp.<fst(p), g (snd(p))>) list-max(x.f[g x];L)) ∈ (i:ℤ × T)⌝⋅
          ) }
1
.....assertion..... 
1. T : Type
2. A : Type
3. g : A ⟶ T
4. f : T ⟶ ℤ
5. L : A List
6. 0 < ||L||
⊢ list-max(x.f[x];map(g;L)) = ((λp.<fst(p), g (snd(p))>) list-max(x.f[g x];L)) ∈ (i:ℤ × T)
2
1. T : Type
2. A : Type
3. g : A ⟶ T
4. f : T ⟶ ℤ
5. L : A List
6. 0 < ||L||
7. list-max(x.f[x];map(g;L)) = ((λp.<fst(p), g (snd(p))>) list-max(x.f[g x];L)) ∈ (i:ℤ × T)
⊢ list-max(x.f[x];map(g;L)) = ((λp.<fst(p), g (snd(p))>) list-max(x.f[g x];L)) ∈ (i:ℤ × {x:T| f[x] = i ∈ ℤ} )
Latex:
Latex:
\mforall{}[T,A:Type].  \mforall{}[g:A  {}\mrightarrow{}  T].  \mforall{}[f:T  {}\mrightarrow{}  \mBbbZ{}].  \mforall{}[L:A  List].
    list-max(x.f[x];map(g;L))  =  ((\mlambda{}p.<fst(p),  g  (snd(p))>)  list-max(x.f[g  x];L))  supposing  0  <  ||L||
By
Latex:
TACTIC:(TACTIC:(UnivCD  THENA  Auto)
                THEN  Assert  \mkleeneopen{}list-max(x.f[x];map(g;L))  =  ((\mlambda{}p.<fst(p),  g  (snd(p))>)  list-max(x.f[g  x];L))\mkleeneclose{}\mcdot{}
                )
Home
Index