Nuprl Lemma : provision-equality
ā[T:š']. ā[ok1,ok2:ā]. ā[v1:ā:āok1. T]. ā[v2:ā:āok2. T].
(provision(ok1; v1) = provision(ok2; v2) ā Provisional(T)) supposing (((āok1)
ā (v1 = v2 ā T)) and (āok1
āā āok2))
Proof
Definitions occuring in Statement :
provision: provision(ok; v)
,
provisional-type: Provisional(T)
,
uimplies: b supposing a
,
uall: ā[x:A]. B[x]
,
prop: ā
,
iff: P
āā Q
,
squash: āT
,
implies: P
ā Q
,
isect: āx:A. B[x]
,
universe: Type
,
equal: s = t ā T
Definitions unfolded in proof :
uall: ā[x:A]. B[x]
,
member: t ā T
,
uimplies: b supposing a
,
iff: P
āā Q
,
and: P ā§ Q
,
provisional-type: Provisional(T)
,
prop: ā
,
so_lambda: Ī»2x y.t[x; y]
,
so_lambda: Ī»2x.t[x]
,
so_apply: x[s]
,
rev_implies: P
ā Q
,
implies: P
ā Q
,
subtype_rel: A ār B
,
so_apply: x[s1;s2]
,
all: āx:A. B[x]
,
provision: provision(ok; v)
,
pi1: fst(t)
,
pi2: snd(t)
,
cand: A cā§ B
,
squash: āT
,
exists: āx:A. B[x]
Lemmas referenced :
quotient-member-eq,
squash_wf,
iff_wf,
pi1_wf,
equal_wf,
pi2_wf,
uimplies_subtype,
provisional-equiv,
isect_subtype_rel_trivial
Rules used in proof :
sqequalSubstitution,
sqequalTransitivity,
computationStep,
sqequalReflexivity,
isect_memberFormation_alt,
introduction,
cut,
sqequalHypSubstitution,
productElimination,
thin,
instantiate,
extract_by_obid,
isectElimination,
productEquality,
universeEquality,
sqequalRule,
isectEquality,
cumulativity,
hypothesisEquality,
hypothesis,
lambdaEquality_alt,
inhabitedIsType,
functionEquality,
applyEquality,
independent_functionElimination,
because_Cache,
independent_isectElimination,
universeIsType,
productIsType,
isectIsType,
dependent_functionElimination,
dependent_pairEquality_alt,
isect_memberEquality_alt,
rename,
equalityTransitivity,
equalitySymmetry,
independent_pairFormation,
lambdaFormation_alt,
imageElimination,
imageMemberEquality,
baseClosed,
functionIsType,
equalityIstype,
axiomEquality,
isectIsTypeImplies
Latex:
\mforall{}[T:\mBbbU{}']. \mforall{}[ok1,ok2:\mBbbP{}]. \mforall{}[v1:\mcap{}:\mdownarrow{}ok1. T]. \mforall{}[v2:\mcap{}:\mdownarrow{}ok2. T].
(provision(ok1; v1) = provision(ok2; v2)) supposing (((\mdownarrow{}ok1) {}\mRightarrow{} (v1 = v2)) and (\mdownarrow{}ok1 \mLeftarrow{}{}\mRightarrow{} \mdownarrow{}ok2))
Date html generated:
2020_05_20-AM-08_00_47
Last ObjectModification:
2020_05_17-PM-06_52_38
Theory : monads
Home
Index