Step
*
1
5
of Lemma
state-class3-fun-eq
1. Info : Type
2. B : Type
3. A1 : Type
4. A2 : Type
5. A3 : Type
6. init : Id ─→ B
7. tr1 : Id ─→ A1 ─→ B ─→ B
8. tr2 : Id ─→ A2 ─→ B ─→ B
9. tr3 : Id ─→ A3 ─→ B ─→ B
10. X1 : EClass(A1)
11. X2 : EClass(A2)
12. X3 : EClass(A3)
13. es : EO+(Info)
14. e : E
15. ¬↑e ∈b X2
16. ¬↑e ∈b X1
17. single-valued-classrel(es;X3;A3)
18. single-valued-classrel(es;X2;A2)
19. single-valued-classrel(es;X1;A1)
20. disjoint-classrel(es;A2;X2;A3;X3)
21. disjoint-classrel(es;A1;X1;A3;X3)
22. disjoint-classrel(es;A1;X1;A2;X2)
23. ↑e ∈b X3
24. ↑first(e)
⊢ ((tr1 o X1) || (tr2 o X2) || (tr3 o X3)@e (init loc(e))) = (tr3 loc(e) X3@e (init loc(e))) ∈ B
BY
{ ((RWO "classfun-res-parallel-class-right" 0 THEN Auto THEN ProveFunctional THEN Auto)
   THEN Try (Complete ((Repeat ((RWO "member-parallel-class-bool" 0 THENA Auto))
                        THEN (RWO "member-eclass-eclass1" 0 THENA Auto)
                        THEN RW assert_pushdownC 0
                        THEN Auto)))
   THEN (RWO "classfun-res-parallel-class-right" 0 THEN Auto THEN ProveFunctional THEN Auto)
   THEN (RWO "classfun-res-eclass1" 0 THENA Auto)
   THEN ProveFunctional
   THEN Auto) }
Latex:
Latex:
1.  Info  :  Type
2.  B  :  Type
3.  A1  :  Type
4.  A2  :  Type
5.  A3  :  Type
6.  init  :  Id  {}\mrightarrow{}  B
7.  tr1  :  Id  {}\mrightarrow{}  A1  {}\mrightarrow{}  B  {}\mrightarrow{}  B
8.  tr2  :  Id  {}\mrightarrow{}  A2  {}\mrightarrow{}  B  {}\mrightarrow{}  B
9.  tr3  :  Id  {}\mrightarrow{}  A3  {}\mrightarrow{}  B  {}\mrightarrow{}  B
10.  X1  :  EClass(A1)
11.  X2  :  EClass(A2)
12.  X3  :  EClass(A3)
13.  es  :  EO+(Info)
14.  e  :  E
15.  \mneg{}\muparrow{}e  \mmember{}\msubb{}  X2
16.  \mneg{}\muparrow{}e  \mmember{}\msubb{}  X1
17.  single-valued-classrel(es;X3;A3)
18.  single-valued-classrel(es;X2;A2)
19.  single-valued-classrel(es;X1;A1)
20.  disjoint-classrel(es;A2;X2;A3;X3)
21.  disjoint-classrel(es;A1;X1;A3;X3)
22.  disjoint-classrel(es;A1;X1;A2;X2)
23.  \muparrow{}e  \mmember{}\msubb{}  X3
24.  \muparrow{}first(e)
\mvdash{}  ((tr1  o  X1)  ||  (tr2  o  X2)  ||  (tr3  o  X3)@e  (init  loc(e)))  =  (tr3  loc(e)  X3@e  (init  loc(e)))
By
Latex:
((RWO  "classfun-res-parallel-class-right"  0  THEN  Auto  THEN  ProveFunctional  THEN  Auto)
  THEN  Try  (Complete  ((Repeat  ((RWO  "member-parallel-class-bool"  0  THENA  Auto))
                                            THEN  (RWO  "member-eclass-eclass1"  0  THENA  Auto)
                                            THEN  RW  assert\_pushdownC  0
                                            THEN  Auto)))
  THEN  (RWO  "classfun-res-parallel-class-right"  0  THEN  Auto  THEN  ProveFunctional  THEN  Auto)
  THEN  (RWO  "classfun-res-eclass1"  0  THENA  Auto)
  THEN  ProveFunctional
  THEN  Auto)
Home
Index