Step * 1 2 2 2 of Lemma bag-parts_wf

.....subterm..... T:t
2:n
1. Type
2. valueall-type(T)
3. eq EqDecider(T)
4. : ℕ
5. ∀n:ℕn. ∀bs:bag(T).  ((#(bs) ≤ n)  (bag-parts(eq;bs) ∈ bag(bag(T) List+)))
6. bs bag(T)@i
7. #(bs) ≤ n
8. BB bag({p:bag(T) × bag(T)| ((fst(p)) (snd(p))) bs ∈ bag(T)} )@i
9. {p:bag(T) × bag(T)| ((fst(p)) (snd(p))) bs ∈ bag(T)} 
⊢ if bag-null(fst(p)) then {}
  if bag-null(snd(p)) then {[fst(p)]}
  else let parts ⟵ bag-parts(eq;snd(p))
       in bag-map(λL.[fst(p) L];parts)
  fi  ∈ bag(bag(T) List+)
BY
(D -1
   THEN -2
   THEN All Reduce
   THEN (Assert #(p1 p2) #(bs) ∈ ℤ BY
               Auto)
   THEN (RWO "bag-size-append" (-1) THENA Auto)) }

1
1. Type
2. valueall-type(T)
3. eq EqDecider(T)
4. : ℕ
5. ∀n:ℕn. ∀bs:bag(T).  ((#(bs) ≤ n)  (bag-parts(eq;bs) ∈ bag(bag(T) List+)))
6. bs bag(T)@i
7. #(bs) ≤ n
8. BB bag({p:bag(T) × bag(T)| ((fst(p)) (snd(p))) bs ∈ bag(T)} )@i
9. p1 bag(T)
10. p2 bag(T)
11. (p1 p2) bs ∈ bag(T)
12. (#(p1) #(p2)) #(bs) ∈ ℤ
⊢ if bag-null(p1) then {}
  if bag-null(p2) then {[p1]}
  else let parts ⟵ bag-parts(eq;p2)
       in bag-map(λL.[p1 L];parts)
  fi  ∈ bag(bag(T) List+)


Latex:


Latex:
.....subterm.....  T:t
2:n
1.  T  :  Type
2.  valueall-type(T)
3.  eq  :  EqDecider(T)
4.  n  :  \mBbbN{}
5.  \mforall{}n:\mBbbN{}n.  \mforall{}bs:bag(T).    ((\#(bs)  \mleq{}  n)  {}\mRightarrow{}  (bag-parts(eq;bs)  \mmember{}  bag(bag(T)  List\msupplus{})))
6.  bs  :  bag(T)@i
7.  \#(bs)  \mleq{}  n
8.  BB  :  bag(\{p:bag(T)  \mtimes{}  bag(T)|  ((fst(p))  +  (snd(p)))  =  bs\}  )@i
9.  p  :  \{p:bag(T)  \mtimes{}  bag(T)|  ((fst(p))  +  (snd(p)))  =  bs\} 
\mvdash{}  if  bag-null(fst(p))  then  \{\}
    if  bag-null(snd(p))  then  \{[fst(p)]\}
    else  let  parts  \mleftarrow{}{}  bag-parts(eq;snd(p))
              in  bag-map(\mlambda{}L.[fst(p)  /  L];parts)
    fi    \mmember{}  bag(bag(T)  List\msupplus{})


By


Latex:
(D  -1
  THEN  D  -2
  THEN  All  Reduce
  THEN  (Assert  \#(p1  +  p2)  =  \#(bs)  BY
                          Auto)
  THEN  (RWO  "bag-size-append"  (-1)  THENA  Auto))




Home Index