Step
*
1
of Lemma
bag-remove1-append1
1. T : Type
2. eq : EqDecider(T)
3. x : T
4. y : T
5. ¬(x = y ∈ T)
6. bs : bag(T)
⊢ bag-remove1(eq;{y} + bs;x) = case bag-remove1(eq;bs;x) of inl(as) => inl ({y} + as) | inr(x) => inr ⋅ ∈ (bag(T)?)
BY
{ ((TACTIC:Auto THEN (InstLemma `bag-remove1-property` [⌜T⌝;⌜eq⌝;⌜x⌝;⌜bs⌝]⋅ THENA Auto))
THEN D -1
THEN ExRepD
THEN (RWO "-1" 0 THENA Auto)
THEN Reduce 0) }
1
1. T : Type
2. eq : EqDecider(T)
3. x : T
4. y : T
5. ¬(x = y ∈ T)
6. bs : bag(T)
7. as : bag(T)
8. bs = ({x} + as) ∈ bag(T)
9. bag-remove1(eq;bs;x) = (inl as) ∈ (bag(T)?)
⊢ bag-remove1(eq;{y} + bs;x) = (inl ({y} + as)) ∈ (bag(T)?)
2
1. T : Type
2. eq : EqDecider(T)
3. x : T
4. y : T
5. ¬(x = y ∈ T)
6. bs : bag(T)
7. ¬x ↓∈ bs
8. bag-remove1(eq;bs;x) = (inr ⋅ ) ∈ (bag(T)?)
⊢ bag-remove1(eq;{y} + bs;x) = (inr ⋅ ) ∈ (bag(T)?)
Latex:
Latex:
1. T : Type
2. eq : EqDecider(T)
3. x : T
4. y : T
5. \mneg{}(x = y)
6. bs : bag(T)
\mvdash{} bag-remove1(eq;\{y\} + bs;x)
= case bag-remove1(eq;bs;x) of inl(as) => inl (\{y\} + as) | inr(x) => inr \mcdot{}
By
Latex:
((TACTIC:Auto THEN (InstLemma `bag-remove1-property` [\mkleeneopen{}T\mkleeneclose{};\mkleeneopen{}eq\mkleeneclose{};\mkleeneopen{}x\mkleeneclose{};\mkleeneopen{}bs\mkleeneclose{}]\mcdot{} THENA Auto))
THEN D -1
THEN ExRepD
THEN (RWO "-1" 0 THENA Auto)
THEN Reduce 0)
Home
Index