Step
*
2
of Lemma
permute-to-front-permutation
1. [T] : Type
2. L : T List
3. idxs : ℕ List
⊢ Inj(ℕ||L||;ℕ||L||;λi.filter(λi.int-list-member(i;idxs);upto(||L||))
@ filter(λi.(¬bint-list-member(i;idxs));upto(||L||))[i])
∧ ((L o λi.filter(λi.int-list-member(i;idxs);upto(||L||)) @ filter(λi.(¬bint-list-member(i;idxs));upto(||L||))[i])
= (L o λi.filter(λi.int-list-member(i;idxs);upto(||L||)) @ filter(λi.(¬bint-list-member(i;idxs));upto(||L||))[i])
∈ (T List))
BY
{ Auto }
1
1. [T] : Type
2. L : T List
3. idxs : ℕ List
⊢ Inj(ℕ||L||;ℕ||L||;λi.filter(λi.int-list-member(i;idxs);upto(||L||))
@ filter(λi.(¬bint-list-member(i;idxs));upto(||L||))[i])
2
1. T : Type
2. L : T List
3. idxs : ℕ List
4. Inj(ℕ||L||;ℕ||L||;λi.filter(λi.int-list-member(i;idxs);upto(||L||))
@ filter(λi.(¬bint-list-member(i;idxs));upto(||L||))[i])
5. i : ℕ||L||
⊢ i < ||filter(λi.int-list-member(i;idxs);upto(||L||))|| + ||filter(λi.(¬bint-list-member(i;idxs));upto(||L||))||
Latex:
Latex:
1. [T] : Type
2. L : T List
3. idxs : \mBbbN{} List
\mvdash{} Inj(\mBbbN{}||L||;\mBbbN{}||L||;\mlambda{}i.filter(\mlambda{}i.int-list-member(i;idxs);upto(||L||))
@ filter(\mlambda{}i.(\mneg{}\msubb{}int-list-member(i;idxs));upto(||L||))[i])
\mwedge{} ((L o \mlambda{}i.filter(\mlambda{}i.int-list-member(i;idxs);upto(||L||))
@ filter(\mlambda{}i.(\mneg{}\msubb{}int-list-member(i;idxs));upto(||L||))[i])
= (L o \mlambda{}i.filter(\mlambda{}i.int-list-member(i;idxs);upto(||L||))
@ filter(\mlambda{}i.(\mneg{}\msubb{}int-list-member(i;idxs));upto(||L||))[i]))
By
Latex:
Auto
Home
Index