Step
*
1
1
of Lemma
bag-splits-permutation
1. T : Type
2. ∀b:T List. (bag-splits(b) ∈ (bag(T) × bag(T)) List)
3. L1 : T List
4. L2 : T List
5. permutation(T;L1;L2)
6. as : T List
7. a : T
⊢ permutation(bag(T) × bag(T);bag-splits([a / as]);bag-splits(as @ [a]))
BY
{ ListInd (-2) }
1
1. T : Type
2. ∀b:T List. (bag-splits(b) ∈ (bag(T) × bag(T)) List)
3. L1 : T List
4. L2 : T List
5. permutation(T;L1;L2)
6. a : T
⊢ permutation(bag(T) × bag(T);bag-splits([a]);bag-splits([] @ [a]))
2
1. T : Type
2. ∀b:T List. (bag-splits(b) ∈ (bag(T) × bag(T)) List)
3. L1 : T List
4. L2 : T List
5. permutation(T;L1;L2)
6. a : T
7. u : T
8. v : T List
9. permutation(bag(T) × bag(T);bag-splits([a / v]);bag-splits(v @ [a]))
⊢ permutation(bag(T) × bag(T);bag-splits([a; [u / v]]);bag-splits([u / v] @ [a]))
Latex:
Latex:
1.  T  :  Type
2.  \mforall{}b:T  List.  (bag-splits(b)  \mmember{}  (bag(T)  \mtimes{}  bag(T))  List)
3.  L1  :  T  List
4.  L2  :  T  List
5.  permutation(T;L1;L2)
6.  as  :  T  List
7.  a  :  T
\mvdash{}  permutation(bag(T)  \mtimes{}  bag(T);bag-splits([a  /  as]);bag-splits(as  @  [a]))
By
Latex:
ListInd  (-2)
Home
Index