Step * 1 of Lemma unshuffle-iseg


1. [T] Type
2. : ℕ
3. as List
4. ∀a1:T List. (||a1|| < ||as||  (∀bs:T List. (a1 ≤ bs  unshuffle(a1) ≤ unshuffle(bs))))
5. bs List
6. as ≤ bs
⊢ unshuffle(as) ≤ unshuffle(bs)
BY
(DVar `as'
   THEN Try ((RW (AddrC [2] RecUnfoldTopAbC) THEN Reduce THEN BLemma `nil_iseg` THEN Auto))
   THEN DVar `bs'
   THEN Try (((RWO "iseg_nil" (-1) THENM Reduce (-1)) THEN Auto))
   THEN (RWO "cons_iseg" (-1) THENA Auto)
   THEN (DVar `v'
         THEN Try ((RW (AddrC [2] RecUnfoldTopAbC) THEN Reduce THEN BLemma `nil_iseg` THEN Auto))
         THEN DVar `v1'
         THEN Try (((RWO "iseg_nil" (-1) THENM Reduce (-1)) THEN Auto))
         THEN (RWO "cons_iseg" (-1) THENA Auto))⋅}

1
1. [T] Type
2. : ℕ
3. T
4. u2 T
5. List
6. ∀a1:T List. (||a1|| < ||[u; [u2 v]]||  (∀bs:T List. (a1 ≤ bs  unshuffle(a1) ≤ unshuffle(bs))))
7. u1 T
8. u3 T
9. v2 List
10. (u u1 ∈ T) ∧ (u2 u3 ∈ T) ∧ v ≤ v2
⊢ unshuffle([u; [u2 v]]) ≤ unshuffle([u1; [u3 v2]])


Latex:


Latex:

1.  [T]  :  Type
2.  n  :  \mBbbN{}
3.  as  :  T  List
4.  \mforall{}a1:T  List.  (||a1||  <  ||as||  {}\mRightarrow{}  (\mforall{}bs:T  List.  (a1  \mleq{}  bs  {}\mRightarrow{}  unshuffle(a1)  \mleq{}  unshuffle(bs))))
5.  bs  :  T  List
6.  as  \mleq{}  bs
\mvdash{}  unshuffle(as)  \mleq{}  unshuffle(bs)


By


Latex:
(DVar  `as'
  THEN  Try  ((RW  (AddrC  [2]  RecUnfoldTopAbC)  0  THEN  Reduce  0  THEN  BLemma  `nil\_iseg`  THEN  Auto))
  THEN  DVar  `bs'
  THEN  Try  (((RWO  "iseg\_nil"  (-1)  THENM  Reduce  (-1))  THEN  Auto))
  THEN  (RWO  "cons\_iseg"  (-1)  THENA  Auto)
  THEN  (DVar  `v'
              THEN  Try  ((RW  (AddrC  [2]  RecUnfoldTopAbC)  0  THEN  Reduce  0  THEN  BLemma  `nil\_iseg`  THEN  Auto))
              THEN  DVar  `v1'
              THEN  Try  (((RWO  "iseg\_nil"  (-1)  THENM  Reduce  (-1))  THEN  Auto))
              THEN  (RWO  "cons\_iseg"  (-1)  THENA  Auto))\mcdot{})




Home Index