Step * 1 1 3 2 2 of Lemma run-event-cases

.....wf..... 
1. Type ─→ Type
2. S0 System(P.M[P])@i
3. pRunType(P.M[P])@i
4. : ℕ@i
5. Id@i
6. : ℕ@i
7. n ≤ m
8. ↑is-run-event(r;m;x)
9. ↑is-run-event(r;n;x)
10. L1 {tx:ℕn × {i:Id| x ∈ Id} | ↑is-run-event(r;fst(tx);snd(tx))}  List@i
11. ¬(L1 [] ∈ ({tx:ℕn × {i:Id| x ∈ Id} | ↑is-run-event(r;fst(tx);snd(tx))}  List))
12. mapfilter(λt.<t, x>t.is-run-event(r;t;x);[0, n))
L1
∈ ({tx:ℕn × {i:Id| x ∈ Id} | ↑is-run-event(r;fst(tx);snd(tx))}  List)@i
13. L2 {tx:{n..m-} × {i:Id| x ∈ Id} | ↑is-run-event(r;fst(tx);snd(tx))}  List@i
14. mapfilter(λt.<t, x>t.is-run-event(r;t;x);[n, m))
L2
∈ ({tx:{n..m-} × {i:Id| x ∈ Id} | ↑is-run-event(r;fst(tx);snd(tx))}  List)@i
15. ↑is-run-event(r;m;x)
16. ¬↑null(L2)
⊢ ((inl last(L1 L2)) (inl last(L1)) ∈ ({tx:ℕ × Id| ↑is-run-event(r;fst(tx);snd(tx))} ?))
  ∧ ((L2 [<m, x>]) [<m, x>] ∈ ({tx:ℕ × Id| ↑is-run-event(r;fst(tx);snd(tx))}  List)) ∈ ℙ
BY
(DVar `L1' THEN Reduce 0)⋅ }

1
1. Type ─→ Type
2. S0 System(P.M[P])@i
3. pRunType(P.M[P])@i
4. : ℕ@i
5. Id@i
6. : ℕ@i
7. n ≤ m
8. ↑is-run-event(r;m;x)
9. ↑is-run-event(r;n;x)
10. ¬([] [] ∈ ({tx:ℕn × {i:Id| x ∈ Id} | ↑is-run-event(r;fst(tx);snd(tx))}  List))
11. mapfilter(λt.<t, x>t.is-run-event(r;t;x);[0, n))
[]
∈ ({tx:ℕn × {i:Id| x ∈ Id} | ↑is-run-event(r;fst(tx);snd(tx))}  List)@i
12. L2 {tx:{n..m-} × {i:Id| x ∈ Id} | ↑is-run-event(r;fst(tx);snd(tx))}  List@i
13. mapfilter(λt.<t, x>t.is-run-event(r;t;x);[n, m))
L2
∈ ({tx:{n..m-} × {i:Id| x ∈ Id} | ↑is-run-event(r;fst(tx);snd(tx))}  List)@i
14. ↑is-run-event(r;m;x)
15. ¬↑null(L2)
⊢ ((inl last(L2)) (inl last([])) ∈ ({tx:ℕ × Id| ↑is-run-event(r;fst(tx);snd(tx))} ?))
  ∧ ((L2 [<m, x>]) [<m, x>] ∈ ({tx:ℕ × Id| ↑is-run-event(r;fst(tx);snd(tx))}  List)) ∈ ℙ

2
1. Type ─→ Type
2. S0 System(P.M[P])@i
3. pRunType(P.M[P])@i
4. : ℕ@i
5. Id@i
6. : ℕ@i
7. n ≤ m
8. ↑is-run-event(r;m;x)
9. ↑is-run-event(r;n;x)
10. {tx:ℕn × {i:Id| x ∈ Id} | ↑is-run-event(r;fst(tx);snd(tx))} 
11. {tx:ℕn × {i:Id| x ∈ Id} | ↑is-run-event(r;fst(tx);snd(tx))}  List
12. ¬([u v] [] ∈ ({tx:ℕn × {i:Id| x ∈ Id} | ↑is-run-event(r;fst(tx);snd(tx))}  List))
13. mapfilter(λt.<t, x>t.is-run-event(r;t;x);[0, n))
[u v]
∈ ({tx:ℕn × {i:Id| x ∈ Id} | ↑is-run-event(r;fst(tx);snd(tx))}  List)@i
14. L2 {tx:{n..m-} × {i:Id| x ∈ Id} | ↑is-run-event(r;fst(tx);snd(tx))}  List@i
15. mapfilter(λt.<t, x>t.is-run-event(r;t;x);[n, m))
L2
∈ ({tx:{n..m-} × {i:Id| x ∈ Id} | ↑is-run-event(r;fst(tx);snd(tx))}  List)@i
16. ↑is-run-event(r;m;x)
17. ¬↑null(L2)
⊢ ((inl last([u (v L2)])) (inl last([u v])) ∈ ({tx:ℕ × Id| ↑is-run-event(r;fst(tx);snd(tx))} ?))
  ∧ ((L2 [<m, x>]) [<m, x>] ∈ ({tx:ℕ × Id| ↑is-run-event(r;fst(tx);snd(tx))}  List)) ∈ ℙ


Latex:



Latex:
.....wf..... 
1.  M  :  Type  {}\mrightarrow{}  Type
2.  S0  :  System(P.M[P])@i
3.  r  :  pRunType(P.M[P])@i
4.  n  :  \mBbbN{}@i
5.  x  :  Id@i
6.  m  :  \mBbbN{}@i
7.  n  \mleq{}  m
8.  \muparrow{}is-run-event(r;m;x)
9.  \muparrow{}is-run-event(r;n;x)
10.  L1  :  \{tx:\mBbbN{}n  \mtimes{}  \{i:Id|  i  =  x\}  |  \muparrow{}is-run-event(r;fst(tx);snd(tx))\}    List@i
11.  \mneg{}(L1  =  [])
12.  mapfilter(\mlambda{}t.<t,  x>\mlambda{}t.is-run-event(r;t;x);[0,  n))  =  L1@i
13.  L2  :  \{tx:\{n..m\msupminus{}\}  \mtimes{}  \{i:Id|  i  =  x\}  |  \muparrow{}is-run-event(r;fst(tx);snd(tx))\}    List@i
14.  mapfilter(\mlambda{}t.<t,  x>\mlambda{}t.is-run-event(r;t;x);[n,  m))  =  L2@i
15.  \muparrow{}is-run-event(r;m;x)
16.  \mneg{}\muparrow{}null(L2)
\mvdash{}  ((inl  last(L1  @  L2))  =  (inl  last(L1)))  \mwedge{}  ((L2  @  [<m,  x>])  =  [<m,  x>])  \mmember{}  \mBbbP{}


By


Latex:
(DVar  `L1'  THEN  Reduce  0)\mcdot{}




Home Index