Step
*
2
1
of Lemma
split-at-first-rel
1. [T] : Type
2. [R] : T ⟶ T ⟶ ℙ
3. ∀x,y:T. Dec(R[x;y])
4. u : T
5. ∃XY:T List × (T List) [let X,Y = XY
in ([] = (X @ Y) ∈ (T List))
∧ (∀i:ℕ||X|| - 1. R[X[i];X[i + 1]])
∧ ((¬↑null([]))
⇒ ((¬↑null(X)) ∧ ¬R[last(X);hd(Y)] supposing ||Y|| ≥ 1 ))]
⊢ ∃XY:T List × (T List) [let X,Y = XY
in ([u] = (X @ Y) ∈ (T List))
∧ (∀i:ℕ||X|| - 1. R[X[i];X[i + 1]])
∧ ((¬↑null([u]))
⇒ ((¬↑null(X)) ∧ ¬R[last(X);hd(Y)] supposing ||Y|| ≥ 1 ))]
BY
{ (InstConcl [⌜<[u], []>⌝]⋅ THEN Reduce 0 THEN Auto)⋅ }
Latex:
Latex:
1. [T] : Type
2. [R] : T {}\mrightarrow{} T {}\mrightarrow{} \mBbbP{}
3. \mforall{}x,y:T. Dec(R[x;y])
4. u : T
5. \mexists{}XY:T List \mtimes{} (T List) [let X,Y = XY
in ([] = (X @ Y))
\mwedge{} (\mforall{}i:\mBbbN{}||X|| - 1. R[X[i];X[i + 1]])
\mwedge{} ((\mneg{}\muparrow{}null([]))
{}\mRightarrow{} ((\mneg{}\muparrow{}null(X)) \mwedge{} \mneg{}R[last(X);hd(Y)] supposing ||Y|| \mgeq{} 1 ))]
\mvdash{} \mexists{}XY:T List \mtimes{} (T List) [let X,Y = XY
in ([u] = (X @ Y))
\mwedge{} (\mforall{}i:\mBbbN{}||X|| - 1. R[X[i];X[i + 1]])
\mwedge{} ((\mneg{}\muparrow{}null([u]))
{}\mRightarrow{} ((\mneg{}\muparrow{}null(X)) \mwedge{} \mneg{}R[last(X);hd(Y)] supposing ||Y|| \mgeq{} 1 ))]
By
Latex:
(InstConcl [\mkleeneopen{}<[u], []>\mkleeneclose{}]\mcdot{} THEN Reduce 0 THEN Auto)\mcdot{}
Home
Index