Step * of Lemma index-split-permutation

[T:Type]. ∀L:T List. ∀ids:ℕ List.  let L1,L2 index-split(L;ids) in permutation(T;L;L1 L2)
BY
xxx(Auto
      THEN (InstLemma `permute-to-front-permutation` [⌜T⌝;⌜L⌝;⌜ids⌝]⋅ THENA Auto)
      THEN RepUR ``index-split let`` 0
      THEN ((GenConcl ⌜||filter(λi.int-list-member(i;ids);upto(||L||))|| n ∈ ℕ||L|| 1⌝⋅ THENM Thin (-1))
            THENA Auto'
            ))xxx }

1
.....wf..... 
1. [T] Type
2. List
3. ids : ℕ List
4. permutation(T;L;permute-to-front(L;ids))
⊢ ||filter(λi.int-list-member(i;ids);upto(||L||))|| ∈ ℕ||L|| 1

2
1. [T] Type
2. List
3. ids : ℕ List
4. permutation(T;L;permute-to-front(L;ids))
5. : ℕ||L|| 1
⊢ permutation(T;L;firstn(n;permute-to-front(L;ids)) nth_tl(n;permute-to-front(L;ids)))


Latex:


Latex:
\mforall{}[T:Type].  \mforall{}L:T  List.  \mforall{}ids:\mBbbN{}  List.    let  L1,L2  =  index-split(L;ids)  in  permutation(T;L;L1  @  L2)


By


Latex:
xxx(Auto
        THEN  (InstLemma  `permute-to-front-permutation`  [\mkleeneopen{}T\mkleeneclose{};\mkleeneopen{}L\mkleeneclose{};\mkleeneopen{}ids\mkleeneclose{}]\mcdot{}  THENA  Auto)
        THEN  RepUR  ``index-split  let``  0
        THEN  ((GenConcl  \mkleeneopen{}||filter(\mlambda{}i.int-list-member(i;ids);upto(||L||))||  =  n\mkleeneclose{}\mcdot{}  THENM  Thin  (-1))
                    THENA  Auto'
                    ))xxx




Home Index