Nuprl Lemma : function-value-type

[A:Type]. ∀[B:A ⟶ Type].  value-type(a:A ⟶ B[a]) supposing ↓∃a:A. value-type(B[a])


Proof




Definitions occuring in Statement :  value-type: value-type(T) uimplies: supposing a uall: [x:A]. B[x] so_apply: x[s] exists: x:A. B[x] squash: T function: x:A ⟶ B[x] universe: Type
Definitions unfolded in proof :  uall: [x:A]. B[x] member: t ∈ T uimplies: supposing a squash: T so_apply: x[s] sq_stable: SqStable(P) implies:  Q exists: x:A. B[x] value-type: value-type(T) has-value: (a)↓ prop: so_lambda: λ2x.t[x]
Lemmas referenced :  value-type_wf exists_wf squash_wf base_wf equal-wf-base value-type-has-value sq_stable__value-type
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation introduction cut sqequalHypSubstitution imageElimination lemma_by_obid isectElimination thin functionEquality hypothesisEquality applyEquality hypothesis independent_functionElimination productElimination rename independent_isectElimination callbyvalueApply sqequalRule axiomSqleEquality because_Cache isect_memberEquality equalityTransitivity equalitySymmetry imageMemberEquality baseClosed lambdaEquality cumulativity universeEquality

Latex:
\mforall{}[A:Type].  \mforall{}[B:A  {}\mrightarrow{}  Type].    value-type(a:A  {}\mrightarrow{}  B[a])  supposing  \mdownarrow{}\mexists{}a:A.  value-type(B[a])



Date html generated: 2016_05_13-PM-03_26_43
Last ObjectModification: 2016_01_14-PM-06_44_09

Theory : call!by!value_1


Home Index