Step * of Lemma sub-bag-equal

[T:Type]. ∀[b1,b2:bag(T)].  (b1 b2 ∈ bag(T)) supposing (sub-bag(T;b1;b2) and sub-bag(T;b2;b1))
BY
((UnivCD THENA Auto)
   THEN All (RepUR ``sub-bag``)
   THEN ExRepD
   THEN (HypSubst' (-3) (-1) THENA Auto)
   THEN ((RWO "bag-append-assoc" (-1) THENA Auto)
         THEN (InstLemma `bag-append-empty` [⌜b2⌝]⋅ THENA Auto)
         THEN (Assert ⌜(b2 {}) (b2 c1 cs) ∈ bag(T)⌝⋅ THENA (HypSubst' (-1) THEN Auto))
         THEN RWO "bag-append-cancel" (-1)
         THEN Auto
         THEN InstLemma `bag-append-eq-empty` [⌜T⌝;⌜c1⌝;⌜cs⌝]⋅
         THEN Auto
         THEN -2
         THEN Auto)⋅}


Latex:


Latex:
\mforall{}[T:Type].  \mforall{}[b1,b2:bag(T)].    (b1  =  b2)  supposing  (sub-bag(T;b1;b2)  and  sub-bag(T;b2;b1))


By


Latex:
((UnivCD  THENA  Auto)
  THEN  All  (RepUR  ``sub-bag``)
  THEN  ExRepD
  THEN  (HypSubst'  (-3)  (-1)  THENA  Auto)
  THEN  ((RWO  "bag-append-assoc"  (-1)  THENA  Auto)
              THEN  (InstLemma  `bag-append-empty`  [\mkleeneopen{}b2\mkleeneclose{}]\mcdot{}  THENA  Auto)
              THEN  (Assert  \mkleeneopen{}(b2  +  \{\})  =  (b2  +  c1  +  cs)\mkleeneclose{}\mcdot{}  THENA  (HypSubst'  (-1)  0  THEN  Auto))
              THEN  RWO  "bag-append-cancel"  (-1)
              THEN  Auto
              THEN  InstLemma  `bag-append-eq-empty`  [\mkleeneopen{}T\mkleeneclose{};\mkleeneopen{}c1\mkleeneclose{};\mkleeneopen{}cs\mkleeneclose{}]\mcdot{}
              THEN  Auto
              THEN  D  -2
              THEN  Auto)\mcdot{})




Home Index