Step
*
1
of Lemma
rel-path-between-cons
1. [T] : Type
2. [R] : T ⟶ T ⟶ ℙ
3. L : T List
4. x : T
5. y : T
6. z : T
7. L = [] ∈ (T List)
⊢ rel-path-between(T;R;x;y;[z / L])
⇐⇒ (x = z ∈ T) ∧ y = z ∈ T supposing True ∧ (x R hd(L)) ∧ rel-path-between(T;R;hd(L);y;L) supposing ¬True
BY
{ (DVar `L' THEN All Reduce) }
1
1. [T] : Type
2. [R] : T ⟶ T ⟶ ℙ
3. x : T
4. y : T
5. z : T
6. [] = [] ∈ (T List)
⊢ rel-path-between(T;R;x;y;[z])
⇐⇒ (x = z ∈ T) ∧ y = z ∈ T supposing True ∧ (x R hd([])) ∧ rel-path-between(T;R;hd([]);y;[]) supposing ¬True
2
1. [T] : Type
2. [R] : T ⟶ T ⟶ ℙ
3. u : T
4. v : T List
5. x : T
6. y : T
7. z : T
8. [u / v] = [] ∈ (T List)
⊢ rel-path-between(T;R;x;y;[z; [u / v]])
⇐⇒ (x = z ∈ T) ∧ y = z ∈ T supposing True ∧ (x R u) ∧ rel-path-between(T;R;u;y;[u / v]) supposing ¬True
Latex:
Latex:
1. [T] : Type
2. [R] : T {}\mrightarrow{} T {}\mrightarrow{} \mBbbP{}
3. L : T List
4. x : T
5. y : T
6. z : T
7. L = []
\mvdash{} rel-path-between(T;R;x;y;[z / L])
\mLeftarrow{}{}\mRightarrow{} (x = z) \mwedge{} y = z supposing True \mwedge{} (x R hd(L)) \mwedge{} rel-path-between(T;R;hd(L);y;L) supposing \mneg{}True
By
Latex:
(DVar `L' THEN All Reduce)
Home
Index