Step
*
2
2
of Lemma
bag-remove1-equal
1. T : Type
2. eq : EqDecider(T)
3. as : bag(T)
4. bs : bag(T)
5. a : T
6. b : T
7. (¬a ↓∈ as) ∧ (¬b ↓∈ bs)
⊢ bag-remove1(eq;as;a) = bag-remove1(eq;bs;b) ∈ (bag(T)?)
BY
{ ((InstLemma `bag-remove1-property` [⌜T⌝;⌜eq⌝;⌜a⌝;⌜as⌝]⋅ THENA Auto)
   THEN (InstLemma `bag-remove1-property` [⌜T⌝;⌜eq⌝;⌜b⌝;⌜bs⌝]⋅ THENA Auto)
   THEN SplitOrHyps
   THEN ExRepD
   THEN Auto) }
1
1. T : Type
2. eq : EqDecider(T)
3. as : bag(T)
4. bs : bag(T)
5. a : T
6. b : T
7. ¬a ↓∈ as
8. ¬b ↓∈ bs
9. as@0 : bag(T)
10. as = ({a} + as@0) ∈ bag(T)
11. bag-remove1(eq;as;a) = (inl as@0) ∈ (bag(T)?)
12. a1 : bag(T)
13. bs = ({b} + a1) ∈ bag(T)
14. bag-remove1(eq;bs;b) = (inl a1) ∈ (bag(T)?)
⊢ bag-remove1(eq;as;a) = bag-remove1(eq;bs;b) ∈ (bag(T)?)
2
1. T : Type
2. eq : EqDecider(T)
3. as : bag(T)
4. bs : bag(T)
5. a : T
6. b : T
7. ¬a ↓∈ as
8. ¬b ↓∈ bs
9. as@0 : bag(T)
10. as = ({a} + as@0) ∈ bag(T)
11. bag-remove1(eq;as;a) = (inl as@0) ∈ (bag(T)?)
12. ¬b ↓∈ bs
13. bag-remove1(eq;bs;b) = (inr ⋅ ) ∈ (bag(T)?)
⊢ bag-remove1(eq;as;a) = bag-remove1(eq;bs;b) ∈ (bag(T)?)
Latex:
Latex:
1.  T  :  Type
2.  eq  :  EqDecider(T)
3.  as  :  bag(T)
4.  bs  :  bag(T)
5.  a  :  T
6.  b  :  T
7.  (\mneg{}a  \mdownarrow{}\mmember{}  as)  \mwedge{}  (\mneg{}b  \mdownarrow{}\mmember{}  bs)
\mvdash{}  bag-remove1(eq;as;a)  =  bag-remove1(eq;bs;b)
By
Latex:
((InstLemma  `bag-remove1-property`  [\mkleeneopen{}T\mkleeneclose{};\mkleeneopen{}eq\mkleeneclose{};\mkleeneopen{}a\mkleeneclose{};\mkleeneopen{}as\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  (InstLemma  `bag-remove1-property`  [\mkleeneopen{}T\mkleeneclose{};\mkleeneopen{}eq\mkleeneclose{};\mkleeneopen{}b\mkleeneclose{};\mkleeneopen{}bs\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  SplitOrHyps
  THEN  ExRepD
  THEN  Auto)
Home
Index