Step
*
2
1
1
3
1
1
of Lemma
fps-compose-atom-neq
1. X : Type
2. {} ∈ bag(bag(X) List+)
3. valueall-type(X)
4. eq : EqDecider(X)
5. r : CRng
6. x : X
7. y : X
8. ¬(x = y ∈ X)
9. f : PowerSeries(X;r)
10. Comm(|r|;+r)
11. Assoc(|r|;*)
12. Comm(|r|;*)
13. IsMonoid(|r|;+r;0)
14. ∀L:bag(X) List+. (Πa ∈ tlp(L). f a ∈ |r|)
15. b : bag(X)
16. x1 : bag(X) List+
17. x1 ↓∈ bag-parts'(eq;b;x)
18. (hdp(x1) + bag-rep(||tlp(x1)||;x)) = {y} ∈ bag(X)
19. ||x1|| ≥ 1 
20. (hdp(x1) = {y} ∈ bag(X)) ∧ (bag-rep(||tlp(x1)||;x) = {} ∈ bag(X))
⊢ x1 ↓∈ if bag-null(b) then {}
if bag-eq(eq;b;{y}) then {[{y}]}
else {}
fi 
BY
{ (All (Unfolds ``tlp hdp``)
   THEN TACTIC:(Assert #(bag-rep(||tl(x1)||;x)) = #({}) ∈ ℤ BY
                      Auto)⋅
   THEN Reduce (-1)
   THEN RWO "bag-size-rep" (-1)
   THEN Auto
   THEN RepeatFor 2 ((DVar `x1' THEN Auto))
   THEN All Reduce
   THEN Auto) }
1
1. X : Type
2. {} ∈ bag(bag(X) List+)
3. valueall-type(X)
4. eq : EqDecider(X)
5. r : CRng
6. x : X
7. y : X
8. ¬(x = y ∈ X)
9. f : PowerSeries(X;r)
10. Comm(|r|;+r)
11. Assoc(|r|;*)
12. Comm(|r|;*)
13. IsMonoid(|r|;+r;0)
14. ∀L:bag(X) List+. (Πa ∈ tl(L). f a ∈ |r|)
15. b : bag(X)
16. u : bag(X)
17. v : bag(X) List
18. (||v|| + 1) ≥ 1 
19. [u / v] ↓∈ bag-parts'(eq;b;x)
20. (u + bag-rep(||v||;x)) = {y} ∈ bag(X)
21. (||v|| + 1) ≥ 1 
22. u = {y} ∈ bag(X)
23. bag-rep(||v||;x) = {} ∈ bag(X)
24. ||v|| = 0 ∈ ℤ
⊢ [u / v] ↓∈ if bag-null(b) then {}
if bag-eq(eq;b;{y}) then {[{y}]}
else {}
fi 
Latex:
Latex:
1.  X  :  Type
2.  \{\}  \mmember{}  bag(bag(X)  List\msupplus{})
3.  valueall-type(X)
4.  eq  :  EqDecider(X)
5.  r  :  CRng
6.  x  :  X
7.  y  :  X
8.  \mneg{}(x  =  y)
9.  f  :  PowerSeries(X;r)
10.  Comm(|r|;+r)
11.  Assoc(|r|;*)
12.  Comm(|r|;*)
13.  IsMonoid(|r|;+r;0)
14.  \mforall{}L:bag(X)  List\msupplus{}.  (\mPi{}a  \mmember{}  tlp(L).  f  a  \mmember{}  |r|)
15.  b  :  bag(X)
16.  x1  :  bag(X)  List\msupplus{}
17.  x1  \mdownarrow{}\mmember{}  bag-parts'(eq;b;x)
18.  (hdp(x1)  +  bag-rep(||tlp(x1)||;x))  =  \{y\}
19.  ||x1||  \mgeq{}  1 
20.  (hdp(x1)  =  \{y\})  \mwedge{}  (bag-rep(||tlp(x1)||;x)  =  \{\})
\mvdash{}  x1  \mdownarrow{}\mmember{}  if  bag-null(b)  then  \{\}
if  bag-eq(eq;b;\{y\})  then  \{[\{y\}]\}
else  \{\}
fi 
By
Latex:
(All  (Unfolds  ``tlp  hdp``)
  THEN  TACTIC:(Assert  \#(bag-rep(||tl(x1)||;x))  =  \#(\{\})  BY
                                        Auto)\mcdot{}
  THEN  Reduce  (-1)
  THEN  RWO  "bag-size-rep"  (-1)
  THEN  Auto
  THEN  RepeatFor  2  ((DVar  `x1'  THEN  Auto))
  THEN  All  Reduce
  THEN  Auto)
Home
Index