Step
*
2
1
2
1
of Lemma
bag-member-decomp
1. T : Type
2. x : T
3. as : T List
4. v1 : T List
5. permutation(T;as;v1)
6. [x / as] ∈ T List
7. Z : T List
8. permutation(T;[x / as];Z)
9. bag-decomp(Z) = bag-decomp(Z) ∈ bag(T × bag(T))
⊢ (<x, as> ∈ bag-decomp(Z))
BY
{ (Unfold `bag-decomp` 0
   THEN (InstLemma `member_map` [⌜ℕ||Z||⌝;⌜T × bag(T)⌝]⋅ THENA Auto)
   THEN BHyp -1 
   THEN Auto
   THEN Thin (-1)
   THEN Reduce 0) }
1
1. T : Type
2. x : T
3. as : T List
4. v1 : T List
5. permutation(T;as;v1)
6. [x / as] ∈ T List
7. Z : T List
8. permutation(T;[x / as];Z)
9. bag-decomp(Z) = bag-decomp(Z) ∈ bag(T × bag(T))
⊢ ∃y:ℕ||Z||. ((y ∈ upto(||Z||)) ∧ (<x, as> = remove-nth(y;Z) ∈ (T × bag(T))))
Latex:
Latex:
1.  T  :  Type
2.  x  :  T
3.  as  :  T  List
4.  v1  :  T  List
5.  permutation(T;as;v1)
6.  [x  /  as]  \mmember{}  T  List
7.  Z  :  T  List
8.  permutation(T;[x  /  as];Z)
9.  bag-decomp(Z)  =  bag-decomp(Z)
\mvdash{}  (<x,  as>  \mmember{}  bag-decomp(Z))
By
Latex:
(Unfold  `bag-decomp`  0
  THEN  (InstLemma  `member\_map`  [\mkleeneopen{}\mBbbN{}||Z||\mkleeneclose{};\mkleeneopen{}T  \mtimes{}  bag(T)\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  BHyp  -1 
  THEN  Auto
  THEN  Thin  (-1)
  THEN  Reduce  0)
Home
Index