Step * 3 1 3 of Lemma longest-prefix_property'


1. [T] Type
2. T
3. u1 T
4. List
5. List+ ⟶ 𝔹
6. [] ≤ [u1 v]
7. [] < [u1 v] supposing 0 < ||v|| 1
8. (([] [] ∈ (T List)) ∧ (∀L':T List. ([] < L'  L' < [u1 v]  (¬↑(P [u L'])))))
∨ (0 < 0 ∧ (↑(P [u])) ∧ (∀L':T List. ([] < L'  L' < [u1 v]  (¬↑(P [u L'])))))
⊢ if [u] then [u] else [] fi  ≤ [u; [u1 v]]
BY
(AutoSplit THEN Auto)⋅ }

1
1. [T] Type
2. T
3. u1 T
4. List
5. List+ ⟶ 𝔹
6. [] ≤ [u1 v]
7. [] < [u1 v] supposing 0 < ||v|| 1
8. (([] [] ∈ (T List)) ∧ (∀L':T List. ([] < L'  L' < [u1 v]  (¬↑(P [u L'])))))
∨ (0 < 0 ∧ (↑(P [u])) ∧ (∀L':T List. ([] < L'  L' < [u1 v]  (¬↑(P [u L'])))))
9. ↑(P [u])
⊢ [u] ≤ [u; [u1 v]]


Latex:


Latex:

1.  [T]  :  Type
2.  u  :  T
3.  u1  :  T
4.  v  :  T  List
5.  P  :  T  List\msupplus{}  {}\mrightarrow{}  \mBbbB{}
6.  []  \mleq{}  [u1  /  v]
7.  []  <  [u1  /  v]  supposing  0  <  ||v||  +  1
8.  (([]  =  [])  \mwedge{}  (\mforall{}L':T  List.  ([]  <  L'  {}\mRightarrow{}  L'  <  [u1  /  v]  {}\mRightarrow{}  (\mneg{}\muparrow{}(P  [u  /  L'])))))
\mvee{}  (0  <  0  \mwedge{}  (\muparrow{}(P  [u]))  \mwedge{}  (\mforall{}L':T  List.  ([]  <  L'  {}\mRightarrow{}  L'  <  [u1  /  v]  {}\mRightarrow{}  (\mneg{}\muparrow{}(P  [u  /  L'])))))
\mvdash{}  if  P  [u]  then  [u]  else  []  fi    \mleq{}  [u;  [u1  /  v]]


By


Latex:
(AutoSplit  THEN  Auto)\mcdot{}




Home Index