Step * of Lemma split_rel_last

[A:Type]
  ∀r:A ⟶ A ⟶ 𝔹. ∀L:A List.
    (∃L1,L2:A List
      (((L (L1 L2) ∈ (A List)) ∧ (¬↑null(L2)) ∧ (∀b∈L2.↑r[b;last(L)]))
      ∧ ¬↑r[last(L1);last(L)] supposing ¬↑null(L1))) supposing 
       ((¬↑null(L)) and 
       (∀a:A. (↑r[a;a])))
BY
InductionOnList }

1
1. [A] Type
2. A ⟶ A ⟶ 𝔹
⊢ (∃L1,L2:A List
    ((([] (L1 L2) ∈ (A List)) ∧ (¬↑null(L2)) ∧ (∀b∈L2.↑r[b;last([])]))
    ∧ ¬↑r[last(L1);last([])] supposing ¬↑null(L1))) supposing 
     ((¬↑null([])) and 
     (∀a:A. (↑r[a;a])))

2
1. [A] Type
2. A ⟶ A ⟶ 𝔹
3. A
4. List
5. (∃L1,L2:A List
     (((v (L1 L2) ∈ (A List)) ∧ (¬↑null(L2)) ∧ (∀b∈L2.↑r[b;last(v)]))
     ∧ ¬↑r[last(L1);last(v)] supposing ¬↑null(L1))) supposing 
      ((¬↑null(v)) and 
      (∀a:A. (↑r[a;a])))
⊢ (∃L1,L2:A List
    ((([u v] (L1 L2) ∈ (A List)) ∧ (¬↑null(L2)) ∧ (∀b∈L2.↑r[b;last([u v])]))
    ∧ ¬↑r[last(L1);last([u v])] supposing ¬↑null(L1))) supposing 
     ((¬↑null([u v])) and 
     (∀a:A. (↑r[a;a])))


Latex:


Latex:
\mforall{}[A:Type]
    \mforall{}r:A  {}\mrightarrow{}  A  {}\mrightarrow{}  \mBbbB{}.  \mforall{}L:A  List.
        (\mexists{}L1,L2:A  List
            (((L  =  (L1  @  L2))  \mwedge{}  (\mneg{}\muparrow{}null(L2))  \mwedge{}  (\mforall{}b\mmember{}L2.\muparrow{}r[b;last(L)]))
            \mwedge{}  \mneg{}\muparrow{}r[last(L1);last(L)]  supposing  \mneg{}\muparrow{}null(L1)))  supposing 
              ((\mneg{}\muparrow{}null(L))  and 
              (\mforall{}a:A.  (\muparrow{}r[a;a])))


By


Latex:
InductionOnList




Home Index