Nuprl Lemma : function-valueall-type

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


Proof




Definitions occuring in Statement :  valueall-type: valueall-type(T) 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] valueall-type: valueall-type(T) has-value: (a)↓ evalall: evalall(t) all: x:A. B[x] or: P ∨ Q top: Top not: ¬A false: False outl: outl(x) outr: outr(x) prop: so_lambda: λ2x.t[x]
Lemmas referenced :  sq_stable__valueall-type value-type-has-value bottom_diverge has-value-implies-dec-ispair bottom-sqle has-value-implies-dec-isinl has-value-implies-dec-isinr equal-wf-base base_wf squash_wf exists_wf value-type_wf
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation introduction cut sqequalHypSubstitution imageElimination extract_by_obid isectElimination thin functionEquality hypothesisEquality applyEquality hypothesis independent_functionElimination productElimination rename independent_isectElimination callbyvalueApply sqequalRule callbyvalueReduce dependent_functionElimination baseApply closedConclusion baseClosed unionElimination sqequalSqle applyPair isect_memberEquality voidElimination voidEquality because_Cache applyInl applyInr axiomSqleEquality equalityTransitivity equalitySymmetry imageMemberEquality lambdaEquality cumulativity universeEquality

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



Date html generated: 2019_06_20-AM-11_21_28
Last ObjectModification: 2018_08_16-AM-11_09_04

Theory : call!by!value_1


Home Index