Step
*
of Lemma
rel-preserving-composes
∀[T1,T2,T3:Type]. ∀[R1:T1 ⟶ T1 ⟶ Type]. ∀[R2:T2 ⟶ T2 ⟶ Type]. ∀[R3:T3 ⟶ T3 ⟶ ℙ].
∀f:T2 ⟶ T1. ∀g:T3 ⟶ T2.
(λx.f[x]:T2->T1 takes R2 into R1*)
⇒ λx.g[x]:T3->T2 takes R3 into R2*)
⇒ λx.f[g[x]]:T3->T1 takes R3 into R1*))
BY
{ (Auto THEN (FLemma `rel-preserving-star` [-2] THENA Auto) THEN DupHyp (-2)) }
1
1. [T1] : Type
2. [T2] : Type
3. [T3] : Type
4. [R1] : T1 ⟶ T1 ⟶ Type
5. [R2] : T2 ⟶ T2 ⟶ Type
6. [R3] : T3 ⟶ T3 ⟶ ℙ
7. f : T2 ⟶ T1@i
8. g : T3 ⟶ T2@i
9. λx.f[x]:T2->T1 takes R2 into R1*)@i
10. λx.g[x]:T3->T2 takes R3 into R2*)@i
11. λx.f[x]:T2->T1 takes R2^* into R1*)
12. λx.g[x]:T3->T2 takes R3 into R2*)@i
⊢ λx.f[g[x]]:T3->T1 takes R3 into R1*)
Latex:
Latex:
\mforall{}[T1,T2,T3:Type]. \mforall{}[R1:T1 {}\mrightarrow{} T1 {}\mrightarrow{} Type]. \mforall{}[R2:T2 {}\mrightarrow{} T2 {}\mrightarrow{} Type]. \mforall{}[R3:T3 {}\mrightarrow{} T3 {}\mrightarrow{} \mBbbP{}].
\mforall{}f:T2 {}\mrightarrow{} T1. \mforall{}g:T3 {}\mrightarrow{} T2.
(\mlambda{}x.f[x]:T2->T1 takes R2 into R1*)
{}\mRightarrow{} \mlambda{}x.g[x]:T3->T2 takes R3 into R2*)
{}\mRightarrow{} \mlambda{}x.f[g[x]]:T3->T1 takes R3 into R1*))
By
Latex:
(Auto THEN (FLemma `rel-preserving-star` [-2] THENA Auto) THEN DupHyp (-2))
Home
Index