Step * 1 of Lemma longest-prefix_property


1. [T] Type
2. T
3. List
4. (T List) ⟶ 𝔹
⊢ ([] ≤ v
∧ [] < supposing 0 < ||v||
∧ ((([] [] ∈ (T List)) ∧ (∀L':T List. (L' <  (¬↑(P [u L'])))))
  ∨ ((↑(P [u])) ∧ (∀L':T List. ([] < L'  L' <  (¬↑(P [u L'])))))))
 (if null(v) then []
    if [u] then [u]
    else []
    fi  ≤ [u v]
   ∧ if null(v) then [] if [u] then [u] else [] fi  < [u v] supposing 0 < ||v|| 1
   ∧ (((if null(v) then [] if [u] then [u] else [] fi  [] ∈ (T List)) ∧ (∀L':T List. (L' < [u v]  (¬↑(P L')))))
     ∨ ((↑(P if null(v) then [] if [u] then [u] else [] fi ))
       ∧ (∀L':T List. (if null(v) then [] if [u] then [u] else [] fi  < L'  L' < [u v]  (¬↑(P L')))))))
BY
(DVar `v' THEN Reduce THEN Auto) }

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

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

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

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

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


Latex:


Latex:

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


By


Latex:
(DVar  `v'  THEN  Reduce  0  THEN  Auto)




Home Index