Nuprl Lemma : ts-refinement-composition
∀ts1,ts2,ts3:transition-system{i:l}. ∀g:ts-type(ts3) ⟶ ts-type(ts2). ∀f:ts-type(ts2) ⟶ ts-type(ts1).
  (ts-refinement(ts1;ts2;f) ⇒ ts-refinement(ts2;ts3;g) ⇒ ts-refinement(ts1;ts3;f o g))
Proof
Definitions occuring in Statement : 
ts-refinement: ts-refinement(ts1;ts2;f), 
ts-type: ts-type(ts), 
transition-system: transition-system{i:l}, 
compose: f o g, 
all: ∀x:A. B[x], 
implies: P ⇒ Q, 
function: x:A ⟶ B[x]
Definitions unfolded in proof : 
all: ∀x:A. B[x], 
implies: P ⇒ Q, 
ts-refinement: ts-refinement(ts1;ts2;f), 
ts-reachable: ts-reachable(ts), 
and: P ∧ Q, 
uall: ∀[x:A]. B[x], 
member: t ∈ T, 
prop: ℙ, 
guard: {T}, 
compose: f o g, 
cand: A c∧ B, 
infix_ap: x f y, 
subtype_rel: A ⊆r B, 
exists: ∃x:A. B[x], 
squash: ↓T, 
true: True, 
uimplies: b supposing a, 
iff: P ⇐⇒ Q, 
rev_implies: P ⇐ Q
Lemmas referenced : 
rel-preserving-star-reachable, 
ts-type_wf, 
ts-init_wf, 
ts-rel_wf, 
ts-reachable_wf, 
subtype_rel_wf, 
ts-final_wf, 
ts-refinement_wf, 
transition-system_wf, 
rel_star_transitivity, 
ts-init_wf_reachable, 
rel_star_wf, 
rel_rel_star, 
equal_wf, 
squash_wf, 
true_wf, 
iff_weakening_equal
Rules used in proof : 
sqequalSubstitution, 
sqequalTransitivity, 
computationStep, 
sqequalReflexivity, 
lambdaFormation, 
sqequalHypSubstitution, 
cut, 
independent_pairFormation, 
introduction, 
extract_by_obid, 
isectElimination, 
thin, 
hypothesisEquality, 
hypothesis, 
dependent_functionElimination, 
independent_functionElimination, 
productElimination, 
because_Cache, 
sqequalRule, 
applyEquality, 
setElimination, 
rename, 
lambdaEquality, 
setEquality, 
universeEquality, 
cumulativity, 
functionExtensionality, 
functionEquality, 
dependent_set_memberEquality, 
equalityTransitivity, 
equalitySymmetry, 
dependent_pairFormation, 
imageElimination, 
natural_numberEquality, 
imageMemberEquality, 
baseClosed, 
independent_isectElimination, 
productEquality
Latex:
\mforall{}ts1,ts2,ts3:transition-system\{i:l\}.  \mforall{}g:ts-type(ts3)  {}\mrightarrow{}  ts-type(ts2).
\mforall{}f:ts-type(ts2)  {}\mrightarrow{}  ts-type(ts1).
    (ts-refinement(ts1;ts2;f)  {}\mRightarrow{}  ts-refinement(ts2;ts3;g)  {}\mRightarrow{}  ts-refinement(ts1;ts3;f  o  g))
Date html generated:
2018_05_21-PM-08_01_10
Last ObjectModification:
2017_07_26-PM-05_38_00
Theory : general
Home
Index